Skip to content

Commit d6f4c97

Browse files
Add support RSpec 4.0.0.beta1
Also added both RSpec 3 and 4 in the test matrix. At the same time dropped support for ruby 3.1 as it is a pain to keep the CI working with all the versions. Bundler has also been updated to version 4.
1 parent 1a180ea commit d6f4c97

11 files changed

Lines changed: 191 additions & 34 deletions

File tree

.github/workflows/ci.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,16 @@ jobs:
2121
strategy:
2222
matrix:
2323
ruby:
24-
- '3.1'
2524
- '3.2'
2625
- '3.3'
2726
- '3.4'
28-
name: RSpec tests ruby ${{ matrix.ruby }}
27+
- '4.0'
28+
gemfile:
29+
- rspec3
30+
- rspec4
31+
env:
32+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
33+
name: RSpec tests ruby ${{ matrix.ruby }} with ${{ matrix.gemfile }}
2934
steps:
3035
- name: Check out code
3136
uses: actions/checkout@v6

.rspec

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
--color
21
--require spec_helper
32
--format documentation
43
--format RSpec::Github::Formatter

.rubocop.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
AllCops:
2-
TargetRubyVersion: 3.1
2+
TargetRubyVersion: 3.2
33
NewCops: enable
44

55
# A top class comment is not needed for this simple gem

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ gemspec
77

88
group :development do
99
gem 'rspec', '~> 3.13'
10-
gem 'rubocop', '~> 1.68.0'
10+
gem 'rubocop', '~> 1.85.0'
1111
end

Gemfile.lock

Lines changed: 68 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,57 +2,102 @@ PATH
22
remote: .
33
specs:
44
rspec-github (1.0.0.develop)
5-
rspec-core (~> 3.0)
5+
rspec-core (>= 3.0, < 5)
66

77
GEM
88
remote: https://rubygems.org/
99
specs:
10-
ast (2.4.2)
11-
diff-lcs (1.5.1)
12-
json (2.7.5)
13-
language_server-protocol (3.17.0.3)
14-
parallel (1.26.3)
15-
parser (3.3.5.1)
10+
addressable (2.8.9)
11+
public_suffix (>= 2.0.2, < 8.0)
12+
ast (2.4.3)
13+
bigdecimal (4.0.1)
14+
diff-lcs (1.6.2)
15+
json (2.19.1)
16+
json-schema (6.2.0)
17+
addressable (~> 2.8)
18+
bigdecimal (>= 3.1, < 5)
19+
language_server-protocol (3.17.0.5)
20+
lint_roller (1.1.0)
21+
mcp (0.8.0)
22+
json-schema (>= 4.1)
23+
parallel (1.27.0)
24+
parser (3.3.10.2)
1625
ast (~> 2.4.1)
1726
racc
27+
prism (1.9.0)
28+
public_suffix (7.0.5)
1829
racc (1.8.1)
1930
rainbow (3.1.1)
20-
regexp_parser (2.9.2)
21-
rspec (3.13.0)
31+
regexp_parser (2.11.3)
32+
rspec (3.13.2)
2233
rspec-core (~> 3.13.0)
2334
rspec-expectations (~> 3.13.0)
2435
rspec-mocks (~> 3.13.0)
25-
rspec-core (3.13.2)
36+
rspec-core (3.13.6)
2637
rspec-support (~> 3.13.0)
27-
rspec-expectations (3.13.0)
38+
rspec-expectations (3.13.5)
2839
diff-lcs (>= 1.2.0, < 2.0)
2940
rspec-support (~> 3.13.0)
30-
rspec-mocks (3.13.0)
41+
rspec-mocks (3.13.8)
3142
diff-lcs (>= 1.2.0, < 2.0)
3243
rspec-support (~> 3.13.0)
33-
rspec-support (3.13.1)
34-
rubocop (1.68.0)
44+
rspec-support (3.13.7)
45+
rubocop (1.85.1)
3546
json (~> 2.3)
36-
language_server-protocol (>= 3.17.0)
47+
language_server-protocol (~> 3.17.0.2)
48+
lint_roller (~> 1.1.0)
49+
mcp (~> 0.6)
3750
parallel (~> 1.10)
3851
parser (>= 3.3.0.2)
3952
rainbow (>= 2.2.2, < 4.0)
40-
regexp_parser (>= 2.4, < 3.0)
41-
rubocop-ast (>= 1.32.2, < 2.0)
53+
regexp_parser (>= 2.9.3, < 3.0)
54+
rubocop-ast (>= 1.49.0, < 2.0)
4255
ruby-progressbar (~> 1.7)
43-
unicode-display_width (>= 2.4.0, < 3.0)
44-
rubocop-ast (1.33.1)
45-
parser (>= 3.3.1.0)
56+
unicode-display_width (>= 2.4.0, < 4.0)
57+
rubocop-ast (1.49.1)
58+
parser (>= 3.3.7.2)
59+
prism (~> 1.7)
4660
ruby-progressbar (1.13.0)
47-
unicode-display_width (2.6.0)
61+
unicode-display_width (3.2.0)
62+
unicode-emoji (~> 4.1)
63+
unicode-emoji (4.2.0)
4864

4965
PLATFORMS
5066
ruby
5167

5268
DEPENDENCIES
5369
rspec (~> 3.13)
5470
rspec-github!
55-
rubocop (~> 1.68.0)
71+
rubocop (~> 1.85.0)
72+
73+
CHECKSUMS
74+
addressable (2.8.9) sha256=cc154fcbe689711808a43601dee7b980238ce54368d23e127421753e46895485
75+
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
76+
bigdecimal (4.0.1) sha256=8b07d3d065a9f921c80ceaea7c9d4ae596697295b584c296fe599dd0ad01c4a7
77+
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
78+
json (2.19.1) sha256=dd94fdc59e48bff85913829a32350b3148156bc4fd2a95a2568a78b11344082d
79+
json-schema (6.2.0) sha256=e8bff46ed845a22c1ab2bd0d7eccf831c01fe23bb3920caa4c74db4306813666
80+
language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
81+
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
82+
mcp (0.8.0) sha256=ae8bd146bb8e168852866fd26f805f52744f6326afb3211e073f78a95e0c34fb
83+
parallel (1.27.0) sha256=4ac151e1806b755fb4e2dc2332cbf0e54f2e24ba821ff2d3dcf86bf6dc4ae130
84+
parser (3.3.10.2) sha256=6f60c84aa4bdcedb6d1a2434b738fe8a8136807b6adc8f7f53b97da9bc4e9357
85+
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
86+
public_suffix (7.0.5) sha256=1a8bb08f1bbea19228d3bed6e5ed908d1cb4f7c2726d18bd9cadf60bc676f623
87+
racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
88+
rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
89+
regexp_parser (2.11.3) sha256=ca13f381a173b7a93450e53459075c9b76a10433caadcb2f1180f2c741fc55a4
90+
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
91+
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
92+
rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
93+
rspec-github (1.0.0.develop)
94+
rspec-mocks (3.13.8) sha256=086ad3d3d17533f4237643de0b5c42f04b66348c28bf6b9c2d3f4a3b01af1d47
95+
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
96+
rubocop (1.85.1) sha256=3dbcf9e961baa4c376eeeb2a03913dca5e3987033b04d38fa538aa1e7406cc77
97+
rubocop-ast (1.49.1) sha256=4412f3ee70f6fe4546cc489548e0f6fcf76cafcfa80fa03af67098ffed755035
98+
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
99+
unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
100+
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
56101

57102
BUNDLED WITH
58-
2.6.0
103+
4.0.8

gemfiles/rspec3.gemfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# frozen_string_literal: true
2+
3+
source 'https://rubygems.org'
4+
5+
# Specify your gem's dependencies in rspec-github.gemspec
6+
gemspec path: '../'
7+
8+
group :development do
9+
gem 'rspec', '~> 3.0'
10+
end

gemfiles/rspec3.gemfile.lock

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
PATH
2+
remote: ..
3+
specs:
4+
rspec-github (1.0.0.develop)
5+
rspec-core (>= 3.0, < 5)
6+
7+
GEM
8+
remote: https://rubygems.org/
9+
specs:
10+
diff-lcs (1.6.2)
11+
rspec (3.13.2)
12+
rspec-core (~> 3.13.0)
13+
rspec-expectations (~> 3.13.0)
14+
rspec-mocks (~> 3.13.0)
15+
rspec-core (3.13.6)
16+
rspec-support (~> 3.13.0)
17+
rspec-expectations (3.13.5)
18+
diff-lcs (>= 1.2.0, < 2.0)
19+
rspec-support (~> 3.13.0)
20+
rspec-mocks (3.13.8)
21+
diff-lcs (>= 1.2.0, < 2.0)
22+
rspec-support (~> 3.13.0)
23+
rspec-support (3.13.7)
24+
25+
PLATFORMS
26+
ruby
27+
28+
DEPENDENCIES
29+
rspec (~> 3.0)
30+
rspec-github!
31+
32+
CHECKSUMS
33+
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
34+
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
35+
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
36+
rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
37+
rspec-github (1.0.0.develop)
38+
rspec-mocks (3.13.8) sha256=086ad3d3d17533f4237643de0b5c42f04b66348c28bf6b9c2d3f4a3b01af1d47
39+
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
40+
41+
BUNDLED WITH
42+
4.0.8

gemfiles/rspec4.gemfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# frozen_string_literal: true
2+
3+
source 'https://rubygems.org'
4+
5+
# Specify your gem's dependencies in rspec-github.gemspec
6+
gemspec path: '../'
7+
8+
group :development do
9+
gem 'rspec', '~> 4.0.0.beta1'
10+
end

gemfiles/rspec4.gemfile.lock

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
PATH
2+
remote: ..
3+
specs:
4+
rspec-github (1.0.0.develop)
5+
rspec-core (>= 3.0, < 5)
6+
7+
GEM
8+
remote: https://rubygems.org/
9+
specs:
10+
diff-lcs (2.0.0)
11+
rspec (4.0.0.beta1)
12+
rspec-core (= 4.0.0.beta1)
13+
rspec-expectations (= 4.0.0.beta1)
14+
rspec-mocks (= 4.0.0.beta1)
15+
rspec-core (4.0.0.beta1)
16+
rspec-support (= 4.0.0.beta1)
17+
rspec-expectations (4.0.0.beta1)
18+
diff-lcs (>= 1.6.0, < 3.0)
19+
rspec-support (= 4.0.0.beta1)
20+
rspec-mocks (4.0.0.beta1)
21+
diff-lcs (>= 1.6.0, < 3.0)
22+
rspec-support (= 4.0.0.beta1)
23+
rspec-support (4.0.0.beta1)
24+
25+
PLATFORMS
26+
ruby
27+
28+
DEPENDENCIES
29+
rspec (~> 4.0.0.beta1)
30+
rspec-github!
31+
32+
CHECKSUMS
33+
diff-lcs (2.0.0) sha256=708a5d52ec2945b50f8f53a181174aa1ef2c496edf81c05957fe956dabb363d5
34+
rspec (4.0.0.beta1) sha256=7edd7fb4e25fe5544146268196bc43b610851ea61581f38fe6ac1f03f4ca6114
35+
rspec-core (4.0.0.beta1) sha256=11ad8b2f752d08aa5ecc699bd534f2253fe0939144af94365791f99bbefb575e
36+
rspec-expectations (4.0.0.beta1) sha256=39b3d6b32876796a669ba3128b57a1dc0157056662e5a1ba6447b64831628904
37+
rspec-github (1.0.0.develop)
38+
rspec-mocks (4.0.0.beta1) sha256=6d88d9d89ebc16865ca748a1319740e3f8f5c3ca5c801c0c4cb2b8b76b91c95e
39+
rspec-support (4.0.0.beta1) sha256=8f1231c022af7ccabe527ae05c53a8fab7e59fac5d0cc0e07452c8a395c06a44
40+
41+
BUNDLED WITH
42+
4.0.8

rspec-github.gemspec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
1212
spec.description = 'Formatter for RSpec to show errors in GitHub action annotations'
1313
spec.homepage = 'https://drieam.github.io/rspec-github'
1414
spec.license = 'MIT'
15-
spec.required_ruby_version = Gem::Requirement.new('>= 3.1')
15+
spec.required_ruby_version = Gem::Requirement.new('>= 3.2.0')
1616

1717
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
1818
spec.metadata['homepage_uri'] = spec.homepage
@@ -21,5 +21,5 @@ Gem::Specification.new do |spec|
2121
# Specify which files should be added to the gem when it is released.
2222
spec.files = Dir['{lib}/**/*']
2323

24-
spec.add_dependency 'rspec-core', '~> 3.0'
24+
spec.add_dependency 'rspec-core', '>= 3.0', '< 5'
2525
end

0 commit comments

Comments
 (0)