Skip to content

Commit b624a06

Browse files
committed
Upgrade to Ruby 4.0
Just for fun, upgrade to Ruby 4.0 [1]. It's been a few months now, so hopefully at the downstream gems have been fixed up. Just for good measure, I also ran a `make update` to update all gems. Some updates like for `standardrb` are necessary to get this working. [1] https://www.ruby-lang.org/en/news/2025/12/25/ruby-4-0-0-released/
1 parent 21118d8 commit b624a06

File tree

6 files changed

+142
-119
lines changed

6 files changed

+142
-119
lines changed

.github/workflows/ci.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ env:
1414
#
1515
# If updating this value, you probably also want to add a new version to the
1616
# spec version matrix below.
17-
RUBY_VERSION: "3.4"
17+
RUBY_VERSION: "4.0"
1818

1919
# A suitable URL for a test database.
2020
TEST_DATABASE_NAME: river_test
@@ -134,6 +134,7 @@ jobs:
134134
- "3.2"
135135
- "3.3"
136136
- "3.4"
137+
- "4.0"
137138

138139
services:
139140
postgres:

.tool-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ruby 3.4
1+
ruby 4.0

Gemfile.lock

Lines changed: 44 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -13,126 +13,130 @@ PATH
1313
GEM
1414
remote: https://rubygems.org/
1515
specs:
16-
activesupport (8.0.4.1)
16+
activesupport (8.1.3)
1717
base64
18-
benchmark (>= 0.3)
1918
bigdecimal
2019
concurrent-ruby (~> 1.0, >= 1.3.1)
2120
connection_pool (>= 2.2.5)
2221
drb
2322
i18n (>= 1.6, < 2)
23+
json
2424
logger (>= 1.4.2)
25-
minitest (>= 5.1, < 6)
25+
minitest (>= 5.1)
2626
securerandom (>= 0.3)
2727
tzinfo (~> 2.0, >= 2.0.5)
2828
uri (>= 0.13.1)
2929
ast (2.4.3)
3030
base64 (0.3.0)
31-
benchmark (0.5.0)
32-
bigdecimal (4.0.1)
31+
bigdecimal (4.1.0)
3332
concurrent-ruby (1.3.6)
3433
connection_pool (3.0.2)
3534
csv (3.3.5)
36-
date (3.4.1)
37-
debug (1.11.0)
35+
date (3.5.1)
36+
debug (1.11.1)
3837
irb (~> 1.10)
3938
reline (>= 0.3.8)
4039
diff-lcs (1.6.2)
4140
docile (1.4.1)
4241
drb (2.2.3)
43-
erb (5.1.1)
44-
ffi (1.17.2-arm64-darwin)
45-
ffi (1.17.2-x86_64-linux-gnu)
46-
fileutils (1.7.3)
42+
erb (6.0.2)
43+
ffi (1.17.4-arm64-darwin)
44+
ffi (1.17.4-x86_64-linux-gnu)
45+
fileutils (1.8.0)
4746
i18n (1.14.8)
4847
concurrent-ruby (~> 1.0)
49-
io-console (0.8.1)
50-
irb (1.15.2)
48+
io-console (0.8.2)
49+
irb (1.17.0)
5150
pp (>= 0.6.0)
51+
prism (>= 1.3.0)
5252
rdoc (>= 4.0.0)
5353
reline (>= 0.4.2)
54-
json (2.15.2.1)
54+
json (2.19.3)
5555
language_server-protocol (3.17.0.5)
5656
lint_roller (1.1.0)
57-
listen (3.9.0)
57+
listen (3.10.0)
58+
logger
5859
rb-fsevent (~> 0.10, >= 0.10.3)
5960
rb-inotify (~> 0.9, >= 0.9.10)
6061
logger (1.7.0)
61-
minitest (5.27.0)
62+
minitest (6.0.2)
63+
drb (~> 2.0)
64+
prism (~> 1.5)
6265
mutex_m (0.3.0)
6366
parallel (1.27.0)
64-
parser (3.3.9.0)
67+
parser (3.3.11.1)
6568
ast (~> 2.4.1)
6669
racc
67-
pg (1.6.2-arm64-darwin)
68-
pg (1.6.2-x86_64-linux)
70+
pg (1.6.3-arm64-darwin)
71+
pg (1.6.3-x86_64-linux)
6972
pp (0.6.3)
7073
prettyprint
7174
prettyprint (0.2.0)
72-
prism (1.6.0)
73-
psych (5.2.6)
75+
prism (1.9.0)
76+
psych (5.3.1)
7477
date
7578
stringio
7679
racc (1.8.1)
7780
rainbow (3.1.1)
7881
rb-fsevent (0.11.2)
7982
rb-inotify (0.11.1)
8083
ffi (~> 1.0)
81-
rbs (3.9.5)
84+
rbs (3.10.4)
8285
logger
83-
rdoc (6.15.0)
86+
tsort
87+
rdoc (7.2.0)
8488
erb
8589
psych (>= 4.0.0)
8690
tsort
8791
regexp_parser (2.11.3)
88-
reline (0.6.2)
92+
reline (0.6.3)
8993
io-console (~> 0.5)
9094
rspec-core (3.13.6)
9195
rspec-support (~> 3.13.0)
9296
rspec-expectations (3.13.5)
9397
diff-lcs (>= 1.2.0, < 2.0)
9498
rspec-support (~> 3.13.0)
95-
rspec-support (3.13.6)
96-
rubocop (1.80.2)
99+
rspec-support (3.13.7)
100+
rubocop (1.84.2)
97101
json (~> 2.3)
98102
language_server-protocol (~> 3.17.0.2)
99103
lint_roller (~> 1.1.0)
100104
parallel (~> 1.10)
101105
parser (>= 3.3.0.2)
102106
rainbow (>= 2.2.2, < 4.0)
103107
regexp_parser (>= 2.9.3, < 3.0)
104-
rubocop-ast (>= 1.46.0, < 2.0)
108+
rubocop-ast (>= 1.49.0, < 2.0)
105109
ruby-progressbar (~> 1.7)
106110
unicode-display_width (>= 2.4.0, < 4.0)
107-
rubocop-ast (1.47.1)
111+
rubocop-ast (1.49.1)
108112
parser (>= 3.3.7.2)
109-
prism (~> 1.4)
110-
rubocop-performance (1.25.0)
113+
prism (~> 1.7)
114+
rubocop-performance (1.26.1)
111115
lint_roller (~> 1.1)
112116
rubocop (>= 1.75.0, < 2.0)
113-
rubocop-ast (>= 1.38.0, < 2.0)
117+
rubocop-ast (>= 1.47.1, < 2.0)
114118
ruby-progressbar (1.13.0)
115119
securerandom (0.4.1)
116-
sequel (5.97.0)
120+
sequel (5.102.0)
117121
bigdecimal
118122
simplecov (0.22.0)
119123
docile (~> 1.1)
120124
simplecov-html (~> 0.11)
121125
simplecov_json_formatter (~> 0.1)
122126
simplecov-html (0.13.2)
123127
simplecov_json_formatter (0.1.4)
124-
standard (1.51.1)
128+
standard (1.54.0)
125129
language_server-protocol (~> 3.17.0.2)
126130
lint_roller (~> 1.0)
127-
rubocop (~> 1.80.2)
131+
rubocop (~> 1.84.0)
128132
standard-custom (~> 1.0.0)
129133
standard-performance (~> 1.8)
130134
standard-custom (1.0.2)
131135
lint_roller (~> 1.0)
132136
rubocop (~> 1.50)
133-
standard-performance (1.8.0)
137+
standard-performance (1.9.0)
134138
lint_roller (~> 1.1)
135-
rubocop-performance (~> 1.25.0)
139+
rubocop-performance (~> 1.26.0)
136140
steep (1.10.0)
137141
activesupport (>= 5.1)
138142
concurrent-ruby (>= 1.1.10)
@@ -150,22 +154,20 @@ GEM
150154
strscan (>= 1.0.0)
151155
terminal-table (>= 2, < 5)
152156
uri (>= 0.12.0)
153-
stringio (3.1.7)
154-
strscan (3.1.5)
157+
stringio (3.2.0)
158+
strscan (3.1.7)
155159
terminal-table (4.0.0)
156160
unicode-display_width (>= 1.1.1, < 4)
157161
tsort (0.2.0)
158162
tzinfo (2.0.6)
159163
concurrent-ruby (~> 1.0)
160164
unicode-display_width (3.2.0)
161165
unicode-emoji (~> 4.1)
162-
unicode-emoji (4.1.0)
166+
unicode-emoji (4.2.0)
163167
uri (1.1.1)
164168

165169
PLATFORMS
166-
arm64-darwin-22
167-
arm64-darwin-23
168-
arm64-darwin-24
170+
arm64-darwin-25
169171
x86_64-linux
170172

171173
DEPENDENCIES

driver/riverqueue-activerecord/Gemfile.lock

Lines changed: 58 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ PATH
1414
GEM
1515
remote: https://rubygems.org/
1616
specs:
17-
activemodel (8.1.2.1)
18-
activesupport (= 8.1.2.1)
19-
activerecord (8.1.2.1)
20-
activemodel (= 8.1.2.1)
21-
activesupport (= 8.1.2.1)
17+
activemodel (8.1.3)
18+
activesupport (= 8.1.3)
19+
activerecord (8.1.3)
20+
activemodel (= 8.1.3)
21+
activesupport (= 8.1.3)
2222
timeout (>= 0.4.0)
23-
activesupport (8.1.2.1)
23+
activesupport (8.1.3)
2424
base64
2525
bigdecimal
2626
concurrent-ruby (~> 1.0, >= 1.3.1)
@@ -33,101 +33,115 @@ GEM
3333
securerandom (>= 0.3)
3434
tzinfo (~> 2.0, >= 2.0.5)
3535
uri (>= 0.13.1)
36-
ast (2.4.2)
36+
ast (2.4.3)
3737
base64 (0.3.0)
38-
bigdecimal (4.0.1)
38+
bigdecimal (4.1.0)
3939
concurrent-ruby (1.3.6)
4040
connection_pool (3.0.2)
41-
date (3.4.1)
42-
debug (1.10.0)
41+
date (3.5.1)
42+
debug (1.11.1)
4343
irb (~> 1.10)
4444
reline (>= 0.3.8)
45-
diff-lcs (1.5.1)
45+
diff-lcs (1.6.2)
4646
docile (1.4.1)
4747
drb (2.2.3)
48+
erb (6.0.2)
4849
i18n (1.14.8)
4950
concurrent-ruby (~> 1.0)
50-
io-console (0.8.0)
51-
irb (1.14.3)
51+
io-console (0.8.2)
52+
irb (1.17.0)
53+
pp (>= 0.6.0)
54+
prism (>= 1.3.0)
5255
rdoc (>= 4.0.0)
5356
reline (>= 0.4.2)
54-
json (2.19.2)
55-
language_server-protocol (3.17.0.3)
57+
json (2.19.3)
58+
language_server-protocol (3.17.0.5)
5659
lint_roller (1.1.0)
5760
logger (1.7.0)
5861
minitest (6.0.2)
5962
drb (~> 2.0)
6063
prism (~> 1.5)
61-
parallel (1.26.3)
62-
parser (3.3.6.0)
64+
parallel (1.27.0)
65+
parser (3.3.11.1)
6366
ast (~> 2.4.1)
6467
racc
65-
pg (1.5.9)
68+
pg (1.6.3-arm64-darwin)
69+
pg (1.6.3-x86_64-linux)
70+
pp (0.6.3)
71+
prettyprint
72+
prettyprint (0.2.0)
6673
prism (1.9.0)
67-
psych (5.2.2)
74+
psych (5.3.1)
6875
date
6976
stringio
7077
racc (1.8.1)
7178
rainbow (3.1.1)
72-
rdoc (6.10.0)
79+
rdoc (7.2.0)
80+
erb
7381
psych (>= 4.0.0)
74-
regexp_parser (2.10.0)
75-
reline (0.6.0)
82+
tsort
83+
regexp_parser (2.11.3)
84+
reline (0.6.3)
7685
io-console (~> 0.5)
77-
rspec-core (3.13.2)
86+
rspec-core (3.13.6)
7887
rspec-support (~> 3.13.0)
79-
rspec-expectations (3.13.3)
88+
rspec-expectations (3.13.5)
8089
diff-lcs (>= 1.2.0, < 2.0)
8190
rspec-support (~> 3.13.0)
82-
rspec-support (3.13.2)
83-
rubocop (1.69.2)
91+
rspec-support (3.13.7)
92+
rubocop (1.84.2)
8493
json (~> 2.3)
85-
language_server-protocol (>= 3.17.0)
94+
language_server-protocol (~> 3.17.0.2)
95+
lint_roller (~> 1.1.0)
8696
parallel (~> 1.10)
8797
parser (>= 3.3.0.2)
8898
rainbow (>= 2.2.2, < 4.0)
8999
regexp_parser (>= 2.9.3, < 3.0)
90-
rubocop-ast (>= 1.36.2, < 2.0)
100+
rubocop-ast (>= 1.49.0, < 2.0)
91101
ruby-progressbar (~> 1.7)
92102
unicode-display_width (>= 2.4.0, < 4.0)
93-
rubocop-ast (1.37.0)
94-
parser (>= 3.3.1.0)
95-
rubocop-performance (1.23.0)
96-
rubocop (>= 1.48.1, < 2.0)
97-
rubocop-ast (>= 1.31.1, < 2.0)
103+
rubocop-ast (1.49.1)
104+
parser (>= 3.3.7.2)
105+
prism (~> 1.7)
106+
rubocop-performance (1.26.1)
107+
lint_roller (~> 1.1)
108+
rubocop (>= 1.75.0, < 2.0)
109+
rubocop-ast (>= 1.47.1, < 2.0)
98110
ruby-progressbar (1.13.0)
99111
securerandom (0.4.1)
100112
simplecov (0.22.0)
101113
docile (~> 1.1)
102114
simplecov-html (~> 0.11)
103115
simplecov_json_formatter (~> 0.1)
104-
simplecov-html (0.13.1)
116+
simplecov-html (0.13.2)
105117
simplecov_json_formatter (0.1.4)
106-
standard (1.43.0)
118+
standard (1.54.0)
107119
language_server-protocol (~> 3.17.0.2)
108120
lint_roller (~> 1.0)
109-
rubocop (~> 1.69.1)
121+
rubocop (~> 1.84.0)
110122
standard-custom (~> 1.0.0)
111-
standard-performance (~> 1.6)
123+
standard-performance (~> 1.8)
112124
standard-custom (1.0.2)
113125
lint_roller (~> 1.0)
114126
rubocop (~> 1.50)
115-
standard-performance (1.6.0)
127+
standard-performance (1.9.0)
116128
lint_roller (~> 1.1)
117-
rubocop-performance (~> 1.23.0)
118-
stringio (3.1.2)
119-
timeout (0.6.0)
129+
rubocop-performance (~> 1.26.0)
130+
stringio (3.2.0)
131+
timeout (0.6.1)
132+
tsort (0.2.0)
120133
tzinfo (2.0.6)
121134
concurrent-ruby (~> 1.0)
122-
unicode-display_width (3.1.2)
123-
unicode-emoji (~> 4.0, >= 4.0.4)
124-
unicode-emoji (4.0.4)
135+
unicode-display_width (3.2.0)
136+
unicode-emoji (~> 4.1)
137+
unicode-emoji (4.2.0)
125138
uri (1.1.1)
126139

127140
PLATFORMS
128141
arm64-darwin-22
129142
arm64-darwin-23
130143
arm64-darwin-24
144+
arm64-darwin-25
131145
x86_64-linux
132146

133147
DEPENDENCIES

0 commit comments

Comments
 (0)