Skip to content

Commit c907314

Browse files
authored
Update all gems + gem update make target (#29)
Run a `bundle update` on the River Ruby gem and its subgems. It's been a while since dependencies were updated, but specifically we're targeting ReXML, which has reported vulnerabilities. Add a new `make bundle-update` target which provides an easy shortcut to run `bundle update` on all project gems. Also lock CI to Ruby 3.3 for the time being since `ffi` isn't happy with the dev version of 3.4 currently being distributed with `head`.
1 parent 621831b commit c907314

File tree

5 files changed

+121
-106
lines changed

5 files changed

+121
-106
lines changed

.github/workflows/ci.yaml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ env:
88
# to GITHUB_PATH/PATH.
99
BIN_PATH: /home/runner/bin
1010

11+
RUBY_VERSION: "3.3"
12+
1113
# A suitable URL for a test database.
1214
TEST_DATABASE_NAME: river_test
1315
TEST_DATABASE_URL: postgres://postgres:postgres@127.0.0.1:5432/river_test?sslmode=disable
@@ -27,7 +29,7 @@ jobs:
2729
- name: Install Ruby + `bundle install`
2830
uses: ruby/setup-ruby@v1
2931
with:
30-
ruby-version: "head"
32+
ruby-version: ${{ env.RUBY_VERSION }}
3133
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
3234

3335
- name: Build gem (riverqueue-ruby)
@@ -53,7 +55,7 @@ jobs:
5355
- name: Install Ruby + `bundle install`
5456
uses: ruby/setup-ruby@v1
5557
with:
56-
ruby-version: "head"
58+
ruby-version: ${{ env.RUBY_VERSION }}
5759
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
5860

5961
- name: Standard Ruby (riverqueue-ruby)
@@ -87,7 +89,7 @@ jobs:
8789
- name: Install Ruby + `bundle install`
8890
uses: ruby/setup-ruby@v1
8991
with:
90-
ruby-version: "head"
92+
ruby-version: ${{ env.RUBY_VERSION }}
9193
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
9294

9395
- name: Steep (riverqueue-ruby)
@@ -118,7 +120,7 @@ jobs:
118120
- name: Install Ruby + `bundle install`
119121
uses: ruby/setup-ruby@v1
120122
with:
121-
ruby-version: "head"
123+
ruby-version: ${{ env.RUBY_VERSION }}
122124
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
123125

124126
# Needed for River's CLI. There is a version of Go on Actions' base image,

Gemfile.lock

Lines changed: 42 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -13,36 +13,37 @@ PATH
1313
GEM
1414
remote: https://rubygems.org/
1515
specs:
16-
abbrev (0.1.2)
17-
activesupport (7.1.3.2)
16+
activesupport (7.2.1)
1817
base64
1918
bigdecimal
20-
concurrent-ruby (~> 1.0, >= 1.0.2)
19+
concurrent-ruby (~> 1.0, >= 1.3.1)
2120
connection_pool (>= 2.2.5)
2221
drb
2322
i18n (>= 1.6, < 2)
23+
logger (>= 1.4.2)
2424
minitest (>= 5.1)
25-
mutex_m
26-
tzinfo (~> 2.0)
25+
securerandom (>= 0.3)
26+
tzinfo (~> 2.0, >= 2.0.5)
2727
ast (2.4.2)
2828
base64 (0.2.0)
29-
bigdecimal (3.1.7)
30-
concurrent-ruby (1.2.3)
29+
bigdecimal (3.1.8)
30+
concurrent-ruby (1.3.4)
3131
connection_pool (2.4.1)
3232
csv (3.3.0)
3333
debug (1.9.2)
3434
irb (~> 1.10)
3535
reline (>= 0.3.8)
3636
diff-lcs (1.5.1)
37-
docile (1.4.0)
37+
docile (1.4.1)
3838
drb (2.2.1)
39-
ffi (1.16.3)
39+
ffi (1.17.0-arm64-darwin)
40+
ffi (1.17.0-x86_64-linux-gnu)
4041
fileutils (1.7.2)
41-
i18n (1.14.4)
42+
i18n (1.14.5)
4243
concurrent-ruby (~> 1.0)
4344
io-console (0.7.2)
44-
irb (1.12.0)
45-
rdoc
45+
irb (1.14.0)
46+
rdoc (>= 4.0.0)
4647
reline (>= 0.4.2)
4748
json (2.7.2)
4849
language_server-protocol (3.17.0.3)
@@ -51,73 +52,73 @@ GEM
5152
rb-fsevent (~> 0.10, >= 0.10.3)
5253
rb-inotify (~> 0.9, >= 0.9.10)
5354
logger (1.6.0)
54-
minitest (5.22.3)
55-
mutex_m (0.2.0)
56-
parallel (1.24.0)
57-
parser (3.3.0.5)
55+
minitest (5.25.1)
56+
parallel (1.26.3)
57+
parser (3.3.4.2)
5858
ast (~> 2.4.1)
5959
racc
60-
pg (1.5.6)
60+
pg (1.5.7)
6161
psych (5.1.2)
6262
stringio
63-
racc (1.7.3)
63+
racc (1.8.1)
6464
rainbow (3.1.1)
6565
rb-fsevent (0.11.2)
66-
rb-inotify (0.10.1)
66+
rb-inotify (0.11.1)
6767
ffi (~> 1.0)
68-
rbs (3.4.4)
69-
abbrev
70-
rdoc (6.6.3.1)
68+
rbs (3.5.3)
69+
logger
70+
rdoc (6.7.0)
7171
psych (>= 4.0.0)
72-
regexp_parser (2.9.0)
73-
reline (0.5.3)
72+
regexp_parser (2.9.2)
73+
reline (0.5.9)
7474
io-console (~> 0.5)
75-
rexml (3.2.6)
75+
rexml (3.3.6)
76+
strscan
7677
rspec-core (3.13.0)
7778
rspec-support (~> 3.13.0)
78-
rspec-expectations (3.13.0)
79+
rspec-expectations (3.13.2)
7980
diff-lcs (>= 1.2.0, < 2.0)
8081
rspec-support (~> 3.13.0)
8182
rspec-support (3.13.1)
82-
rubocop (1.62.1)
83+
rubocop (1.65.1)
8384
json (~> 2.3)
8485
language_server-protocol (>= 3.17.0)
8586
parallel (~> 1.10)
8687
parser (>= 3.3.0.2)
8788
rainbow (>= 2.2.2, < 4.0)
88-
regexp_parser (>= 1.8, < 3.0)
89+
regexp_parser (>= 2.4, < 3.0)
8990
rexml (>= 3.2.5, < 4.0)
9091
rubocop-ast (>= 1.31.1, < 2.0)
9192
ruby-progressbar (~> 1.7)
9293
unicode-display_width (>= 2.4.0, < 3.0)
93-
rubocop-ast (1.31.2)
94-
parser (>= 3.3.0.4)
95-
rubocop-performance (1.20.2)
94+
rubocop-ast (1.32.1)
95+
parser (>= 3.3.1.0)
96+
rubocop-performance (1.21.1)
9697
rubocop (>= 1.48.1, < 2.0)
97-
rubocop-ast (>= 1.30.0, < 2.0)
98+
rubocop-ast (>= 1.31.1, < 2.0)
9899
ruby-progressbar (1.13.0)
99100
securerandom (0.3.1)
100-
sequel (5.79.0)
101+
sequel (5.83.1)
101102
bigdecimal
102103
simplecov (0.22.0)
103104
docile (~> 1.1)
104105
simplecov-html (~> 0.11)
105106
simplecov_json_formatter (~> 0.1)
106107
simplecov-html (0.12.3)
107108
simplecov_json_formatter (0.1.4)
108-
standard (1.35.1)
109+
standard (1.40.0)
109110
language_server-protocol (~> 3.17.0.2)
110111
lint_roller (~> 1.0)
111-
rubocop (~> 1.62.0)
112+
rubocop (~> 1.65.0)
112113
standard-custom (~> 1.0.0)
113-
standard-performance (~> 1.3)
114+
standard-performance (~> 1.4)
114115
standard-custom (1.0.2)
115116
lint_roller (~> 1.0)
116117
rubocop (~> 1.50)
117-
standard-performance (1.3.1)
118+
standard-performance (1.4.0)
118119
lint_roller (~> 1.1)
119-
rubocop-performance (~> 1.20.2)
120-
steep (1.6.0)
120+
rubocop-performance (~> 1.21.0)
121+
steep (1.7.1)
121122
activesupport (>= 5.1)
122123
concurrent-ruby (>= 1.1.10)
123124
csv (>= 3.0.9)
@@ -128,11 +129,11 @@ GEM
128129
logger (>= 1.3.0)
129130
parser (>= 3.1)
130131
rainbow (>= 2.2.2, < 4.0)
131-
rbs (>= 3.1.0)
132+
rbs (>= 3.5.0.pre)
132133
securerandom (>= 0.1)
133134
strscan (>= 1.0.0)
134135
terminal-table (>= 2, < 4)
135-
stringio (3.1.0)
136+
stringio (3.1.1)
136137
strscan (3.1.0)
137138
terminal-table (3.0.2)
138139
unicode-display_width (>= 1.1.1, < 3)

Makefile

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
11
.DEFAULT_GOAL := help
22

3+
.PHONY: bundle-update
4+
bundle-update: ## Run `bundle update` on gem and all subgems
5+
bundle update
6+
cd driver/riverqueue-activerecord && bundle update
7+
cd driver/riverqueue-sequel && bundle update
8+
39
# Looks at comments using ## on targets and uses them to produce a help output.
410
.PHONY: help
511
help: ALIGN=14
612
help: ## Print this message
713
@awk -F ': .*## ' -- "/^[^':]+: .*## /"' { printf "'$$(tput bold)'%-$(ALIGN)s'$$(tput sgr0)' %s\n", $$1, $$2 }' $(MAKEFILE_LIST)
814

915
.PHONY: lint
10-
lint: standardrb ## Run linter (standardrb)
16+
lint: standardrb ## Run linter (standardrb) on gem and all subgems
1117

1218
.PHONY: rspec
1319
rspec: spec
@@ -29,7 +35,7 @@ steep:
2935
bundle exec steep check
3036

3137
.PHONY: test
32-
test: spec ## Run test suite (Rspec)
38+
test: spec ## Run test suite (rspec) on gem and all subgems
3339

3440
.PHONY: type-check
3541
type-check: steep ## Run type check with Steep

driver/riverqueue-activerecord/Gemfile.lock

Lines changed: 42 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -14,101 +14,105 @@ PATH
1414
GEM
1515
remote: https://rubygems.org/
1616
specs:
17-
activemodel (7.1.3.2)
18-
activesupport (= 7.1.3.2)
19-
activerecord (7.1.3.2)
20-
activemodel (= 7.1.3.2)
21-
activesupport (= 7.1.3.2)
17+
activemodel (7.2.1)
18+
activesupport (= 7.2.1)
19+
activerecord (7.2.1)
20+
activemodel (= 7.2.1)
21+
activesupport (= 7.2.1)
2222
timeout (>= 0.4.0)
23-
activesupport (7.1.3.2)
23+
activesupport (7.2.1)
2424
base64
2525
bigdecimal
26-
concurrent-ruby (~> 1.0, >= 1.0.2)
26+
concurrent-ruby (~> 1.0, >= 1.3.1)
2727
connection_pool (>= 2.2.5)
2828
drb
2929
i18n (>= 1.6, < 2)
30+
logger (>= 1.4.2)
3031
minitest (>= 5.1)
31-
mutex_m
32-
tzinfo (~> 2.0)
32+
securerandom (>= 0.3)
33+
tzinfo (~> 2.0, >= 2.0.5)
3334
ast (2.4.2)
3435
base64 (0.2.0)
35-
bigdecimal (3.1.7)
36-
concurrent-ruby (1.2.3)
36+
bigdecimal (3.1.8)
37+
concurrent-ruby (1.3.4)
3738
connection_pool (2.4.1)
3839
debug (1.9.2)
3940
irb (~> 1.10)
4041
reline (>= 0.3.8)
4142
diff-lcs (1.5.1)
42-
docile (1.4.0)
43+
docile (1.4.1)
4344
drb (2.2.1)
44-
i18n (1.14.4)
45+
i18n (1.14.5)
4546
concurrent-ruby (~> 1.0)
4647
io-console (0.7.2)
47-
irb (1.12.0)
48-
rdoc
48+
irb (1.14.0)
49+
rdoc (>= 4.0.0)
4950
reline (>= 0.4.2)
5051
json (2.7.2)
5152
language_server-protocol (3.17.0.3)
5253
lint_roller (1.1.0)
53-
minitest (5.22.3)
54-
mutex_m (0.2.0)
55-
parallel (1.24.0)
56-
parser (3.3.0.5)
54+
logger (1.6.0)
55+
minitest (5.25.1)
56+
parallel (1.26.3)
57+
parser (3.3.4.2)
5758
ast (~> 2.4.1)
5859
racc
59-
pg (1.5.6)
60+
pg (1.5.7)
6061
psych (5.1.2)
6162
stringio
62-
racc (1.7.3)
63+
racc (1.8.1)
6364
rainbow (3.1.1)
64-
rdoc (6.6.3.1)
65+
rdoc (6.7.0)
6566
psych (>= 4.0.0)
66-
regexp_parser (2.9.0)
67-
reline (0.5.3)
67+
regexp_parser (2.9.2)
68+
reline (0.5.9)
6869
io-console (~> 0.5)
69-
rexml (3.2.6)
70+
rexml (3.3.6)
71+
strscan
7072
rspec-core (3.13.0)
7173
rspec-support (~> 3.13.0)
72-
rspec-expectations (3.13.0)
74+
rspec-expectations (3.13.2)
7375
diff-lcs (>= 1.2.0, < 2.0)
7476
rspec-support (~> 3.13.0)
7577
rspec-support (3.13.1)
76-
rubocop (1.62.1)
78+
rubocop (1.65.1)
7779
json (~> 2.3)
7880
language_server-protocol (>= 3.17.0)
7981
parallel (~> 1.10)
8082
parser (>= 3.3.0.2)
8183
rainbow (>= 2.2.2, < 4.0)
82-
regexp_parser (>= 1.8, < 3.0)
84+
regexp_parser (>= 2.4, < 3.0)
8385
rexml (>= 3.2.5, < 4.0)
8486
rubocop-ast (>= 1.31.1, < 2.0)
8587
ruby-progressbar (~> 1.7)
8688
unicode-display_width (>= 2.4.0, < 3.0)
87-
rubocop-ast (1.31.2)
88-
parser (>= 3.3.0.4)
89-
rubocop-performance (1.20.2)
89+
rubocop-ast (1.32.1)
90+
parser (>= 3.3.1.0)
91+
rubocop-performance (1.21.1)
9092
rubocop (>= 1.48.1, < 2.0)
91-
rubocop-ast (>= 1.30.0, < 2.0)
93+
rubocop-ast (>= 1.31.1, < 2.0)
9294
ruby-progressbar (1.13.0)
95+
securerandom (0.3.1)
9396
simplecov (0.22.0)
9497
docile (~> 1.1)
9598
simplecov-html (~> 0.11)
9699
simplecov_json_formatter (~> 0.1)
97100
simplecov-html (0.12.3)
98101
simplecov_json_formatter (0.1.4)
99-
standard (1.35.1)
102+
standard (1.40.0)
100103
language_server-protocol (~> 3.17.0.2)
101104
lint_roller (~> 1.0)
102-
rubocop (~> 1.62.0)
105+
rubocop (~> 1.65.0)
103106
standard-custom (~> 1.0.0)
104-
standard-performance (~> 1.3)
107+
standard-performance (~> 1.4)
105108
standard-custom (1.0.2)
106109
lint_roller (~> 1.0)
107110
rubocop (~> 1.50)
108-
standard-performance (1.3.1)
111+
standard-performance (1.4.0)
109112
lint_roller (~> 1.1)
110-
rubocop-performance (~> 1.20.2)
111-
stringio (3.1.0)
113+
rubocop-performance (~> 1.21.0)
114+
stringio (3.1.1)
115+
strscan (3.1.0)
112116
timeout (0.4.1)
113117
tzinfo (2.0.6)
114118
concurrent-ruby (~> 1.0)

0 commit comments

Comments
 (0)