activerecord-jdbc-adapter 1.3.13 → 1.3.14
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.
- data/.travis.yml +212 -33
- data/Appraisals +10 -12
- data/History.md +17 -0
- data/lib/arel/visitors/db2.rb +24 -1
- data/lib/arel/visitors/derby.rb +24 -0
- data/lib/arjdbc.rb +6 -0
- data/lib/arjdbc/db2/adapter.rb +61 -50
- data/lib/arjdbc/derby/adapter.rb +1 -1
- data/lib/arjdbc/jdbc/adapter_java.jar +0 -0
- data/lib/arjdbc/jdbc/type_cast.rb +3 -2
- data/lib/arjdbc/mysql/adapter.rb +75 -4
- data/lib/arjdbc/mysql/bulk_change_table.rb +48 -8
- data/lib/arjdbc/oracle/adapter.rb +1 -0
- data/lib/arjdbc/oracle/column.rb +1 -1
- data/lib/arjdbc/postgresql/adapter.rb +3 -0
- data/lib/arjdbc/version.rb +1 -1
- data/rakelib/02-test.rake +13 -23
- data/src/java/arjdbc/jdbc/RubyJdbcConnection.java +38 -19
- metadata +242 -240
- checksums.yaml +0 -7
data/.travis.yml
CHANGED
@@ -1,11 +1,16 @@
|
|
1
1
|
language: ruby
|
2
|
+
sudo: false
|
2
3
|
bundler_args: --without development
|
3
4
|
script: bundle exec rake test_$DB
|
4
|
-
before_script:
|
5
|
+
before_script:
|
6
|
+
- export JRUBY_OPTS="--server" # -Xcompile.invokedynamic=false
|
5
7
|
before_install:
|
6
|
-
- jruby --1.9 -S gem update --system 2.1.11
|
8
|
+
- ((jruby -v | grep 1.8.7) && jruby --1.9 -S gem update --system 2.1.11) || true
|
7
9
|
rvm:
|
8
|
-
- jruby
|
10
|
+
- jruby-1.7.18
|
11
|
+
#- jruby-head # 9000 ignores --1.8 and --1.9 switches
|
12
|
+
jdk:
|
13
|
+
- openjdk6
|
9
14
|
gemfile:
|
10
15
|
- gemfiles/rails23.gemfile
|
11
16
|
- gemfiles/rails30.gemfile
|
@@ -32,93 +37,267 @@ env:
|
|
32
37
|
- JRUBY_OPTS="--1.9 $JRUBY_OPTS" DB=hsqldb PREPARED_STATEMENTS=true
|
33
38
|
- JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
34
39
|
- JRUBY_OPTS="--1.9 $JRUBY_OPTS" DB=jndi PREPARED_STATEMENTS=true
|
35
|
-
|
36
|
-
|
37
|
-
#- JRUBY_OPTS="--1.9 $JRUBY_OPTS" DB=jdbc
|
38
|
-
jdk:
|
39
|
-
- openjdk6
|
40
|
+
- JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
41
|
+
- JRUBY_OPTS="--1.9 $JRUBY_OPTS" DB=jdbc PREPARED_STATEMENTS=true
|
40
42
|
branches:
|
41
43
|
only:
|
42
44
|
- master
|
43
45
|
- /.*-stable$/
|
44
|
-
- next
|
45
46
|
- /^test-.*/
|
46
47
|
matrix:
|
47
48
|
allow_failures:
|
48
49
|
- gemfile: gemfiles/rails42.gemfile
|
50
|
+
- env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
51
|
+
- env: JRUBY_OPTS="--1.9 $JRUBY_OPTS" DB=jdbc PREPARED_STATEMENTS=true
|
49
52
|
exclude:
|
50
53
|
# Rails 4 prefers Ruby 2.0 (or at least >= 1.9.3) :
|
51
|
-
- rvm: jruby
|
54
|
+
- rvm: jruby-1.7.18
|
52
55
|
gemfile: gemfiles/rails40.gemfile
|
53
56
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
54
|
-
- rvm: jruby
|
57
|
+
- rvm: jruby-1.7.18
|
55
58
|
gemfile: gemfiles/rails40.gemfile
|
56
59
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
57
|
-
- rvm: jruby
|
60
|
+
- rvm: jruby-1.7.18
|
58
61
|
gemfile: gemfiles/rails40.gemfile
|
59
62
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
60
|
-
- rvm: jruby
|
63
|
+
- rvm: jruby-1.7.18
|
61
64
|
gemfile: gemfiles/rails40.gemfile
|
62
65
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
63
|
-
- rvm: jruby
|
66
|
+
- rvm: jruby-1.7.18
|
64
67
|
gemfile: gemfiles/rails40.gemfile
|
65
68
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
66
|
-
- rvm: jruby
|
69
|
+
- rvm: jruby-1.7.18
|
67
70
|
gemfile: gemfiles/rails40.gemfile
|
68
71
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
69
|
-
- rvm: jruby
|
72
|
+
- rvm: jruby-1.7.18
|
70
73
|
gemfile: gemfiles/rails40.gemfile
|
71
74
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
72
|
-
- rvm: jruby
|
75
|
+
- rvm: jruby-1.7.18
|
73
76
|
gemfile: gemfiles/rails40.gemfile
|
74
77
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
75
78
|
# Rails 4.1 does not support Ruby 1.8 :
|
76
|
-
- rvm: jruby
|
79
|
+
- rvm: jruby-1.7.18
|
77
80
|
gemfile: gemfiles/rails41.gemfile
|
78
81
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
79
|
-
- rvm: jruby
|
82
|
+
- rvm: jruby-1.7.18
|
80
83
|
gemfile: gemfiles/rails41.gemfile
|
81
84
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
82
|
-
- rvm: jruby
|
85
|
+
- rvm: jruby-1.7.18
|
83
86
|
gemfile: gemfiles/rails41.gemfile
|
84
87
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
85
|
-
- rvm: jruby
|
88
|
+
- rvm: jruby-1.7.18
|
86
89
|
gemfile: gemfiles/rails41.gemfile
|
87
90
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
88
|
-
- rvm: jruby
|
91
|
+
- rvm: jruby-1.7.18
|
89
92
|
gemfile: gemfiles/rails41.gemfile
|
90
93
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
91
|
-
- rvm: jruby
|
94
|
+
- rvm: jruby-1.7.18
|
92
95
|
gemfile: gemfiles/rails41.gemfile
|
93
96
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
94
|
-
- rvm: jruby
|
97
|
+
- rvm: jruby-1.7.18
|
95
98
|
gemfile: gemfiles/rails41.gemfile
|
96
99
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
97
|
-
- rvm: jruby
|
100
|
+
- rvm: jruby-1.7.18
|
98
101
|
gemfile: gemfiles/rails41.gemfile
|
99
102
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
100
103
|
# Rails 4.2 will not support Ruby 1.8 :
|
101
|
-
- rvm: jruby
|
104
|
+
- rvm: jruby-1.7.18
|
105
|
+
gemfile: gemfiles/rails42.gemfile
|
106
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
107
|
+
- rvm: jruby-1.7.18
|
108
|
+
gemfile: gemfiles/rails42.gemfile
|
109
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
110
|
+
- rvm: jruby-1.7.18
|
111
|
+
gemfile: gemfiles/rails42.gemfile
|
112
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
113
|
+
- rvm: jruby-1.7.18
|
114
|
+
gemfile: gemfiles/rails42.gemfile
|
115
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
116
|
+
- rvm: jruby-1.7.18
|
117
|
+
gemfile: gemfiles/rails42.gemfile
|
118
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
119
|
+
- rvm: jruby-1.7.18
|
120
|
+
gemfile: gemfiles/rails42.gemfile
|
121
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
122
|
+
- rvm: jruby-1.7.18
|
123
|
+
gemfile: gemfiles/rails42.gemfile
|
124
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
125
|
+
- rvm: jruby-1.7.18
|
126
|
+
gemfile: gemfiles/rails42.gemfile
|
127
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
128
|
+
## JRuby 9K :
|
129
|
+
# Rails 2.3 (JRuby 9K) NOTE we should exclude all :
|
130
|
+
- rvm: jruby-head
|
131
|
+
gemfile: gemfiles/rails23.gemfile
|
132
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
133
|
+
- rvm: jruby-head
|
134
|
+
gemfile: gemfiles/rails23.gemfile
|
135
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
136
|
+
- rvm: jruby-head
|
137
|
+
gemfile: gemfiles/rails23.gemfile
|
138
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
139
|
+
- rvm: jruby-head
|
140
|
+
gemfile: gemfiles/rails23.gemfile
|
141
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
142
|
+
- rvm: jruby-head
|
143
|
+
gemfile: gemfiles/rails23.gemfile
|
144
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
145
|
+
- rvm: jruby-head
|
146
|
+
gemfile: gemfiles/rails23.gemfile
|
147
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
148
|
+
- rvm: jruby-head
|
149
|
+
gemfile: gemfiles/rails23.gemfile
|
150
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
151
|
+
- rvm: jruby-head
|
152
|
+
gemfile: gemfiles/rails23.gemfile
|
153
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
154
|
+
# Rails 3.0 (JRuby 9K) NOTE we should exclude all :
|
155
|
+
- rvm: jruby-head
|
156
|
+
gemfile: gemfiles/rails30.gemfile
|
157
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
158
|
+
- rvm: jruby-head
|
159
|
+
gemfile: gemfiles/rails30.gemfile
|
160
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
161
|
+
- rvm: jruby-head
|
162
|
+
gemfile: gemfiles/rails30.gemfile
|
163
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
164
|
+
- rvm: jruby-head
|
165
|
+
gemfile: gemfiles/rails30.gemfile
|
166
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
167
|
+
- rvm: jruby-head
|
168
|
+
gemfile: gemfiles/rails30.gemfile
|
169
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
170
|
+
- rvm: jruby-head
|
171
|
+
gemfile: gemfiles/rails30.gemfile
|
172
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
173
|
+
- rvm: jruby-head
|
174
|
+
gemfile: gemfiles/rails30.gemfile
|
175
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
176
|
+
- rvm: jruby-head
|
177
|
+
gemfile: gemfiles/rails30.gemfile
|
178
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
179
|
+
# Rails 3.1 (JRuby 9K) NOTE we should exclude all :
|
180
|
+
- rvm: jruby-head
|
181
|
+
gemfile: gemfiles/rails31.gemfile
|
182
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
183
|
+
- rvm: jruby-head
|
184
|
+
gemfile: gemfiles/rails31.gemfile
|
185
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
186
|
+
- rvm: jruby-head
|
187
|
+
gemfile: gemfiles/rails31.gemfile
|
188
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
189
|
+
- rvm: jruby-head
|
190
|
+
gemfile: gemfiles/rails31.gemfile
|
191
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
192
|
+
- rvm: jruby-head
|
193
|
+
gemfile: gemfiles/rails31.gemfile
|
194
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
195
|
+
- rvm: jruby-head
|
196
|
+
gemfile: gemfiles/rails31.gemfile
|
197
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
198
|
+
- rvm: jruby-head
|
199
|
+
gemfile: gemfiles/rails31.gemfile
|
200
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
201
|
+
- rvm: jruby-head
|
202
|
+
gemfile: gemfiles/rails31.gemfile
|
203
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
204
|
+
# Rails 3.2 (JRuby 9K) :
|
205
|
+
- rvm: jruby-head
|
206
|
+
gemfile: gemfiles/rails32.gemfile
|
207
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
208
|
+
- rvm: jruby-head
|
209
|
+
gemfile: gemfiles/rails32.gemfile
|
210
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
211
|
+
- rvm: jruby-head
|
212
|
+
gemfile: gemfiles/rails32.gemfile
|
213
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
214
|
+
- rvm: jruby-head
|
215
|
+
gemfile: gemfiles/rails32.gemfile
|
216
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
217
|
+
- rvm: jruby-head
|
218
|
+
gemfile: gemfiles/rails32.gemfile
|
219
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
220
|
+
- rvm: jruby-head
|
221
|
+
gemfile: gemfiles/rails32.gemfile
|
222
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
223
|
+
- rvm: jruby-head
|
224
|
+
gemfile: gemfiles/rails32.gemfile
|
225
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
226
|
+
- rvm: jruby-head
|
227
|
+
gemfile: gemfiles/rails32.gemfile
|
228
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
229
|
+
# Rails 4.0 (JRuby 9K) :
|
230
|
+
- rvm: jruby-head
|
231
|
+
gemfile: gemfiles/rails40.gemfile
|
232
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
233
|
+
- rvm: jruby-head
|
234
|
+
gemfile: gemfiles/rails40.gemfile
|
235
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
236
|
+
- rvm: jruby-head
|
237
|
+
gemfile: gemfiles/rails40.gemfile
|
238
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
239
|
+
- rvm: jruby-head
|
240
|
+
gemfile: gemfiles/rails40.gemfile
|
241
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
242
|
+
- rvm: jruby-head
|
243
|
+
gemfile: gemfiles/rails40.gemfile
|
244
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
245
|
+
- rvm: jruby-head
|
246
|
+
gemfile: gemfiles/rails40.gemfile
|
247
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
248
|
+
- rvm: jruby-head
|
249
|
+
gemfile: gemfiles/rails40.gemfile
|
250
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
251
|
+
- rvm: jruby-head
|
252
|
+
gemfile: gemfiles/rails40.gemfile
|
253
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
254
|
+
# Rails 4.1 (JRuby 9K) :
|
255
|
+
- rvm: jruby-head
|
256
|
+
gemfile: gemfiles/rails41.gemfile
|
257
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
258
|
+
- rvm: jruby-head
|
259
|
+
gemfile: gemfiles/rails41.gemfile
|
260
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
261
|
+
- rvm: jruby-head
|
262
|
+
gemfile: gemfiles/rails41.gemfile
|
263
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
264
|
+
- rvm: jruby-1.7.18
|
265
|
+
gemfile: gemfiles/rails41.gemfile
|
266
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
267
|
+
- rvm: jruby-1.7.18
|
268
|
+
gemfile: gemfiles/rails41.gemfile
|
269
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
270
|
+
- rvm: jruby-1.7.18
|
271
|
+
gemfile: gemfiles/rails41.gemfile
|
272
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
273
|
+
- rvm: jruby-1.7.18
|
274
|
+
gemfile: gemfiles/rails41.gemfile
|
275
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
276
|
+
- rvm: jruby-1.7.18
|
277
|
+
gemfile: gemfiles/rails41.gemfile
|
278
|
+
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
279
|
+
# Rails 4.2 (JRuby 9K) :
|
280
|
+
- rvm: jruby-head
|
102
281
|
gemfile: gemfiles/rails42.gemfile
|
103
282
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=mysql
|
104
|
-
- rvm: jruby
|
283
|
+
- rvm: jruby-head
|
105
284
|
gemfile: gemfiles/rails42.gemfile
|
106
285
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=postgresql
|
107
|
-
- rvm: jruby
|
286
|
+
- rvm: jruby-head
|
108
287
|
gemfile: gemfiles/rails42.gemfile
|
109
288
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=sqlite3
|
110
|
-
- rvm: jruby
|
289
|
+
- rvm: jruby-head
|
111
290
|
gemfile: gemfiles/rails42.gemfile
|
112
291
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=derby
|
113
|
-
- rvm: jruby
|
292
|
+
- rvm: jruby-head
|
114
293
|
gemfile: gemfiles/rails42.gemfile
|
115
294
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=h2
|
116
|
-
- rvm: jruby
|
295
|
+
- rvm: jruby-head
|
117
296
|
gemfile: gemfiles/rails42.gemfile
|
118
297
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=hsqldb
|
119
|
-
- rvm: jruby
|
298
|
+
- rvm: jruby-head
|
120
299
|
gemfile: gemfiles/rails42.gemfile
|
121
300
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jndi
|
122
|
-
- rvm: jruby
|
301
|
+
- rvm: jruby-head
|
123
302
|
gemfile: gemfiles/rails42.gemfile
|
124
303
|
env: JRUBY_OPTS="--1.8 $JRUBY_OPTS" DB=jdbc
|
data/Appraisals
CHANGED
@@ -16,22 +16,20 @@ appraise "rails32" do
|
|
16
16
|
end
|
17
17
|
|
18
18
|
appraise "rails40" do
|
19
|
-
|
20
|
-
gem "activerecord", "~> 4.0.10", :require => false
|
19
|
+
gem "activerecord", "~> 4.0.12", :require => false
|
21
20
|
end
|
22
21
|
|
23
22
|
appraise "rails41" do
|
24
|
-
|
25
|
-
gem "activerecord", "~> 4.1.7", :require => false
|
23
|
+
gem "activerecord", "~> 4.1.8", :require => false
|
26
24
|
end
|
27
25
|
|
28
26
|
appraise "rails42" do
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
27
|
+
gem "activerecord", "~> 4.2.0", :require => false
|
28
|
+
end
|
29
|
+
|
30
|
+
appraise "railsNG" do
|
31
|
+
branch = ( ENV['rails_branch'] || 'master' )
|
32
|
+
gem "activerecord", :github => 'rails/rails', :branch => branch, :require => false
|
33
|
+
gem 'rails', :github => 'rails/rails', :branch => branch
|
34
|
+
gem 'arel', :github => 'rails/arel', :branch => 'master'
|
37
35
|
end
|
data/History.md
CHANGED
@@ -1,3 +1,20 @@
|
|
1
|
+
## 1.3.14 (01/28/15)
|
2
|
+
|
3
|
+
- [mysql] Fixed an undefined exception error in type_to_sql for MySQL (#616)
|
4
|
+
- [derby] support for empty insert statements (e.g. `DbModel.create!`) on AR 4.x
|
5
|
+
- [db2] revert limit/offset OVER( ORDER BY ) matching as it was not complete (#606)
|
6
|
+
- [db2] handle empty INSERT statement (default) VALUES in a way that works on AR 4.x
|
7
|
+
- [db2] `select` return value should be the same as core AR (Array on 3.2) (#607)
|
8
|
+
- [mysql] backport bulk change & schema-creation to be compatible with AR 4.x
|
9
|
+
- handle possible null values while extracting from XML columns (#615)
|
10
|
+
- DateTime columns are returned always as nil values (on Rails 4.2 #613)
|
11
|
+
- [oracle] do not override primary= within column methods on AR 4.2
|
12
|
+
- handle removed AR `Column#primary=` method on 4.2 (#609)
|
13
|
+
- [oracle] fix missing sequence_name_length method when doing a rename_table
|
14
|
+
- [mysql] do not force *DEFAULT CHARSET=utf8* when creating new tables
|
15
|
+
- [postgres] rename the primary key index when renaming a table in pg
|
16
|
+
- [db2] improve create_table on Z/OS (now supporting AR 4.x TableDefinition) (#581)
|
17
|
+
|
1
18
|
## 1.3.13 (11/21/14)
|
2
19
|
|
3
20
|
- handle ("hacked") date/time/timestamp conversion from the JDBC side on 4.2
|
data/lib/arel/visitors/db2.rb
CHANGED
@@ -10,11 +10,34 @@ module Arel
|
|
10
10
|
add_limit_offset(sql, o)
|
11
11
|
end
|
12
12
|
|
13
|
+
def visit_Arel_Nodes_InsertStatement o, a = nil
|
14
|
+
sql = "INSERT INTO "
|
15
|
+
sql << visit(o.relation, a)
|
16
|
+
|
17
|
+
values = o.values
|
18
|
+
|
19
|
+
if o.columns.any?
|
20
|
+
cols = o.columns.map { |x| quote_column_name x.name }
|
21
|
+
sql << ' (' << cols.join(', ') << ') '
|
22
|
+
# should depend the other way around but who cares it's AR
|
23
|
+
elsif o.values.eql? ArJdbc::DB2::VALUES_DEFAULT
|
24
|
+
cols = o.relation.engine.columns.map { |c| c.name }
|
25
|
+
sql << ' (' << cols.join(', ') << ')'
|
26
|
+
sql << ' VALUES '
|
27
|
+
sql << ' (' << cols.map { 'DEFAULT' }.join(', ') << ')'
|
28
|
+
values = nil
|
29
|
+
end
|
30
|
+
|
31
|
+
sql << visit(values, a) if values
|
32
|
+
|
33
|
+
sql
|
34
|
+
end if Arel::VERSION >= '4.0' # AR 4.0 ... AREL 5.0 since AR >= 4.1
|
35
|
+
|
13
36
|
private
|
14
37
|
|
15
38
|
def add_limit_offset(sql, o)
|
16
39
|
if o.offset && o.offset.value && o.limit && o.limit.value
|
17
|
-
@connection.
|
40
|
+
@connection.replace_limit_offset_with_ordering! sql, o.limit.value, o.offset.value, o.orders
|
18
41
|
else
|
19
42
|
@connection.replace_limit_offset! sql, limit_for(o.limit), o.offset && o.offset.value
|
20
43
|
end
|
data/lib/arel/visitors/derby.rb
CHANGED
@@ -28,6 +28,30 @@ module Arel
|
|
28
28
|
do_visit o.expr, a
|
29
29
|
end
|
30
30
|
|
31
|
+
# @private
|
32
|
+
VALUES_DEFAULT = 'VALUES ( DEFAULT )' # NOTE: marker set by ArJdbc::Derby
|
33
|
+
|
34
|
+
def visit_Arel_Nodes_InsertStatement o, a = nil
|
35
|
+
sql = "INSERT INTO "
|
36
|
+
sql << visit(o.relation, a)
|
37
|
+
|
38
|
+
values = o.values
|
39
|
+
|
40
|
+
if o.columns.any?
|
41
|
+
cols = o.columns.map { |x| quote_column_name x.name }
|
42
|
+
sql << ' (' << cols.join(', ') << ') '
|
43
|
+
elsif o.values.eql? VALUES_DEFAULT
|
44
|
+
cols = o.relation.engine.columns.map { |c| c.name }
|
45
|
+
sql << ' (' << cols.join(', ') << ')'
|
46
|
+
sql << ' VALUES '
|
47
|
+
sql << ' (' << cols.map { 'DEFAULT' }.join(', ') << ')'
|
48
|
+
values = false
|
49
|
+
end
|
50
|
+
|
51
|
+
sql << visit(values, a) if values
|
52
|
+
sql
|
53
|
+
end if Arel::VERSION >= '4.0' # AR 4.0 ... AREL 5.0 since AR >= 4.1
|
54
|
+
|
31
55
|
end
|
32
56
|
end
|
33
57
|
end
|
data/lib/arjdbc.rb
CHANGED
@@ -17,3 +17,9 @@ else
|
|
17
17
|
end
|
18
18
|
|
19
19
|
require 'arjdbc/version'
|
20
|
+
|
21
|
+
# TODO: remove this "HINT" once AR 4.2 is working ~ fairly reliable :
|
22
|
+
if ActiveRecord::VERSION::STRING[0, 3] == '4.2' && ENV['AR_JDBC_42'] != 'true'
|
23
|
+
ArJdbc.warn "NOTE: ActiveRecord 4.2 is not (yet) fully supported by AR-JDBC," <<
|
24
|
+
" please help us finish 4.2 support - check http://bit.ly/jruby-42 for starters"
|
25
|
+
end
|