arel_extensions 1.2.5 → 1.2.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +7 -4
  3. data/.travis.yml +54 -86
  4. data/README.md +7 -2
  5. data/Rakefile +38 -27
  6. data/arel_extensions.gemspec +1 -1
  7. data/functions.html +2 -2
  8. data/gemfiles/rails4.gemfile +1 -1
  9. data/gemfiles/rails6.gemfile +30 -0
  10. data/gemspec_v2/arel_extensions-v2.gemspec +28 -0
  11. data/generate_gems.sh +14 -0
  12. data/lib/arel_extensions.rb +49 -21
  13. data/lib/arel_extensions/attributes.rb +0 -1
  14. data/lib/arel_extensions/boolean_functions.rb +38 -13
  15. data/lib/arel_extensions/common_sql_functions.rb +5 -4
  16. data/lib/arel_extensions/insert_manager.rb +26 -24
  17. data/lib/arel_extensions/math.rb +3 -3
  18. data/lib/arel_extensions/math_functions.rb +4 -4
  19. data/lib/arel_extensions/nodes/abs.rb +0 -0
  20. data/lib/arel_extensions/nodes/case.rb +8 -4
  21. data/lib/arel_extensions/nodes/ceil.rb +0 -0
  22. data/lib/arel_extensions/nodes/coalesce.rb +0 -0
  23. data/lib/arel_extensions/nodes/collate.rb +1 -1
  24. data/lib/arel_extensions/nodes/concat.rb +0 -0
  25. data/lib/arel_extensions/nodes/date_diff.rb +1 -3
  26. data/lib/arel_extensions/nodes/duration.rb +0 -2
  27. data/lib/arel_extensions/nodes/find_in_set.rb +0 -0
  28. data/lib/arel_extensions/nodes/floor.rb +0 -0
  29. data/lib/arel_extensions/nodes/formatted_number.rb +20 -20
  30. data/lib/arel_extensions/nodes/function.rb +0 -0
  31. data/lib/arel_extensions/nodes/is_null.rb +0 -0
  32. data/lib/arel_extensions/nodes/json.rb +43 -30
  33. data/lib/arel_extensions/nodes/length.rb +0 -0
  34. data/lib/arel_extensions/nodes/locate.rb +0 -0
  35. data/lib/arel_extensions/nodes/power.rb +5 -4
  36. data/lib/arel_extensions/nodes/rand.rb +0 -0
  37. data/lib/arel_extensions/nodes/replace.rb +23 -5
  38. data/lib/arel_extensions/nodes/round.rb +5 -5
  39. data/lib/arel_extensions/nodes/soundex.rb +14 -13
  40. data/lib/arel_extensions/nodes/substring.rb +8 -15
  41. data/lib/arel_extensions/nodes/trim.rb +1 -1
  42. data/lib/arel_extensions/nodes/union.rb +0 -1
  43. data/lib/arel_extensions/nodes/union_all.rb +0 -1
  44. data/lib/arel_extensions/nodes/wday.rb +0 -0
  45. data/lib/arel_extensions/predications.rb +35 -33
  46. data/lib/arel_extensions/set_functions.rb +2 -2
  47. data/lib/arel_extensions/string_functions.rb +25 -6
  48. data/lib/arel_extensions/tasks.rb +5 -5
  49. data/lib/arel_extensions/version.rb +1 -1
  50. data/lib/arel_extensions/visitors.rb +1 -1
  51. data/lib/arel_extensions/visitors/ibm_db.rb +1 -1
  52. data/lib/arel_extensions/visitors/mssql.rb +13 -12
  53. data/lib/arel_extensions/visitors/mysql.rb +67 -37
  54. data/lib/arel_extensions/visitors/oracle.rb +14 -14
  55. data/lib/arel_extensions/visitors/oracle12.rb +1 -1
  56. data/lib/arel_extensions/visitors/postgresql.rb +46 -28
  57. data/lib/arel_extensions/visitors/sqlite.rb +52 -44
  58. data/lib/arel_extensions/visitors/to_sql.rb +73 -59
  59. data/test/arelx_test_helper.rb +28 -0
  60. data/test/support/fake_record.rb +4 -0
  61. data/test/test_comparators.rb +8 -7
  62. data/test/visitors/test_bulk_insert_oracle.rb +8 -7
  63. data/test/visitors/test_bulk_insert_sqlite.rb +8 -7
  64. data/test/visitors/test_bulk_insert_to_sql.rb +3 -3
  65. data/test/visitors/test_oracle.rb +41 -41
  66. data/test/visitors/test_to_sql.rb +367 -199
  67. data/test/with_ar/all_agnostic_test.rb +63 -41
  68. data/test/with_ar/insert_agnostic_test.rb +1 -1
  69. data/test/with_ar/test_bulk_sqlite.rb +5 -4
  70. data/test/with_ar/test_math_sqlite.rb +2 -2
  71. data/test/with_ar/test_string_mysql.rb +2 -4
  72. data/test/with_ar/test_string_sqlite.rb +2 -6
  73. data/version_v1.rb +3 -0
  74. data/version_v2.rb +3 -0
  75. metadata +10 -5
  76. data/test/helper.rb +0 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eac00bb2f717979e8af539923ba6ebca5ed3ef500d5df1499be613b83cd912eb
4
- data.tar.gz: f6ec1b377391db2da2510eec4bf967a945be8b5327e8f4a176756a6aab3147bf
3
+ metadata.gz: 02ad8f52ee6bfa8b08e534df4aeae8298ee4a6153461940cf7d94f46b6d45209
4
+ data.tar.gz: 802365368c4b00f04a7fa553272cdd72de06b7eedd02263df8385a68d85554ac
5
5
  SHA512:
6
- metadata.gz: ee2f1a2884d3c4f3618ee2a83a887cb9d8d59dae790d216c27a8a1c75b79a9d2b777467a730d2723addb5593d31a23d8673affa5190487a341cd0bfd5509d91d
7
- data.tar.gz: 92f615201dfd33112b4ddbc4ede753c946163b591233b6da7525af97940c951944094d19743f3fa151c563086a752bc92d38649686ef2dcafafb58f766fc0041
6
+ metadata.gz: bf6eef122b124e6720323ed44fa0e77e2d253c90b80dacd163ba56bbc11390f124b88cb42f57efb36745d6679c1709cb5ed1d7f38109d42502c6d50bfd321912
7
+ data.tar.gz: bac8c5ad02b5d8ea867c27be0593ddc61f1631c34a4c3dfc6dd63949aff91a8163a90dcd25a0f12faec12115c3a980cdb2a39edcc8e4adb5408720b5ed9445d8
@@ -12,7 +12,10 @@ Layout/ExtraSpacing:
12
12
  Layout/SpaceAroundEqualsInParameterDefault:
13
13
  Enabled: true
14
14
 
15
- Layout/TrailingBlankLines:
15
+ Layout/TrailingEmptyLines:
16
+ Enabled: true
17
+
18
+ Naming/FileName:
16
19
  Enabled: true
17
20
 
18
21
  Style/CollectionMethods:
@@ -33,12 +36,12 @@ Style/EmptyElse:
33
36
  Style/Encoding:
34
37
  Enabled: true
35
38
 
36
- Style/FileName:
37
- Enabled: true
38
-
39
39
  Style/MethodCallWithArgsParentheses:
40
40
  Enabled: false
41
41
 
42
+ # Performance cops have been transferred to rubocop-performance gem.
43
+ require: rubocop-performance
44
+
42
45
  Performance/DoubleStartEndWith:
43
46
  Enabled: true
44
47
 
@@ -1,5 +1,6 @@
1
1
  language: ruby
2
2
  sudo: required
3
+ dist: trusty
3
4
  cache:
4
5
  bundler: true
5
6
  directories:
@@ -15,21 +16,23 @@ before_install:
15
16
  # - sh -ex .travis/oracle/install.sh
16
17
  # - .travis/setup_accounts.sh
17
18
  install:
18
- - gem install bundler -v 1.17.3
19
19
  - bundle install
20
20
  gemfile:
21
21
  - gemfiles/rails4.gemfile
22
22
  - gemfiles/rails5_0.gemfile
23
23
  - gemfiles/rails5_1_4.gemfile
24
24
  - gemfiles/rails5_2.gemfile
25
+ - gemfiles/rails6.gemfile
25
26
  services:
26
27
  - mysql
27
28
  - postgresql
29
+ addons:
30
+ postgresql: '9.4'
28
31
  before_script:
29
32
  - mysql -e 'create database arext_test;'
30
33
  - psql -c 'create database arext_test;' -U postgres
31
34
  script:
32
- - gem build arel_extensions.gemspec
35
+ - ./generate_gems.sh
33
36
  - bundle exec rake test
34
37
  - bundle exec rake test:sqlite
35
38
  - bundle exec rake test:mysql
@@ -55,72 +58,33 @@ rvm:
55
58
  - 2.3.1
56
59
  - 2.4.0
57
60
  - 2.5.0
58
- - rbx-2
61
+ - 2.7.1
59
62
  - jruby-9.0.5.0
60
- - jruby-9.2.0.0
63
+ - jruby-9.2.11.1
61
64
  - jruby-head
62
- - ruby-head
63
65
  jdk:
64
- - openjdk7
65
66
  - oraclejdk8
66
67
  - oraclejdk9
67
68
  - openjdk10
68
- - oraclejdk10
69
69
  - openjdk11
70
70
  - oraclejdk11
71
71
  matrix:
72
72
  fast_finish: true
73
73
  exclude:
74
- - rvm: rbx-2
75
- jdk: openjdk7
76
74
  - rvm: 2.0.0
77
- jdk: openjdk7
78
- - rvm: 2.1
79
- jdk: openjdk7
80
- - rvm: 2.2.5
81
- jdk: openjdk7
82
- - rvm: 2.3.1
83
- jdk: openjdk7
84
- - rvm: 2.4.0
85
- jdk: openjdk7
86
- - rvm: 2.5.0
87
- jdk: openjdk7
88
- - rvm: ruby-head
89
- jdk: openjdk7
90
- - rvm: rbx-2
91
- jdk: oraclejdk8
92
- - rvm: 2.0.0
93
- jdk: oraclejdk8
94
- - rvm: 2.1
95
- jdk: oraclejdk8
96
- - rvm: 2.2.5
97
- jdk: oraclejdk8
98
- - rvm: 2.3.1
99
- jdk: oraclejdk8
100
- - rvm: 2.4.0
101
- jdk: oraclejdk8
102
- - rvm: 2.5.0
103
- jdk: oraclejdk8
104
- - rvm: ruby-head
105
- jdk: oraclejdk8
106
- - rvm: rbx-2
107
- jdk: oraclejdk10
108
- - rvm: 2.0.0
109
- jdk: oraclejdk10
75
+ jdk: oraclejdk9
110
76
  - rvm: 2.1
111
- jdk: oraclejdk10
77
+ jdk: oraclejdk9
112
78
  - rvm: 2.2.5
113
- jdk: oraclejdk10
79
+ jdk: oraclejdk9
114
80
  - rvm: 2.3.1
115
- jdk: oraclejdk10
81
+ jdk: oraclejdk9
116
82
  - rvm: 2.4.0
117
- jdk: oraclejdk10
83
+ jdk: oraclejdk9
118
84
  - rvm: 2.5.0
119
- jdk: oraclejdk10
120
- - rvm: ruby-head
121
- jdk: oraclejdk10
122
- - rvm: rbx-2
123
- jdk: openjdk10
85
+ jdk: oraclejdk9
86
+ - rvm: 2.7.1
87
+ jdk: oraclejdk9
124
88
  - rvm: 2.0.0
125
89
  jdk: openjdk10
126
90
  - rvm: 2.1
@@ -133,10 +97,8 @@ matrix:
133
97
  jdk: openjdk10
134
98
  - rvm: 2.5.0
135
99
  jdk: openjdk10
136
- - rvm: ruby-head
100
+ - rvm: 2.7.1
137
101
  jdk: openjdk10
138
- - rvm: rbx-2
139
- jdk: oraclejdk11
140
102
  - rvm: 2.0.0
141
103
  jdk: oraclejdk11
142
104
  - rvm: 2.1
@@ -149,10 +111,8 @@ matrix:
149
111
  jdk: oraclejdk11
150
112
  - rvm: 2.5.0
151
113
  jdk: oraclejdk11
152
- - rvm: ruby-head
114
+ - rvm: 2.7.1
153
115
  jdk: oraclejdk11
154
- - rvm: rbx-2
155
- jdk: openjdk11
156
116
  - rvm: 2.0.0
157
117
  jdk: openjdk11
158
118
  - rvm: 2.1
@@ -165,59 +125,67 @@ matrix:
165
125
  jdk: openjdk11
166
126
  - rvm: 2.5.0
167
127
  jdk: openjdk11
168
- - rvm: ruby-head
128
+ - rvm: 2.7.1
169
129
  jdk: openjdk11
170
- - rvm: jruby-9.2.0.0
171
- jdk: openjdk7
172
- - rvm: jruby-head
173
- jdk: openjdk7
174
- - rvm: 2.0.0
175
- gemfile: gemfiles/rails5_1_4.gemfile
176
- - rvm: 2.1
177
- gemfile: gemfiles/rails5_1_4.gemfile
178
- - rvm: 2.2.5
179
- gemfile: gemfiles/rails5_1_4.gemfile
180
- - rvm: ruby-head
130
+ - rvm: 2.7.1
131
+ gemfile: gemfiles/rails4.gemfile
132
+ - rvm : jruby-9.2.11.1
181
133
  gemfile: gemfiles/rails4.gemfile
182
134
  - rvm: 2.0.0
183
135
  gemfile: gemfiles/rails5_0.gemfile
184
136
  - rvm: 2.1
185
137
  gemfile: gemfiles/rails5_0.gemfile
186
- - rvm: jruby-9.0.5.0
138
+ - rvm: 2.7.1
139
+ gemfile: gemfiles/rails5.0.gemfile
140
+ - rvm: 2.0.0
141
+ gemfile: gemfiles/rails5_1_4.gemfile
142
+ - rvm: 2.1
143
+ gemfile: gemfiles/rails5_1_4.gemfile
144
+ - rvm: 2.2.5
187
145
  gemfile: gemfiles/rails5_1_4.gemfile
146
+ - rvm: 2.7.1
147
+ gemfile: gemfiles/rails5.1.4.gemfile
148
+ - rvm: 2.7.1
149
+ gemfile: gemfiles/rails5.1.4.gemfile
188
150
  - rvm: 2.0.0
189
151
  gemfile: gemfiles/rails5_2.gemfile
190
152
  - rvm: 2.1
191
153
  gemfile: gemfiles/rails5_2.gemfile
192
- allow_failures:
193
- - rvm: rbx-2
194
- gemfile: gemfiles/rails4.gemfile
195
- - rvm: rbx-2
196
- gemfile: gemfiles/rails5_0.gemfile
197
- - rvm: rbx-2
198
- gemfile: gemfiles/rails5_1_4.gemfile
199
- - rvm: rbx-2
154
+ - rvm: 2.2.5
200
155
  gemfile: gemfiles/rails5_2.gemfile
201
- - rvm: rbx-2
156
+ - rvm: 2.7.1
157
+ gemfile: gemfiles/rails5.2.gemfile
158
+ - rvm: 2.0.0
159
+ gemfile: gemfiles/rails6.gemfile
160
+ - rvm: 2.1
161
+ gemfile: gemfiles/rails6.gemfile
162
+ - rvm: 2.2.5
163
+ gemfile: gemfiles/rails6.gemfile
164
+ - rvm: 2.3.1
165
+ gemfile: gemfiles/rails6.gemfile
166
+ - rvm: 2.4.0
167
+ gemfile: gemfiles/rails6.gemfile
168
+ allow_failures:
169
+ - rvm: jruby-9.0.5.0
202
170
  gemfile: gemfiles/rails5_1_4.gemfile
203
171
  - rvm: jruby-9.0.5.0
204
172
  gemfile: gemfiles/rails5_2.gemfile
205
- - rvm: jruby-9.2.0.0
173
+ - rvm: jruby-9.2.11.1
206
174
  jdk: oraclejdk9
207
175
  gemfile: gemfiles/rails5_2.gemfile
176
+ - jdk: oraclejdk9
208
177
  - jdk: openjdk10
209
- - jdk: oraclejdk10
210
178
  - jdk: openjdk11
211
179
  - jdk: oraclejdk11
212
- - rvm: ruby-head
213
180
  - rvm: jruby-head
214
- - rvm: jruby-9.2.0.0
181
+ - rvm: jruby-9.2.11.1
215
182
  jdk: oraclejdk9
216
183
  - rvm: jruby-9.0.5.0
217
184
  jdk: oraclejdk9
185
+ - rvm: 2.7.1
186
+ - gemfile: gemfiles/rails6.gemfile
218
187
  bundler_args: "--jobs 3 --retry 2"
219
188
  notifications:
220
189
  email:
221
- notifications:
222
- - julien.delporte@faveod.com
223
- - yann.azoury@faveod.com
190
+ - julien.delporte@faveod.com
191
+ - yann.azoury@faveod.com
data/README.md CHANGED
@@ -19,6 +19,11 @@ It allows to use more advanced SQL functions for any supported RDBMS.
19
19
  Arel 6 (Rails 4) or Arel 7+ (Rails 5).
20
20
  [Arel Repository](http://github.com/rails/arel)
21
21
 
22
+ or
23
+
24
+ Rails 6
25
+ [Rails Repository](http://github.com/rails/rails)
26
+
22
27
  ## Usage
23
28
 
24
29
  Most of the features will work just by adding the gem to your Gemfiles. To make sure to get all the features for any dbms, you should execute the next line as soon as you get your connection to your DB:
@@ -209,7 +214,7 @@ User.connection.execute(insert_manager.to_sql)
209
214
  <td class="tg-yw4l">CEIL<br>column.ceil</td>
210
215
  <td class="ok">✔</td>
211
216
  <td class="ok">✔</td>
212
- <td class="tg-j6lv">CASE + ROUND</td>
217
+ <td class="tg-j6lv">CASE + CAST</td>
213
218
  <td class="ok">✔</td>
214
219
  <td class="tg-j6lv">CEILING()</td>
215
220
  <td class="tg-j6lv">CEILING()</td>
@@ -218,7 +223,7 @@ User.connection.execute(insert_manager.to_sql)
218
223
  <td class="tg-yw4l">FLOOR<br>column.floor</td>
219
224
  <td class="ok">✔</td>
220
225
  <td class="ok">✔</td>
221
- <td class="tg-j6lv">CASE + ROUND</td>
226
+ <td class="tg-j6lv">CASE + CAST</td>
222
227
  <td class="ok">✔</td>
223
228
  <td class="ok">✔</td>
224
229
  <td class="ok">✔</td>
data/Rakefile CHANGED
@@ -7,33 +7,44 @@ desc "Default Task"
7
7
  task default: [ :test ]
8
8
 
9
9
  Rake::TestTask.new(:test) do |t|
10
- t.libs << 'lib'
11
- t.libs << 'test'
12
- t.pattern = 'test/**/test_*.rb'
13
- t.warning = true
14
- t.verbose = true
10
+ t.libs << 'lib'
11
+ t.libs << 'test'
12
+ t.pattern = 'test/**/test_*.rb'
13
+ t.warning = true
14
+ t.verbose = true
15
15
  end
16
16
 
17
- %w(mysql postgresql sqlite ibm_db oracle mssql).each do |adapter|
18
- namespace :test do
19
- Rake::TestTask.new(adapter => "#{adapter}:env") { |t|
20
- t.libs << 'lib'
21
- t.libs << 'test'
22
- t.pattern = 'test/with_ar/*_agnostic_test.rb'
23
- t.warning = true
24
- t.verbose = true
25
- t.ruby_opts = ["--dev"] if defined?(JRUBY_VERSION)
26
- }
27
- end
28
-
29
- namespace adapter do
30
- task :test => "test_#{adapter}"
31
- task :isolated_test => "isolated_test_#{adapter}"
32
-
33
- # Set the connection environment for the adapter
34
- task(:env) { ENV['DB'] = adapter }
35
- end
36
-
37
- # Make sure the adapter test evaluates the env setting task
38
- task "test_#{adapter}" => ["#{adapter}:env", "test:#{adapter}"]
17
+ namespace :test do
18
+ Rake::TestTask.new('to_sql' => []) { |t|
19
+ t.libs << 'lib'
20
+ t.libs << 'test'
21
+ t.pattern = 'test/visitors/test_to_sql.rb'
22
+ t.warning = true
23
+ t.verbose = true
24
+ t.ruby_opts = ["--dev"] if defined?(JRUBY_VERSION)
25
+ }
26
+ end
27
+
28
+ %w[mysql postgresql sqlite ibm_db oracle mssql].each do |adapter|
29
+ namespace :test do
30
+ Rake::TestTask.new(adapter => "#{adapter}:env") { |t|
31
+ t.libs << 'lib'
32
+ t.libs << 'test'
33
+ t.pattern = 'test/with_ar/*_agnostic_test.rb'
34
+ t.warning = false
35
+ t.verbose = true
36
+ t.ruby_opts = ["--dev"] if defined?(JRUBY_VERSION)
37
+ }
38
+ end
39
+
40
+ namespace adapter do
41
+ task :test => "test_#{adapter}"
42
+ task :isolated_test => "isolated_test_#{adapter}"
43
+
44
+ # Set the connection environment for the adapter
45
+ task(:env) { ENV['DB'] = adapter }
46
+ end
47
+
48
+ # Make sure the adapter test evaluates the env setting task
49
+ task "test_#{adapter}" => ["#{adapter}:env", "test:#{adapter}"]
39
50
  end
@@ -24,5 +24,5 @@ Gem::Specification.new do |s|
24
24
 
25
25
  s.add_development_dependency('minitest', '~> 5.9')
26
26
  s.add_development_dependency('rdoc', '~> 4.0')
27
- s.add_development_dependency('rake', '~> 11')
27
+ s.add_development_dependency('rake', '~> 12.3.3')
28
28
  end
@@ -55,7 +55,7 @@
55
55
  <td class="tg-yw4l">CEIL<br>column.ceil</td>
56
56
  <td class="ok">✔</td>
57
57
  <td class="ok">✔</td>
58
- <td class="tg-j6lv">CASE + ROUND</td>
58
+ <td class="tg-j6lv">CASE + CAST</td>
59
59
  <td class="ok">✔</td>
60
60
  <td class="tg-j6lv">CEILING()</td>
61
61
  <td class="tg-j6lv">CEILING()</td>
@@ -64,7 +64,7 @@
64
64
  <td class="tg-yw4l">FLOOR<br>column.floor</td>
65
65
  <td class="ok">✔</td>
66
66
  <td class="ok">✔</td>
67
- <td class="tg-j6lv">CASE + ROUND</td>
67
+ <td class="tg-j6lv">CASE + CAST</td>
68
68
  <td class="ok">✔</td>
69
69
  <td class="ok">✔</td>
70
70
  <td class="ok">✔</td>
@@ -18,7 +18,7 @@ group :development, :test do
18
18
  gem 'activerecord-oracle_enhanced-adapter', '~> 1.6.0' if ENV.has_key? 'ORACLE_HOME'
19
19
 
20
20
  # for JRuby
21
- gem 'activerecord-jdbc-adapter', :platforms => :jruby
21
+ gem 'activerecord-jdbc-adapter', '~> 1.3' ,:platforms => :jruby
22
22
  gem "jdbc-sqlite3", :platforms => :jruby
23
23
  gem "activerecord-jdbcsqlite3-adapter", :platforms => :jruby
24
24
  gem "activerecord-jdbcmysql-adapter", :platforms => :jruby
@@ -0,0 +1,30 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem 'rails', '~> 6.0.0'
4
+
5
+
6
+ group :development, :test do
7
+ gem 'activesupport', '~> 6.0.0'
8
+ gem 'activemodel', '~> 6.0.0'
9
+ gem 'activerecord', '~> 6.0.0'
10
+
11
+ gem "sqlite3", '~> 1.4', :platforms => [:mri, :mswin, :mingw]
12
+ gem "mysql2", '0.5.2', :platforms => [:mri, :mswin, :mingw]
13
+ gem "pg",'< 1.0.0', :platforms => [:mri, :mingw]
14
+
15
+ gem "tiny_tds", :platforms => [:mri, :mingw] if RUBY_PLATFORM =~ /windows/
16
+ gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw]
17
+
18
+ gem 'ruby-oci8', :platforms => [:mri, :mswin, :mingw] if ENV.has_key? 'ORACLE_HOME'
19
+ gem 'activerecord-oracle_enhanced-adapter', '~> 6.0.0' if ENV.has_key? 'ORACLE_HOME'
20
+
21
+ # for JRuby
22
+ gem 'activerecord-jdbc-adapter', :platforms => :jruby
23
+ gem "jdbc-sqlite3", :platforms => :jruby
24
+ gem "activerecord-jdbcsqlite3-adapter", :platforms => :jruby
25
+ gem "activerecord-jdbcmysql-adapter", :platforms => :jruby
26
+ gem "activerecord-jdbcpostgresql-adapter", :platforms => :jruby
27
+ gem "activerecord-jdbcmssql-adapter", :platforms => :jruby
28
+ end
29
+
30
+ gemspec :path => "../gemspec_v2/"
@@ -0,0 +1,28 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+ require "arel_extensions/version"
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "arel_extensions"
6
+ s.version = ArelExtensions::VERSION
7
+ s.platform = Gem::Platform::RUBY
8
+ s.authors = ["Yann Azoury", "Félix Bellanger", "Julien Delporte"]
9
+ s.email = ["yann.azoury@faveod.com", "felix.bellanger@faveod.com", "julien.delporte@faveod.com"]
10
+ s.homepage = "https://github.com/Faveod/arel-extensions"
11
+ s.description = "Adds new features to Arel"
12
+ s.summary = "Extending Arel"
13
+ s.license = 'MIT'
14
+
15
+ s.rdoc_options = ["--main", "README.md"]
16
+ s.extra_rdoc_files = ["MIT-LICENSE.txt", "README.md", 'functions.html']
17
+
18
+ # Manifest
19
+ s.files = `git ls-files`.split("\n")
20
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
21
+ s.require_paths = ["lib"]
22
+
23
+ s.add_dependency('activerecord', '>= 6.0')
24
+
25
+ s.add_development_dependency('minitest', '~> 5.9')
26
+ s.add_development_dependency('rdoc', '~> 4.0')
27
+ s.add_development_dependency('rake', '~> 12.3.3')
28
+ end