Skip to content

Commit 451ff6d

Browse files
Reorganize test matrix & use latest bundler
* Rails and Ruby versions follow the most recent to oldest, except for Rails main, so we can keep the Gemfile the first one. * Excluding specific matrix combinations based on the Gemfile first, Ruby version next, and keep the same order (most recent -> oldest) * Quote all Ruby versions to keep things consistent. It's required for the '3.0' version to avoid the float issue where it'd use the latest 3.x instead.
1 parent 542df36 commit 451ff6d

3 files changed

Lines changed: 112 additions & 118 deletions

File tree

.github/workflows/test.yml

Lines changed: 110 additions & 116 deletions
Original file line numberDiff line numberDiff line change
@@ -16,127 +16,121 @@ jobs:
1616
- gemfiles/Gemfile-rails-4-2
1717
- gemfiles/Gemfile-rails-4-1
1818
ruby:
19-
- 2.1
20-
- 2.2
21-
- 2.3
22-
- 2.4
23-
- 2.5
24-
- 2.6
25-
- 2.7
19+
- '3.1'
2620
- '3.0'
27-
- 3.1
21+
- '2.7'
22+
- '2.6'
23+
- '2.5'
24+
- '2.4'
25+
- '2.3'
26+
- '2.2'
27+
- '2.1'
2828
env:
2929
- DEVISE_ORM=active_record
3030
- DEVISE_ORM=mongoid
3131
exclude:
32-
- ruby: 2.1
33-
gemfile: Gemfile
34-
- ruby: 2.1
35-
gemfile: gemfiles/Gemfile-rails-6-0
36-
- ruby: 2.1
37-
gemfile: gemfiles/Gemfile-rails-6-1
38-
- ruby: 2.1
39-
gemfile: gemfiles/Gemfile-rails-main
40-
- ruby: 2.1
41-
gemfile: gemfiles/Gemfile-rails-5-2
42-
- ruby: 2.1
43-
gemfile: gemfiles/Gemfile-rails-5-1
44-
- ruby: 2.1
45-
gemfile: gemfiles/Gemfile-rails-5-0
46-
- ruby: 2.2
47-
gemfile: Gemfile
48-
- ruby: 2.2
49-
gemfile: gemfiles/Gemfile-rails-6-0
50-
- ruby: 2.2
51-
gemfile: gemfiles/Gemfile-rails-6-1
52-
- ruby: 2.2
53-
gemfile: gemfiles/Gemfile-rails-main
54-
- ruby: 2.2
55-
gemfile: gemfiles/Gemfile-rails-5-2
56-
- ruby: 2.3
57-
gemfile: Gemfile
58-
- ruby: 2.3
59-
gemfile: gemfiles/Gemfile-rails-6-0
60-
- ruby: 2.3
61-
gemfile: gemfiles/Gemfile-rails-6-1
62-
- ruby: 2.3
63-
gemfile: gemfiles/Gemfile-rails-main
64-
- ruby: 2.4
65-
gemfile: Gemfile
66-
- ruby: 2.4
67-
gemfile: gemfiles/Gemfile-rails-6-0
68-
- ruby: 2.4
69-
gemfile: gemfiles/Gemfile-rails-6-1
70-
- ruby: 2.4
71-
gemfile: gemfiles/Gemfile-rails-main
72-
- ruby: 2.4
73-
gemfile: gemfiles/Gemfile-rails-4-1
74-
- ruby: 2.5
75-
gemfile: gemfiles/Gemfile-rails-4-1
76-
- ruby: 2.5
77-
gemfile: gemfiles/Gemfile-rails-main
78-
- ruby: 2.5
79-
gemfile: Gemfile
80-
- ruby: 2.6
81-
gemfile: gemfiles/Gemfile-rails-4-1
82-
- ruby: 2.6
83-
gemfile: gemfiles/Gemfile-rails-4-2
84-
- ruby: 2.6
85-
gemfile: Gemfile
86-
- ruby: 2.6
87-
gemfile: gemfiles/Gemfile-rails-main
88-
- ruby: 2.7
89-
gemfile: gemfiles/Gemfile-rails-4-1
90-
- ruby: 2.7
91-
gemfile: gemfiles/Gemfile-rails-4-2
92-
- ruby: 2.7
93-
gemfile: gemfiles/Gemfile-rails-5-0
94-
- ruby: 2.7
95-
gemfile: gemfiles/Gemfile-rails-5-1
96-
- ruby: 2.7
97-
gemfile: gemfiles/Gemfile-rails-5-2
98-
- ruby: '3.0'
99-
gemfile: gemfiles/Gemfile-rails-4-1
100-
- ruby: '3.0'
101-
gemfile: gemfiles/Gemfile-rails-4-2
102-
- ruby: '3.0'
103-
gemfile: gemfiles/Gemfile-rails-5-0
104-
- ruby: '3.0'
105-
gemfile: gemfiles/Gemfile-rails-5-1
106-
- ruby: '3.0'
107-
gemfile: gemfiles/Gemfile-rails-5-2
108-
- ruby: 3.1
109-
gemfile: gemfiles/Gemfile-rails-5-1
110-
- ruby: 3.1
111-
gemfile: gemfiles/Gemfile-rails-5-2
112-
- ruby: 3.1
113-
gemfile: gemfiles/Gemfile-rails-4-1
114-
- ruby: 3.1
115-
gemfile: gemfiles/Gemfile-rails-4-2
116-
- ruby: 3.1
117-
gemfile: gemfiles/Gemfile-rails-5-0
118-
- ruby: 3.1
119-
gemfile: gemfiles/Gemfile-rails-5-1
120-
- ruby: 3.1
121-
gemfile: gemfiles/Gemfile-rails-5-2
122-
- ruby: 3.1
123-
gemfile: gemfiles/Gemfile-rails-6-0
124-
- env: DEVISE_ORM=mongoid
125-
gemfile: Gemfile
126-
- env: DEVISE_ORM=mongoid
127-
gemfile: gemfiles/Gemfile-rails-5-0
128-
- env: DEVISE_ORM=mongoid
129-
gemfile: gemfiles/Gemfile-rails-5-1
130-
- env: DEVISE_ORM=mongoid
131-
gemfile: gemfiles/Gemfile-rails-5-2
132-
- env: DEVISE_ORM=mongoid
133-
gemfile: gemfiles/Gemfile-rails-6-0
134-
- env: DEVISE_ORM=mongoid
135-
gemfile: gemfiles/Gemfile-rails-6-1
136-
- env: DEVISE_ORM=mongoid
137-
gemfile: Gemfile
138-
- env: DEVISE_ORM=mongoid
139-
gemfile: gemfiles/Gemfile-rails-main
32+
- gemfile: Gemfile
33+
ruby: '2.6'
34+
- gemfile: Gemfile
35+
ruby: '2.5'
36+
- gemfile: Gemfile
37+
ruby: '2.4'
38+
- gemfile: Gemfile
39+
ruby: '2.3'
40+
- gemfile: Gemfile
41+
ruby: '2.2'
42+
- gemfile: Gemfile
43+
ruby: '2.1'
44+
- gemfile: Gemfile
45+
env: DEVISE_ORM=mongoid
46+
- gemfile: gemfiles/Gemfile-rails-main
47+
ruby: '2.6'
48+
- gemfile: gemfiles/Gemfile-rails-main
49+
ruby: '2.5'
50+
- gemfile: gemfiles/Gemfile-rails-main
51+
ruby: '2.4'
52+
- gemfile: gemfiles/Gemfile-rails-main
53+
ruby: '2.3'
54+
- gemfile: gemfiles/Gemfile-rails-main
55+
ruby: '2.2'
56+
- gemfile: gemfiles/Gemfile-rails-main
57+
ruby: '2.1'
58+
- gemfile: gemfiles/Gemfile-rails-main
59+
env: DEVISE_ORM=mongoid
60+
- gemfile: gemfiles/Gemfile-rails-6-1
61+
ruby: '2.4'
62+
- gemfile: gemfiles/Gemfile-rails-6-1
63+
ruby: '2.3'
64+
- gemfile: gemfiles/Gemfile-rails-6-1
65+
ruby: '2.2'
66+
- gemfile: gemfiles/Gemfile-rails-6-1
67+
ruby: '2.1'
68+
- gemfile: gemfiles/Gemfile-rails-6-1
69+
env: DEVISE_ORM=mongoid
70+
- gemfile: gemfiles/Gemfile-rails-6-0
71+
ruby: '3.1'
72+
- gemfile: gemfiles/Gemfile-rails-6-0
73+
ruby: '2.4'
74+
- gemfile: gemfiles/Gemfile-rails-6-0
75+
ruby: '2.3'
76+
- gemfile: gemfiles/Gemfile-rails-6-0
77+
ruby: '2.2'
78+
- gemfile: gemfiles/Gemfile-rails-6-0
79+
ruby: '2.1'
80+
- gemfile: gemfiles/Gemfile-rails-6-0
81+
env: DEVISE_ORM=mongoid
82+
- gemfile: gemfiles/Gemfile-rails-5-2
83+
ruby: '3.1'
84+
- gemfile: gemfiles/Gemfile-rails-5-2
85+
ruby: '3.0'
86+
- gemfile: gemfiles/Gemfile-rails-5-2
87+
ruby: '2.7'
88+
- gemfile: gemfiles/Gemfile-rails-5-2
89+
ruby: '2.2'
90+
- gemfile: gemfiles/Gemfile-rails-5-2
91+
ruby: '2.1'
92+
- gemfile: gemfiles/Gemfile-rails-5-2
93+
env: DEVISE_ORM=mongoid
94+
- gemfile: gemfiles/Gemfile-rails-5-1
95+
ruby: '3.1'
96+
- gemfile: gemfiles/Gemfile-rails-5-1
97+
ruby: '3.0'
98+
- gemfile: gemfiles/Gemfile-rails-5-1
99+
ruby: '2.7'
100+
- gemfile: gemfiles/Gemfile-rails-5-1
101+
ruby: '2.1'
102+
- gemfile: gemfiles/Gemfile-rails-5-1
103+
env: DEVISE_ORM=mongoid
104+
- gemfile: gemfiles/Gemfile-rails-5-0
105+
ruby: '3.1'
106+
- gemfile: gemfiles/Gemfile-rails-5-0
107+
ruby: '3.0'
108+
- gemfile: gemfiles/Gemfile-rails-5-0
109+
ruby: '2.7'
110+
- gemfile: gemfiles/Gemfile-rails-5-0
111+
ruby: '2.1'
112+
- gemfile: gemfiles/Gemfile-rails-5-0
113+
env: DEVISE_ORM=mongoid
114+
- gemfile: gemfiles/Gemfile-rails-4-2
115+
ruby: '3.1'
116+
- gemfile: gemfiles/Gemfile-rails-4-2
117+
ruby: '3.0'
118+
- gemfile: gemfiles/Gemfile-rails-4-2
119+
ruby: '2.7'
120+
- gemfile: gemfiles/Gemfile-rails-4-2
121+
ruby: '2.6'
122+
- gemfile: gemfiles/Gemfile-rails-4-1
123+
ruby: '3.1'
124+
- gemfile: gemfiles/Gemfile-rails-4-1
125+
ruby: '3.0'
126+
- gemfile: gemfiles/Gemfile-rails-4-1
127+
ruby: '2.7'
128+
- gemfile: gemfiles/Gemfile-rails-4-1
129+
ruby: '2.6'
130+
- gemfile: gemfiles/Gemfile-rails-4-1
131+
ruby: '2.5'
132+
- gemfile: gemfiles/Gemfile-rails-4-1
133+
ruby: '2.4'
140134
runs-on: ubuntu-latest
141135
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
142136
BUNDLE_GEMFILE: ${{ matrix.gemfile }}

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,4 +239,4 @@ DEPENDENCIES
239239
webrat (= 0.7.3)
240240

241241
BUNDLED WITH
242-
2.3.4
242+
2.3.8

gemfiles/Gemfile-rails-6-1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ gem "rails-controller-testing", github: "rails/rails-controller-testing"
1313

1414
gem "responders", "~> 3.0"
1515

16-
if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new("3.1")
16+
if RUBY_VERSION >= "3.1"
1717
gem "net-smtp", require: false
1818
gem "net-imap", require: false
1919
gem "net-pop", require: false

0 commit comments

Comments
 (0)