arel-extensions 7.0.3 → 8.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +31 -20
- data/Gemfile +1 -0
- data/Rakefile +1 -1
- data/arel-extensions.gemspec +2 -2
- data/lib/active_record/query_methods.rb +12 -4
- data/lib/arel/extensions/version.rb +1 -1
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d05a268b8339c9e578ab4f853d761b01f0722b639e1a87470a1aa4e26bb93772
|
4
|
+
data.tar.gz: b1372b85e0b46bb2513dba252fc7eb6ea972a591b08369bbc1f1640d0136d3ee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a5f680f90f52892b29d03c25ae9ed26e4c5cf783e27aadd196852e659bc3215fb8f9dabf55edef7ce9b588957e4a295a4353ea274c57b9955c78f7fb8f584f61
|
7
|
+
data.tar.gz: e8e099b793021a12289c2965d426bc9e561d3cc31b1f341e217d2670f40ac6918d452d253bbd2a9413e4ffdc1d8d0d30b5e31595e641504b51c1d92b55ef1214
|
data/.github/workflows/ci.yml
CHANGED
@@ -7,10 +7,14 @@ jobs:
|
|
7
7
|
name: Arel::Extensions Test
|
8
8
|
runs-on: ubuntu-22.04
|
9
9
|
strategy:
|
10
|
+
fail-fast: false
|
10
11
|
matrix:
|
11
|
-
rails: ['7.
|
12
|
-
ruby-version: ['3.1', '3.2', '3.3']
|
13
|
-
postgres-version: ['
|
12
|
+
rails: ['7.1.5.1', '7.2.2.1', '8.0.1']
|
13
|
+
ruby-version: ['3.1', '3.2', '3.3', '3.4']
|
14
|
+
postgres-version: ['17']
|
15
|
+
exclude:
|
16
|
+
- rails: '8.0.1'
|
17
|
+
ruby-version: '3.1'
|
14
18
|
|
15
19
|
steps:
|
16
20
|
- name: Install Postgresql
|
@@ -35,16 +39,21 @@ jobs:
|
|
35
39
|
ruby-version: ${{ matrix.ruby-version }}
|
36
40
|
bundler-cache: false # runs 'bundle install' and caches installed gems automatically
|
37
41
|
|
38
|
-
- name:
|
42
|
+
- name: Fix activerecord-postgis-adapter
|
43
|
+
if: ${{ matrix.rails == '8.0.1' }}
|
39
44
|
run: |
|
40
|
-
|
45
|
+
echo "gem 'activerecord-postgis-adapter', github: 'rgeo/activerecord-postgis-adapter', branch: 'rails8'" >> Gemfile
|
41
46
|
|
42
47
|
- run: |
|
43
48
|
sed -i -e "s/gem.add_dependency 'activerecord', '>= [[:digit:]]\+.[[:digit:]]\+.[[:digit:]]\+'/gem.add_dependency 'activerecord', '${{ matrix.rails }}'/" arel-extensions.gemspec
|
44
49
|
rm -f Gemfile.lock
|
45
50
|
bundle
|
46
51
|
|
47
|
-
-
|
52
|
+
- name: Test Geos
|
53
|
+
run: |
|
54
|
+
bundle exec ruby -e "require 'rgeo'; puts RGeo::Geos.capi_supported?; puts RGeo::Geos::CAPIGeometryMethods"
|
55
|
+
|
56
|
+
- run: bundle exec rake test --trace
|
48
57
|
|
49
58
|
ar-postgresql:
|
50
59
|
name: ActiveRecord PostgresQL Test
|
@@ -52,9 +61,9 @@ jobs:
|
|
52
61
|
|
53
62
|
strategy:
|
54
63
|
matrix:
|
55
|
-
rails: ['
|
64
|
+
rails: ['7.1.5.1', '7.2.2.1', '8.0.1']
|
56
65
|
ruby-version: ['3.3']
|
57
|
-
postgres-version: ['
|
66
|
+
postgres-version: ['17']
|
58
67
|
|
59
68
|
steps:
|
60
69
|
- name: Install Postgresql
|
@@ -80,7 +89,7 @@ jobs:
|
|
80
89
|
|
81
90
|
- name: Download Rails
|
82
91
|
run: |
|
83
|
-
git clone --branch ${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
92
|
+
git clone --branch v${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
84
93
|
pushd ~/rails
|
85
94
|
cat /home/runner/work/_temp/*.sh
|
86
95
|
sed -i "s/Gem.ruby, '-w'/Gem.ruby, '-w0'/" ~/rails/activerecord/Rakefile
|
@@ -95,8 +104,8 @@ jobs:
|
|
95
104
|
|
96
105
|
- run: |
|
97
106
|
pushd ~/rails/activerecord
|
98
|
-
bundle exec rake db:postgresql:rebuild postgresql:test
|
99
|
-
bundle exec rake db:postgresql:rebuild postgresql:isolated_test
|
107
|
+
bundle exec rake db:postgresql:rebuild postgresql:test --trace
|
108
|
+
bundle exec rake db:postgresql:rebuild postgresql:isolated_test --trace
|
100
109
|
|
101
110
|
ar-sqlite:
|
102
111
|
name: ActiveRecord SQLite Test
|
@@ -104,8 +113,9 @@ jobs:
|
|
104
113
|
|
105
114
|
strategy:
|
106
115
|
matrix:
|
107
|
-
rails: ['
|
116
|
+
rails: ['7.1.5.1', '7.2.2.1', '8.0.1']
|
108
117
|
ruby-version: ['3.3']
|
118
|
+
postgres-version: ['17']
|
109
119
|
|
110
120
|
steps:
|
111
121
|
- uses: actions/checkout@v4
|
@@ -117,7 +127,7 @@ jobs:
|
|
117
127
|
|
118
128
|
- name: Download Rails
|
119
129
|
run: |
|
120
|
-
git clone --branch ${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
130
|
+
git clone --branch v${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
121
131
|
pushd ~/rails
|
122
132
|
cat /home/runner/work/_temp/*.sh
|
123
133
|
sed -i "s/Gem.ruby, '-w'/Gem.ruby, '-w0'/" ~/rails/activerecord/Rakefile
|
@@ -132,11 +142,11 @@ jobs:
|
|
132
142
|
|
133
143
|
- run: |
|
134
144
|
pushd ~/rails/activerecord
|
135
|
-
bundle exec rake sqlite3:test
|
145
|
+
bundle exec rake sqlite3:test --trace
|
136
146
|
rm test/db/*.sqlite3 test/fixtures/*.sqlite3
|
137
|
-
bundle exec rake sqlite3:isolated_test
|
147
|
+
bundle exec rake sqlite3:isolated_test --trace
|
138
148
|
rm test/db/*.sqlite3 test/fixtures/*.sqlite3
|
139
|
-
bundle exec rake sqlite3_mem:test
|
149
|
+
bundle exec rake sqlite3_mem:test --trace
|
140
150
|
|
141
151
|
ar-mysql:
|
142
152
|
name: ActiveRecord MySQL Test
|
@@ -145,8 +155,9 @@ jobs:
|
|
145
155
|
|
146
156
|
strategy:
|
147
157
|
matrix:
|
148
|
-
rails: ['
|
158
|
+
rails: ['7.1.5.1', '7.2.2.1', '8.0.1']
|
149
159
|
ruby-version: ['3.3']
|
160
|
+
postgres-version: ['17']
|
150
161
|
|
151
162
|
steps:
|
152
163
|
- name: Install MySQL
|
@@ -164,7 +175,7 @@ jobs:
|
|
164
175
|
|
165
176
|
- name: Download Rails
|
166
177
|
run: |
|
167
|
-
git clone --branch ${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
178
|
+
git clone --branch v${{ matrix.rails }} https://github.com/rails/rails.git ~/rails
|
168
179
|
pushd ~/rails
|
169
180
|
cat /home/runner/work/_temp/*.sh
|
170
181
|
sed -i "s/Gem.ruby, '-w'/Gem.ruby, '-w0'/" ~/rails/activerecord/Rakefile
|
@@ -179,5 +190,5 @@ jobs:
|
|
179
190
|
|
180
191
|
- run: |
|
181
192
|
pushd ~/rails/activerecord
|
182
|
-
bundle exec rake db:mysql:rebuild mysql2:test
|
183
|
-
bundle exec rake db:mysql:rebuild mysql2:isolated_test
|
193
|
+
bundle exec rake db:mysql:rebuild mysql2:test --trace
|
194
|
+
bundle exec rake db:mysql:rebuild mysql2:isolated_test --trace
|
data/Gemfile
CHANGED
data/Rakefile
CHANGED
data/arel-extensions.gemspec
CHANGED
@@ -13,7 +13,7 @@ Gem::Specification.new do |gem|
|
|
13
13
|
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
14
14
|
gem.require_paths = ["lib"]
|
15
15
|
|
16
|
-
gem.add_dependency 'activerecord', '>= 7.0.0', '<
|
16
|
+
gem.add_dependency 'activerecord', '>= 7.0.0', '< 9.0'
|
17
17
|
|
18
18
|
gem.add_development_dependency "bundler"
|
19
19
|
gem.add_development_dependency "debug"
|
@@ -24,6 +24,6 @@ Gem::Specification.new do |gem|
|
|
24
24
|
gem.add_development_dependency "webmock"
|
25
25
|
gem.add_development_dependency 'pg'
|
26
26
|
gem.add_development_dependency 'rgeo'
|
27
|
-
gem.add_development_dependency "activerecord-postgis-adapter"
|
27
|
+
gem.add_development_dependency "activerecord-postgis-adapter", '>= 8.0'
|
28
28
|
|
29
29
|
end
|
@@ -24,10 +24,18 @@ module ActiveRecord::QueryMethods
|
|
24
24
|
end
|
25
25
|
alias uniq_on! distinct_on!
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
if ActiveRecord >= "7.2"
|
28
|
+
def build_arel_with_distinct_on(connection, aliases = nil)
|
29
|
+
arel = build_arel_without_distinct_on(connection, aliases)
|
30
|
+
arel.distinct_on(self.distinct_on_values) if !self.distinct_on_values.empty?
|
31
|
+
arel
|
32
|
+
end
|
33
|
+
else
|
34
|
+
def build_arel_with_distinct_on(aliases = nil)
|
35
|
+
arel = build_arel_without_distinct_on(aliases)
|
36
|
+
arel.distinct_on(self.distinct_on_values) if !self.distinct_on_values.empty?
|
37
|
+
arel
|
38
|
+
end
|
31
39
|
end
|
32
40
|
alias_method :build_arel_without_distinct_on, :build_arel
|
33
41
|
alias_method :build_arel, :build_arel_with_distinct_on
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arel-extensions
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 8.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jon Bracy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: 7.0.0
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
22
|
+
version: '9.0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: 7.0.0
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
32
|
+
version: '9.0'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: bundler
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -162,14 +162,14 @@ dependencies:
|
|
162
162
|
requirements:
|
163
163
|
- - ">="
|
164
164
|
- !ruby/object:Gem::Version
|
165
|
-
version: '0'
|
165
|
+
version: '8.0'
|
166
166
|
type: :development
|
167
167
|
prerelease: false
|
168
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
169
|
requirements:
|
170
170
|
- - ">="
|
171
171
|
- !ruby/object:Gem::Version
|
172
|
-
version: '0'
|
172
|
+
version: '8.0'
|
173
173
|
description:
|
174
174
|
email:
|
175
175
|
- jonbracy@gmail.com
|
@@ -242,7 +242,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
242
242
|
- !ruby/object:Gem::Version
|
243
243
|
version: '0'
|
244
244
|
requirements: []
|
245
|
-
rubygems_version: 3.5.
|
245
|
+
rubygems_version: 3.5.21
|
246
246
|
signing_key:
|
247
247
|
specification_version: 4
|
248
248
|
summary: Adds support for missing SQL operators and functions to Arel
|