arel_extensions 2.1.5 → 2.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 460764a1fc17c5359b553da4b62d75b2300cc4a0ead64ce1ddcf3e897d703045
4
- data.tar.gz: 751125d207b3485e3220b6335cbd7050516ea7d8bb8cd88b3810e00c0a80fb86
3
+ metadata.gz: f586ca440095febfcae38a3b2d2b911069751db2cb4817f08edecb4561edc829
4
+ data.tar.gz: 8dca7e2bbbf5e14ebb54176cf1a73419765f1d4a0f2d2bf70593b9a4ee5d063d
5
5
  SHA512:
6
- metadata.gz: a8781a647977d941173ed7dc68c256bb85ecf4c490908baa21ec1e36f32a35e4c175f5c51a69a50e3af4b4921c4575a5bacb8b3748ffe46a8852bac08bb1444c
7
- data.tar.gz: 45dbf8f8537750c23ef4d7718cfed20a5e5618b86d84cd4f23154db6e9a92fdef9a4befec53ac29da230e21fbcf8c98f311a3ceef89532cc947cb0a9d3c39f31
6
+ metadata.gz: 7adc670c444b2bd553420c42f6cc8d5df2fed537fe252d99dd20dbb8603b89727472804b72842da5166670f0eb91b29918bd592de439c2d728f5586b229f54c1
7
+ data.tar.gz: 0bb2be5b50e1ed8afce7f17541305ab72206ae01ad15a07859c41f4b4e77683e8e42f7868673cb6e8abf53b9384e88af75fdc0f8d01ba9730b4973e67e73826c
@@ -6,159 +6,147 @@ name: Build and Test
6
6
  on: [push, pull_request]
7
7
 
8
8
  jobs:
9
- job_build_gem:
10
- name: build
11
- runs-on: ubuntu-latest
12
- strategy:
13
- matrix:
14
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
15
- rails: [7, 6_1, 6, 5_2]
16
- exclude: [
17
- {ruby: 3.1, rails: 6 },
18
- {ruby: 3.1, rails: 5_2},
19
- {ruby: 3.0, rails: 6 },
20
- {ruby: 3.0, rails: 5_2},
21
- {ruby: 2.7, rails: 5_2},
22
- {ruby: 2.5, rails: 7 },
23
- {ruby: jruby-9.2, rails: 7 },
24
- {ruby: jruby-9.3, rails: 7 },
25
- ]
26
- steps:
27
- - uses: actions/checkout@v2
28
- - name: Set up Ruby
29
- uses: ruby/setup-ruby@v1
30
- with:
31
- ruby-version: ${{ matrix.ruby }}
32
- - name: Setup gemspec
33
- if: ${{ matrix.rails != '5_2' }}
34
- run: |
35
- cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
36
- cp ./version_v2.rb lib/arel_extensions/version.rb
37
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
38
- - name: Build source gem
39
- run: gem build arel_extensions.gemspec
40
- - name: Upload source gem
41
- uses: actions/upload-artifact@v2
42
- with:
43
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
44
- path: "*.gem"
45
-
46
9
  job_test_to_sql:
47
10
  name: test to_sql
48
- needs: job_build_gem
49
11
  runs-on: ubuntu-latest
50
12
  strategy:
51
13
  fail-fast: false
52
14
  matrix:
53
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
54
- rails: [7, 6_1, 6, 5_2]
55
- exclude: [
56
- {ruby: 3.1, rails: 6 },
57
- {ruby: 3.1, rails: 5_2},
58
- {ruby: 3.0, rails: 6 },
59
- {ruby: 3.0, rails: 5_2},
60
- {ruby: 2.7, rails: 5_2},
61
- {ruby: 2.5, rails: 7 },
62
- {ruby: jruby-9.2, rails: 7},
63
- {ruby: jruby-9.3, rails: 7},
15
+ versions: [
16
+ {ruby: '3.2', rails: 7, arelx: 2},
17
+ {ruby: '3.2', rails: 6_1, arelx: 2},
18
+ {ruby: '3.1', rails: 7, arelx: 2},
19
+ {ruby: '3.1', rails: 6_1, arelx: 2},
20
+ {ruby: '3.0', rails: 7, arelx: 2},
21
+ {ruby: '3.0', rails: 6_1, arelx: 2},
22
+ {ruby: '2.7', rails: 7, arelx: 2},
23
+ {ruby: '2.7', rails: 6_1, arelx: 2},
24
+ {ruby: '2.7', rails: 6, arelx: 2},
25
+ {ruby: '2.7', rails: 5_2, arelx: 1},
26
+ {ruby: '2.7', rails: 4_2, arelx: 1},
27
+ {ruby: '2.5', rails: 6_1, arelx: 2},
28
+ {ruby: '2.5', rails: 6, arelx: 2},
29
+ {ruby: '2.5', rails: 5_2, arelx: 1},
30
+ {ruby: '2.5', rails: 4_2, arelx: 1},
31
+ {ruby: jruby-9.2, rails: 6_1, arelx: 2},
32
+ {ruby: jruby-9.2, rails: 6, arelx: 2},
33
+ {ruby: jruby-9.2, rails: 5_2, arelx: 1},
34
+ {ruby: jruby-9.3, rails: 6_1, arelx: 2},
35
+ {ruby: jruby-9.3, rails: 6, arelx: 2},
36
+ {ruby: jruby-9.3, rails: 5_2, arelx: 1},
64
37
  ]
65
38
  steps:
66
39
  - uses: actions/checkout@v2
67
40
  - name: Set up Ruby
68
41
  uses: ruby/setup-ruby@v1
69
42
  with:
70
- ruby-version: ${{ matrix.ruby }}
43
+ ruby-version: ${{ matrix.versions.ruby }}
71
44
  - name: Install FreeTDS
72
45
  run: |
73
46
  sudo apt-get update -q
74
47
  sudo apt-get install -y freetds-dev
75
48
  - name: Update system-wide gems
76
- run: gem update --system
77
- - name: Download gem from build job
78
- uses: actions/download-artifact@v2
79
- with:
80
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
81
- - name: Setup Gemfile
82
- if: ${{ matrix.rails != '5_2' }}
49
+ if: ${{ !contains(fromJson('["2.5", "jruby-9.2"]'), matrix.versions.ruby) }}
50
+ run: gem update --system --no-document
51
+ - name: Setup Gemfile for arelx 2.x
52
+ if: ${{ matrix.versions.arelx == 2 }}
83
53
  run: |
84
54
  cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
85
55
  cp ./version_v2.rb lib/arel_extensions/version.rb
86
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
56
+ cp ./gemfiles/rails${{ matrix.versions.rails }}.gemfile ./Gemfile
87
57
  - name: bundle install
88
58
  run: |
89
- bundle config set gemfile ./gemfiles/rails${{ matrix.rails }}.gemfile
59
+ bundle config set gemfile ./gemfiles/rails${{ matrix.versions.rails }}.gemfile
90
60
  bundle install
91
61
  - name: Run test to_sql
92
62
  run: bundle exec rake test:to_sql
93
63
 
94
64
  job_test_sqlite:
95
65
  name: test sqlite
96
- needs: job_build_gem
97
66
  runs-on: ubuntu-latest
98
67
  strategy:
99
68
  fail-fast: false
100
69
  matrix:
101
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
102
- rails: [7, 6_1, 6, 5_2]
103
- exclude: [
104
- {ruby: 3.1, rails: 6 },
105
- {ruby: 3.1, rails: 5_2},
106
- {ruby: 3.0, rails: 6 },
107
- {ruby: 3.0, rails: 5_2},
108
- {ruby: 2.7, rails: 5_2},
109
- {ruby: 2.5, rails: 7 },
110
- {ruby: jruby-9.2, rails: 7},
111
- {ruby: jruby-9.3, rails: 7},
70
+ versions: [
71
+ {ruby: '3.2', rails: 7, arelx: 2},
72
+ {ruby: '3.2', rails: 6_1, arelx: 2},
73
+ {ruby: '3.1', rails: 7, arelx: 2},
74
+ {ruby: '3.1', rails: 6_1, arelx: 2},
75
+ {ruby: '3.0', rails: 7, arelx: 2},
76
+ {ruby: '3.0', rails: 6_1, arelx: 2},
77
+ {ruby: '2.7', rails: 7, arelx: 2},
78
+ {ruby: '2.7', rails: 6_1, arelx: 2},
79
+ {ruby: '2.7', rails: 6, arelx: 2},
80
+ {ruby: '2.7', rails: 5_2, arelx: 1},
81
+ {ruby: '2.7', rails: 4_2, arelx: 1},
82
+ {ruby: '2.5', rails: 6_1, arelx: 2},
83
+ {ruby: '2.5', rails: 6, arelx: 2},
84
+ {ruby: '2.5', rails: 5_2, arelx: 1},
85
+ {ruby: '2.5', rails: 4_2, arelx: 1},
86
+ {ruby: jruby-9.2, rails: 6_1, arelx: 2},
87
+ {ruby: jruby-9.2, rails: 6, arelx: 2},
88
+ {ruby: jruby-9.2, rails: 5_2, arelx: 1},
89
+ {ruby: jruby-9.2, rails: 4_2, arelx: 1},
90
+ {ruby: jruby-9.3, rails: 6_1, arelx: 2},
91
+ {ruby: jruby-9.3, rails: 6, arelx: 2},
92
+ {ruby: jruby-9.3, rails: 5_2, arelx: 1},
112
93
  ]
113
94
  steps:
114
95
  - uses: actions/checkout@v2
115
96
  - name: Set up Ruby
116
97
  uses: ruby/setup-ruby@v1
117
98
  with:
118
- ruby-version: ${{ matrix.ruby }}
99
+ ruby-version: ${{ matrix.versions.ruby }}
119
100
  - name: Install FreeTDS
120
101
  run: |
121
102
  sudo apt-get update -q
122
103
  sudo apt-get install -y freetds-dev
123
104
  - name: Update system-wide gems
124
- run: gem update --system
125
- - name: Download gem from build job
126
- uses: actions/download-artifact@v2
127
- with:
128
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
105
+ if: ${{ !contains(fromJson('["2.5", "jruby-9.2"]'), matrix.versions.ruby) }}
106
+ run: gem update --system --no-document
129
107
  - name: Setup Gemfile
130
- if: ${{ matrix.rails != '5_2' }}
108
+ if: ${{ matrix.versions.arelx == 2 }}
131
109
  run: |
132
110
  cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
133
111
  cp ./version_v2.rb lib/arel_extensions/version.rb
134
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
112
+ cp ./gemfiles/rails${{ matrix.versions.rails }}.gemfile ./Gemfile
135
113
  - name: bundle install
136
114
  run: |
137
- bundle config set gemfile ./gemfiles/rails${{ matrix.rails }}.gemfile
115
+ bundle config set gemfile ./gemfiles/rails${{ matrix.versions.rails }}.gemfile
138
116
  bundle install
139
117
  - name: Run test sqlite
140
118
  run: bundle exec rake test:sqlite
141
119
 
142
120
  job_test_postgres:
143
121
  name: test postgres
144
- needs: job_build_gem
145
122
  runs-on: ubuntu-latest
146
123
  strategy:
147
124
  fail-fast: false
148
125
  matrix:
149
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
150
- rails: [7, 6_1, 6, 5_2]
151
- exclude:
152
- [
153
- { ruby: 3.1, rails: 6 },
154
- { ruby: 3.1, rails: 5_2 },
155
- { ruby: 3.0, rails: 6 },
156
- { ruby: 3.0, rails: 5_2 },
157
- { ruby: 2.7, rails: 5_2 },
158
- { ruby: 2.5, rails: 7 },
159
- { ruby: jruby-9.2, rails: 7 },
160
- { ruby: jruby-9.3, rails: 7 },
161
- ]
126
+ versions: [
127
+ {ruby: '3.2', rails: 7, arelx: 2},
128
+ {ruby: '3.2', rails: 6_1, arelx: 2},
129
+ {ruby: '3.1', rails: 7, arelx: 2},
130
+ {ruby: '3.1', rails: 6_1, arelx: 2},
131
+ {ruby: '3.0', rails: 7, arelx: 2},
132
+ {ruby: '3.0', rails: 6_1, arelx: 2},
133
+ {ruby: '2.7', rails: 7, arelx: 2},
134
+ {ruby: '2.7', rails: 6_1, arelx: 2},
135
+ {ruby: '2.7', rails: 6, arelx: 2},
136
+ {ruby: '2.7', rails: 5_2, arelx: 1},
137
+ {ruby: '2.7', rails: 4_2, arelx: 1},
138
+ {ruby: '2.5', rails: 6_1, arelx: 2},
139
+ {ruby: '2.5', rails: 6, arelx: 2},
140
+ {ruby: '2.5', rails: 5_2, arelx: 1},
141
+ {ruby: '2.5', rails: 4_2, arelx: 1},
142
+ {ruby: jruby-9.2, rails: 6_1, arelx: 2},
143
+ {ruby: jruby-9.2, rails: 6, arelx: 2},
144
+ {ruby: jruby-9.2, rails: 5_2, arelx: 1},
145
+ {ruby: jruby-9.2, rails: 4_2, arelx: 1},
146
+ {ruby: jruby-9.3, rails: 6_1, arelx: 2},
147
+ {ruby: jruby-9.3, rails: 6, arelx: 2},
148
+ {ruby: jruby-9.3, rails: 5_2, arelx: 1},
149
+ ]
162
150
  steps:
163
151
  - uses: actions/checkout@v2
164
152
  # PostgreSQL requires locales to be installed on the system to be able
@@ -186,26 +174,23 @@ jobs:
186
174
  - name: Set up Ruby
187
175
  uses: ruby/setup-ruby@v1
188
176
  with:
189
- ruby-version: ${{ matrix.ruby }}
177
+ ruby-version: ${{ matrix.versions.ruby }}
190
178
  - name: Install FreeTDS
191
179
  run: |
192
180
  sudo apt-get update -q
193
181
  sudo apt-get install -y freetds-dev
194
182
  - name: Update system-wide gems
195
- run: gem update --system
196
- - name: Download gem from build job
197
- uses: actions/download-artifact@v2
198
- with:
199
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
183
+ if: ${{ !contains(fromJson('["2.5", "jruby-9.2"]'), matrix.versions.ruby) }}
184
+ run: gem update --system --no-document
200
185
  - name: Setup Gemfile
201
- if: ${{ matrix.rails != '5_2' }}
186
+ if: ${{ matrix.versions.arelx == 2 }}
202
187
  run: |
203
188
  cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
204
189
  cp ./version_v2.rb lib/arel_extensions/version.rb
205
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
190
+ cp ./gemfiles/rails${{ matrix.versions.rails }}.gemfile ./Gemfile
206
191
  - name: bundle install
207
192
  run: |
208
- bundle config set gemfile ./gemfiles/rails${{ matrix.rails }}.gemfile
193
+ bundle config set gemfile ./gemfiles/rails${{ matrix.versions.rails }}.gemfile
209
194
  bundle install
210
195
  - name: Run test Postgres
211
196
  env:
@@ -215,22 +200,33 @@ jobs:
215
200
 
216
201
  job_test_mysql:
217
202
  name: test mysql
218
- needs: job_build_gem
219
203
  runs-on: ubuntu-latest
220
204
  strategy:
221
205
  fail-fast: false
222
206
  matrix:
223
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
224
- rails: [7, 6_1, 6, 5_2]
225
- exclude: [
226
- {ruby: 3.1, rails: 6 },
227
- {ruby: 3.1, rails: 5_2},
228
- {ruby: 3.0, rails: 6 },
229
- {ruby: 3.0, rails: 5_2},
230
- {ruby: 2.7, rails: 5_2},
231
- {ruby: 2.5, rails: 7 },
232
- {ruby: jruby-9.2, rails: 7 },
233
- {ruby: jruby-9.3, rails: 7 },
207
+ versions: [
208
+ {ruby: '3.2', rails: 7, arelx: 2},
209
+ {ruby: '3.2', rails: 6_1, arelx: 2},
210
+ {ruby: '3.1', rails: 7, arelx: 2},
211
+ {ruby: '3.1', rails: 6_1, arelx: 2},
212
+ {ruby: '3.0', rails: 7, arelx: 2},
213
+ {ruby: '3.0', rails: 6_1, arelx: 2},
214
+ {ruby: '2.7', rails: 7, arelx: 2},
215
+ {ruby: '2.7', rails: 6_1, arelx: 2},
216
+ {ruby: '2.7', rails: 6, arelx: 2},
217
+ {ruby: '2.7', rails: 5_2, arelx: 1},
218
+ {ruby: '2.7', rails: 4_2, arelx: 1},
219
+ {ruby: '2.5', rails: 6_1, arelx: 2},
220
+ {ruby: '2.5', rails: 6, arelx: 2},
221
+ {ruby: '2.5', rails: 5_2, arelx: 1},
222
+ {ruby: '2.5', rails: 4_2, arelx: 1},
223
+ {ruby: jruby-9.2, rails: 6_1, arelx: 2},
224
+ {ruby: jruby-9.2, rails: 6, arelx: 2},
225
+ {ruby: jruby-9.2, rails: 5_2, arelx: 1},
226
+ {ruby: jruby-9.2, rails: 4_2, arelx: 1},
227
+ {ruby: jruby-9.3, rails: 6_1, arelx: 2},
228
+ {ruby: jruby-9.3, rails: 6, arelx: 2},
229
+ {ruby: jruby-9.3, rails: 5_2, arelx: 1},
234
230
  ]
235
231
  services:
236
232
  mysql:
@@ -251,26 +247,23 @@ jobs:
251
247
  - name: Set up Ruby
252
248
  uses: ruby/setup-ruby@v1
253
249
  with:
254
- ruby-version: ${{ matrix.ruby }}
250
+ ruby-version: ${{ matrix.versions.ruby }}
255
251
  - name: Install FreeTDS
256
252
  run: |
257
253
  sudo apt-get update -q
258
254
  sudo apt-get install -y freetds-dev
259
255
  - name: Update system-wide gems
260
- run: gem update --system
261
- - name: Download gem from build job
262
- uses: actions/download-artifact@v2
263
- with:
264
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
256
+ if: ${{ !contains(fromJson('["2.5", "jruby-9.2"]'), matrix.versions.ruby) }}
257
+ run: gem update --system --no-document
265
258
  - name: Setup Gemfile
266
- if: ${{ matrix.rails != '5_2' }}
259
+ if: ${{ matrix.versions.arelx == 2 }}
267
260
  run: |
268
261
  cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
269
262
  cp ./version_v2.rb lib/arel_extensions/version.rb
270
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
263
+ cp ./gemfiles/rails${{ matrix.versions.rails }}.gemfile ./Gemfile
271
264
  - name: bundle install
272
265
  run: |
273
- bundle config set gemfile ./gemfiles/rails${{ matrix.rails }}.gemfile
266
+ bundle config set gemfile ./gemfiles/rails${{ matrix.versions.rails }}.gemfile
274
267
  bundle install
275
268
  - name: Run test MySql
276
269
  env:
@@ -283,59 +276,69 @@ jobs:
283
276
 
284
277
  job_test_mssql:
285
278
  name: test mssql on linux
286
- needs: job_build_gem
287
279
  runs-on: ubuntu-latest
288
280
  strategy:
289
281
  fail-fast: false
290
282
  matrix:
291
- ruby: [3.1, 3.0, 2.7, 2.5, jruby-9.2, jruby-9.3]
292
- rails: [6_1, 6, 5_2]
293
- version: [2017, 2019]
294
- exclude: [
295
- {ruby: 3.1, rails: 6 },
296
- {ruby: 3.1, rails: 5_2 },
297
- {ruby: 3.0, rails: 6 },
298
- {ruby: 3.0, rails: 5_2 },
299
- {ruby: 2.7, rails: 5_2 },
300
- # {ruby: 2.5, rails: 7 },
301
- # {ruby: jruby-9.2, rails: 7 },
302
- {ruby: jruby-9.2, rails: 6_1 },
303
- {ruby: jruby-9.2, rails: 6 },
304
- # {ruby: jruby-9.3, rails: 7 },
305
- {ruby: jruby-9.3, rails: 6_1 },
306
- {ruby: jruby-9.3, rails: 6 },
283
+ versions: [
284
+ # {ruby: '3.2', rails: 7, arelx: 2},
285
+ {ruby: '3.2', rails: 6_1, arelx: 2},
286
+ # {ruby: '3.1', rails: 7, arelx: 2},
287
+ {ruby: '3.1', rails: 6_1, arelx: 2},
288
+ # {ruby: '3.0', rails: 7, arelx: 2},
289
+ {ruby: '3.0', rails: 6_1, arelx: 2},
290
+ # {ruby: '2.7', rails: 7, arelx: 2},
291
+ {ruby: '2.7', rails: 6_1, arelx: 2},
292
+ {ruby: '2.7', rails: 6, arelx: 2},
293
+ {ruby: '2.7', rails: 5_2, arelx: 1},
294
+ {ruby: '2.7', rails: 4_2, arelx: 1},
295
+ {ruby: '2.5', rails: 6_1, arelx: 2},
296
+ {ruby: '2.5', rails: 6, arelx: 2},
297
+ {ruby: '2.5', rails: 5_2, arelx: 1},
298
+ {ruby: '2.5', rails: 4_2, arelx: 1},
299
+ # {ruby: jruby-9.2, rails: 6_1, arelx: 2},
300
+ # {ruby: jruby-9.2, rails: 6, arelx: 2},
301
+ {ruby: jruby-9.2, rails: 5_2, arelx: 1},
302
+ {ruby: jruby-9.2, rails: 4_2, arelx: 1},
303
+ # {ruby: jruby-9.3, rails: 6_1, arelx: 2},
304
+ # {ruby: jruby-9.3, rails: 6, arelx: 2},
305
+ {ruby: jruby-9.3, rails: 5_2, arelx: 1},
307
306
  ]
307
+ mssql: [2017, 2019]
308
308
  steps:
309
309
  - uses: actions/checkout@v2
310
310
  - name: Set up Ruby
311
311
  uses: ruby/setup-ruby@v1
312
312
  with:
313
- ruby-version: ${{ matrix.ruby }}
313
+ ruby-version: ${{ matrix.versions.ruby }}
314
314
  - name: Install FreeTDS
315
315
  run: |
316
316
  sudo apt-get update -q
317
317
  sudo apt-get install -y freetds-dev
318
- - name: Install MSSQL ${{ matrix.version }}
318
+ - name: Install MSSQL ${{ matrix.mssql }}
319
319
  uses: potatoqualitee/mssqlsuite@v1.5.1
320
320
  with:
321
- version: ${{ matrix.version }}
321
+ version: ${{ matrix.mssql }}
322
322
  install: sqlengine, sqlclient, sqlpackage, localdb
323
323
  sa-password: Password12!
324
324
  - name: Update system-wide gems
325
- run: gem update --system
326
- - name: Download gem from build job
327
- uses: actions/download-artifact@v2
328
- with:
329
- name: ${{ matrix.ruby }}-${{ matrix.rails }}-gem
325
+ if: ${{ !contains(fromJson('["2.5", "jruby-9.2"]'), matrix.versions.ruby) }}
326
+ run: gem update --system --no-document
330
327
  - name: Setup Gemfile
331
- if: ${{ matrix.rails != '5_2' }}
328
+ if: ${{ matrix.versions.arelx == 2 }}
332
329
  run: |
333
330
  cp ./gemspecs/arel_extensions-v2.gemspec ./arel_extensions.gemspec
334
331
  cp ./version_v2.rb lib/arel_extensions/version.rb
335
- cp ./gemfiles/rails${{ matrix.rails }}.gemfile ./Gemfile
332
+ cp ./gemfiles/rails${{ matrix.versions.rails }}.gemfile ./Gemfile
336
333
  - name: bundle install
337
334
  run: |
338
- bundle config set gemfile ./gemfiles/rails${{ matrix.rails }}.gemfile
335
+ bundle config set gemfile ./gemfiles/rails${{ matrix.versions.rails }}.gemfile
339
336
  bundle install
340
- - name: Run test mssql
337
+ - name: Run test mssql [mri]
338
+ if: ${{ !contains(matrix.versions.ruby, 'jruby') }}
341
339
  run: bundle exec rake test:mssql
340
+ - name: Run test mssql [jruby]
341
+ if: ${{ contains(matrix.versions.ruby, 'jruby') }}
342
+ run: |
343
+ curl -LO https://github.com/microsoft/mssql-jdbc/releases/download/v8.4.1/mssql-jdbc-8.4.1.jre11.jar
344
+ CLASSPATH=".:mssql-jdbc-8.4.1.jre11.jar" bundle exec rake test:mssql
data/NEWS.md ADDED
@@ -0,0 +1,32 @@
1
+ # News
2
+
3
+ ## Current Release
4
+
5
+ ### New Features
6
+
7
+ - `o.format_date` as an alternative to `o.format`
8
+ The actual behavior of `format` is inconsistent across DB vendors: in mysql we
9
+ can format dates and numbers with it, and in the other ones we only format
10
+ dates.
11
+
12
+ We're planning on normalizing this behavior. We want `format` to "cleverly"
13
+ format dates or numbers, and `format_date` / `format_number` to strictly
14
+ format dates / numbers.
15
+
16
+ The introduction of `format_date` is the first step in this direction.
17
+
18
+ ## Release v2.1.6/v1.3.6
19
+
20
+ ### Bug Fixes
21
+
22
+ - This used to fail.
23
+ ```
24
+ Arel.when(a).then(b).format('%Y-%m-%d')
25
+ ```
26
+
27
+ ### New Features
28
+
29
+ - `o.present`, a synonym for `o.not_blank`
30
+ - `o.coalesce_blank(a, b, c)`
31
+ - `o.if_present`, if the value is `null` or blank, then it returns `null`,
32
+ otherwise, it returns the value. Inspired by rails' `presence`.