Skip to content

Commit e3da5af

Browse files
authored
Upgrade to Ruby v4.0.0 (#3893)
* Upgrade to Ruby v4.0.0 * Upgrade some dev dependencies and re-generate RBIs
1 parent 25d5a3b commit e3da5af

29 files changed

+2174
-1799
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
fail-fast: false
4545
matrix:
4646
os: [ubuntu-latest, macos-latest, windows-latest]
47-
ruby: ["3.2", "3.3", "3.4"]
47+
ruby: ["3.3", "3.4", "4.0"]
4848
runs-on: ${{ matrix.os }}
4949
timeout-minutes: 40
5050
name: Ruby ${{ matrix.ruby }} on ${{ matrix.os }}

.ruby-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.4.5
1+
4.0.0

Gemfile.lock

Lines changed: 36 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,23 @@ GEM
1010
remote: https://rubygems.org/
1111
specs:
1212
ast (2.4.3)
13-
benchmark (0.4.1)
14-
date (3.4.1)
15-
debug (1.11.0)
13+
benchmark (0.5.0)
14+
date (3.5.1)
15+
debug (1.11.1)
1616
irb (~> 1.10)
1717
reline (>= 0.3.8)
18-
erb (5.0.2)
18+
erb (6.0.1)
1919
erubi (1.13.1)
20-
io-console (0.8.1)
21-
irb (1.15.2)
20+
io-console (0.8.2)
21+
irb (1.16.0)
2222
pp (>= 0.6.0)
2323
rdoc (>= 4.0.0)
2424
reline (>= 0.4.2)
25-
json (2.13.0)
25+
json (2.18.0)
2626
language_server-protocol (3.17.0.5)
2727
lint_roller (1.1.0)
2828
logger (1.7.0)
29-
minitest (5.25.5)
29+
minitest (5.27.0)
3030
mocha (2.7.1)
3131
ruby2_keywords (>= 0.0.5)
3232
netrc (0.11.0)
@@ -35,31 +35,32 @@ GEM
3535
ast (~> 2.4.1)
3636
racc
3737
power_assert (2.0.5)
38-
pp (0.6.2)
38+
pp (0.6.3)
3939
prettyprint
4040
prettier_print (1.2.1)
4141
prettyprint (0.2.0)
4242
prism (1.7.0)
43-
psych (5.2.6)
43+
psych (5.3.1)
4444
date
4545
stringio
4646
racc (1.8.1)
4747
rainbow (3.1.1)
48-
rake (13.3.0)
48+
rake (13.3.1)
4949
rbi (0.3.6)
5050
prism (~> 1.0)
5151
rbs (>= 3.4.4)
5252
rbs (4.0.0.dev.4)
5353
logger
5454
prism (>= 1.3.0)
55-
rdoc (6.14.2)
55+
rdoc (7.0.3)
5656
erb
5757
psych (>= 4.0.0)
58+
tsort
5859
regexp_parser (2.10.0)
59-
reline (0.6.1)
60+
reline (0.6.3)
6061
io-console (~> 0.5)
6162
require-hooks (0.2.2)
62-
rexml (3.4.1)
63+
rexml (3.4.4)
6364
rubocop (1.78.0)
6465
json (~> 2.3)
6566
language_server-protocol (~> 3.17.0.2)
@@ -103,7 +104,7 @@ GEM
103104
rexml (>= 3.2.6)
104105
sorbet-static-and-runtime (>= 0.5.10187)
105106
thor (>= 0.19.2)
106-
stringio (3.1.7)
107+
stringio (3.2.0)
107108
syntax_tree (6.3.0)
108109
prettier_print (>= 1.2.0)
109110
tapioca (0.17.7)
@@ -120,9 +121,10 @@ GEM
120121
test-unit (3.7.0)
121122
power_assert
122123
thor (1.3.2)
124+
tsort (0.2.0)
123125
unicode-display_width (3.1.4)
124126
unicode-emoji (~> 4.0, >= 4.0.4)
125-
unicode-emoji (4.0.4)
127+
unicode-emoji (4.2.0)
126128
yard (0.9.37)
127129
yard-sorbet (0.9.0)
128130
sorbet-runtime
@@ -154,38 +156,38 @@ DEPENDENCIES
154156

155157
CHECKSUMS
156158
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
157-
benchmark (0.4.1) sha256=d4ef40037bba27f03b28013e219b950b82bace296549ec15a78016552f8d2cce
158-
date (3.4.1) sha256=bf268e14ef7158009bfeaec40b5fa3c7271906e88b196d958a89d4b408abe64f
159-
debug (1.11.0) sha256=1425db64cfa0130c952684e3dc974985be201dd62899bf4bbe3f8b5d6cf1aef2
160-
erb (5.0.2) sha256=d30f258143d4300fb4ecf430042ac12970c9bb4b33c974a545b8f58c1ec26c0f
159+
benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c
160+
date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0
161+
debug (1.11.1) sha256=2e0b0ac6119f2207a6f8ac7d4a73ca8eb4e440f64da0a3136c30343146e952b6
162+
erb (6.0.1) sha256=28ecdd99c5472aebd5674d6061e3c6b0a45c049578b071e5a52c2a7f13c197e5
161163
erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
162-
io-console (0.8.1) sha256=1e15440a6b2f67b6ea496df7c474ed62c860ad11237f29b3bd187f054b925fcb
163-
irb (1.15.2) sha256=222f32952e278da34b58ffe45e8634bf4afc2dc7aa9da23fed67e581aa50fdba
164-
json (2.13.0) sha256=a4bdf1ce8db5617ec6c59e021db4a398e54b57b335e1fa417ac7badc3fb7c1a0
164+
io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc
165+
irb (1.16.0) sha256=2abe56c9ac947cdcb2f150572904ba798c1e93c890c256f8429981a7675b0806
166+
json (2.18.0) sha256=b10506aee4183f5cf49e0efc48073d7b75843ce3782c68dbeb763351c08fd505
165167
language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
166168
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
167169
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
168-
minitest (5.25.5) sha256=391b6c6cb43a4802bfb7c93af1ebe2ac66a210293f4a3fb7db36f2fc7dc2c756
170+
minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5
169171
mocha (2.7.1) sha256=8f7d538d5d3ebc75fc788b3d92fbab913a93a78462d2a3ce99d1bdde7af7f851
170172
netrc (0.11.0) sha256=de1ce33da8c99ab1d97871726cba75151113f117146becbe45aa85cb3dabee3f
171173
parallel (1.27.0) sha256=4ac151e1806b755fb4e2dc2332cbf0e54f2e24ba821ff2d3dcf86bf6dc4ae130
172174
parser (3.3.8.0) sha256=2476364142b307fa5a1b1ece44f260728be23858a9c71078e956131a75453c45
173175
power_assert (2.0.5) sha256=63b511b85bb8ea57336d25156864498644f5bbf028699ceda27949e0125bc323
174-
pp (0.6.2) sha256=947ec3120c6f92195f8ee8aa25a7b2c5297bb106d83b41baa02983686577b6ff
176+
pp (0.6.3) sha256=2951d514450b93ccfeb1df7d021cae0da16e0a7f95ee1e2273719669d0ab9df6
175177
prettier_print (1.2.1) sha256=a72838b5f23facff21f90a5423cdcdda19e4271092b41f4ea7f50b83929e6ff9
176178
prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
177179
prism (1.7.0) sha256=10062f734bf7985c8424c44fac382ac04a58124ea3d220ec3ba9fe4f2da65103
178-
psych (5.2.6) sha256=814328aa5dcb6d604d32126a20bc1cbcf05521a5b49dbb1a8b30a07e580f316e
180+
psych (5.3.1) sha256=eb7a57cef10c9d70173ff74e739d843ac3b2c019a003de48447b2963d81b1974
179181
racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
180182
rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
181-
rake (13.3.0) sha256=96f5092d786ff412c62fde76f793cc0541bd84d2eb579caa529aa8a059934493
183+
rake (13.3.1) sha256=8c9e89d09f66a26a01264e7e3480ec0607f0c497a861ef16063604b1b08eb19c
182184
rbi (0.3.6) sha256=577e94ddd123d7c83794dd62c06c5f9bf32a22e9a3a0d2f9baf32f7c81b2b5fa
183185
rbs (4.0.0.dev.4) sha256=a4a22ba03d2450e2a18c312b0b05cdc7b8b5d5c9fe255fc32cfea12ff1dd058b
184-
rdoc (6.14.2) sha256=9fdd44df130f856ae70cc9a264dfd659b9b40de369b16581f4ab746e42439226
186+
rdoc (7.0.3) sha256=dfe3d0981d19b7bba71d9dbaeb57c9f4e3a7a4103162148a559c4fc687ea81f9
185187
regexp_parser (2.10.0) sha256=cb6f0ddde88772cd64bff1dbbf68df66d376043fe2e66a9ef77fcb1b0c548c61
186-
reline (0.6.1) sha256=1afcc9d7cb1029cdbe780d72f2f09251ce46d3780050f3ec39c3ccc6b60675fb
188+
reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835
187189
require-hooks (0.2.2) sha256=effa81b61a669ca00cb1e8910411e0d6a8bb16b49a53d9e69b5e6372d6c90f31
188-
rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca
190+
rexml (3.4.4) sha256=19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142
189191
rubocop (1.78.0) sha256=8b74a6f912eb4fd3e6878851f7f7f45dcad8c7185c34250d4f952b0ee80d6bc0
190192
rubocop-ast (1.46.0) sha256=0da7f6ad5b98614f89b74f11873c191059c823eae07d6ffd40a42a3338f2232b
191193
rubocop-minitest (0.38.1) sha256=f997aa8043d45b1556b818f5dec872ad03c1ab97cd3fb721b0c2aef02dbf7a81
@@ -201,15 +203,16 @@ CHECKSUMS
201203
sorbet-static (0.5.12230-x86_64-linux) sha256=5525a2e9e870020ddb668c3ed2dbff1839817015b2482d934aa456182e287266
202204
sorbet-static-and-runtime (0.5.12230) sha256=afea11eddbe145806354f6b4060d7883bf4dcc7015fdd463eb401bdbc9b7be7f
203205
spoom (1.7.4) sha256=9755877653a9be409dacf1663e97617734bc1607e3237866bcd7d4a9f23f68fb
204-
stringio (3.1.7) sha256=5b78b7cb242a315fb4fca61a8255d62ec438f58da2b90be66048546ade4507fa
206+
stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1
205207
syntax_tree (6.3.0) sha256=56e25a9692c798ec94c5442fe94c5e94af76bef91edc8bb02052cbdecf35f13d
206208
tapioca (0.17.7) sha256=1efb7be004f269a9cf23c97ed419338598bddfd653e3a5ac0760694e0ebfba9b
207209
test-unit (3.7.0) sha256=2b5745498c848768e1774acb63e3806d3bb47e2943bd91cc9bf559b4c6d4faa1
208210
thor (1.3.2) sha256=eef0293b9e24158ccad7ab383ae83534b7ad4ed99c09f96f1a6b036550abbeda
211+
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
209212
unicode-display_width (3.1.4) sha256=8caf2af1c0f2f07ec89ef9e18c7d88c2790e217c482bfc78aaa65eadd5415ac1
210-
unicode-emoji (4.0.4) sha256=2c2c4ef7f353e5809497126285a50b23056cc6e61b64433764a35eff6c36532a
213+
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
211214
yard (0.9.37) sha256=a6e910399e78e613f80ba9add9ba7c394b1a935f083cccbef82903a3d2a26992
212215
yard-sorbet (0.9.0) sha256=03d1aa461b9e9c82b886919a13aa3e09fcf4d1852239d2967ed97e92723ffe21
213216

214217
BUNDLED WITH
215-
4.0.2
218+
4.0.3

exe/ruby-lsp-launcher

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,10 @@ rescue Bundler::GemNotFound, Bundler::GitError
108108
unless install_error || ARGV.include?("--retry")
109109
$stderr.puts("Initial bundle compose succeeded, but Bundler.setup failed. Trying to restart from scratch...")
110110
File.write(raw_initialize_path, raw_initialize)
111-
exec(Gem.ruby, __FILE__, *ARGV, "--retry")
111+
112+
Bundler.with_unbundled_env do
113+
exec(Gem.ruby, __FILE__, *ARGV, "--retry")
114+
end
112115
end
113116
rescue StandardError => e
114117
setup_error = e

jekyll/Gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
source "https://rubygems.org"
55

66
# We only need to use Jekyll with CRuby
7+
gem "logger"
78
gem "jekyll", "~> 4.4.1"
89
gem "jekyll-feed", "~> 0.12"
910
gem "jekyll-redirect-from"

jekyll/Gemfile.lock

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -28,21 +28,6 @@ GEM
2828
google-protobuf (4.33.2)
2929
bigdecimal
3030
rake (>= 13)
31-
google-protobuf (4.33.2-aarch64-linux-gnu)
32-
bigdecimal
33-
rake (>= 13)
34-
google-protobuf (4.33.2-aarch64-linux-musl)
35-
bigdecimal
36-
rake (>= 13)
37-
google-protobuf (4.33.2-arm64-darwin)
38-
bigdecimal
39-
rake (>= 13)
40-
google-protobuf (4.33.2-x86-linux-gnu)
41-
bigdecimal
42-
rake (>= 13)
43-
google-protobuf (4.33.2-x86-linux-musl)
44-
bigdecimal
45-
rake (>= 13)
4631
google-protobuf (4.33.2-x86_64-darwin)
4732
bigdecimal
4833
rake (>= 13)
@@ -100,6 +85,7 @@ GEM
10085
listen (3.9.0)
10186
rb-fsevent (~> 0.10, >= 0.10.3)
10287
rb-inotify (~> 0.9, >= 0.9.10)
88+
logger (1.7.0)
10389
mercenary (0.4.0)
10490
pathutil (0.16.2)
10591
forwardable-extended (~> 2.6)
@@ -185,6 +171,7 @@ DEPENDENCIES
185171
jekyll-feed (~> 0.12)
186172
jekyll-redirect-from
187173
just-the-docs (~> 0.11.1)
174+
logger
188175

189176
BUNDLED WITH
190-
2.5.11
177+
4.0.3

lib/ruby_indexer/test/configuration_test.rb

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -233,18 +233,16 @@ def test_does_not_fail_if_there_are_missing_specs_due_to_platform_constraints
233233
RUBY
234234

235235
Bundler.with_unbundled_env do
236-
capture_subprocess_io { system("bundle install") }
236+
capture_subprocess_io do
237+
system("bundle install")
237238

238-
_stdout, stderr = capture_subprocess_io do
239239
script = [
240240
"require \"ruby_lsp/internal\"",
241241
"RubyIndexer::Configuration.new.indexable_uris",
242242
].join(";")
243243

244-
system("bundle exec ruby -e '#{script}'")
244+
assert(system("bundle exec ruby -e '#{script}'"))
245245
end
246-
247-
assert_empty(stderr)
248246
end
249247
end
250248
end

0 commit comments

Comments
 (0)