activerecord-oracle_enhanced-adapter 1.6.9 → 1.8.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/History.md +604 -11
  3. data/README.md +121 -9
  4. data/VERSION +1 -1
  5. data/lib/active_record/connection_adapters/emulation/oracle_adapter.rb +1 -1
  6. data/lib/active_record/connection_adapters/oracle_enhanced/column.rb +10 -61
  7. data/lib/active_record/connection_adapters/oracle_enhanced/column_dumper.rb +13 -51
  8. data/lib/active_record/connection_adapters/oracle_enhanced/connection.rb +17 -15
  9. data/lib/active_record/connection_adapters/oracle_enhanced/context_index.rb +117 -119
  10. data/lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb +49 -73
  11. data/lib/active_record/connection_adapters/oracle_enhanced/database_tasks.rb +10 -10
  12. data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_connection.rb +87 -115
  13. data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_quoting.rb +32 -0
  14. data/lib/active_record/connection_adapters/oracle_enhanced/oci_connection.rb +70 -79
  15. data/lib/active_record/connection_adapters/oracle_enhanced/oci_quoting.rb +36 -0
  16. data/lib/active_record/connection_adapters/oracle_enhanced/procedures.rb +77 -77
  17. data/lib/active_record/connection_adapters/oracle_enhanced/quoting.rb +148 -0
  18. data/lib/active_record/connection_adapters/oracle_enhanced/schema_creation.rb +61 -57
  19. data/lib/active_record/connection_adapters/oracle_enhanced/schema_definitions.rb +40 -61
  20. data/lib/active_record/connection_adapters/oracle_enhanced/schema_dumper.rb +161 -189
  21. data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements.rb +151 -206
  22. data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements_ext.rb +49 -54
  23. data/lib/active_record/connection_adapters/oracle_enhanced/structure_dump.rb +82 -116
  24. data/lib/active_record/connection_adapters/oracle_enhanced/version.rb +1 -1
  25. data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +414 -718
  26. data/lib/active_record/oracle_enhanced/type/boolean.rb +18 -0
  27. data/lib/active_record/oracle_enhanced/type/integer.rb +4 -4
  28. data/lib/active_record/oracle_enhanced/type/json.rb +8 -0
  29. data/lib/active_record/oracle_enhanced/type/national_character_string.rb +24 -0
  30. data/lib/active_record/oracle_enhanced/type/raw.rb +12 -2
  31. data/lib/active_record/oracle_enhanced/type/string.rb +27 -0
  32. data/lib/active_record/oracle_enhanced/type/text.rb +30 -0
  33. data/lib/active_record/oracle_enhanced/type/timestamptz.rb +23 -0
  34. data/lib/activerecord-oracle_enhanced-adapter.rb +3 -7
  35. data/spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb +182 -238
  36. data/spec/active_record/connection_adapters/oracle_enhanced_connection_spec.rb +103 -65
  37. data/spec/active_record/connection_adapters/oracle_enhanced_context_index_spec.rb +80 -79
  38. data/spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb +423 -619
  39. data/spec/active_record/connection_adapters/oracle_enhanced_database_tasks_spec.rb +20 -13
  40. data/spec/active_record/connection_adapters/oracle_enhanced_dbms_output_spec.rb +12 -14
  41. data/spec/active_record/connection_adapters/oracle_enhanced_dirty_spec.rb +118 -127
  42. data/spec/active_record/connection_adapters/oracle_enhanced_emulate_oracle_adapter_spec.rb +4 -5
  43. data/spec/active_record/connection_adapters/oracle_enhanced_procedures_spec.rb +109 -114
  44. data/spec/active_record/connection_adapters/oracle_enhanced_schema_dump_spec.rb +112 -105
  45. data/spec/active_record/connection_adapters/oracle_enhanced_schema_statements_spec.rb +373 -532
  46. data/spec/active_record/connection_adapters/oracle_enhanced_structure_dump_spec.rb +148 -102
  47. data/spec/spec_helper.rb +62 -59
  48. metadata +42 -170
  49. data/.rspec +0 -2
  50. data/.travis/oracle/download.sh +0 -14
  51. data/.travis/oracle/install.sh +0 -31
  52. data/.travis/setup_accounts.sh +0 -9
  53. data/.travis.yml +0 -39
  54. data/Gemfile +0 -23
  55. data/RUNNING_TESTS.md +0 -50
  56. data/Rakefile +0 -60
  57. data/activerecord-oracle_enhanced-adapter.gemspec +0 -132
  58. data/lib/active_record/connection_adapters/oracle_enhanced/cpk.rb +0 -21
  59. data/lib/active_record/connection_adapters/oracle_enhanced/dirty.rb +0 -40
  60. data/lib/active_record/oracle_enhanced/type/timestamp.rb +0 -11
  61. data/spec/active_record/connection_adapters/oracle_enhanced_cpk_spec.rb +0 -113
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d3bf47194eb3711fcdc5cc04ea0c11ca3afe5ba8
4
- data.tar.gz: cb7f41143131f866bf881a9fbc19d76785ff5c75
3
+ metadata.gz: 955c1c3d11ce8928038c4f64681234c4cf7ad304
4
+ data.tar.gz: c08040c3b024d62a76653409df2cda7e723a7ce6
5
5
  SHA512:
6
- metadata.gz: 976de1d723fa15c16a103e6ea6c9961f1600a04f1e08f4817e804b1a05dca1aec5d1759a5a1a42c938061118caf1bd2f1b40f0b0328763b052631ff765e92e50
7
- data.tar.gz: 01fa3f9969c749aa645571e219a5069c333d05afc39d138733ef723846da8ef8b0dfffef699cc3385c8df4a7233fff83bc551c08fead510aab683560a92166cd
6
+ metadata.gz: 758ddc44a6c42afe6a160142c5d6d489bb5c4f240333d1ce715e7434f4da57240a46f84207b1160fe831bd0489a76e23e21cea4515b159bc01ade69379cc1620
7
+ data.tar.gz: a95939add8ff9aebaf535aeb4d293f0466dcde14479e0ccf4fdbdcf54f37b23e34924f793b54975dc06e0e0e24ec24406b441a6106a071946f7dcf25bd4fb04c
data/History.md CHANGED
@@ -1,19 +1,612 @@
1
- ## 1.6.9 / 2017-03-29
1
+ ## 1.8.2 / 2017-08-24
2
+
3
+ * Changes and bug fixes
4
+ * Fix cursor leak when using activerecord-import gem [#1409, #1433]
5
+ * Mention new statement_limit default [#1364, #1365]
6
+ * Add upgrade section for `:statement_limit` value at Rails 5.1 [#1362, #1363]
7
+ * Set `disk_asynch_io` to `false` [#1413, #1414]
8
+ * Update README.md [#1367 #1368]
9
+ * CI against JRuby 9.1.12.0 [#1359, #1360]
10
+ * Bump ruby versions [#1346]
11
+ * rubocop namespace changes from `Style` to `Layout` [#1347, #1351]
12
+
13
+ * Changes and bug fixes
14
+ * No changes since 1.8.0.rc3
15
+
16
+ ## 1.8.1 / 2017-05-11
17
+
18
+ * Changes and bug fixes
19
+ * Address `undefined method `tablespace' for #<ActiveRecord::ConnectionAdapters::IndexDefinition [#1332, #1334, #1336]
20
+ * Rails 5.1.0.rcX is not supported anymore [#1311]
21
+ * Use Ubuntu 12.04 at Travis [#1324]
22
+
23
+ ## 1.8.0 / 2017-04-27
24
+
25
+ * Major enhancements
26
+ * Support Rails 5.1.0
27
+ * Add JSON attribute support [#1240]
28
+ * Update `database.yml` when `rails new <new_app> -d oracle` specified [rails/rails#28257]
29
+
30
+ * Changes and bug fixes
31
+ * No changes since 1.8.0.rc3
32
+
33
+ ## 1.8.0.rc3 / 2017-04-24
34
+
35
+ * Changes and bug fixes
36
+ * Include VERSION file in gem [#1302, #1303]
37
+
38
+ ## 1.8.0.rc2 / 2017-04-19
39
+
40
+ * Changes and bug fixes
41
+ * Fix `select_all` with legacy `binds` [#1246,#1248,#1250]
42
+ * Fix the `BINARY_FLOAT` column type returns nil in JRuby [#1244, #1254, #1255]
43
+ * Handle `TIMESTAMP WITH TIMEZONE` separately from `TIMEZONE` [#1206, #1267, #1268]
44
+ * Changing `NLS_DATE_FORMAT` and `NLS_TIMESTAMP_FORMAT` is not supported [#1267, #1268]
45
+ * Let abstract adapter type cast Date, DateTime and Time for JRuby [#1272, #1273]
46
+ * Collapse a file specification in gemspec [#1296, #1297]
47
+ * Do not write VERSION directly with gemspec [#1298, #1299]
48
+ * Omit specification of release date in gemspec [#1298, #1299]
49
+ * Add missing `timestamptz.rb` to gemspec at release18 branch [#1286]
50
+ * Remove specs for unsupported behaviour which causes `ORA-01861` [#1267, #1269, #1271]
51
+ * Address `OCIException: OCI8 was already closed` at specs for JSON [#1265, #1266]
52
+ * Bump Ruby version to 2.2.7 [#1261]
53
+
54
+ ## 1.8.0.rc1 / 2017-03-20
55
+
56
+ * Major enhancements
57
+ * Support Rails 5.1.0.rc1
58
+ * Add JSON attribute support #1240
59
+ * Update `database.yml` when `rails new <new_app> -d oracle` specified [rails/rails#28257]
60
+
61
+ * Changes and bug fixes
62
+ * Eliminate a redundant empty lines in schema.rb generated by SchemaDumper [#1232]
63
+ * Align the columns of db/structure.sql [#1242]
64
+ * Use Abstract StatementPool (new `statement_limit` default is 1000 was 250) [#1228]
65
+ * Decouple Composite Primary Key code [#1224, #1225]
66
+ * Push `valid_type?` up to abstract adapter [#1208]
67
+ * Oracle12 visitor is also available for 12.2 [#1217]
68
+ * Oracle Database 12c Release 2 bundles new ojdbc8.jar [#1218]
69
+ * Deprecate `supports_migrations?` on connection adapters [#1209]
70
+ * Use `ActiveRecord::SchemaMigration.table_name` [#1221]
71
+ * No need to check if `changed?` defined [#1226]
72
+ * No need to initialize `@quoted_column_names` and `@quoted_table_names` [#1227]
73
+ * Hard code `empty_blob()` or `empty_clob()` based on types [#1229]
74
+ * ruby-plsql 0.6.0 or higher version is required [#1216]
75
+ * No need to specify `rack` in Gemfile [#1230]
76
+ * Bundle from more secure source [#1243]
77
+ * Add Travis CI build status [#1231]
78
+ * Bump JRuby to 9.1.8.0 [#1222]
79
+ * Remove a duplicate spec testing `Model.distinct.count` [#1235]
80
+ * Suppress unused and not initialized warnings [#1215]
81
+ * Suppress `WARNING: Using the `raise_error` matcher without providing a specific error` [#1219]
82
+ * Suppress `WARNING: Using `expect { }.not_to raise_error(...)` risks false positives` [#1220]
83
+
84
+ ## 1.8.0.beta1 / 2017-02-27
85
+
86
+ * Major enhancements
87
+ * Support Rails 5.1.0.beta1
88
+ * Fallback :bigint to :integer for primary keys [#1077]
89
+ * Drop Java SE 6 or older version of Java SE support [#1126]
90
+ * Drop JRuby 9.0.x support for Rails 5.1 [#1147]
91
+ * Refactor ColumnDumper to support consistent Virtual column with Rails [#1185]
92
+ * Schema dumper supports `t.index` in `create_table` [#1187]
93
+ * `table_exists?` only checks tables, does not check views [#1179, #1191]
94
+ * `data_sources` returns tables and views [#1192]
95
+ * `Model.table_comment` syntax is not supported anymore [#1199]
96
+ * Remove Oracle enhanced adapter own foreign key implementations [#977]
97
+
98
+ * Changes and bug fixes
99
+ * Rails 5.1.0.beta1 is out [#1204]
100
+ * Composite foreign keys are not supported [#1188]
101
+ * Introduce `supports_virtual_columns?` [#1184]
102
+ * Made it able to change column with adding comment [#1156, #1164]
103
+ * Omit table comment option of schema.rb if it is blank [#1159]
104
+ * Fix to return nil if column comment is blank at table creation [#1158]
105
+ * `bind_param` arity change, not to take column [#1203]
106
+ * ActiveRecord `structure_dump` and `structure_load` signature changes [#1125]
107
+ * Quoting booleans should return a frozen string [#956]
108
+ * Pass `type_casted_binds` to log subscriber [#957]
109
+ * `supports_datetime_with_precision?` always returns `true` [#964]
110
+ * Handle ORA-00942 and ORA-00955 as `ActiveRecord::StatementInvalid` [#1093]
111
+ * Raise `ActiveRecord::StatementInvalid` at `rename_index` when old index does not exist [#1195]
112
+ * Handle `ORA-01418: specified index does not exist` as `ActiveRecord::StatementInvalid` [#1195]
113
+ * Raise ActiveRecord::NotNullViolation when OCIError: ORA-01400 [#1174]
114
+ * Rails 5.1 : insert into `returning_id` not working since rails/rails#26002 [#988, #1088]
115
+ * Make `exec_{insert,update}` signatures consistent [#966]
116
+ * Introduce OracleEnhanced `ColumnMethods` module and `AlterTable` `Table` classes [#1081]
117
+ * `empty_insert_statement_value` is not implemented [#1180]
118
+ * Switch to keyword args for `type_to_sql` [#1167, #1168]
119
+ * Replace `all_timestamp_attributes` with `all_timestamp_attributes_in_model` [#1129]
120
+ * `current_database` returns the expected database name [#1135]
121
+ * Use `supports_foreign_keys_in_create?` [#1143]
122
+ * Address `add_column` gets `ArgumentError: wrong number of arguments` [#1157, #1170]
123
+ * Address `change_column` `ArgumentError: wrong number of arguments` [#1171, #1172]
124
+ * SchemaDumper should not dump views as tables [#1192]
125
+ * Use Abstract `select_rows(arel, name = nil, binds = [])` [#1132]
126
+ * Address `OCIError: ORA-01756: quoted string not properly terminated:` [#1102]
127
+ * Use `table_exists?` and `tables` [#1170, #1178]
128
+ * Move `ActiveModel::Type::Text` to `ActiveRecord::Type::Text` [#1082]
129
+ * Support schema option for views [#1190]
130
+ * Quote table and trigger names containing sinqle quote character [#1192]
131
+ * Restore :raw type migration support [#1176]
132
+ * Refactor Boolean type by removing duplicate code [#1047]
133
+ * Remove deprecated methods to get and set columns [#958]
134
+ * Remove `is_?` deprecated methods [#959]
135
+ * Remove `quote_date_with_to_date` and `quote_timestamp_with_to_timestamp` #960
136
+ * Remove unnecessary comments in Type [#961]
137
+ * Remove options[:default] for virtual columns [#962]
138
+ * Remove `self.emulate_dates` and `self.emulate_dates_by_column_name` [#963]
139
+ * Delete `self.boolean_to_string` [#967]
140
+ * Delete Oracle enhanced its own `join_to_update` [#968]
141
+ * Remove `self.ignore_table_columns` [#969]
142
+ * Remove unused `self.virtual_columns` [#970]
143
+ * Remove `dump_schema_information` and `initialize_schema_migrations_table` [#972]
144
+ * Remove `fallback_string_to_date`, `fallback_string_to_time` [#974, #975, #1112]
145
+ * Remove `dependent` option from `add_foreign_key` [#976]
146
+ * Remove specs testing Rails `self.ignored_columns` features [#987]
147
+ * Remove `add_foreign_key` specs with `table_name_prefix` and `table_name_suffix` [#990]
148
+ * Remove `type_cast` method just calling super [#1201]
149
+ * Remove `ids_in_list_limit` alias [#1202]
150
+ * Remove unused comments from data types spec [#1079]
151
+ * Remove deprecated `table_exists?` and `tables` [#1100, #1178]
152
+ * Remove deprecated `name` argument from `#tables` [#1189]
153
+ * Prefer `SYS_CONTEXT` function than `v$nls_parameters` view [#1107]
154
+ * `initialize_schema_migrations_table` method has been removed [#1144]
155
+ * `index_name_exists?` at schema statements spec is not necessary [#1197]
156
+ * Remove comments for `data_source_exists?` [#1200]
157
+ * Address DEPRECATION WARNING: Passing a column to `quote` has been deprecated. [#978]
158
+ * Deprecate `supports_primary_key?` [#1177]
159
+ * Deprecate passing `default` to `index_name_exists?` [#1175]
160
+ * Suppress `add_index_options` method `DEPRECATION WARNING:` [#1193]
161
+ * Suppress `remove_index` method deprecation warning [#1194]
162
+ * Suppress DEPRECATION WARNING at `rename_index` [#1195]
163
+ * Suppress `oracle_enhanced_adapter.rb:591: warning: assigned but unused` [#1198]
164
+ * Use rails rubocop setting [#1111]
165
+ * Rubocop addresses `Extra empty line detected at class body beginning.` [#1078]
166
+ * Address `Lint/EndAlignment` offences by changing code ifself [#1113]
167
+ * rubocop `AlignWith` has been renamed to `EnforcedStyleAlignWith` [#1142]
168
+ * Add `Style/EmptyLinesAroundMethodBody` [#1173]
169
+ * Address git warnings: [#1000]
170
+ * Update `required_rubygems_version` just following rails.gemspec [#1110]
171
+ * Use the latest ruby-plsql while developing alpha version [#1114]
172
+ * Use the latest arel master while developing alpha version [#1115]
173
+ * Bump Arel to 8.0 [#1120, #1121, #1124]
174
+ * Use released Arel 8 [#1205]
175
+ * Remove duplicate license information [#965]
176
+ * Clean up comments and un-commented specs for table comment feature [#971]
177
+ * Use Rails migration `create_table` to create table and sequence [#991]
178
+ * Removed a invalid spec about TIMESTAMP column [#1020]
179
+ * Remove specs which set `attribute :hire_date, :date` [#1024]
180
+ * Remove version specification for rspec [#1055]
181
+ * Suppress `create_table(:test_employees, {:force=>true})` message [#1080]
182
+ * Perform `drop_table :test_employees` [#1087]
183
+ * Address rspec deprecation warning [#1089]
184
+ * Suppress rspec warning [#1101]
185
+ * Suppress `Dropped database 'ORCL'` messages while running rspec [#1103]
186
+ * Address rspec warnings by checking with `raise_errors_for_deprecations!` [#1104]
187
+ * `clear_cache!` always exists at least since Rails 4.0 [#1106]
188
+ * Use SimpleCov [#1108]
189
+ * Enable RSpec `--warnings` option [#1116]
190
+ * Remove entry for rcov since it already migrated to simplecov [#1118]
191
+ * Add spec for #1149 `TypeError: can't cast Java::JavaSql::Timestamp` [#1152]
192
+ * Remove a duplicated specs [#1163]
193
+ * Specify `--require spec_helper` in .rspec [#1186]
194
+ * Add 'pry' and 'pry-nav' for JRuby debug [#973]
195
+ * Remove ruby-debug [#1196]
196
+ * Use Ubuntu Trusty at travis [#1095]
197
+ * Address travis.yml has multilpe language entries [#1109]
198
+ * Use docker-oracle-xe-11g for Travis CI [#1117]
199
+ * Modify `JRUBY_OPTS` for Travis CI [#1119]
200
+ * Add ruby-head and jruby-head to .travis.yml [#1127]
201
+ * Use JRuby 9.1.7.0 [#1138]
202
+ * Add JRuby 9.0.4.0 and allow JRuby 9.0.5.0 failures [#1146]
203
+ * Tiny fix for .travis.yml after migrating to docker-oracle-xe-11g [#1183]
204
+ * Templates updated to use Rails master branch for Rails 5.1 [#1133]
205
+ * Update running tests to include rails-dev-box [#1140]
206
+
207
+ * Known issues
208
+ * Legacy primary key support testing [#1207]
209
+ * PrimaryKeyIntegerNilDefaultTest failures [#1162]
210
+ * Skip `explain should explain query with bind` with JRuby [#1091]
211
+
212
+ ## 1.7.10 / 2017-02-03
213
+
214
+ * Changes and bug fixes
215
+ * Address `TypeError: can't cast Java::JavaSql::Timestamp` [#1147, 1153]
216
+ * Use docker-oracle-xe-11g for Travis CI for release17 branch [#1150]
217
+ * Use JRuby 9.1.7.0 for release17 branch [#1154]
218
+ * Pending until further investigation made for #908 for release17 branch [#1151]
219
+
220
+ * Known issues
221
+ * No changes since 1.7.7
222
+
223
+ ## 1.7.9 / 2016-12-26
224
+
225
+ * Changes and bug fixes
226
+
227
+ * Fix ORA-00933 error when executing `rails db:schema:load` [#1084]
228
+ * Quoting booleans should return a frozen string [#1083]
229
+ * CI against ruby 2.4.0 [#1096, #1086]
230
+
231
+ * Known issues
232
+ * No changes since 1.7.7
233
+
234
+ ## 1.7.8 / 2016-12-06
235
+
236
+ * Changes and bug fixes
237
+ * Separate schema migration insert statements correctly [#1074]
238
+ * Add `use_old_oracle_visitor` example [#1068]
239
+ * `supports_fetch_first_n_rows_and_offset?` returns `false` when `use_old_oracle_visitor` is true {1070, #1075]
240
+ * Suppress `create_table(:posts, {:force=>true})` message [#1067, #1072]
241
+ * Enable rubocop and Code Climate [#1056, #1057, #1060, #1062, #1071]
242
+ * Bump MRI version for travis [#1054, #1059]
243
+ * Drop `ActiveRecord::InternalMetadata.table_name` after each spec [#1073]
244
+
245
+ * Known issues
246
+ * No changes since 1.7.7
247
+
248
+ ## 1.7.7 / 2016-11-15
249
+
250
+ * Changes and bug fixes
251
+ * Introduce `use_old_oracle_visitor` to choose old Oracle visitor [#1049]
252
+ * Fix deprecated warnings in Ruby 2.4.0+ [#1048, #1052]
253
+ * Add Ruby 2.2.5 and JRuby 9.0.5.0 for travis [#1050, #1051]
254
+
255
+ * Known issues
256
+ * No changes since 1.7.6
257
+
258
+ ## 1.7.6 / 2016-11-12
259
+
260
+ * Changes and bug fixes
261
+ * Register `:boolean` type for Attribute API [#942, #1045]
262
+ * No need to set version in Gemfile anymore since rdoc 5.0.0 released [#1040]
263
+ * Bump MRI and JRuby version for travis [#1041, #1042, #1043]
264
+ * Known issues
265
+
266
+ - Only with JRuby
267
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
268
+
269
+ ## 1.7.5 / 2016-11-06
270
+
271
+ * Changes and bug fixes
272
+
273
+ * Multi insert is not supported [#1016]
274
+ * Use `default_timezone = :local` to handle `TIMESTAMP WITH LOCAL TIME ZONE` [#1001, #1019]
275
+ * Address Rails 5 : custom methods for create record when exception is raised in `after_create` callback fails [#944, #1023]
276
+ * Using the gem in non-rails apps [#1026]
277
+ * Support connection strings in `DATABASE_URL1 [#1032, #1035]
278
+ * Rebuild primary key index to `default_tablespaces[:index]` [#1028]
279
+ * Address `Java::JavaSql::SQLException: Missing IN or OUT parameter at index:: 3:` [#1030, #1033]
280
+
281
+ * Known issues
282
+
283
+ - Only with JRuby
284
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
285
+ * Workaround: execute explain without bind or use CRuby
286
+ - CRuby and JRuby
287
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
2
288
 
3
- * Changes and bug fixes since 1.6.8
4
- * Fix the BINARY_FLOAT column type returns nil in JRuby [#1257]
289
+ ## 1.7.4 / 2016-10-14
5
290
 
6
- ## 1.6.8 / 2017-03-18
291
+ * Changes and bug fixes
7
292
 
8
- * Changes and bug fixes since 1.6.7
9
- * Better fix to support "Relation#count does not support finder options anymore in Rails [#787, #788]
293
+ * Bump Arel 7.1.4 or higher [#1010, #848, #946]
294
+ * NoMethodError: undefined method `write' for nil:NilClass for serialized column [#798, #1007]
295
+ * Quote table name in disable_referential_integrity [#1012, #1014]
296
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438, rails/arel#450]
297
+ * Add UPGRADE section : Upgrade Rails 4.2 or older version to Rails 5 [#1011, #993]
298
+ * add docker to RUNNING_TEST.md [#1006]
299
+ * Add executable test cases using Minitest or RSpec [#1002]
300
+
301
+ * Known issues
302
+
303
+ - Only with JRuby
304
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
305
+ * Workaround: execute explain without bind or use CRuby
306
+ - CRuby and JRuby
307
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
308
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
309
+ * #998 causes regression for `TIMESTAMP WITH LOCAL TIME ZONE` [#1001]
310
+
311
+ ## 1.7.3 / 2016-10-03
312
+
313
+ * Changes and bug fixes
314
+ * Respect `ActiveRecord::Base.default_timezone = :utc` rather than connection `time_zone` value [#755, #998]
315
+
316
+ * Known issues
317
+ * No changes since 1.7.0.rc1
318
+
319
+ ## 1.7.2 / 2016-09-19
320
+
321
+ * Changes and bug fixes
322
+ * Remove ruby-oci8 from runtime dependency [#992,#995]
323
+ * Update README to add `gem 'ruby-oci8'` explicitly for CRuby users [#992, #995]
324
+
325
+ * Known issues
326
+ * No changes since 1.7.0.rc1
327
+
328
+ ## 1.7.1 / 2016-08-22
329
+
330
+ * Changes and bug fixes
331
+ * Add `ActiveRecord::OracleEnhanced::Type::Boolean` [#985, #979]
332
+ * Address `create_table': undefined method `each_pair' for []:Array (NoMethodError) [#980]
333
+ * Deprecate `fallback_string_to_date`, `fallback_string_to_time` [#974]
334
+
335
+ * Known issues
336
+ * No changes since 1.7.0.rc1
337
+
338
+ ## 1.7.0 / 2016-08-04
339
+
340
+ * Changes and bug fixes
341
+ * No changes since 1.7.0.rc1
342
+
343
+ * Known issues
344
+ * No changes since 1.7.0.rc1
345
+
346
+ ## 1.7.0.rc1 / 2016-08-02
347
+
348
+ * Changes and bug fixes
349
+
350
+ * Support `emulate_booleans_from_strings` in Rails 5 [#953, #942]
351
+ * Deprecate `self.is_boolean_column?` [#949]
352
+ * Deprecate `self.is_date_column?` and `is_date_column?` [#950]
353
+ * Deprecate `set_type_for_columns`, `set_type_for_columns` and `clear_types_for_columns` [#951]
354
+ * Deprecate `self.is_integer_column?` [#952]
355
+
356
+ * Known issues
357
+
358
+ - Only with JRuby
359
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
360
+ * Workaround: execute explain without bind or use CRuby
361
+ - CRuby and JRuby
362
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
363
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
364
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
365
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
366
+ * One of the units test skipped when database version is 11gR2 or lower. [#946]
367
+
368
+ ## 1.7.0.beta7 / 2016-08-01
369
+
370
+ * Changes and bug fixes
371
+
372
+ * Use OracleEnhanced::SchemaDumper#tables and #table
373
+ only if they have Oracle enhanced specific features [#947, #797]
374
+
375
+ * Known issues
376
+
377
+ - Only with JRuby
378
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
379
+ - CRuby and JRuby
380
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
381
+ * Rails 5 : emulate_booleans_from_strings support [#942]
382
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
383
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
384
+ * One of the units test skipped when database version is 11gR2 or lower. [#946]
385
+
386
+ ## 1.7.0.beta6 / 2016-07-29
387
+
388
+ * Changes and bug fixes
389
+
390
+ * Use attributes.keys to update all attributes when partial_write is disabled [#906 #943]
391
+
392
+ * Known issues
393
+
394
+ - Only with JRuby
395
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
396
+ - CRuby and JRuby
397
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
398
+ * Rails 5 : emulate_booleans_from_strings support [#942]
399
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
400
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
401
+
402
+ ## 1.7.0.beta5 / 2016-07-28
403
+
404
+ * Changes and bug fixes
405
+
406
+ * Use binds.size to set returning_id_index for returning_id [#907, #912 and #939]
407
+
408
+ * Known issues
409
+
410
+ - Only with JRuby
411
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
412
+ - CRuby and JRuby
413
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
414
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
415
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
416
+
417
+ ## 1.7.0.beta4 / 2016-07-27
418
+
419
+ * Changes and bug fixes
420
+
421
+ * Call `bind_returning_param` when sql has returning_id and using JRuby [#937]
422
+ * Remove unused `col_type` to avoid warnings [#934]
423
+ * Remove TODO comment since Oracle DATE type can be mapped Rails Datetime with attribute API [#935]
424
+ * Remove rspec from runtime dependency [#933]
425
+ * Rename `add_dependency` to `add_runtime_dependency` [#933]
426
+ * Remove warnings for + when tested with JRuby 9.1.2 [#936]
427
+
428
+ * Known issues
429
+
430
+ - Only with JRuby
431
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
432
+ * #937 addresses two failures reported in #912
433
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
434
+ - CRuby and JRuby
435
+ * Rails 5 : create table with primary key trigger not returning id [#907]
436
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
437
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
438
+
439
+ ## 1.7.0.beta3 / 2016-07-22
440
+
441
+ * Changes and bug fixes
442
+ * Not giving `bind_param` a 3rd argument `column` [#929, #909]
443
+
444
+ * Known issues
445
+
446
+ - Only with JRuby
447
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
448
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
449
+ - CRuby and JRuby
450
+ * Rails 5 : create table with primary key trigger not returning id [#907]
451
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
452
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
453
+
454
+ ## 1.7.0.beta2 / 2016-07-22
455
+
456
+ * Changes and bug fixes
457
+
458
+ * Support CLOB for JRuby [#926, #910, #911]
459
+ * Arel 7.1.0 or higher version is required [#919]
460
+ * Document usage of ActiveRecord Attributes API in 1.7 [#924]
461
+ * Add a note about usage pecularities of context_index's index_column option to README [#924]
462
+ * Set required_ruby_version = '>= 2.2.2' [#916]
463
+ * Remove ActiveRecord::ConnectionAdapters::TableDefinition#aliased_types [#921]
464
+ * Update warning message for composite primary keys [#923]
465
+ * Remove specs deprecated in Oracle enhanced adapter 1.7 [#917]
466
+ * Rails 5 : has_and_belongs_to_many test gets ORA-01400 since primary key column "ID"
467
+ not included in insert statement [#856, rails/rails#25388, rails/rails#25578 ]
468
+ - This fix will be included in the next version of Rails which should be named 5.0.1
469
+
470
+ * Known issues
471
+
472
+ - Only with JRuby
473
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
474
+ * Rails 5 : SQL with bind parameters when NLS_NUMERIC_CHARACTERS is set to ', '
475
+ show Java::JavaSql::SQLSyntaxErrorException: / ORA-01722: invalid number [#909]
476
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
477
+ - CRuby and JRuby
478
+ * Rails 5 : create table with primary key trigger not returning id [#907]
479
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
480
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
481
+
482
+ ## 1.7.0.beta1 / 2016-07-18
483
+
484
+ * Major enhancements
485
+
486
+ * Support Rails 5.0
487
+ * Use Arel::Visitors::Oracle12 to use better top-N query support [#671]
488
+ * Oracle TIMESTAMP sql type is associated with Rails `DateTime` type [#845]
489
+ * Rails :time as Oracle TIMESTAMP to support subsecond precision [#817, #816]
490
+ * Rails :datetime as Oracle TIMESTAMP to support subsecond precision [#739]
491
+ * Remove ActiveRecord::OracleEnhanced::Type::Timestamp [#815]
492
+ * Deprecate `quote_date_with_to_date` and `quote_timestamp_with_to_timestamp` [#879]
493
+ * Deprecate `set_boolean_columns` and `set_string_columns` [#874]
494
+ * Deprecate `set_integer_columns [#872]
495
+ * Deprecate `set_date_columns` and `set_datetime_columns` [#869]
496
+ * Deprecate `ignore_table_columns` to use Rails native `ignored_columns` [#855]
497
+ * Set :datetime for an attribute explicitly [#875, #876]
498
+ * Support `#views` #738
499
+ * Replace `table_exists?` with `data_source_exists?` [#842]
500
+ * Introduce `data_source_exists?` to return tables and views [#841]
501
+ * Implement primary_keys to prepare dumping composite primary key [#860]
502
+ * Support for any type primary key [#836]
503
+ * Dump composite primary keys [#863]
504
+ * Dump type and options for non default primary keys [#861]
505
+ * Support creating foreign keys in create table [#862]
506
+ * Support ActiveRecord native comment feature [#822, #821, #819]
507
+
508
+ * Changes and bug fixes
509
+
510
+ * Fix cast_type issue [#795]
511
+ * Rename quote_value to quote_default_expression [#661]
512
+ * Change bind parameters order to come offset first then limit next [#831]
513
+ * type_cast arity change [#781]
514
+ * Initial support for sql_type_metadata [#656]
515
+ * Support bind_params for JDBC connections [#806]
516
+ * Use all_* dictionary replacing user_* ones [#713]
517
+ * Register `NUMBER(1)` sql_type to `Type::Boolean` [#844]
518
+ * Add `ActiveRecord::ValueTooLong` exception class [#827]
519
+ * Not passing `native_database_types` to `TableDefinition` [#747]
520
+ * Ignore index name in `index_exists?` when not passed a name to check for [#840]
521
+ * Add reversible syntax for change_column_default [#839]
522
+ * Support Oracle national character set NCHAR, NVARCHAR2 [#886]
523
+ * Support "limited" :returning_id [#894, #803]
524
+ * Support RAW sql data type in Rails 5 [#877]
525
+ * Remove `serialized_attributes` which is removed in Rails 5 [#694]
526
+ * Add deprecation warning for `bind_param` [#809]
527
+ * Remove `self.string_to_raw` from Column which is not called anymore [#813]
528
+ * Remove type_cast from Column [#811]
529
+ * Remove deprecated `distinct` method [#771]
530
+ * Remove alias_method_chain and rename oracle_enhanced_table to table [#864]
531
+ * Warn if `AR.primary_key` is called for a table with composite primary key [#837]
532
+ * Remove select method from Oracle enhanced adapter [#784]
533
+ * Remove version check to see if ::Rails::Railtie exists [#769]
534
+ * Remove FALSE_VALUES [#716]
535
+ * Remove TRUE_VALUES from OracleEnhancedColumn [#646]
536
+ * Remove insert_sql method [#866, #890]
537
+ * Rails5 remove require bind visitor [#853]
538
+ * substitute_at has been removed from Rails [#849]
539
+ * Serialize value for lob columns [#878]
540
+ * Do not cache prepared statements that are unlikely to have cache hits [#748]
541
+ * Handle BLOB type correctly [#804]
542
+ * Move ActiveRecord::Type to ActiveModel [#723]
543
+ * Remove cast_type to support Rails 5 Attribute API [#867]
544
+ * Handle ActiveModel::Type::Binary::Data type cast in _type_cast [#826]
545
+ * Use Abstract adapter `dump_schema_information` implementation [#857]
546
+ * Use ActiveRecord initialize_schema_migrations_table [#843]
547
+ * Use ActiveRecord::SchemaDumper#ignored? [#838]
548
+ * Use Abstract adapter join_to_update [#801, #800]
549
+ * Use ActiveRecord::OracleEnhanced::Type::Text [#887]
550
+ * Use ActiveRecord::OracleEnhanced::Type::String [#883]
551
+ * Use OracleEnhanced::ColumnDefinition [#650]
552
+ * Move to ActiveRecord::ConnectionAdapters::OracleEnhanced::SchemaDumper [#695]
553
+ * ColumnDumper uses Module#prepend [#696]
554
+ * Migrate from OracleEnhancedSchemaStatementExt to OracleEnhanced::SchemaStatementsExt [#768]
555
+ * Extract ActiveRecord::ConnectionAdapters::OracleEnhanced::Quoting [#764]
556
+ * Use keyword arguments for new table options [#820]
557
+ * Move `ruby_to_java_value` logic to `_type_cast` [#904]
558
+ * OracleEnhancedColumn.new needs sql_type_metadata including sql_type [#858]
559
+ * OracleEnhanced::JDBCQuoting and OCIQuoting [#897]
560
+ * Address `add_column_options!': undefined method `quote_value' [#647]
561
+ * Remove dirty tracking methods [#883]
562
+ * Use arel master branch for rails5 development [#645]
563
+ * Bump ruby-oci8 version to 2.2.0 or higher [#775]
564
+ * Remove jeweler dependency [#766]
565
+ * Remove required_rubygems_version [#719]
566
+ * Remove journey which is already part of Rails [#701]
567
+ * Remove dependencies with non activerecord gems [#700]
568
+ * Remove activerecord-deprecated_finders [#698]
569
+ * Use rack master branch [#697]
570
+ * Clean up gemspec file and bump rspec, ruby-plsql and ruby-oci8 versions [#717]
571
+ * Remove magic comment for utf-8 [#772, #726]
572
+ * add_dependency with ruby-oci8 only if it runs cruby, not jruby [#902]
573
+ * Install ruby-debug for jruby [#899]
574
+ * Address dirty object tracking should not mark empty text as changed [#888]
575
+ * Revert "Update matcher to skip sql statements to get `table` metadata" [#881]
576
+ * No need to set @visitor instance variable here [#854]
577
+ * log binds should not be type_casted [#818]
578
+ * Fix schema dumper errors [#810]
579
+ * Address undefined method `cast_type' [#805]
580
+ * Better fix to support "Relation#count does not support finder options anymore in Rails [#788, #787]
581
+ * ActiveRecord::Calculations#count no longer accepts an options hash argument #754
582
+ * Supress WARNINGs using `raise_error` without specific errors [#724]
583
+ * Use RSpec 3 [#707]
584
+ * Update "OracleEnhancedAdapter boolean type detection based on string column types and names" [#873]
585
+ * Update "OracleEnhancedAdapter integer type detection based on column names" [#871]
586
+ * Update "OracleEnhancedAdapter date type detection based on column names" [#868]
587
+ * Do not set emulate_dates_by_column_name or emulate_dates in specs [#870]
588
+ * Update rake spec message to show default branch name as master [#648]
589
+ * Remove `ActiveRecord::Base.default_timezone = :local` from spec_helper [#901]
590
+ * Update to rspec3 syntax to avoid deprecation notices [#776]
591
+ * Remove RAILS_GEM_VERSION [#702]
10
592
  * Run Oracle enhanced adapter unit tests using Travis CI [#789]
11
593
  * Upgrade travis-oracle to Version 2.0.1 [#903]
12
- * NoMethodError: undefined method `write' for nil:NilClass for serialized column [#798, #1004]
13
- * Support connection strings in `DATABASE_URL` [#1036]
14
- * Rebuild primary key index to default_tablespaces[:index] [#1037]
15
- * Use docker oracle xe 11g for release16 branch [#1238]
16
- * Fix deprecated warnings in Ruby 2.4.0+ [#1237]
594
+
595
+ * Known issues
596
+
597
+ - Only with JRuby
598
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
599
+ * Rails 5 : dirty object tracking not working correctly for CLOB [#911]
600
+ * Rails 5 : handling of CLOB columns get failures [#910]
601
+ * Rails 5 : SQL with bind parameters when NLS_NUMERIC_CHARACTERS is set to ', '
602
+ show Java::JavaSql::SQLSyntaxErrorException: / ORA-01722: invalid number [#909]
603
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
604
+ - CRuby and JRuby
605
+ * Rails 5 : create table with primary key trigger not returning id [#907]
606
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
607
+ * Rails 5 : has_and_belongs_to_many test gets ORA-01400 since primary key column "ID"
608
+ not included in insert statement [#856, rails/rails#25388]
609
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
17
610
 
18
611
  ## 1.6.7 / 2016-03-08
19
612