activerecord-oracle_enhanced-adapter 7.2.1-java

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.
Files changed (76) hide show
  1. checksums.yaml +7 -0
  2. data/History.md +1977 -0
  3. data/License.txt +20 -0
  4. data/README.md +863 -0
  5. data/VERSION +1 -0
  6. data/lib/active_record/connection_adapters/emulation/oracle_adapter.rb +7 -0
  7. data/lib/active_record/connection_adapters/oracle_enhanced/column.rb +24 -0
  8. data/lib/active_record/connection_adapters/oracle_enhanced/connection.rb +137 -0
  9. data/lib/active_record/connection_adapters/oracle_enhanced/context_index.rb +344 -0
  10. data/lib/active_record/connection_adapters/oracle_enhanced/database_limits.rb +47 -0
  11. data/lib/active_record/connection_adapters/oracle_enhanced/database_statements.rb +295 -0
  12. data/lib/active_record/connection_adapters/oracle_enhanced/database_tasks.rb +63 -0
  13. data/lib/active_record/connection_adapters/oracle_enhanced/dbms_output.rb +71 -0
  14. data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_connection.rb +561 -0
  15. data/lib/active_record/connection_adapters/oracle_enhanced/jdbc_quoting.rb +38 -0
  16. data/lib/active_record/connection_adapters/oracle_enhanced/lob.rb +45 -0
  17. data/lib/active_record/connection_adapters/oracle_enhanced/oci_connection.rb +457 -0
  18. data/lib/active_record/connection_adapters/oracle_enhanced/oci_quoting.rb +44 -0
  19. data/lib/active_record/connection_adapters/oracle_enhanced/procedures.rb +195 -0
  20. data/lib/active_record/connection_adapters/oracle_enhanced/quoting.rb +186 -0
  21. data/lib/active_record/connection_adapters/oracle_enhanced/schema_creation.rb +94 -0
  22. data/lib/active_record/connection_adapters/oracle_enhanced/schema_definitions.rb +99 -0
  23. data/lib/active_record/connection_adapters/oracle_enhanced/schema_dumper.rb +197 -0
  24. data/lib/active_record/connection_adapters/oracle_enhanced/schema_statements.rb +738 -0
  25. data/lib/active_record/connection_adapters/oracle_enhanced/structure_dump.rb +366 -0
  26. data/lib/active_record/connection_adapters/oracle_enhanced/type_metadata.rb +34 -0
  27. data/lib/active_record/connection_adapters/oracle_enhanced/version.rb +3 -0
  28. data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +865 -0
  29. data/lib/active_record/type/oracle_enhanced/boolean.rb +19 -0
  30. data/lib/active_record/type/oracle_enhanced/character_string.rb +36 -0
  31. data/lib/active_record/type/oracle_enhanced/integer.rb +14 -0
  32. data/lib/active_record/type/oracle_enhanced/json.rb +10 -0
  33. data/lib/active_record/type/oracle_enhanced/national_character_string.rb +26 -0
  34. data/lib/active_record/type/oracle_enhanced/national_character_text.rb +36 -0
  35. data/lib/active_record/type/oracle_enhanced/raw.rb +25 -0
  36. data/lib/active_record/type/oracle_enhanced/string.rb +29 -0
  37. data/lib/active_record/type/oracle_enhanced/text.rb +32 -0
  38. data/lib/active_record/type/oracle_enhanced/timestampltz.rb +25 -0
  39. data/lib/active_record/type/oracle_enhanced/timestamptz.rb +25 -0
  40. data/lib/activerecord-oracle_enhanced-adapter.rb +25 -0
  41. data/lib/arel/visitors/oracle.rb +216 -0
  42. data/lib/arel/visitors/oracle12.rb +121 -0
  43. data/lib/arel/visitors/oracle_common.rb +51 -0
  44. data/spec/active_record/connection_adapters/emulation/oracle_adapter_spec.rb +24 -0
  45. data/spec/active_record/connection_adapters/oracle_enhanced/compatibility_spec.rb +36 -0
  46. data/spec/active_record/connection_adapters/oracle_enhanced/connection_spec.rb +574 -0
  47. data/spec/active_record/connection_adapters/oracle_enhanced/context_index_spec.rb +431 -0
  48. data/spec/active_record/connection_adapters/oracle_enhanced/database_tasks_spec.rb +122 -0
  49. data/spec/active_record/connection_adapters/oracle_enhanced/dbms_output_spec.rb +69 -0
  50. data/spec/active_record/connection_adapters/oracle_enhanced/procedures_spec.rb +362 -0
  51. data/spec/active_record/connection_adapters/oracle_enhanced/quoting_spec.rb +181 -0
  52. data/spec/active_record/connection_adapters/oracle_enhanced/schema_dumper_spec.rb +492 -0
  53. data/spec/active_record/connection_adapters/oracle_enhanced/schema_statements_spec.rb +1289 -0
  54. data/spec/active_record/connection_adapters/oracle_enhanced/structure_dump_spec.rb +474 -0
  55. data/spec/active_record/connection_adapters/oracle_enhanced_adapter_spec.rb +815 -0
  56. data/spec/active_record/connection_adapters/oracle_enhanced_data_types_spec.rb +230 -0
  57. data/spec/active_record/oracle_enhanced/type/binary_spec.rb +119 -0
  58. data/spec/active_record/oracle_enhanced/type/boolean_spec.rb +206 -0
  59. data/spec/active_record/oracle_enhanced/type/character_string_spec.rb +67 -0
  60. data/spec/active_record/oracle_enhanced/type/custom_spec.rb +90 -0
  61. data/spec/active_record/oracle_enhanced/type/decimal_spec.rb +56 -0
  62. data/spec/active_record/oracle_enhanced/type/dirty_spec.rb +141 -0
  63. data/spec/active_record/oracle_enhanced/type/float_spec.rb +48 -0
  64. data/spec/active_record/oracle_enhanced/type/integer_spec.rb +99 -0
  65. data/spec/active_record/oracle_enhanced/type/json_spec.rb +56 -0
  66. data/spec/active_record/oracle_enhanced/type/national_character_string_spec.rb +56 -0
  67. data/spec/active_record/oracle_enhanced/type/national_character_text_spec.rb +230 -0
  68. data/spec/active_record/oracle_enhanced/type/raw_spec.rb +137 -0
  69. data/spec/active_record/oracle_enhanced/type/text_spec.rb +244 -0
  70. data/spec/active_record/oracle_enhanced/type/timestamp_spec.rb +77 -0
  71. data/spec/spec_config.yaml.template +11 -0
  72. data/spec/spec_helper.rb +214 -0
  73. data/spec/support/alter_system_set_open_cursors.sql +1 -0
  74. data/spec/support/alter_system_user_password.sql +2 -0
  75. data/spec/support/create_oracle_enhanced_users.sql +31 -0
  76. metadata +177 -0
data/History.md ADDED
@@ -0,0 +1,1977 @@
1
+ ## 7.2.1 / 2026-07-26
2
+
3
+ * Changes and bug fixes
4
+ * Accept `allow_retry` keyword argument in JDBC connection `exec`
5
+ * Add `reset` method to JDBC connection
6
+ * Skip `ObjectSpace::WeakMap` workaround on JRuby that implements `#values`
7
+ * Run tests on JRuby 9.4.15.0
8
+
9
+ ## 7.2.0 / 2025-06-23
10
+
11
+ * Changes and bug fixes
12
+ * No changes since 7.2.0.rc1
13
+ * Support Rails 7.2 [#2424]
14
+ * Bump the minimum Ruby version to 3.1 [#2442]
15
+ * Use RuboCop Plugin [#2427]
16
+ * Use Oracle Instant Client Version 23.8
17
+
18
+ ## 7.2.0.rc1 / 2025-06-18
19
+
20
+ * Changes and bug fixes
21
+ * Support Rails 7.2 [#2424]
22
+ * Bump the minimum Ruby version to 3.1 [#2442]
23
+ * Use RuboCop Plugin [#2427]
24
+ * Use Oracle Instant Client Version 23.8
25
+
26
+ ## 7.1.1 / 2025-06-16
27
+
28
+ * Changes and bug fixes
29
+ * Address `add_timestamps` error [#2417, #2438]
30
+ * Address `rename_table` ArgumentError [#2418, #2437]
31
+ * Update `reconnect!` method signature [#2433, #2436]
32
+ * Update README.md to support status of Rails 7.1 [#2408, #2409]
33
+
34
+ ## 7.1.0 / 2024-09-25
35
+
36
+ * Changes and bug fixes
37
+ No changes since 7.1.0.beta2
38
+
39
+ ## 7.1.0.beta2 / 2024-09-23
40
+ * Changes and bug fixes
41
+ * Implement `build_explain_clause(options = [])` as no-op [#2394, #2398, #2402]
42
+
43
+ ## 7.1.0.beta1 / 2024-09-23
44
+
45
+ * Changes and bug fixes
46
+ * Support Rails 7.1 [#2384]
47
+ * All attributes serialized before writing [#2203]
48
+ * Support LIKE case-insensitive matching [#2247]
49
+ * Support LOB equality [#2258]
50
+ * Rename the raw connection ivar to @raw_connection [#2265]
51
+ * Require 'activerecord', not 'rails' not to attempt to install digest [#2241]
52
+ * Add ruby-oci8 as dependency only for CRuby [#2240]
53
+ * Address uninitialized constant TestEmployee::AttributeSignature::Base64 [#2264]
54
+ * Enable Lint/EnsureReturn cop [#2259]
55
+ * Enable Performance/OpenStruct cop [#2263]
56
+ * Enable Style/MapToHash cop [#2266]
57
+ * Fix broken link [#2250]
58
+ * Use debug gem to replace byebug [#2275]
59
+ * Support linting YAML files [#2272]
60
+
61
+ * Known issues
62
+ * `build_explain_clause(options = [])` has not been implemented yet [#2394]
63
+ * `supports_fetch_first_n_rows_and_offset?` always returns `false` [#2395]
64
+ * Oracle enhanced adapter has not been tested against JRuby
65
+ * bug_report_templates are not tested [#2318]
66
+
67
+ ## 7.0.3 / 2023-08-10
68
+
69
+ * Changes and bug fixes
70
+ * Support Rails 7.0.7
71
+ * Make ActiveRecord's quoted name caches thread-safe on JRuby/TruffleRuby [#2347, #2346]
72
+ * Address `NameError: uninitialized constant TestEmployee::AttributeSignature::Base64` [#2347]
73
+ * Address `Style/RedundantRegexpEscape` offense [#2347]
74
+
75
+ ## 7.0.2 / 2022-01-21
76
+
77
+ * Changes and bug fixes
78
+ * Fix `columns_for_distinct` when using Rails 6.1 [#2249 #2251 rails/rails#31966]
79
+
80
+ ## 7.0.1 / 2022-01-13
81
+
82
+ * Changes and bug fixes
83
+ * Add ruby-oci8 as dependency only for CRuby [#2238 #2240 #2243]
84
+ * Add if_exists option to remove_index [#2219 #2233]
85
+ * all attributes serialized before writing [#2203 #2234]
86
+ * Require 'activerecord', not 'rails' not to attempt to install digest [#2241]
87
+ * CI
88
+ * Bump Ruby versions at Travis CI [#2242]
89
+ * CI against Ruby 3.1 at GitHub Actions [#2235 #2244]
90
+ ## 7.0.0 / 2021-12-16
91
+ * Changes and bug fixes
92
+ * Support Rails 7.0.0
93
+
94
+ ## 7.0.0.rc1 / 2021-12-08
95
+
96
+ * Changes and bug fixes
97
+ * Support Rails 7.0.0.rc1
98
+ * Rails 7 requires Ruby 2.7 and prefer Ruby 3+ [#2136]
99
+ * Allow usage of JDBC statement caching by DB config parameter [#2088]
100
+ * structure dump: read column comments from all_tab_cols [#2121]
101
+ * Usage of bind variables for volatile filter conditions (3) [#2125]
102
+ * attribute should not require a connection is established [#2136]
103
+ * Allow Adapter#select_all to be performed asynchronously from a background thread pool [#2146]
104
+ * Avoid extra BindParam allocation to generate placeholder in queries [#2157]
105
+ * Address undefined method `to_i' for #<ActiveModel::Attribute::WithCastValue [#2159]
106
+ * Update Rails default branch name change [#2126]
107
+ * Optimize remove_columns to use a single SQL statement when supported [#2182]
108
+ * Refactor schema creation to extract new_foreign_key_definition [#2183]
109
+ * Address "NoMethodError: undefined method `partial_writes?'" [#2188]
110
+ * Suppress partial_writes deprecation warning [#2189]
111
+ * Make default_timezone a module instance variable [#2190]
112
+ * Define adapter type maps statically when possible [#2199]
113
+ * Rename _type_cast to type_cast [#2199]
114
+ * Rename _quote to quote [#2199]
115
+ * Always use OpenSSL constants for Digest operations [#2217]
116
+ * Refactor ActiveRecord::QueryLogs hook point [#2218]
117
+ * Enable Style/RedundantRegexpEscape cop [#2074]
118
+ * Enable Lint/DuplicateRequire cop [#2107]
119
+ * Enable Layout/SpaceBeforeBrackets cop [#2108]
120
+ * Enable Performance/BindCall cop [#2140]
121
+ * Enable Performance/StringReplacement cop [#2175]
122
+ * Enable Performance/MapCompact cop [#2176]
123
+ * Enable Layout/EndOfLine cop [#2177]
124
+ * Enable Performance/SelectMap cop [#2178]
125
+ * Enable Layout/ClosingParenthesisIndentation cop [#2193]
126
+ * Enable Style/ExplicitBlockArgument cop [#2209]
127
+ * Enable Lint/DuplicateMethods cop [#2215]
128
+ * Disable Lint/ShadowingOuterLocalVariable cop [#2137]
129
+ * Disable Layout/FirstArgumentIndentation cop [#2149]
130
+ * Opt out of SuggestExtensions message [#2133]
131
+ * Suppress RuboCop's offense [#2196]
132
+ * Support RuboCop 1.19.0 [#2204]
133
+ * Prevent from including ojdbc8.jar file to gem file [#2164]
134
+
135
+ * CI
136
+ * Disable CI against JRuby builds [#2136]
137
+ * CI against Ruby 3.0.0 [#2091]
138
+ * CI against Ruby 3.0.1 and 2.7.3 [#2173]
139
+ * CI against Ruby 3.0.2 and 2.7.4 [#2195]
140
+ * Exclude ruby-head and ruby-debug until minitest allows Ruby 3.1 [#2094]
141
+ * Address Travis CI warnings and bump Ubuntu version to 20.04 [#2086]
142
+ * Tidy up Travis CI configuration [#2116]
143
+ * Tweak representation of build matrix [#2129]
144
+ * Install Oracle JDBC driver ojdbc11.jar for GitHub Actions [#2172]
145
+ * Address guides/bug_report_templates/active_record_gem_spec.rb error [#2101]
146
+ * Use Oracle Instant Client 21.1.0.0.0 [#2205]
147
+ * Use Oracle Instant Client 21.4 [#2199]
148
+ * Use gvenzl/oracle-xe docker image [#2206]
149
+
150
+ ## 6.1.5 / 2021-12-07
151
+
152
+ * Changes and bug fixes
153
+ * get root cause if something went wrong with jdbc.OracleDriver [#2180 #2181]
154
+
155
+ * CI
156
+ * Bump CRuby versions at Travis CI for release61 branch [#2192]
157
+
158
+ ## 6.1.4 / 2021-04-01
159
+
160
+ * Changes and bug fixes
161
+ * Support use of ojdbc11.jar [#2155, #2168]
162
+ * Add missing default granted permission "ulimited tablespace" [#2156, #2167]
163
+ * Prevent from including ojdbc8.jar file to gem file [#2163, #2164, #2165]
164
+ * Oracle enhanced adapter 6.1.3 has been yanked since #2163
165
+
166
+ * CI
167
+ * Allow-failure CI against jruby-head for release61 branch [#2166]
168
+
169
+ ## 6.1.3 / 2021-03-31
170
+
171
+ * Changes and bug fixes
172
+ * Address FrozenError (can't modify frozen Hash): error [#2139 #2151 #2160]
173
+
174
+ * CI
175
+ * CI against JRuby 9.2.15.0 [#2150]
176
+
177
+ ## 6.1.2 / 2021-02-10
178
+ * Changes and bug fixes
179
+ * Fixed ORA-01935: missing user or role name with config read issue [#1943 #2135, #2142]
180
+
181
+ ## 6.1.1 / 2021-01-14
182
+
183
+ * Changes and bug fixes
184
+ * Remove /*+ OPTIMIZER_FEATURES_ENABLE('11.2.0.2') */ hint for all_synonyms [#2110, #2119]
185
+ * Fix write_lobs Invalid byte sequence in UTF-8 [#2097, #2111]
186
+ * Ensure FKs are properly included in structure dumps [#2109, #2113]
187
+
188
+ * CI
189
+ * CI against JRuby 9.2.14.0 [#2085]
190
+ * CI against Ruby 3.0.0 [#2091, #2092]
191
+ * Address Travis CI warnings and bump Ubuntu version to 20.04 [#2086]
192
+ * Exclude `ruby-head` and `ruby-debug` until minitest allows Ruby 3.1 #2094, #2095
193
+ * CI against Ruby 3.0.0 at Travis CI [#2093]
194
+
195
+ ## 6.1.0 / 2020-12-15
196
+
197
+ * Changes and bug fixes
198
+ * Support Rails 6.1.0
199
+ * Update bug report templates for Oracle enhanced adapter 6.1 [#2063]
200
+ * Use released version of rake [#2065 #2066]
201
+ * Add /*+ OPTIMIZER_FEATURES_ENABLE('11.2.0.2') */ hint to address slow SCHEMA queries [#2055, #2068]
202
+ * `build_subselect` does not have ordering [#2070]
203
+ * Remove `visit_Arel_Nodes_NotIn` and `visit_Arel_Nodes_In` visitors [#2075, #2077]
204
+ * `NOT IN` clause needs separated by `AND` [#2079, #2081]
205
+
206
+ ## 6.1.0.rc1 / 2020-11-03
207
+
208
+ * Changes and bug fixes
209
+ * Support Rails 6.1.0.rc1
210
+ * Add support to change the permissions granted when creating DB [#1885]
211
+ * Refactor `create_table`'s options separation [#1886]
212
+ * Move schema cache to pool [#1888]
213
+ * Clear schema cache when a table is created/dropped/renamed [#1891]
214
+ * Deduplicate various Active Record schema cache structures [#1897]
215
+ * Support SQLCounter change to ignore "SCHEMA" and "TRANSACTION" log [#1892]
216
+ * Share the column and table name quote cache between connections [#1901]
217
+ * Add database_exists? method to connection adapters [#1906]
218
+ * Accept columns passed with options in remove_index [#1930]
219
+ * Fix `NameError` for `SchemaCreation` [#1933]
220
+ * Add `supports_common_table_expressions?` for CTE testing [#1946]
221
+ * create_table_definition and add_column take keyword arguments [#1942]
222
+ * Address `uninitialized constant ActiveRecord::ConnectionAdapters::AbstractAdapter::Quoting (NameError) [#1950]
223
+ * Fix an error when writing lobs [#1962]
224
+ * Uninstall SimpleCov [#1968]
225
+ * fix: Auto retry only works for connection.exec() [#1976]
226
+ * Fix keyword arguments errors for Ruby 2.8.0-dev [#1977]
227
+ * Fix a build errors when using Ruby 2.8.0-dev [#1983]
228
+ * Include sync option when dumping a context index [#1988]
229
+ * Use `build_result` instead of `ActiveRecord::Result.new` [#1994]
230
+ * Use the new API for build_results [#1995]
231
+ * Merge Arel visitors [#2002]
232
+ * Enable `Rails/IndexBy` and `Rails/IndexWith` cops [#2006]
233
+ * Don't refer `allowed_index_name_length` directly [#2009]
234
+ * Should not rely on the global `Arel::Table.engine` in the framework [#2010]
235
+ * Suppress `warning: already initialized constant` [#2011]
236
+ * Deprecate passing a column to `type_cast` [#2012]
237
+ * Limit number of expressions in a list during a "homogenous in" operation [#2013]
238
+ * Allow column name with function (e.g. `length(title)`) as safe SQL string [#2017]
239
+ * Default engine `ENGINE=InnoDB` is no longer dumped to make schema more agnostic [#2019]
240
+ * Separate primary key column options from table options [#2019]
241
+ * Make index options to kwargs [#2022]
242
+ * Make remaining migration options to kwargs [#2024]
243
+ * Allow TruffleRuby RUBY_ENGINE [#2046]
244
+ * Restore Schema Dumper behavior changed by #2019 [#2047]
245
+ * Support JDBC service name syntax [#2035]
246
+ * Use Rake 13.0.0.pre.1 [#1924]
247
+ * Bump RuboCop version to 0.71 [#1887]
248
+ * Bump RuboCop to 0.74.0 [#1914]
249
+ * Bump RuboCop to 0.76.0 [#1947]
250
+ * Use RuboCop 0.77 [#1959]
251
+ * Bump RuboCop to 0.82.0 [#2005]
252
+ * Suppress RuboCop's offenses [#2020]
253
+ * Enable `Layout/EmptyLinesAroundAccessModifier` cop [#1890]
254
+ * Disable `Style/BracesAroundHashParameters` cop [#1923]
255
+ * Enable `Layout/ClosingHeredocIndentation` cop [#1958]
256
+ * Unlock RuboCop gem versions [#1926]
257
+ * Enable `Rails/IndexBy` and `Rails/IndexWith` cops [#2006]
258
+ * Enable `Performance/DeletePrefix` and `Performance/DeleteSuffix` cops [#2021]
259
+ * Enable `Layout/SpaceAroundOperators` cop [#2057]
260
+ * Fix links to rails-dev-box running on docker [#1883]
261
+ * Fix spec config template copy instructions [#1884]
262
+ * Update UPGRADE section for Rails 5.2 [#1993]
263
+
264
+ * CI
265
+ * Enable GitHub Actions and run RuboCop [#1925]
266
+ * Run CI with GitHub Actions [#2015]
267
+ * Enabled Dependabot by creating .dependabot/config.yml [#1931]
268
+ * Disable Code Climate #1938
269
+ * CI against JRuby 9.2.8.0 [#1911]
270
+ * CI against JRuby 9.2.9.0 #1948
271
+ * CI against Ruby 2.6.4 and Ruby 2.5.6 [#1921]
272
+ * CI against Ruby 2.5.7 and Ruby 2.6.5 [#1949]
273
+ * CI against Ruby 2.7.0 [#1975]
274
+ * CI against JRuby 9.2.10.0 [#1989]
275
+ * CI against JRuby 9.2.11.0 [#1992]
276
+ * CI against JRuby 9.2.11.1 [#1997]
277
+ * CI againt Ruby 2.7.1, 2.6.6 and 2.5.8 #1998
278
+ * CI against JRuby 9.2.12.0 [#2034]
279
+ * Use Oracle Instant Client 18.5 [#2036]
280
+ * Support `jruby-head` again [#2037]
281
+ * CI against JRuby 9.2.13.0 [#2041]
282
+ * CI against Ruby 2.7.2 [#2052]
283
+ * Remove unnecessary PATH and LD_LIBRARY_PATH environment variables [#1927]
284
+ * Use Ubuntu 18.04 (Bionic Beaver) at Travis CI [#1937]
285
+ * Run bug report template at CI [#1936]
286
+ * Skip known failures until #1943 is resolved [#1961]
287
+ * Migrate to `ruby/setup-ruby` to use Ruby 2.7 [#2026]
288
+
289
+ ## 6.0.4 / 2020-08-18
290
+
291
+ * Changes and bug fixes
292
+ * create_table_definition and add_column take keyword arguments [#1942, #2043]
293
+ * Fix keyword arguments errors for Ruby 2.8.0-dev [#1977,#2043]
294
+ * Fix a build errors when using Ruby 2.8.0-dev [#1983, #2043]
295
+
296
+ ## 6.0.3 / 2020-06-16
297
+
298
+ * Changes and bug fixes
299
+ * Auto retry works for other `exec_*` methods [#1976, #1981]
300
+ * Allow column name with function (e.g. `length(title)`) as safe SQL string [#2017, #2018]
301
+
302
+ * CI
303
+ * CI against latest Ruby versions [#1979]
304
+
305
+ ## 6.0.2 / 2019-12-25
306
+
307
+ * Changes and bug fixes
308
+ * Uninstall SimpleCov [#1968]
309
+
310
+ ## 6.0.1 / 2019-12-20
311
+
312
+ * Changes and bug fixes
313
+ * Address `undefined local variable or method `sql' [#1932 #1962 #1963]
314
+
315
+ * CI
316
+ * CI against Ruby 2.6.4 and Ruby 2.5.6 [#1922]
317
+
318
+ ## 6.0.0 / 2019-08-17
319
+
320
+ * Major changes, including changes since 6.0.0.beta1
321
+
322
+ * Support Rails 6.0.0
323
+ * Rails 6 requires Ruby 2.5 [#1801]
324
+ * Support longer identifier for Oracle database 12.2 or higher [#1703 #1705]
325
+ * Introduce `use_shorter_identifier` [#1707]
326
+ * Change `default_sequence_start_value` from 10000 to 1 [#1636]
327
+ * Address `ORA-01795: maximum number of expressions in a list is 1000`
328
+
329
+ * CI
330
+ * CI against JRuby 9.2.8.0 #1912
331
+
332
+ ## 6.0.0.rc3 / 2019-07-27
333
+
334
+ * Changes and bug fixes
335
+ * Share the column and table name quote cache between connections [#1901 #1903]
336
+
337
+ ## 6.0.0.rc2 / 2019-07-23
338
+
339
+ * Major changes
340
+ * Support Rails 6.0.0 rc2
341
+ * Add TCP keepalive and TCP keepalive time configurations [#1874 #1877]
342
+
343
+ * Changes and bug fixes
344
+ * Update bug report templates for Oracle enhanced adapter 6.0 [#1873]
345
+
346
+ ## 6.0.0.rc1 / 2019-04-25
347
+
348
+ * Major changes
349
+ * Support Rails 6.0.0 rc1
350
+ * Address `ORA-01795: maximum number of expressions in a list is 1000`
351
+ - These changes has been made to Rails itself [rails/rails#35838, rails/rails#36074]
352
+
353
+ * Changes and bug fixes
354
+ * Cache database version in schema cache [#1859]
355
+ * Except `table_name` from column objects [#1860]
356
+ * Remove unused `sequence_name` in `sql_for_insert` [#1861]
357
+ * Use squiggly heredoc to strip odd indentation in the executed SQL [#1869]
358
+ * Use Active Support `String#squish` instead of `String#strip.gsub` [#1871]
359
+
360
+ * CI
361
+ * Revert "Add `allow_railures` for jruby-head until #1833 resolved" [#1862]
362
+ * CI against JRuby 9.2.7.0 [#1864]
363
+ * Use newer Code Climate analysis model, version 2 [#1868]
364
+ * CI against Ruby 2.6.3 [#1870]
365
+
366
+ * RuboCop
367
+ * Bump RuboCop version to 0.67 [#1867]
368
+ * Enable `Layout/SpaceBeforeComment` cop [#1863]
369
+
370
+ ## 6.0.0.beta1 / 2019-03-18
371
+
372
+ * Major changes
373
+
374
+ * Rails 6 requires Ruby 2.5 [#1801]
375
+ * Support longer identifier for Oracle database 12.2 or higher [#1703 #1705]
376
+ * Introduce `use_shorter_identifier` [#1707]
377
+ * Change `default_sequence_start_value` from 10000 to 1 [#1636]
378
+ * Supports `supports_optimizer_hints?` [#1850 #1852]
379
+ * `OracleEnhanced::SchemaStatements#tables` excludes materialized views [#1708]
380
+ * rake db:structure:dump extracts views by default [#1625 #1641]
381
+ * Drop db link support [#1668 #1681 #1696 #1706]
382
+ * Drop trigger based primary key support for Rails 6 [#1669]
383
+ * Don't allow unsupported NLS parameters [#1685]
384
+ * fix Handling with char-column problem [#1760]
385
+ * Make `t.timestamps` with precision by default [#1818]
386
+ * fix mapping of decimal type to map to `NUMBER` instead of `DECIMAL` [#1840]
387
+
388
+ * Changes and bug fixes
389
+
390
+ * Handle ORA-02292 as `InvalidForeignKey` [#1771]
391
+ * Suppress deprecated warning for `table_name_length` [#1772]
392
+ * `update_attributes!` will be deprecated in Rails 6 [#1665]
393
+ * `update_attributes` will be deprecated in Rails 6 [#1667]
394
+ * Remove `OCI8#describe` to use `OracleEnhanced::Connection#describe` [#1639]
395
+ * Remove `strip_heredoc` [#1652]
396
+ * Remove `rails/arel` from Gemfile [#1711]
397
+ * Remove `rails/arel` from bug report templates [skip ci] [#1715]
398
+ * Remove NativeException [#1666 #1762]
399
+ * Do not set nil value to java.util.Properties [#1763]
400
+ * Deprecated `table_name_length` and `column_name_length` [#1770]
401
+ * Add a check to supported Oracle database version [#1773]
402
+ * Update bug report templates [#1777]
403
+ * Use `supports_foreign_keys?` instead of removed `supports_foreign_keys_in_create?` [#1825]
404
+ * Ensure `clear_cache!` clears the prepared statements cache [#1845]
405
+
406
+ * Refactoring
407
+
408
+ * Extract `structure_dump_views` and `structure_dump_synonyms` [#1640]
409
+ * Remove unnecessary `respond_to?(:report_on_exception)` [#1664]
410
+ * Remove deprecated `#insert_fixtures` method for Rails 6.0 [#1815]
411
+ * Use `SYS_CONTEXT('userenv', 'current_schema')` to find schema objects [#1671]
412
+ * Use `SYS_CONTEXT('userenv', 'current_schema')` for owner [#1672]
413
+ * Suppress warning `BigDecimal.new` is deprecated [#1742]
414
+ * Refactor to initialize `TableDefinition` by kwargs [#1785]
415
+ * Redact SQL in errors [#1791]
416
+ * Arity change at `sql_for_insert` [#1814]
417
+
418
+ * CI
419
+ * Use Ubuntu Xenial at Travis CI [#1790]
420
+ * Bump Ruby versions to 2.6.2 and 2.5.4 [#1847]
421
+ * CI against Ruby 2.5.5 [#1848]
422
+ * Do not run CI against Ruby 2.2, which will not be supported with Rails 6 [#1653]
423
+ * CI against JRuby 9.2.6.0 [#1824]
424
+ * Show ruby version at CI [#1829]
425
+ * Remove unused blocklist from .travis.yml [#1830]
426
+ * Add spec for custom sequence name [#1846]
427
+ * Restore old Code Climate behavior [#1716]
428
+ * Do not install bundler explicitly [#1725]
429
+
430
+ * RuboCop
431
+
432
+ * Add RuboCop to Gemfile [#1841]
433
+ * Bump RuboCop to 0.63.0 [#1816]
434
+ * No need to exclude `jdbc_connection.rb` for `Style/ColonMethodCall` cop [#1698]
435
+ * Enable `Style/ColonMethodCall` cop [#1658]
436
+ * Enable `Lint/StringConversionInInterpolation` cop [#1724]
437
+ * Add `Style/RedundantFreeze` to remove redudant `.freeze` [#1662]
438
+ * Use `Layout/EndAlignment` cop to support RuboCop 0.54 [#1709]
439
+ * Introduced StartWith, EndWith and RegexpMatch cops [#1738]
440
+ * Enable `Layout/EmptyLinesAroundBlockBody` cop [#1732]
441
+ * Turn on performance based cops [#1734]
442
+ * Enable performance unfreeze string cop [#1729]
443
+ * Enable `Lint/UriEscapeUnescape` cop [#1758]
444
+ * Enable Style/ParenthesesAroundCondition cop [#1759]
445
+ * Enable performance unfreeze string cop [#1729]
446
+ * Enable `Layout/SpaceAfterSemicolon` cop [#1800]
447
+ * Enable `Style/RedundantBegin` cop [#1802]
448
+ * Enable `Lint/ShadowingOuterLocalVariable` cop [#1810]
449
+ * Enable `Lint/UselessAssignment` cop [#1812]
450
+ * Enable `Lint/DeprecatedClassMethods` cop [#1813]
451
+ * Enable `Lint/ErbNewArguments` cop [#1823]
452
+ * Enable `Lint/AmbiguousOperator` and `Lint/AmbiguousRegexpLiteral` cops [#1842]
453
+ * Enable `Performance/ReverseEach` cop [#1843]
454
+
455
+ ## 5.2.5 / 2019-03-05
456
+
457
+ * Changes and bug fixes
458
+ * `references` column type should be :integer, not :bigint [#1831 #1832 #1835]
459
+ * CI against Ruby 2.6.1 [#1821 #1822]
460
+ * CI against JRuby 9.2.6.0 [#1824 #1828]
461
+ * CI against Ruby 2.6 and bump other Ruby versions [#1806 #1807]
462
+ * Install bundler and fallback to 1.7.3 if Bundler 2 is not available [#1811]
463
+ * Use i18n 1.2 for JRuby now [#1804 #1805]
464
+ * Add `allow_railures` for jruby-head until #1833 resolved [#1834 #1836]
465
+
466
+ ## 5.2.4 / 2018-11-29
467
+
468
+ * Changes and bug fixes
469
+ * Stop using NativeException [#1666 #1761 #1762]
470
+
471
+ ## 5.2.3 / 2018-08-08
472
+
473
+ * Changes and bug fixes
474
+ * Introduce column cache per connection [#1744 #1750]
475
+ * Use `cursor_sharing` = force by default again [#1745 #1748]
476
+ * Add `table_name` search condition to `indexes(table_name)` method [#1747 #1749]
477
+ * Suppress warning `BigDecimal.new` is deprecated [#1742 #1743]
478
+ * Do not install bundler explicitly [#1725 #1726]
479
+ * Add `allow_railures` for jruby-head until #1737 resolved [#1739 #1740]
480
+ * CI against JRuby 9.2.0.0 [#1728 #1741]
481
+ * Do not run CI against older version of JRuby [#1741]
482
+
483
+ ## 5.2.2 / 2018-04-28
484
+
485
+ * Changes and bug fixes
486
+ * Use SQL literals for `column_definitions` and `pk_and_sequence_for` [#1678 #1713 #1714]
487
+ * Memoize if the table needs to prefetch primary key[#1673 #1699 #1700]
488
+ * CI with JRuby 9.1.17.0 [#1710]
489
+ * Remove `rails/arel` from Gemfile [#1711 #1712]
490
+
491
+ ## 5.2.1 / 2018-04-15
492
+
493
+ * Changes and bug fixes
494
+ * Memoize if the table needs to prefetch primary key[#1673 #1699 #1700]
495
+
496
+ ## 5.2.0 / 2018-04-10
497
+
498
+ * Major changes and fixes
499
+ * Support Rails 5.2.0
500
+
501
+ * Documentation changes
502
+ * Add README and UPGRADE sections for Rails 5.2 [#1637 #1638]
503
+ * Update bug templates for Rails 5.2 [#1663]
504
+
505
+ * Changes in specs
506
+ * Suppress expected exceptions by `report_on_exception` = `false` [#1655 #1656]
507
+
508
+ * Changes for CI and builds
509
+ * CI with JRuby 9.1.16.0 [#1659]
510
+ * CI with Ruby 2.5.1 [#1683 #1684]
511
+ * CI against Ruby 2.4.4 [#1686 #1687]
512
+ * Use ruby 2.3.7 and 2.2.10 for CI at release52 branch [#1688]
513
+ * Oracle enhanced adapter 5.2 needs Rails `5-2-stable` branch [#1654]
514
+
515
+ ## 5.2.0.rc1 / 2018-01-31
516
+
517
+ * Changes and bug fixes
518
+
519
+ * Support Rails 5.2.0.rc1
520
+ * Do not register `VARCHAR2(1)` sql type as `Type:Boolean` [#1621 #1623]
521
+ * Support `insert_fixtures_set` [#1633]
522
+ * Deprecated `insert_fixtures` [#1634]
523
+ * Refactor index options dumping [#1602]
524
+ * Skip failed spec explained at #1599 [#1599 #1604]
525
+ * CI with Ruby 2.5.0 [#1618]
526
+ * CI against JRuby 9.1.15.0 [#1605]
527
+ * Enable `Layout/SpaceBeforeComma` [#1606]
528
+ * Enable `Layout/LeadingCommentSpace` cop [#1607]
529
+ * Enable autocorrect for `Lint/EndAlignment` cop [#1629]
530
+ * Remove `--force` option for installing bundler [#1616]
531
+
532
+ ## 5.2.0.beta1 / 2017-11-27
533
+
534
+ * Major changes and fixes
535
+
536
+ * Support Rails 5.2.0.beta1
537
+ * Oracle enhanced adapter version follows Rails versioning [#1488]
538
+ * Handle `TIMESTAMP WITH TIMEZONE` separately from `TIMEZONE` [#1267]
539
+ * Support `timestamptz` and `timestampltz` for migrations #1285
540
+ * `supports_json?` returns false [#1562]
541
+ * Add synonyms in `data_sources` [#1380, #1567]
542
+ * Add sequence with settings to structure dump [#1354]
543
+ * Support for NCLOB datatype [#1428, #1440]
544
+ * Use conventional fixture load [#1366]
545
+ * Address `ORA-00905: missing keyword: EXPLAIN PLAN FOR` [#1384]
546
+ * Use new method name for active record dirty checks [#1406]
547
+ * check for schema name when validating table name [#1408, #1410]
548
+ * Prefer to place a table options before `force: :cascade` [#1457]
549
+ * Enable TCP keepalive for OCI connections [#1489]
550
+ * Do not expose `all_schema_indexes` [#1495]
551
+ * Using bind variables for dictionary access [#1498]
552
+ * Use bind variables for `table_comment` `column_comment` `foreign_keys` [#1502]
553
+ * Respect database instance `cursor_sharing` value `exact` by default [#1503, #1556]
554
+ * Address `CommentTest#test_change_table_comment_to_nil` failure [#1504]
555
+ * Address explain with binds errors [#908, #1386, #1538]
556
+ * Address `MigrationTest#test_create_table_with_query_from_relation` error [#1543]
557
+ * Follow the new interface of AR::ConnectionAdapters::IndexDefinition#initialize [#1295]
558
+ * Remove `lengths`, `where`, `using` from `IndexDefinition` [#1529]
559
+ * Arity change in insert method [#1382]
560
+ * Restore the ability that SQL with binds for `insert` [#1424]
561
+ * Restore `to_sql` to return only SQL [#1423]
562
+ * Signature fix for `select_one` `select_value` `select_values` [#1475]
563
+ * `columns` second argument does not exist in Abstract adapter [#1519]
564
+ * Arel::Nodes::BindParam#initialize introduced [#1383]
565
+ * Log the purpose of sql in `disable_referential_integrity` [#1550]
566
+ * Change log format of "Primary Key Trigger" to one line [#1551]
567
+ * Log multi lines SQL statements into one line [#1553]
568
+ * Log multi lines SQL statements into one line at `structure_dump.rb` [#1555]
569
+ * [ci skip] `open_cursors` value should be larger than `:statement_limit` [#1573]
570
+ * [skip ci] Add `schema` option in the comment [#1574]
571
+ * [skip ci] `emulate_booleans_from_strings` behavior changes [#1576]
572
+ * Restore calling `OCIConnection#bind_returning_param` [#1581]
573
+ * Add these errors to be recognized as `ActiveRecord::StatementInvalid` [#1584]
574
+ * Add `ORA-02289` to be recognized as `ActiveRecord::StatementInvalid` [#1586]
575
+ * Address `BasicsTest#test_clear_cache!` failure [#1587]
576
+ * Use Bundler 1.15 to workaround bundler/bundler#6072 [#1590]
577
+ * Translate `ORA-00060` into `ActiveRecord::Deadlocked` error [#1591]
578
+ * Add `ORA-02449` to be recognized as `ActiveRecord::StatementInvalid` [#1593, #1596]
579
+ * Support `discard!` method [#1598]
580
+
581
+ * Deprecation or removing deprecated code
582
+
583
+ * Remove `OracleEnhancedAdapter.cache_columns` [#1490, #1492]
584
+ * Deprecate `supports_statement_cache?` [#1321]
585
+ * Remove `compress_lines` [#1327]
586
+ * Remove `OracleEnhanced::SchemaDumper::TableInspect` [#1400]
587
+ * Remove `remove_prefix_and_suffix` and specs from Oracle enhanced adapter [#1420]
588
+ * Remove unused returning value `stream` [#1438]
589
+ * Remove `OracleEnhancedAdapter.emulate_dates` [#1448]
590
+ * Remove `emulate_dates` and `emulate_dates_by_column_name` [#1450]
591
+ * Remove `emulate_integers_by_column_name` [#1451]
592
+ * Remove `@@do_not_prefetch_primary_key` class variable [#1496]
593
+ * Remove `string_to_date` which has been removed from Rails 4.2 [#1509]
594
+ * Remove `string_to_time` which has been removed from Rails 4.2 [#1510]
595
+ * Remove `guess_date_or_time` which has not been called [#1511]
596
+ * Remove unused `object_type?` and `object_type` ivar [#1512]
597
+ * Remove non-existent `:nchar` from `attr_reader` [#1513]
598
+ * Remove `ActiveRecord::ConnectionAdapter::OracleEnhanced::Column#lob?` [#1522]
599
+ * Remove `OracleEnhanced::Column#returning_id?` [#1523]
600
+ * Remove `attr_reader :table_name` [#1524]
601
+ * Remove `combine_bind_parameters` [#1527]
602
+ * Remove `OracleEnhancedAdapter.default_tablespaces[native_database_types[type][:name]]` [#1544]
603
+ * Remove unused `require "digest/sha1"` [#1545]
604
+ * Remove deprecations for 5.2 [#1548]
605
+ * Remove `OracleEnhanced::Connection#select_values` [#1558]
606
+ * Remove `@connection` from `@connection.oracle_downcase` and `@connection.select_value` [#1559]
607
+ * Rename `OracleEnhanced::Connection#select_value` to `_select_value` [#1563]
608
+ * Rename `OracleEnhanced::Connection#oracle_downcase` to `_oracle_downcase` [#1565]
609
+ * Remove `OCIConnection#typecast_result_value` handling `OraNumber` [#1578]
610
+ * [skip ci] Changing `NLS_DATE_FORMAT` and `NLS_TIMESTAMP_FORMAT` is not supported [#1575]
611
+ * [skip ci] Remove ruby versions in the comment [#1577]
612
+ * Remove `OCIConnection#returning_clause` and `JDBCConnection#returning_clause` [#1579]
613
+ * Remove `OCIConnection#exec_with_returning` and `JDBCConnection#exec_with_returning` [#1580]
614
+ * Update `JDBCConnection#bind_param` case condition [#1583]
615
+
616
+ * Refactoring
617
+
618
+ * Refactor `SchemaDumper` to make it possible to adapter specific customization [#1430]
619
+ * Rename `SchemaDumper#indexes` to `SchemaDumper#_indexes` [#1399]
620
+ * Use ActiveRecord::Type::Json [#1352]
621
+ * Introduce module `DatabaseLimits` [#1322]
622
+ * Move `oracle_downcase` to `Quoting` module [#1328]
623
+ * Make `type_map` to private because it is only used in the connection adapter [#1381]
624
+ * Remove `add_runtime_dependency` with arel [#1385]
625
+ * Move methods for synonyms out of `SchemaStatementsExt` [#1387]
626
+ * Remove incorrect prepend to `ActiveRecord::ColumnDumper` [#1394]
627
+ * Handle `ActiveRecord::SchemaDumper` by `adapter_name` [#1395]
628
+ * Rewrite `remove_prefix_and_suffix` to be similar with super #1401
629
+ * `remove_prefix_and_suffix` handles dollar sign by `Regexp#escape` [#1402]
630
+ * `prepare_column_options` is now private [#1429]
631
+ * Introduce `OracleEnhanced::SchemaStatements#table_options` [#1439]
632
+ * Extract `ActiveRecord::ConnectionAdapters::OracleEnhanced::Column` [#1445]
633
+ * Extract `ActiveRecord::ConnectionAdapters::OracleEnhanced::DbmsOutput` [#1446]
634
+ * Introduce `SchemaDumpingHelper#dump_table_schema` [#1455]
635
+ * Rename `OracleEnhancedConnection` to `OracleEnhanced::Connection` [#1477]
636
+ * Introduce `ActiveRecord::ConnectionAdapters::OracleEnhanced::TypeMetadata` [#1515]
637
+ * Change `schema_creation` to private [#1517]
638
+ * Change `create_table_definition` and `fetch_type_metadata` to private [#1518]
639
+ * Refactor `columns` [#1521]
640
+ * Let `ActiveRecord::ConnectionAdapters::OracleEnhanced::TypeMetadata` handle `virtual` type [#1526]
641
+ * Clean up `column_definitions` method [#1528]
642
+ * Remove unnecessary `ActiveRecord::ConnectionAdapters` [#1530]
643
+ * Rename `OracleEnhancedStructureDump` to `OracleEnhanced::StructureDump` [#1531]
644
+ * Move up require for types [#1533]
645
+ * These methods are private in `AbstractAdapter` or `PostgreSQLAdapter` [#1534]
646
+ * `ActiveRecord::ConnectionAdapters::AbstractAdapter#log` is a `private` [#1535]
647
+ * Move `self.default_sequence_start_value` method [#1536]
648
+ * Rename `ActiveRecord::OracleEnhanced::Type` to `ActiveRecord::Type::OracleEnhanced` [#1541]
649
+ * Move `write_lobs` under `OracleEnhanced::DatabaseStatements` module [#1546]
650
+ * Introduce `OracleEnhanced::Lob` not to modify `ActiveRecord::Base` directly [#1547]
651
+ * Use `ActiveSupport.on_load` to hook into `ActiveRecord::Base` [#1568]
652
+ * Call `virtual_columns_for` when `supports_virtual_columns?` returns true [#1554]
653
+ * Move `tables` and related methods into `OracleEnhanced::SchemaStatements` [#1557]
654
+ * Avoid using `OracleEnhanced::Connection#select_value` [#1560]
655
+ * Make `OracleEnhanced::Connection#describe` private [#1566]
656
+
657
+ * Changes in specs
658
+
659
+ * Always generate `debug.log` for unit tests [#1476]
660
+ * Use Rails migration for creating table at "using offset and limit" [#1276]
661
+ * Use Rails migration for creating table at `valid_type?` [#1277]
662
+ * Clean up before(:each) and after(:each) at "rename tables and sequences" [#1278]
663
+ * Use Rails migration for creating table at `BINARY_FLOAT columns" specs [#1280]
664
+ * Use Rails migration for creating table at "handling of BLOB columns" [#1282]
665
+ * Use Rails migration for creating table at "handling of CLOB columns" [#1283]
666
+ * Use Rails migration for creating table at "assign string to :date and :datetime columns" [#1284]
667
+ * Use Rails migration for creating table at "table columns" [#1287]
668
+ * Use Rails migration for creating table at procedure specs [#1288]
669
+ * Use Rails migration for creating table at database tasks specs [#1290]
670
+ * Suppress `warning: assigned but unused variable - poolable_connection_factory` [#1292]
671
+ * Suppress `warning: assigned but unused variable - post` [#1293]
672
+ * Move spec files under `oracle_enhanced` directory [#1441]
673
+ * Move spec files under `emulation` directory [#1442]
674
+ * Move schema_dumper_spec under `oracle_enhanced` directory [#1443]
675
+ * Rename spec/active_record/connection_adapters/oracle_enhanced_dirty_spec.rb [#1447]
676
+ * Remove `set_boolean_columns` from `oracle_enhanced_data_types_spec.rb` [#1452]
677
+ * Remove `set_string_columns` from `oracle_enhanced_data_types_spec.rb` [#1454]
678
+ * Use `drop_table` if_exists: true` to avoid rescue nil [#1456]
679
+ * Extract JSON data type specs [#1459]
680
+ * Extract NationalCharacterString data type specs [#1460]
681
+ * Extract RAW data type specs [#1461]
682
+ * Extract TEXT data type specs [#1462]
683
+ * Extract INTEGER data type specs [#1463]
684
+ * Remove redundant `type` from spec files [#1464]
685
+ * Extract boolean data type specs [#1465]
686
+ * Extract NationalCharacterText data type specs [#1466]
687
+ * Extract specs for `OracleEnhanced::Quoting` [#1469]
688
+ * Extract TIMPSTAMP, TIMESTAMPTZ and TIMESTAMPLTZ specs [#1480]
689
+ * Extract FLOAT type specs [#1482]
690
+ * Use `SchemaDumpingHelper#dump_table_schema` at `context_index_spec` [#1491]
691
+ * Remove unused `fk_name` [#1514]
692
+ * Show correct bind value information in debug.log [#1537]
693
+ * rubocop 0.48.1 [#1281]
694
+
695
+ * Changes for CI and builds
696
+
697
+ * Use `rubocop-0-51` channel on Code Climate [#1589]
698
+ * Use `rubocop-0-50` channel on Code Climate [#1539]
699
+ * Use `rubocop-0-49` channel to run rubocop 0.49 [#1478]
700
+ * Bump ruby versions to 2.4.2, 2.3.5 and 2.2.8 at Travis [#1484]
701
+ * CI against JRuby 9.1.14.0 [#1592]
702
+ * CI against JRuby 9.1.13.0 [#1471]
703
+ * set `open_cursor` value to `1200` [#1431]
704
+ * Use bundler 1.16.0.preX and update rubygems to the latest [#1532]
705
+ * [ci skip] Create an issue template [#1317]
706
+ * [ci skip] Add Oracle enhanced adapter version to the issue template [#1319]
707
+ * [ci skip] Remove `self.emulate_integers_by_column_name = true` [#1494]
708
+ * Remove leftover comments [ci skip] [#1520]
709
+ * Move issue template to github sub directory [skip ci] [#1320]
710
+ * Replace :github source with https [#1499]
711
+ * Simplify `git_source` in Gemfile [#1500]
712
+ * Enable and apply `Style/Semicolon` [#1570]
713
+ * Enable and apply Style/RedundantReturn [#1571]
714
+ * Enable `Style/DefWithParentheses` rubocop rule [#1597]
715
+ * bundler 1.16.0 is out, no more --pre [#1572]
716
+
717
+ ## 1.8.2 / 2017-08-24
718
+
719
+ * Changes and bug fixes
720
+ * Fix cursor leak when using activerecord-import gem [#1409, #1433]
721
+ * Mention new statement_limit default [#1364, #1365]
722
+ * Add upgrade section for `:statement_limit` value at Rails 5.1 [#1362, #1363]
723
+ * Set `disk_asynch_io` to `false` [#1413, #1414]
724
+ * Update README.md [#1367 #1368]
725
+ * CI against JRuby 9.1.12.0 [#1359, #1360]
726
+ * Bump ruby versions [#1346]
727
+ * rubocop namespace changes from `Style` to `Layout` [#1347, #1351]
728
+
729
+ * Known issues
730
+ * No changes since 1.8.0.rc3
731
+
732
+ ## 1.8.1 / 2017-05-11
733
+
734
+ * Changes and bug fixes
735
+ * Address `undefined method `tablespace' for #<ActiveRecord::ConnectionAdapters::IndexDefinition [#1332, #1334, #1336]
736
+ * Rails 5.1.0.rcX is not supported anymore [#1311]
737
+ * Use Ubuntu 12.04 at Travis [#1324]
738
+
739
+ ## 1.8.0 / 2017-04-27
740
+
741
+ * Major enhancements
742
+ * Support Rails 5.1.0
743
+ * Add JSON attribute support [#1240]
744
+ * Update `database.yml` when `rails new <new_app> -d oracle` specified [rails/rails#28257]
745
+
746
+ * Changes and bug fixes
747
+ * No changes since 1.8.0.rc3
748
+
749
+ ## 1.8.0.rc3 / 2017-04-24
750
+
751
+ * Changes and bug fixes
752
+ * Include VERSION file in gem [#1302, #1303]
753
+
754
+ ## 1.8.0.rc2 / 2017-04-19
755
+
756
+ * Changes and bug fixes
757
+ * Fix `select_all` with legacy `binds` [#1246,#1248,#1250]
758
+ * Fix the `BINARY_FLOAT` column type returns nil in JRuby [#1244, #1254, #1255]
759
+ * Handle `TIMESTAMP WITH TIMEZONE` separately from `TIMEZONE` [#1206, #1267, #1268]
760
+ * Changing `NLS_DATE_FORMAT` and `NLS_TIMESTAMP_FORMAT` is not supported [#1267, #1268]
761
+ * Let abstract adapter type cast Date, DateTime and Time for JRuby [#1272, #1273]
762
+ * Collapse a file specification in gemspec [#1296, #1297]
763
+ * Do not write VERSION directly with gemspec [#1298, #1299]
764
+ * Omit specification of release date in gemspec [#1298, #1299]
765
+ * Add missing `timestamptz.rb` to gemspec at release18 branch [#1286]
766
+ * Remove specs for unsupported behaviour which causes `ORA-01861` [#1267, #1269, #1271]
767
+ * Address `OCIException: OCI8 was already closed` at specs for JSON [#1265, #1266]
768
+ * Bump Ruby version to 2.2.7 [#1261]
769
+
770
+ ## 1.8.0.rc1 / 2017-03-20
771
+
772
+ * Major enhancements
773
+ * Support Rails 5.1.0.rc1
774
+ * Add JSON attribute support #1240
775
+ * Update `database.yml` when `rails new <new_app> -d oracle` specified [rails/rails#28257]
776
+
777
+ * Changes and bug fixes
778
+ * Eliminate a redundant empty lines in schema.rb generated by SchemaDumper [#1232]
779
+ * Align the columns of db/structure.sql [#1242]
780
+ * Use Abstract StatementPool (new `statement_limit` default is 1000 was 250) [#1228]
781
+ * Decouple Composite Primary Key code [#1224, #1225]
782
+ * Push `valid_type?` up to abstract adapter [#1208]
783
+ * Oracle12 visitor is also available for 12.2 [#1217]
784
+ * Oracle Database 12c Release 2 bundles new ojdbc8.jar [#1218]
785
+ * Deprecate `supports_migrations?` on connection adapters [#1209]
786
+ * Use `ActiveRecord::SchemaMigration.table_name` [#1221]
787
+ * No need to check if `changed?` defined [#1226]
788
+ * No need to initialize `@quoted_column_names` and `@quoted_table_names` [#1227]
789
+ * Hard code `empty_blob()` or `empty_clob()` based on types [#1229]
790
+ * ruby-plsql 0.6.0 or higher version is required [#1216]
791
+ * No need to specify `rack` in Gemfile [#1230]
792
+ * Bundle from more secure source [#1243]
793
+ * Add Travis CI build status [#1231]
794
+ * Bump JRuby to 9.1.8.0 [#1222]
795
+ * Remove a duplicate spec testing `Model.distinct.count` [#1235]
796
+ * Suppress unused and not initialized warnings [#1215]
797
+ * Suppress `WARNING: Using the `raise_error` matcher without providing a specific error` [#1219]
798
+ * Suppress `WARNING: Using `expect { }.not_to raise_error(...)` risks false positives` [#1220]
799
+
800
+ ## 1.8.0.beta1 / 2017-02-27
801
+
802
+ * Major enhancements
803
+ * Support Rails 5.1.0.beta1
804
+ * Fallback :bigint to :integer for primary keys [#1077]
805
+ * Drop Java SE 6 or older version of Java SE support [#1126]
806
+ * Drop JRuby 9.0.x support for Rails 5.1 [#1147]
807
+ * Refactor ColumnDumper to support consistent Virtual column with Rails [#1185]
808
+ * Schema dumper supports `t.index` in `create_table` [#1187]
809
+ * `table_exists?` only checks tables, does not check views [#1179, #1191]
810
+ * `data_sources` returns tables and views [#1192]
811
+ * `Model.table_comment` syntax is not supported anymore [#1199]
812
+ * Remove Oracle enhanced adapter own foreign key implementations [#977]
813
+
814
+ * Changes and bug fixes
815
+ * Rails 5.1.0.beta1 is out [#1204]
816
+ * Composite foreign keys are not supported [#1188]
817
+ * Introduce `supports_virtual_columns?` [#1184]
818
+ * Made it able to change column with adding comment [#1156, #1164]
819
+ * Omit table comment option of schema.rb if it is blank [#1159]
820
+ * Fix to return nil if column comment is blank at table creation [#1158]
821
+ * `bind_param` arity change, not to take column [#1203]
822
+ * ActiveRecord `structure_dump` and `structure_load` signature changes [#1125]
823
+ * Quoting booleans should return a frozen string [#956]
824
+ * Pass `type_casted_binds` to log subscriber [#957]
825
+ * `supports_datetime_with_precision?` always returns `true` [#964]
826
+ * Handle ORA-00942 and ORA-00955 as `ActiveRecord::StatementInvalid` [#1093]
827
+ * Raise `ActiveRecord::StatementInvalid` at `rename_index` when old index does not exist [#1195]
828
+ * Handle `ORA-01418: specified index does not exist` as `ActiveRecord::StatementInvalid` [#1195]
829
+ * Raise ActiveRecord::NotNullViolation when OCIError: ORA-01400 [#1174]
830
+ * Rails 5.1 : insert into `returning_id` not working since rails/rails#26002 [#988, #1088]
831
+ * Make `exec_{insert,update}` signatures consistent [#966]
832
+ * Introduce OracleEnhanced `ColumnMethods` module and `AlterTable` `Table` classes [#1081]
833
+ * `empty_insert_statement_value` is not implemented [#1180]
834
+ * Switch to keyword args for `type_to_sql` [#1167, #1168]
835
+ * Replace `all_timestamp_attributes` with `all_timestamp_attributes_in_model` [#1129]
836
+ * `current_database` returns the expected database name [#1135]
837
+ * Use `supports_foreign_keys_in_create?` [#1143]
838
+ * Address `add_column` gets `ArgumentError: wrong number of arguments` [#1157, #1170]
839
+ * Address `change_column` `ArgumentError: wrong number of arguments` [#1171, #1172]
840
+ * SchemaDumper should not dump views as tables [#1192]
841
+ * Use Abstract `select_rows(arel, name = nil, binds = [])` [#1132]
842
+ * Address `OCIError: ORA-01756: quoted string not properly terminated:` [#1102]
843
+ * Use `table_exists?` and `tables` [#1170, #1178]
844
+ * Move `ActiveModel::Type::Text` to `ActiveRecord::Type::Text` [#1082]
845
+ * Support schema option for views [#1190]
846
+ * Quote table and trigger names containing sinqle quote character [#1192]
847
+ * Restore :raw type migration support [#1176]
848
+ * Refactor Boolean type by removing duplicate code [#1047]
849
+ * Remove deprecated methods to get and set columns [#958]
850
+ * Remove `is_?` deprecated methods [#959]
851
+ * Remove `quote_date_with_to_date` and `quote_timestamp_with_to_timestamp` #960
852
+ * Remove unnecessary comments in Type [#961]
853
+ * Remove options[:default] for virtual columns [#962]
854
+ * Remove `self.emulate_dates` and `self.emulate_dates_by_column_name` [#963]
855
+ * Delete `self.boolean_to_string` [#967]
856
+ * Delete Oracle enhanced its own `join_to_update` [#968]
857
+ * Remove `self.ignore_table_columns` [#969]
858
+ * Remove unused `self.virtual_columns` [#970]
859
+ * Remove `dump_schema_information` and `initialize_schema_migrations_table` [#972]
860
+ * Remove `fallback_string_to_date`, `fallback_string_to_time` [#974, #975, #1112]
861
+ * Remove `dependent` option from `add_foreign_key` [#976]
862
+ * Remove specs testing Rails `self.ignored_columns` features [#987]
863
+ * Remove `add_foreign_key` specs with `table_name_prefix` and `table_name_suffix` [#990]
864
+ * Remove `type_cast` method just calling super [#1201]
865
+ * Remove `ids_in_list_limit` alias [#1202]
866
+ * Remove unused comments from data types spec [#1079]
867
+ * Remove deprecated `table_exists?` and `tables` [#1100, #1178]
868
+ * Remove deprecated `name` argument from `#tables` [#1189]
869
+ * Prefer `SYS_CONTEXT` function than `v$nls_parameters` view [#1107]
870
+ * `initialize_schema_migrations_table` method has been removed [#1144]
871
+ * `index_name_exists?` at schema statements spec is not necessary [#1197]
872
+ * Remove comments for `data_source_exists?` [#1200]
873
+ * Address DEPRECATION WARNING: Passing a column to `quote` has been deprecated. [#978]
874
+ * Deprecate `supports_primary_key?` [#1177]
875
+ * Deprecate passing `default` to `index_name_exists?` [#1175]
876
+ * Suppress `add_index_options` method `DEPRECATION WARNING:` [#1193]
877
+ * Suppress `remove_index` method deprecation warning [#1194]
878
+ * Suppress DEPRECATION WARNING at `rename_index` [#1195]
879
+ * Suppress `oracle_enhanced_adapter.rb:591: warning: assigned but unused` [#1198]
880
+ * Use rails rubocop setting [#1111]
881
+ * Rubocop addresses `Extra empty line detected at class body beginning.` [#1078]
882
+ * Address `Lint/EndAlignment` offences by changing code ifself [#1113]
883
+ * rubocop `AlignWith` has been renamed to `EnforcedStyleAlignWith` [#1142]
884
+ * Add `Style/EmptyLinesAroundMethodBody` [#1173]
885
+ * Address git warnings: [#1000]
886
+ * Update `required_rubygems_version` just following rails.gemspec [#1110]
887
+ * Use the latest ruby-plsql while developing alpha version [#1114]
888
+ * Use the latest arel master while developing alpha version [#1115]
889
+ * Bump Arel to 8.0 [#1120, #1121, #1124]
890
+ * Use released Arel 8 [#1205]
891
+ * Remove duplicate license information [#965]
892
+ * Clean up comments and un-commented specs for table comment feature [#971]
893
+ * Use Rails migration `create_table` to create table and sequence [#991]
894
+ * Removed a invalid spec about TIMESTAMP column [#1020]
895
+ * Remove specs which set `attribute :hire_date, :date` [#1024]
896
+ * Remove version specification for rspec [#1055]
897
+ * Suppress `create_table(:test_employees, {:force=>true})` message [#1080]
898
+ * Perform `drop_table :test_employees` [#1087]
899
+ * Address rspec deprecation warning [#1089]
900
+ * Suppress rspec warning [#1101]
901
+ * Suppress `Dropped database 'ORCL'` messages while running rspec [#1103]
902
+ * Address rspec warnings by checking with `raise_errors_for_deprecations!` [#1104]
903
+ * `clear_cache!` always exists at least since Rails 4.0 [#1106]
904
+ * Use SimpleCov [#1108]
905
+ * Enable RSpec `--warnings` option [#1116]
906
+ * Remove entry for rcov since it already migrated to simplecov [#1118]
907
+ * Add spec for #1149 `TypeError: can't cast Java::JavaSql::Timestamp` [#1152]
908
+ * Remove a duplicated specs [#1163]
909
+ * Specify `--require spec_helper` in .rspec [#1186]
910
+ * Add 'pry' and 'pry-nav' for JRuby debug [#973]
911
+ * Remove ruby-debug [#1196]
912
+ * Use Ubuntu Trusty at travis [#1095]
913
+ * Address travis.yml has multilpe language entries [#1109]
914
+ * Use docker-oracle-xe-11g for Travis CI [#1117]
915
+ * Modify `JRUBY_OPTS` for Travis CI [#1119]
916
+ * Add ruby-head and jruby-head to .travis.yml [#1127]
917
+ * Use JRuby 9.1.7.0 [#1138]
918
+ * Add JRuby 9.0.4.0 and allow JRuby 9.0.5.0 failures [#1146]
919
+ * Tiny fix for .travis.yml after migrating to docker-oracle-xe-11g [#1183]
920
+ * Templates updated to use Rails master branch for Rails 5.1 [#1133]
921
+ * Update running tests to include rails-dev-box [#1140]
922
+
923
+ * Known issues
924
+ * Legacy primary key support testing [#1207]
925
+ * PrimaryKeyIntegerNilDefaultTest failures [#1162]
926
+ * Skip `explain should explain query with bind` with JRuby [#1091]
927
+
928
+ ## 1.7.10 / 2017-02-03
929
+
930
+ * Changes and bug fixes
931
+ * Address `TypeError: can't cast Java::JavaSql::Timestamp` [#1147, 1153]
932
+ * Use docker-oracle-xe-11g for Travis CI for release17 branch [#1150]
933
+ * Use JRuby 9.1.7.0 for release17 branch [#1154]
934
+ * Pending until further investigation made for #908 for release17 branch [#1151]
935
+
936
+ * Known issues
937
+ * No changes since 1.7.7
938
+
939
+ ## 1.7.9 / 2016-12-26
940
+
941
+ * Changes and bug fixes
942
+
943
+ * Fix ORA-00933 error when executing `rails db:schema:load` [#1084]
944
+ * Quoting booleans should return a frozen string [#1083]
945
+ * CI against ruby 2.4.0 [#1096, #1086]
946
+
947
+ * Known issues
948
+ * No changes since 1.7.7
949
+
950
+ ## 1.7.8 / 2016-12-06
951
+
952
+ * Changes and bug fixes
953
+ * Separate schema migration insert statements correctly [#1074]
954
+ * Add `use_old_oracle_visitor` example [#1068]
955
+ * `supports_fetch_first_n_rows_and_offset?` returns `false` when `use_old_oracle_visitor` is true {1070, #1075]
956
+ * Suppress `create_table(:posts, {:force=>true})` message [#1067, #1072]
957
+ * Enable rubocop and Code Climate [#1056, #1057, #1060, #1062, #1071]
958
+ * Bump MRI version for travis [#1054, #1059]
959
+ * Drop `ActiveRecord::InternalMetadata.table_name` after each spec [#1073]
960
+
961
+ * Known issues
962
+ * No changes since 1.7.7
963
+
964
+ ## 1.7.7 / 2016-11-15
965
+
966
+ * Changes and bug fixes
967
+ * Introduce `use_old_oracle_visitor` to choose old Oracle visitor [#1049]
968
+ * Fix deprecated warnings in Ruby 2.4.0+ [#1048, #1052]
969
+ * Add Ruby 2.2.5 and JRuby 9.0.5.0 for travis [#1050, #1051]
970
+
971
+ * Known issues
972
+ * No changes since 1.7.6
973
+
974
+ ## 1.7.6 / 2016-11-12
975
+
976
+ * Changes and bug fixes
977
+ * Register `:boolean` type for Attribute API [#942, #1045]
978
+ * No need to set version in Gemfile anymore since rdoc 5.0.0 released [#1040]
979
+ * Bump MRI and JRuby version for travis [#1041, #1042, #1043]
980
+ * Known issues
981
+
982
+ - Only with JRuby
983
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
984
+
985
+ ## 1.7.5 / 2016-11-06
986
+
987
+ * Changes and bug fixes
988
+
989
+ * Multi insert is not supported [#1016]
990
+ * Use `default_timezone = :local` to handle `TIMESTAMP WITH LOCAL TIME ZONE` [#1001, #1019]
991
+ * Address Rails 5 : custom methods for create record when exception is raised in `after_create` callback fails [#944, #1023]
992
+ * Using the gem in non-rails apps [#1026]
993
+ * Support connection strings in `DATABASE_URL1 [#1032, #1035]
994
+ * Rebuild primary key index to `default_tablespaces[:index]` [#1028]
995
+ * Address `Java::JavaSql::SQLException: Missing IN or OUT parameter at index:: 3:` [#1030, #1033]
996
+
997
+ * Known issues
998
+
999
+ - Only with JRuby
1000
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1001
+ * Workaround: execute explain without bind or use CRuby
1002
+ - CRuby and JRuby
1003
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
1004
+
1005
+ ## 1.7.4 / 2016-10-14
1006
+
1007
+ * Changes and bug fixes
1008
+
1009
+ * Bump Arel 7.1.4 or higher [#1010, #848, #946]
1010
+ * NoMethodError: undefined method `write' for nil:NilClass for serialized column [#798, #1007]
1011
+ * Quote table name in disable_referential_integrity [#1012, #1014]
1012
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438, rails/arel#450]
1013
+ * Add UPGRADE section : Upgrade Rails 4.2 or older version to Rails 5 [#1011, #993]
1014
+ * add docker to RUNNING_TEST.md [#1006]
1015
+ * Add executable test cases using Minitest or RSpec [#1002]
1016
+
1017
+ * Known issues
1018
+
1019
+ - Only with JRuby
1020
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1021
+ * Workaround: execute explain without bind or use CRuby
1022
+ - CRuby and JRuby
1023
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
1024
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
1025
+ * #998 causes regression for `TIMESTAMP WITH LOCAL TIME ZONE` [#1001]
1026
+
1027
+ ## 1.7.3 / 2016-10-03
1028
+
1029
+ * Changes and bug fixes
1030
+ * Respect `ActiveRecord::Base.default_timezone = :utc` rather than connection `time_zone` value [#755, #998]
1031
+
1032
+ * Known issues
1033
+ * No changes since 1.7.0.rc1
1034
+
1035
+ ## 1.7.2 / 2016-09-19
1036
+
1037
+ * Changes and bug fixes
1038
+ * Remove ruby-oci8 from runtime dependency [#992,#995]
1039
+ * Update README to add `gem 'ruby-oci8'` explicitly for CRuby users [#992, #995]
1040
+
1041
+ * Known issues
1042
+ * No changes since 1.7.0.rc1
1043
+
1044
+ ## 1.7.1 / 2016-08-22
1045
+
1046
+ * Changes and bug fixes
1047
+ * Add `ActiveRecord::OracleEnhanced::Type::Boolean` [#985, #979]
1048
+ * Address `create_table': undefined method `each_pair' for []:Array (NoMethodError) [#980]
1049
+ * Deprecate `fallback_string_to_date`, `fallback_string_to_time` [#974]
1050
+
1051
+ * Known issues
1052
+ * No changes since 1.7.0.rc1
1053
+
1054
+ ## 1.7.0 / 2016-08-04
1055
+
1056
+ * Changes and bug fixes
1057
+ * No changes since 1.7.0.rc1
1058
+
1059
+ * Known issues
1060
+ * No changes since 1.7.0.rc1
1061
+
1062
+ ## 1.7.0.rc1 / 2016-08-02
1063
+
1064
+ * Changes and bug fixes
1065
+
1066
+ * Support `emulate_booleans_from_strings` in Rails 5 [#953, #942]
1067
+ * Deprecate `self.is_boolean_column?` [#949]
1068
+ * Deprecate `self.is_date_column?` and `is_date_column?` [#950]
1069
+ * Deprecate `set_type_for_columns`, `set_type_for_columns` and `clear_types_for_columns` [#951]
1070
+ * Deprecate `self.is_integer_column?` [#952]
1071
+
1072
+ * Known issues
1073
+
1074
+ - Only with JRuby
1075
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1076
+ * Workaround: execute explain without bind or use CRuby
1077
+ - CRuby and JRuby
1078
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
1079
+ * Rails 5 : specs need update to emulate_booleans_from_strings [#942]
1080
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1081
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
1082
+ * One of the units test skipped when database version is 11gR2 or lower. [#946]
1083
+
1084
+ ## 1.7.0.beta7 / 2016-08-01
1085
+
1086
+ * Changes and bug fixes
1087
+
1088
+ * Use OracleEnhanced::SchemaDumper#tables and #table
1089
+ only if they have Oracle enhanced specific features [#947, #797]
1090
+
1091
+ * Known issues
1092
+
1093
+ - Only with JRuby
1094
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1095
+ - CRuby and JRuby
1096
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
1097
+ * Rails 5 : emulate_booleans_from_strings support [#942]
1098
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1099
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
1100
+ * One of the units test skipped when database version is 11gR2 or lower. [#946]
1101
+
1102
+ ## 1.7.0.beta6 / 2016-07-29
1103
+
1104
+ * Changes and bug fixes
1105
+
1106
+ * Use attributes.keys to update all attributes when partial_write is disabled [#906 #943]
1107
+
1108
+ * Known issues
1109
+
1110
+ - Only with JRuby
1111
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1112
+ - CRuby and JRuby
1113
+ * Rails 5 : custom methods for create record when exception is raised in after_create callback fails [#944]
1114
+ * Rails 5 : emulate_booleans_from_strings support [#942]
1115
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1116
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
1117
+
1118
+ ## 1.7.0.beta5 / 2016-07-28
1119
+
1120
+ * Changes and bug fixes
1121
+
1122
+ * Use binds.size to set returning_id_index for returning_id [#907, #912 and #939]
1123
+
1124
+ * Known issues
1125
+
1126
+ - Only with JRuby
1127
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1128
+ - CRuby and JRuby
1129
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
1130
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1131
+ * #848 reproduces when database version is 11gR2 or older, it does not reproduce with 12c
1132
+
1133
+ ## 1.7.0.beta4 / 2016-07-27
1134
+
1135
+ * Changes and bug fixes
1136
+
1137
+ * Call `bind_returning_param` when sql has returning_id and using JRuby [#937]
1138
+ * Remove unused `col_type` to avoid warnings [#934]
1139
+ * Remove TODO comment since Oracle DATE type can be mapped Rails Datetime with attribute API [#935]
1140
+ * Remove rspec from runtime dependency [#933]
1141
+ * Rename `add_dependency` to `add_runtime_dependency` [#933]
1142
+ * Remove warnings for + when tested with JRuby 9.1.2 [#936]
1143
+
1144
+ * Known issues
1145
+
1146
+ - Only with JRuby
1147
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
1148
+ * #937 addresses two failures reported in #912
1149
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1150
+ - CRuby and JRuby
1151
+ * Rails 5 : create table with primary key trigger not returning id [#907]
1152
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
1153
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1154
+
1155
+ ## 1.7.0.beta3 / 2016-07-22
1156
+
1157
+ * Changes and bug fixes
1158
+ * Not giving `bind_param` a 3rd argument `column` [#929, #909]
1159
+
1160
+ * Known issues
1161
+
1162
+ - Only with JRuby
1163
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
1164
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1165
+ - CRuby and JRuby
1166
+ * Rails 5 : create table with primary key trigger not returning id [#907]
1167
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
1168
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1169
+
1170
+ ## 1.7.0.beta2 / 2016-07-22
1171
+
1172
+ * Changes and bug fixes
1173
+
1174
+ * Support CLOB for JRuby [#926, #910, #911]
1175
+ * Arel 7.1.0 or higher version is required [#919]
1176
+ * Document usage of ActiveRecord Attributes API in 1.7 [#924]
1177
+ * Add a note about usage pecularities of context_index's index_column option to README [#924]
1178
+ * Set required_ruby_version = '>= 2.2.2' [#916]
1179
+ * Remove ActiveRecord::ConnectionAdapters::TableDefinition#aliased_types [#921]
1180
+ * Update warning message for composite primary keys [#923]
1181
+ * Remove specs deprecated in Oracle enhanced adapter 1.7 [#917]
1182
+ * Rails 5 : has_and_belongs_to_many test gets ORA-01400 since primary key column "ID"
1183
+ not included in insert statement [#856, rails/rails#25388, rails/rails#25578 ]
1184
+ - This fix will be included in the next version of Rails which should be named 5.0.1
1185
+
1186
+ * Known issues
1187
+
1188
+ - Only with JRuby
1189
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
1190
+ * Rails 5 : SQL with bind parameters when NLS_NUMERIC_CHARACTERS is set to ', '
1191
+ show Java::JavaSql::SQLSyntaxErrorException: / ORA-01722: invalid number [#909]
1192
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1193
+ - CRuby and JRuby
1194
+ * Rails 5 : create table with primary key trigger not returning id [#907]
1195
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
1196
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1197
+
1198
+ ## 1.7.0.beta1 / 2016-07-18
1199
+
1200
+ * Major enhancements
1201
+
1202
+ * Support Rails 5.0
1203
+ * Use Arel::Visitors::Oracle12 to use better top-N query support [#671]
1204
+ * Oracle TIMESTAMP sql type is associated with Rails `DateTime` type [#845]
1205
+ * Rails :time as Oracle TIMESTAMP to support subsecond precision [#817, #816]
1206
+ * Rails :datetime as Oracle TIMESTAMP to support subsecond precision [#739]
1207
+ * Remove ActiveRecord::OracleEnhanced::Type::Timestamp [#815]
1208
+ * Deprecate `quote_date_with_to_date` and `quote_timestamp_with_to_timestamp` [#879]
1209
+ * Deprecate `set_boolean_columns` and `set_string_columns` [#874]
1210
+ * Deprecate `set_integer_columns [#872]
1211
+ * Deprecate `set_date_columns` and `set_datetime_columns` [#869]
1212
+ * Deprecate `ignore_table_columns` to use Rails native `ignored_columns` [#855]
1213
+ * Set :datetime for an attribute explicitly [#875, #876]
1214
+ * Support `#views` #738
1215
+ * Replace `table_exists?` with `data_source_exists?` [#842]
1216
+ * Introduce `data_source_exists?` to return tables and views [#841]
1217
+ * Implement primary_keys to prepare dumping composite primary key [#860]
1218
+ * Support for any type primary key [#836]
1219
+ * Dump composite primary keys [#863]
1220
+ * Dump type and options for non default primary keys [#861]
1221
+ * Support creating foreign keys in create table [#862]
1222
+ * Support ActiveRecord native comment feature [#822, #821, #819]
1223
+
1224
+ * Changes and bug fixes
1225
+
1226
+ * Fix cast_type issue [#795]
1227
+ * Rename quote_value to quote_default_expression [#661]
1228
+ * Change bind parameters order to come offset first then limit next [#831]
1229
+ * type_cast arity change [#781]
1230
+ * Initial support for sql_type_metadata [#656]
1231
+ * Support bind_params for JDBC connections [#806]
1232
+ * Use all_* dictionary replacing user_* ones [#713]
1233
+ * Register `NUMBER(1)` sql_type to `Type::Boolean` [#844]
1234
+ * Add `ActiveRecord::ValueTooLong` exception class [#827]
1235
+ * Not passing `native_database_types` to `TableDefinition` [#747]
1236
+ * Ignore index name in `index_exists?` when not passed a name to check for [#840]
1237
+ * Add reversible syntax for change_column_default [#839]
1238
+ * Support Oracle national character set NCHAR, NVARCHAR2 [#886]
1239
+ * Support "limited" :returning_id [#894, #803]
1240
+ * Support RAW sql data type in Rails 5 [#877]
1241
+ * Remove `serialized_attributes` which is removed in Rails 5 [#694]
1242
+ * Add deprecation warning for `bind_param` [#809]
1243
+ * Remove `self.string_to_raw` from Column which is not called anymore [#813]
1244
+ * Remove type_cast from Column [#811]
1245
+ * Remove deprecated `distinct` method [#771]
1246
+ * Remove alias_method_chain and rename oracle_enhanced_table to table [#864]
1247
+ * Warn if `AR.primary_key` is called for a table with composite primary key [#837]
1248
+ * Remove select method from Oracle enhanced adapter [#784]
1249
+ * Remove version check to see if ::Rails::Railtie exists [#769]
1250
+ * Remove FALSE_VALUES [#716]
1251
+ * Remove TRUE_VALUES from OracleEnhancedColumn [#646]
1252
+ * Remove insert_sql method [#866, #890]
1253
+ * Rails5 remove require bind visitor [#853]
1254
+ * substitute_at has been removed from Rails [#849]
1255
+ * Serialize value for lob columns [#878]
1256
+ * Do not cache prepared statements that are unlikely to have cache hits [#748]
1257
+ * Handle BLOB type correctly [#804]
1258
+ * Move ActiveRecord::Type to ActiveModel [#723]
1259
+ * Remove cast_type to support Rails 5 Attribute API [#867]
1260
+ * Handle ActiveModel::Type::Binary::Data type cast in _type_cast [#826]
1261
+ * Use Abstract adapter `dump_schema_information` implementation [#857]
1262
+ * Use ActiveRecord initialize_schema_migrations_table [#843]
1263
+ * Use ActiveRecord::SchemaDumper#ignored? [#838]
1264
+ * Use Abstract adapter join_to_update [#801, #800]
1265
+ * Use ActiveRecord::OracleEnhanced::Type::Text [#887]
1266
+ * Use ActiveRecord::OracleEnhanced::Type::String [#883]
1267
+ * Use OracleEnhanced::ColumnDefinition [#650]
1268
+ * Move to ActiveRecord::ConnectionAdapters::OracleEnhanced::SchemaDumper [#695]
1269
+ * ColumnDumper uses Module#prepend [#696]
1270
+ * Migrate from OracleEnhancedSchemaStatementExt to OracleEnhanced::SchemaStatementsExt [#768]
1271
+ * Extract ActiveRecord::ConnectionAdapters::OracleEnhanced::Quoting [#764]
1272
+ * Use keyword arguments for new table options [#820]
1273
+ * Move `ruby_to_java_value` logic to `_type_cast` [#904]
1274
+ * OracleEnhancedColumn.new needs sql_type_metadata including sql_type [#858]
1275
+ * OracleEnhanced::JDBCQuoting and OCIQuoting [#897]
1276
+ * Address `add_column_options!': undefined method `quote_value' [#647]
1277
+ * Remove dirty tracking methods [#883]
1278
+ * Use arel master branch for rails5 development [#645]
1279
+ * Bump ruby-oci8 version to 2.2.0 or higher [#775]
1280
+ * Remove jeweler dependency [#766]
1281
+ * Remove required_rubygems_version [#719]
1282
+ * Remove journey which is already part of Rails [#701]
1283
+ * Remove dependencies with non activerecord gems [#700]
1284
+ * Remove activerecord-deprecated_finders [#698]
1285
+ * Use rack master branch [#697]
1286
+ * Clean up gemspec file and bump rspec, ruby-plsql and ruby-oci8 versions [#717]
1287
+ * Remove magic comment for utf-8 [#772, #726]
1288
+ * add_dependency with ruby-oci8 only if it runs cruby, not jruby [#902]
1289
+ * Install ruby-debug for jruby [#899]
1290
+ * Address dirty object tracking should not mark empty text as changed [#888]
1291
+ * Revert "Update matcher to skip sql statements to get `table` metadata" [#881]
1292
+ * No need to set @visitor instance variable here [#854]
1293
+ * log binds should not be type_casted [#818]
1294
+ * Fix schema dumper errors [#810]
1295
+ * Address undefined method `cast_type' [#805]
1296
+ * Better fix to support "Relation#count does not support finder options anymore in Rails [#788, #787]
1297
+ * ActiveRecord::Calculations#count no longer accepts an options hash argument #754
1298
+ * Suppress WARNINGs using `raise_error` without specific errors [#724]
1299
+ * Use RSpec 3 [#707]
1300
+ * Update "OracleEnhancedAdapter boolean type detection based on string column types and names" [#873]
1301
+ * Update "OracleEnhancedAdapter integer type detection based on column names" [#871]
1302
+ * Update "OracleEnhancedAdapter date type detection based on column names" [#868]
1303
+ * Do not set emulate_dates_by_column_name or emulate_dates in specs [#870]
1304
+ * Update rake spec message to show default branch name as master [#648]
1305
+ * Remove `ActiveRecord::Base.default_timezone = :local` from spec_helper [#901]
1306
+ * Update to rspec3 syntax to avoid deprecation notices [#776]
1307
+ * Remove RAILS_GEM_VERSION [#702]
1308
+ * Run Oracle enhanced adapter unit tests using Travis CI [#789]
1309
+ * Upgrade travis-oracle to Version 2.0.1 [#903]
1310
+
1311
+ * Known issues
1312
+
1313
+ - Only with JRuby
1314
+ * Rails 5 : create table with primary key trigger with default primary key not returning id [#912]
1315
+ * Rails 5 : dirty object tracking not working correctly for CLOB [#911]
1316
+ * Rails 5 : handling of CLOB columns get failures [#910]
1317
+ * Rails 5 : SQL with bind parameters when NLS_NUMERIC_CHARACTERS is set to ', '
1318
+ show Java::JavaSql::SQLSyntaxErrorException: / ORA-01722: invalid number [#909]
1319
+ * Rails 5 : explain should explain query with binds got Java::JavaSql::SQLException: Invalid column index [#908]
1320
+ - CRuby and JRuby
1321
+ * Rails 5 : create table with primary key trigger not returning id [#907]
1322
+ * Rails 5 : custom methods for create, update and destroy not working [#906]
1323
+ * Rails 5 : has_and_belongs_to_many test gets ORA-01400 since primary key column "ID"
1324
+ not included in insert statement [#856, rails/rails#25388]
1325
+ * Rails 5 : undefined method `to_i' for #<Arel::Nodes::BindParam:0x00000002c92910> [#848, rails/arel#438]
1326
+
1327
+ ## 1.6.7 / 2016-03-08
1328
+
1329
+ * Changes and bug fixes since 1.6.6
1330
+ * Support Rails 4.2.6
1331
+ * Support t.foreign_key use the same `to_table` twice [#783]
1332
+ * Remove "warning: (...) interpreted as grouped expression" [#765]
1333
+ * Add documentation on setting read, write and connect timeouts [#761]
1334
+
1335
+ ## 1.6.6 / 2016-01-21
1336
+
1337
+ * Changes and bug fixes since 1.6.5
1338
+ * Address ORA-00904 when CONTAINS has `table_name.column_name` [#758, #664, #463]
1339
+ * Only convert N to false when emulating booleans [#751]
1340
+ * Clean up specs and test documentation [#756]
1341
+ * Add JDBC Drivers to gitignore [#745]
1342
+
1343
+ ## 1.6.5 / 2015-12-01
1344
+
1345
+ * Enhancement
1346
+ * Support `schema` option to use schema objects owned by another schema[#742]
1347
+
1348
+ ## 1.6.4 / 2015-11-09
1349
+
1350
+ * Changes and bug fixes since 1.6.3
1351
+ * Add table and column comments to structure dump and schema dump [#734]
1352
+ * Remove `serialized_attributes` which is removed in Rails 5 [#694]
1353
+ * fixing bundler dependency conflict with head of rails vs arel 6.0[#714]
1354
+ * Add note to readme about adapter name when using DATABASE_URL [#728]
1355
+ * Fixed copy/paste error in README.md [#731]
1356
+ * Pending a test using virtual columns features introduced in 11gR1 [#733]
1357
+ * Suppress warning: ambiguous first argument [#690]
1358
+ * Suppress `warning: assigned but unused variable` [#691]
1359
+ * Suppress `warning: assigned but unused variable - tablespace` [#692]
1360
+ * Suppress `warning: assigned but unused variable - e` [#693]
1361
+ * Ignore .rbenv-gemsets [#705]
1362
+ * Clean up database objects after unit tests executed [#712]
1363
+
1364
+ ## 1.6.3 / 2015-08-14
1365
+
1366
+ * Changes and bug fixes since 1.6.2
1367
+ * Set sequence name automatically when new table name is longer than 26 bytes[#676]
1368
+ * Add minimal specs for ActiveRecord::Base.limit() and .order()[#679]
1369
+ * Use type_casted_binds [#681]
1370
+ * Use type_cast_for_database to serialize correctly [#688]
1371
+ * Suppress deprecated message for serialized_attributes [#688, #548, #687]
1372
+
1373
+ ## 1.6.2 / 2015-07-20
1374
+
1375
+ * Changes and bug fixes since 1.6.1
1376
+
1377
+ * Oracle enhanced adapter v1.6 requires ActiveRecord 4.2.1 or higher,
1378
+ ActiveRecord 4.2.0 is not supported.[#672]
1379
+ * Unique constraints not created when function unique index created [#662, #663]
1380
+ * create_table should use default tablespace values for lobs [#668]
1381
+
1382
+ ## 1.6.1 / 2015-07-01
1383
+
1384
+ * Changes and bug fixes since 1.6.0
1385
+
1386
+ * Oracle enhanced adapter v1.6 requires ActiveRecord 4.2.1 or higher,
1387
+ ActiveRecord 4.2.0 is not supported.[#651, #652]
1388
+ * Fix serialized value becomes from yaml to string once saved [#655, #657]
1389
+ * Update Ruby version in readme [#654]
1390
+ * Update unit test matcher to skip sql statements to get `table` metadata [#653]
1391
+
1392
+ ## 1.6.0 / 2015-06-25
1393
+
1394
+ * Changes and bug fixes since 1.6.0.beta1
1395
+
1396
+ * Add deprecation warnings for Oracle enhanced specific foreign key methods [#631]
1397
+ * Skip composite foreign key tests not supported in this version [#632]
1398
+ * Do not dump default foreign key name [#633]
1399
+ * Schema dump uses `:on_delete` option instead of `:dependent` [#634]
1400
+ * Use Rails foreign key name in rspec unit tests [#635]
1401
+ * Add deprecate warning if foreign key name length is longer than 30 byte [#636]
1402
+ * Foreign key name longer than 30 byte will be shortened using Digest::SHA1.hexdigest [#637]
1403
+ * Schema dumper for :integer will not dump :precision 0 [#638]
1404
+ * Update foreign key names for add_foreign_key with table_name_prefix [#643]
1405
+
1406
+ * Known Issues since 1.6.0.beta1
1407
+ * table_name_prefix and table_name_suffix changes column names which cause ORA-00904 [#639]
1408
+ * custom methods should rollback record when exception is raised in after_create callback fails [#640]
1409
+ * custom methods for create, update and destroy should log create record fails [#641]
1410
+
1411
+ ## 1.6.0.beta 1 / 2015-06-19
1412
+
1413
+ * Enhancements
1414
+ * Support Rails 4.2
1415
+ * Support Rails native foreign key syntax [#488, #618]
1416
+
1417
+ * Other changes and bug fixes
1418
+ * Column#primary method removed from Rails [#483]
1419
+ * ActiveRecord::Migrator.proper_table_name has been removed from Rails [#481]
1420
+ * New db/schema.rb files will be created with force: :cascade [#593]
1421
+ * Rails42 add unique index creates unique constraint [#617]
1422
+ * Modify remove_column to add cascade constraint to avoid ORA-12991 [#617]
1423
+ * Add `null: true` to avoid DEPRECATION WARNING [#489, #499]
1424
+ * Rails 4.2 Add `connection.supports_views?` [#496]
1425
+ * text? has been removed from Column class [#487]
1426
+ * Remove call to deprecated `serialized_attributes` [#550, #552]
1427
+ * Support :cascade option for drop_table [#579]
1428
+ * Raise a better exception for renaming long indexes [#577]
1429
+ * Override aliased_types [#575]
1430
+ * Revert "Add options_include_default!" [#586]
1431
+ * Remove substitute_at method from Oracle enhanced adapter [#520]
1432
+ * Require 'active_record/base' in rake task #526
1433
+ * Make it easier to spot which version of active record is actually used [#550]
1434
+ * Rails4.2 Add Type::Raw type [#503]
1435
+ * Support :bigint datatype [#580]
1436
+ * Map :bigint as NUMBER(19) sql_type not NUMBER(8) [#608]
1437
+ * Use Oracle BINARY_FLOAT datatype for Rails :float type [#610]
1438
+ * Revert "Implement possibility of handling of NUMBER columns as :float" [#576]
1439
+ * Rails 4.2 Support NCHAR correctly [#490]
1440
+ * Support :timestamp datatype in Rails 4.2 [#575]
1441
+ * Rails 4.2 Handle NUMBER sql_type as `Type::Integer` cast type [#509]
1442
+ * ActiveRecord::OracleEnhanced::Type::Integer for max_value to take 38 digits [#605]
1443
+ * Rails 4.2 add `module OracleEnhanced` and migrate classes/modules under this [#584]
1444
+ * Migrate to ActiveRecord::ConnectionAdapters::OracleEnhanced::ColumnDumper [#597]
1445
+ * Migrated from OracleEnhancedContextIndex to OracleEnhanced::ContextIndex [#599]
1446
+ * Make OracleEnhancedIndexDefinition as subclass of IndexDefinition [#600]
1447
+ * Refactor add_index and add_index_options [#601]
1448
+ * Types namespace moved to `ActiveRecord::Type::Value` [#484]
1449
+ * Add new_column method [#482]
1450
+ * Rename type_cast to type_cast_from_database [#485]
1451
+ * Removed `forced_column_type` by using `cast_type` [#595]
1452
+ * Move dump_schema_information to SchemaStatements [#611]
1453
+ * Move OracleEnhancedIndexDefinition to OracleEnhanced::IndexDefinition [#614]
1454
+ * Move OracleEnhancedSynonymDefinition to OracleEnhanced::SynonymDefinition [#615]
1455
+ * Move types under OracleEnhanced module [#603]
1456
+ * Make OracleEnhancedForeignKeyDefinition as subclass of ForeignKeyDefinition [#581]
1457
+ * Support _field_changed argument changes [#479]
1458
+ * Rails 4.2 Don't type cast the default on the column [#504]
1459
+ * Rename variable names in create_table to follow Rails implementation [#616]
1460
+ * Rails 4.2: Fix create_savepoint and rollback_to_savepoint name [#497]
1461
+ * Shorten foreign key name if it is longer than 30 byte [#621]
1462
+ * Restore foreign_key_definition [#624]
1463
+ * Rails 4.2 Support OracleEnhancedAdapter.emulate_integers_by_column_name [#491]
1464
+ * Rails 4.2 Support OracleEnhancedAdapter.emulate_dates_by_column_name [#492]
1465
+ * Rails 4.2 Support emulate_booleans_from_strings and is_boolean_column? [#506]
1466
+ * Rails 4.2 Support OracleEnhancedAdapter.number_datatype_coercion [#512]
1467
+ * Rails 4.2 Use register_class_with_limit [#502]
1468
+ * Rails 4.2 Remove redundant substitute index when constructing bind values [#517]
1469
+ * Rails 4.2 Unit test updated to support `substitute_at` in Arel [#522]
1470
+ * Change log method signiture to support Rails 4.2 [#539]
1471
+ * Enable loading spec configuration from config file instead of env [#550]
1472
+ * Rails42: Issue with non-existent columns [#545, #551]
1473
+ * Squelch warning "#column_for_attribute` will return a null object
1474
+ for non-existent columns in Rails 5. Use `#has_attribute?`" [#551]
1475
+ * Use arel 6-0-stable [#565]
1476
+ * Support 'Y' as true and 'N' as false in Rails 4.2 [#574, #573]
1477
+ * Remove alias_method_chain :references, :foreign_keys [#582]
1478
+ * Use quote_value method to avoid undefined method `type_cast_for_database' for nil:NilClass [#486]
1479
+ * Rails 4.2: Set @nchar and @object_type only when sql_type is true [#493]
1480
+ * Rails 4.2: Handle forced_column_type temporary [#498]
1481
+ * Rails 4.2 Address ArgumentError: wrong number of arguments (1 for 2) at `quote_value` [#511]
1482
+ * Address ORA-00932: inconsistent datatypes: expected NUMBER got DATE [#538]
1483
+ * Remove duplicate alias_method_chain for indexes [#560]
1484
+ * Address RangeError: 6000000000 is out of range for ActiveRecord::Type::Integer
1485
+ with limit 4 [#578]
1486
+ * Return foreign_keys_without_oracle_enhanced when non Oracle database used [#583]
1487
+ * Add missing database_tasks.rb to gemspec [#585]
1488
+ * Fixed typo in the rake tasks load statement [#587]
1489
+ * Call super when column typs is serialized [#563, #591]
1490
+ * Clear query cache on rollback [#592]
1491
+ * Modify default to `false` if database default value is "N" [#596]
1492
+ * refer correct location if filess in gemspec [#606]
1493
+ * Add integer.rb to gemspec [#607]
1494
+
1495
+ * Known Issues
1496
+ * Override aliased_types [#575]
1497
+ * Multi column foreign key is not supported
1498
+
1499
+ ## 1.5.6 / 2015-03-30
1500
+
1501
+ * Enhancements
1502
+ * Support Rails 4.1.10 [#530]
1503
+ * Remove warning message when JDK 8 is used [#525]
1504
+ * Support RAW column types [#471]
1505
+ * Properly quote database links [#556]
1506
+ * Grant create view privilege to db user [#528]
1507
+ * Read SYSTEM password from ENV ORACLE_SYSTEM_PASSWORD optionally [#529]
1508
+ * Show original error message when loading ruby-oci8 library fails [#532]
1509
+ * Update README that `OracleEnhancedProcedures` is not auto loaded [#474]
1510
+ * Fix legacy schema support syntax [#507]
1511
+ * Peform all unit test when tested with Oracle 12c [#465]
1512
+ * Add `:if_exists` option to `drop_table` [#541]
1513
+ * Extract OracleEnhancedDatabaseStatements [#449]
1514
+ * Removed self.visitor_for(pool) method [#501]
1515
+
1516
+ * Bug Fix
1517
+ * Fix serialized readonly lobs [#515]
1518
+ * Do not dump schema information during structure dump [#558]
1519
+ * Structure dump generates correct create or replace synonym [#453]
1520
+ * Procedures and functions are created correctly by removing semi-colon [#456]
1521
+ * Show support matrix of Java and JDBC Driver only when java_version >= '1.8' [#455]
1522
+ * Update Gemfile dependencies so specs can run [#472]
1523
+
1524
+ ## 1.5.5 / 2014-05-23
1525
+
1526
+ * Enhancements
1527
+ * Oracle NUMBER datatype can be handled as Rails :float datatype [#418]
1528
+ - Default NUMBER datatype handled as :decimal to keep compatibility
1529
+ - Configured by setting `self.number_datatype_coercion = :float`
1530
+ * Add link to supported Oracle database version, JDK and Oracle JDBC Driver version [#438]
1531
+ * Support `without_prepared_statements?` to handle `unprepared_statement` [#447]
1532
+
1533
+ * Bug Fix
1534
+ * Associations with name `record` do not work correctly since Rails 4 [#435]
1535
+ * Skip another Oracle Text test when Oracle 12c used [#437]
1536
+ * Tag bind params with a bind param object [#444]
1537
+
1538
+ ## 1.5.4 / 2014-03-25
1539
+
1540
+ * Enhancements
1541
+ * Support Rails 4.1.0.rc2
1542
+ * Allow Java 8 to run with jruby [#383]
1543
+
1544
+ * Bug Fix
1545
+ * Fix db:schema:dump when foreign key column name is not 'id' [#409]
1546
+ * Fix schema dump works when non Oracle adapter used [#428]
1547
+
1548
+ ## 1.5.3 / 2014-03-04
1549
+
1550
+ * Enhancements
1551
+ * Supports Rails 4.1.0.rc1
1552
+ * Support rails/rails#13886 by chainging select_rows arguments [#415]
1553
+
1554
+ * Bug Fix
1555
+ * Fix ORA-01008: not all variables bound [#422]
1556
+
1557
+ ## 1.5.2 / 2014-01-24
1558
+
1559
+ * Enhancements
1560
+ * Supports Rails 4.1.0.beta1
1561
+ * Support Rails 4 Database Tasks [#404]
1562
+ * Create sequence when add primary_key column [#406]
1563
+ * Move `SchemaCreation` to its own file [#381]
1564
+ * Remove unused OracleEnhancedColumnDefinition [#382]
1565
+ * Log bind variables after they were type casted [#385]
1566
+ * Remove add_order_by_for_association_limiting! [#388]
1567
+ * Support named savepoints [#389]
1568
+ * Support self.extract_value_from_default [#395]
1569
+ * Remove oracle_enhanced_core_ext.rb [#397]
1570
+ * Remove unused to_sql_with_foreign_keys and lob_columns [#398]
1571
+ * Remove ruby-oci8 v1 code [#405]
1572
+
1573
+ * Bug Fix
1574
+ * Move add_column_options! into SchemaCreation class [#384]
1575
+ * Add options_include_default! [#384]
1576
+ * Use OCI8::Metadata::Base#obj_link [#399]
1577
+
1578
+ ## 1.5.1 / 2013-11-30
1579
+
1580
+ * Enhancements
1581
+ * Removed set_table_name set_primary_key set_sequence_name from unit tests [#364]
1582
+ * Update README to support assignment methods [#365]
1583
+ * Remove add_limit_offset! method [#369]
1584
+ * Update Gemfile to use `bundle config --local` [#370]
1585
+ * `describe` does not try super when no database link and ORA-4043 returned [#375]
1586
+ * Support `remove_columns` [#377]
1587
+ * Dump views in alphabetical order and add `FORCE` option [#378]
1588
+
1589
+ * Bug Fix
1590
+ * Fixed reverting add_column fails with v1.5.0 [#373]
1591
+
1592
+ ## 1.5.0 / 2013-11-01
1593
+
1594
+ * Enhancements
1595
+ * Add license in gemspec and Rakefile [#361]
1596
+
1597
+ ## 1.5.0.rc1 / 2013-10-31
1598
+
1599
+ * Update README and HISTORY
1600
+ * No other changes since 1.5.0.beta1
1601
+
1602
+ ## 1.5.0.beta1 / 2013-10-28
1603
+
1604
+ * Enhancements and major changes
1605
+ * Support Rails 4.0
1606
+ * Desupport Rails 3.2 and lower version. To support Rails 3.2, use Version 1.4.3
1607
+ * Drop session store support [#219]
1608
+ * Create indexes automatically for references and belongs_to [#183]
1609
+ * Use the index name explicitly provided in a migration when reverting [#296]
1610
+ * Rename indexes when a table or column is renamed [#286]
1611
+ * Support refactored remove_column [#172]
1612
+ * Support allowed_index_name_length method [#285]
1613
+ * Remove schema prefix from sequence name if present before truncating [#155]
1614
+ * Bumped jeweler, ruby-plsql and ruby-oci8 version [#176]
1615
+ * Support also ojdbc6.jar for Java 1.7 [#350]
1616
+ * Support "activerecord-deprecated_finders" [#210]
1617
+ * Prepared statements can be disabled [#295]
1618
+ * Ensure disconnecting or reconnecting resets the transaction state [#220]
1619
+ * Support for specifying transaction isolation level [#226]
1620
+ * Rename the partial_updates config to partial_writes [#234]
1621
+ * Deprecate passing a string as third argument of add_index [#242]
1622
+ * Rename update method to update_record, create method to create_record [#273]
1623
+ * Deprecate #connection in favour of accessing it via the class [#297]
1624
+ * Support SchemaCreation [#298]
1625
+ * Add support for foreign key creation in create_table [#317]
1626
+ * Add virtual columns support for rail4 branch [#329]
1627
+ * Support columns_for_distinct method [#340]
1628
+ * Clear index cache when any table dropped [#200]
1629
+ * Clear index cache when remove_column executed [#269]
1630
+ * Dump schema uses ruby 1.9 style hash [#229]
1631
+ * Support _field_changed? and drop field_changed? [#182 #254]
1632
+ * Use arel nodes instead of raw sql [#198]
1633
+ * Raise an ArgumentError when passing an invalid option to add_index [#242]
1634
+ * Split OracleEnhancedColumnDumper from OracleEnhancedSchemaDumper [#292]
1635
+ * Unit test sets default_timezone = :local [#184]
1636
+ * Support reset_pk_sequence! [#287]
1637
+ * Remove unnecessary pendings in unit tests [#358]
1638
+
1639
+ * Bug Fix
1640
+ * Address ArgumentError: wrong number of arguments (5 for 3) [#166]
1641
+ * Address NoMethodError: undefined method `column_types' [#173]
1642
+ * Schema dumper removes table_name_prefix and table_name_suffix [#191]
1643
+ * Add clear_logger to address ArgumentError: wrong number of arguments (1 for 2) [#193]
1644
+ * Use Relation#to_a as Relation#all is deprecated in Rails [#203]
1645
+ * Address Address test_integer_zero_to_integer_zero_not_marked_as_changed failure [#207]
1646
+ * Address NoMethodError undefined method `default_string' [#221]
1647
+ * Address you can't redefine the primary key column 'id'. To define a custom primary key, pass { id: false } to create_table [#238]
1648
+ * Remove unnecessary DEPRECATION WARNING [#255]
1649
+ * Assigning "0.0" to a nullable numeric column does not make it dirty [#293]
1650
+ * Address `rake spec` abort [#353]
1651
+ * Correct activerecord-deprecated_finders not loaded if ENV['RAILS_GEM_VERSION'] set [#353]
1652
+
1653
+ * Known Issues
1654
+ * Oracle Text features are not fully supported with Oracle 12c [#331]
1655
+
1656
+ ### 1.4.3 / 2013-10-24
1657
+
1658
+ * No changes since 1.4.3.rc2
1659
+
1660
+ ### 1.4.3.rc2 / 2013-10-23
1661
+
1662
+ * Change build procedures
1663
+ * No other changes since 1.4.3.rc1
1664
+
1665
+ ### 1.4.3.rc1 / 2013-10-19
1666
+
1667
+ * Enhancements:
1668
+ * Allow inserting NULL to Oracle Spatial Data Types such as MDSYS.SDO_GEOMETRY [#311]
1669
+ * Support ojdbc7.jar JDBC Driver [#335]
1670
+
1671
+ * Bug fixes:
1672
+ * Fixed Gemfile to bundle update work [#294]
1673
+ * Fixed broken links in README.md and RUNNING_TESTS.md [#303 #306]
1674
+ * Address rename_table works if the source table created with :id => false [#336]
1675
+ * Use expand_path to show VERSION with Windows XP
1676
+
1677
+ ### 1.4.2 / 2013-03-18
1678
+
1679
+ * No changes since 1.4.2.rc2
1680
+
1681
+ ### 1.4.2.rc2 / 2013-03-01
1682
+
1683
+ * Bug fixes:
1684
+ * Do not consider the numeric attribute as changed if the old value is zero and the new value is not a string [#247]
1685
+ * Removed table_name_prefix and table_name_suffix when schema dumper executed [#248]
1686
+ * Remove_column should raise an ArgumentError when no columns are passed [#246]
1687
+ * Don't dump type for NUMBER virtual columns [#256]
1688
+ * Address :returning_id column should be of type Column [#274]
1689
+ * Migrated versions should be dumped in order [#277]
1690
+ * Always write serialized LOB columns [#275]
1691
+ * Truncate the schema_migrations index [#276]
1692
+ * Split paths on windows machines in the right way [#231]
1693
+
1694
+ ### 1.4.2.rc1 / 2012-11-13
1695
+
1696
+ * Enhancements:
1697
+ * Wordlist option for context index [#154]
1698
+ * Fall back to directly connecting via OracleDriver on JRuby [#163]
1699
+ * Allow slash-prefixed database name in database.yml for using a service [#201]
1700
+ * Bug fixes:
1701
+ * Fixed explain plans to work with JDBC and OCI8 [#146]
1702
+ * Fixed various issues with virtual columns [#159]
1703
+ * Fixed SQL structure dump with function indexes [#161]
1704
+ * Fixed broken column remove inside a change_table block [#216]
1705
+ * Dump indexes on virtual columns using the column's name instead of the column expression [#211]
1706
+ * Don't update lobs that haven't changed or are attr_readonly [#212]
1707
+ * Support dirty tracking with rails 3.2.9
1708
+
1709
+ ### 1.4.1 / 2012-01-27
1710
+
1711
+ * Enhancements:
1712
+ * Support for Rails 3.2
1713
+ * Support for ActiveRecord 3.2 explain plans [#116]
1714
+ * Support for ActiveRecord 3.1 statement pool, to avoid `ORA-01000` maximum open cursors exceeded (default `statement_limit` is 250 and can be changed in `database.yml`) [#100]
1715
+ * Added error handling for `rename_table` method in migrations [#137]
1716
+ * Bug fixes:
1717
+ * Store primary key as `nil` in cache at first time for table without primary key [#84]
1718
+ * Fixed inserting records with decimal type columns (`ORA-01722` invalid number exceptions) [#130]
1719
+ * Check virtual columns only in models that are using `oracle-enhanced` adapter, to avoid problems when using multiple database adapters [#85]
1720
+ * Don't drop the user in rake `db:create` and `db:drop` tasks [#103]
1721
+ * Don't add `db:create` and `db:drop` when ActiveRecord is not used as the primary datastore [#128]
1722
+ * Quote column names in LOB statements to avoid `ORA-00936` errors [#91]
1723
+ * Don't add the `RETURNING` clause if using `composite_primary_keys` gem [#132]
1724
+ * Added `join_to_update` method that is necessary for ActiveRecord 3.1 to ensure that correct UPDATE statement is generated using `WHERE ... IN` subquery with offset condition
1725
+
1726
+ ### 1.4.0 / 2011-08-09
1727
+
1728
+ * Enhancements:
1729
+ * Support for Rails 3.1
1730
+ * Bind parameter support for exec_insert, exec_update and exec_delete (in ActiveRecord 3.1)
1731
+ * Purge recyclebin on rake db:test:purge
1732
+ * Support transactional context index
1733
+ * Require ojdbc6.jar (on Java 6) or ojdbc5.jar (on Java 5) JDBC drivers
1734
+ * Support for RAW data type
1735
+ * rake db:create and db:drop tasks
1736
+ * Support virtual columns (in Oracle 11g) in schema dump
1737
+ * It is possible to specify default tablespaces for tables, indexes, CLOBs and BLOBs
1738
+ * rename_index migrations method
1739
+ * Search for JDBC driver in ./lib directory of Rails application
1740
+ * Bug fixes:
1741
+ * Fixed context index dump when definition is larger than 4000 bytes
1742
+ * Fixed schema dump not to conflict with other database adapters that are used in the same application
1743
+ * Allow $ in table name prefix or suffix
1744
+
1745
+ ### 1.3.2 / 2011-01-05
1746
+
1747
+ * Enhancements:
1748
+ * If no :host or :port is provided then connect with :database name (do not default :host to localhost)
1749
+ * Database connection pool support for JRuby on Tomcat and JBoss application servers
1750
+ * NLS connection parameters support via environment variables or database.yml
1751
+ * Support for Arel 2.0 and latest Rails master branch
1752
+ * Support for Rails 3.1 prepared statements (implemented in not yet released Rails master branch version)
1753
+ * Eager loading of included association with more than 1000 records (implemented in not yet released Rails master branch version)
1754
+ * Bug fixes:
1755
+ * Foreign keys are added after table definitions in schema dump to ensure correct order of schema statements
1756
+ * Quote NCHAR and NVARCHAR2 type values with N'...'
1757
+ * Numeric username and/or password in database.yml will be automatically converted to string
1758
+
1759
+ ### 1.3.1 / 2010-09-09
1760
+
1761
+ * Enhancements:
1762
+ * Tested with Rails 3.0.0 release
1763
+ * Lexer options for context index creation
1764
+ * Added Bundler for running adapter specs, added RUNNING_TESTS.rdoc with description how to run specs
1765
+ * Connection to database using :host, :port and :database options
1766
+ * Improved loading of adapter in Rails 3 using railtie
1767
+ * Bug fixes:
1768
+ * Fix for custom context index procedure when indexing records with null values
1769
+ * Quote table and column names in write_lobs callback
1770
+ * Fix for incorrect column SQL types when two models use the same table and AR query cache is enabled
1771
+ * Fixes for schema and scructure dump tasks
1772
+ * Fix for handling of zero-length strings in BLOB and CLOB columns
1773
+ * removed String.mb_chars upcase and downcase methods for Ruby 1.9 as Rails 3.0.0 already includes Unicode aware upcase and downcase methods for Ruby 1.9
1774
+ * Fixes for latest ActiveRecord unit tests
1775
+
1776
+ ### 1.3.0 / 2010-06-21
1777
+
1778
+ * Enhancements:
1779
+ * Rails 3.0.0.beta4 and Rails 2.3.x compatible
1780
+ * When used with Rails 3 then works together with Oracle SQL compiler included in Arel gem (http://github.com/rails/arel)
1781
+ * Rails 3: Better support for limit and offset (when possible adds just ROWNUM condition in WHERE clause without using subqueries)
1782
+ * Table and column names are always quoted and in uppercase to avoid the need for checking Oracle reserved words
1783
+ * Full text search index creation (add_context_index and remove_context_index methods in migrations and #contains method in ActiveRecord models)
1784
+ * add_index and remove_index give just warnings on wrong index names (new expected behavior in Rails 2.3.8 and 3.0.0)
1785
+ * :tablespace and :options options for create_table and add_index
1786
+ * Workarounds:
1787
+ * Rails 3: set ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.cache_columns = true in initializer file for all environments
1788
+ (to avoid too many data dictionary queries from Arel)
1789
+ * Rails 2.3: patch several ActiveRecord methods to work correctly with quoted table names in uppercase (see oracle_enhanced_activerecord_patches.rb).
1790
+ These patches are already included in Rails 3.0.0.beta4.
1791
+ * Bug fixes:
1792
+ * Fixes for schema purge (drop correctly materialized views)
1793
+ * Fixes for schema dump and structure dump (use correct statement separator)
1794
+ * Only use Oracle specific schema dump for Oracle connections
1795
+
1796
+ ### 1.2.4 / 2010-02-23
1797
+
1798
+ * Enhancements:
1799
+ * rake db:test:purge will drop all schema objects from test schema (including views, synonyms, packages, functions, procedures) -
1800
+ they should be always reloaded before tests run if necessary
1801
+ * added views, synonyms, packages, functions, procedures, indexes, triggers, types, primary, unique and foreign key constraints to structure dump
1802
+ * added :temporary option for create_table to create temporary tables
1803
+ * added :tablespace option for add_index
1804
+ * support function based indexes in schema dump
1805
+ * support JNDI database connections in JRuby
1806
+ * check ruby-oci8 minimum version 2.0.3
1807
+ * added savepoints support (nested ActiveRecord transactions)
1808
+ * Bug fixes:
1809
+ * typecast returned BigDecimal integer values to Fixnum or Bignum
1810
+ (to avoid issues with _before_type_cast values for id attributes because _before_type_cast is used in form helpers)
1811
+ * clear table columns cache after columns definition change in migrations
1812
+
1813
+ ### 1.2.3 / 2009-12-09
1814
+
1815
+ * Enhancements
1816
+ * support fractional seconds in TIMESTAMP values
1817
+ * support for ActiveRecord 2.3.5
1818
+ * use ENV['TZ'] to set database session time zone
1819
+ (as a result DATE and TIMESTAMP values are retrieved with correct time zone)
1820
+ * added cache_columns adapter option
1821
+ * added current_user adapter method
1822
+ * added set_integer_columns and set_string_columns ActiveRecord model class methods
1823
+ * Bug fixes:
1824
+ * do not raise exception if ENV['PATH'] is nil
1825
+ * do not add change_table behavior for ActiveRecord 2.0 (to avoid exception during loading)
1826
+ * move foreign key definitions after definition of all tables in schema.rb
1827
+ (to avoid definition of foreign keys before all tables are created)
1828
+ * changed timestamp format mask to use ':' before fractional seconds
1829
+ (workaround to avoid table detection in tables_in_string method in ActiveRecord associations.rb file)
1830
+ * fixed custom create/update/delete methods with ActiveRecord 2.3+ and timestamps
1831
+ * do not call oracle_enhanced specific schema dump methods when using other database adapters
1832
+
1833
+ ### 1.2.2 / 2009-09-28
1834
+
1835
+ * Enhancements
1836
+ * improved RDoc documentation of public methods
1837
+ * structure dump optionally (database.yml environment has db_stored_code: yes) extracts
1838
+ packages, procedures, functions, views, triggers and synonyms
1839
+ * automatically generated too long index names are shortened down to 30 characters
1840
+ * create tables with primary key triggers
1841
+ * use 'set_sequence_name :autogenerated' for inserting into legacy tables with trigger populated primary keys
1842
+ * access to tables over database link (need to define local synonym to remote table and use local synonym in set_table_name)
1843
+ * [JRuby] support JDBC connection using TNS_ADMIN environment variable and TNS database alias
1844
+ * changed cursor_sharing option default from 'similar' to 'force'
1845
+ * optional dbms_output logging to ActiveRecord log file (requires ruby-plsql gem)
1846
+ * use add_foreign_key and remove_foreign_key to define foreign key constraints
1847
+ (the same syntax as in http://github.com/matthuhiggins/foreigner and similar
1848
+ to http://github.com/eyestreet/active_record_oracle_extensions)
1849
+ * raise RecordNotUnique and InvalidForeignKey exceptions if caused by corresponding ORA errors
1850
+ (these new exceptions are supported just by current ActiveRecord master branch)
1851
+ * implemented disable_referential_integrity
1852
+ (enables safe loading of fixtures in schema with foreign key constraints)
1853
+ * use add_synonym and remove_synonym to define database synonyms
1854
+ * add_foreign_key and add_synonym are also exported to schema.rb
1855
+ * Bug fixes:
1856
+ * [JRuby] do not raise LoadError if ojdbc14.jar cannot be required (rely on application server to add it to class path)
1857
+ * [JRuby] 'execute' can be used to create triggers with :NEW reference
1858
+ * support create_table without a block
1859
+ * support create_table with Symbol table name
1860
+ * use ActiveRecord functionality to do time zone conversion
1861
+ * rake tasks such as db:test:clone are redefined only if oracle_enhanced is current adapter in use
1862
+ * VARCHAR2 and CHAR column sizes are defined in characters and not in bytes (expected behavior from ActiveRecord)
1863
+ * set_date_columns, set_datetime_columns, ignore_table_columns will work after reestablishing connection
1864
+ * ignore :limit option for :text and :binary columns in migrations
1865
+ * patches for ActiveRecord schema dumper to remove table prefixes and suffixes from schema.rb
1866
+
1867
+ ### 1.2.1 / 2009-06-07
1868
+
1869
+ * Enhancements
1870
+ * caching of table indexes query which makes schema dump much faster
1871
+ * Bug fixes:
1872
+ * return Date (and not DateTime) values for :date column value before year 1970
1873
+ * fixed after_create/update/destroy callbacks with plsql custom methods
1874
+ * fixed creation of large integers in JRuby
1875
+ * Made test tasks respect RAILS_ENV
1876
+ * fixed support for composite primary keys for tables with LOBs
1877
+
1878
+ ### 1.2.0 / 2009-03-22
1879
+
1880
+ * Enhancements
1881
+ * support for JRuby and JDBC
1882
+ * support for Ruby 1.9.1 and ruby-oci8 2.0
1883
+ * support for Rails 2.3
1884
+ * quoting of Oracle reserved words in table names and column names
1885
+ * emulation of OracleAdapter (for ActiveRecord unit tests)
1886
+ * Bug fixes:
1887
+ * several bug fixes that were identified during running of ActiveRecord unit tests
1888
+
1889
+ ### 1.1.9 / 2009-01-02
1890
+
1891
+ * Enhancements
1892
+ * Added support for table and column comments in migrations
1893
+ * Added support for specifying sequence start values
1894
+ * Added :privilege option (e.g. :SYSDBA) to ActiveRecord::Base.establish_connection
1895
+ * Bug fixes:
1896
+ * Do not mark empty decimals, strings and texts (stored as NULL in database) as changed when reassigning them (starting from Rails 2.1)
1897
+ * Create booleans as VARCHAR2(1) columns if emulate_booleans_from_strings is true
1898
+
1899
+ ### 1.1.8 / 2008-10-10
1900
+
1901
+ * Bug fixes:
1902
+ * Fixed storing of serialized LOB columns
1903
+ * Prevent from SQL injection in :limit and :offset
1904
+ * Order by LOB columns (by replacing column with function which returns first 100 characters of LOB)
1905
+ * Sequence creation for tables with non-default primary key in create_table block
1906
+ * Do count distinct workaround only when composite_primary_keys gem is used
1907
+ (otherwise count distinct did not work with ActiveRecord 2.1.1)
1908
+ * Fixed rake db:test:clone_structure task
1909
+ (see http://rsim.lighthouseapp.com/projects/11468/tickets/11-rake-dbtestclone_structure-fails-in-117)
1910
+ * Fixed bug when ActiveRecord::Base.allow_concurrency = true
1911
+ (see http://dev.rubyonrails.org/ticket/11134)
1912
+
1913
+ ### 1.1.7 / 2008-08-20
1914
+
1915
+ * Bug fixes:
1916
+ * Fixed that adapter works without ruby-plsql gem (in this case just custom create/update/delete methods are not available)
1917
+
1918
+ ### 1.1.6 / 2008-08-19
1919
+
1920
+ * Enhancements:
1921
+ * Added support for set_date_columns and set_datetime_columns
1922
+ * Added support for set_boolean_columns
1923
+ * Added support for schema prefix in set_table_name (removed table name quoting)
1924
+ * Added support for NVARCHAR2 column type
1925
+ * Bug fixes:
1926
+ * Do not call write_lobs callback when custom create or update methods are defined
1927
+
1928
+ ### 1.1.5 / 2008-07-27
1929
+
1930
+ * Bug fixes:
1931
+ * Fixed that write_lobs callback works with partial_updates enabled (added additional record lock before writing BLOB data to database)
1932
+ * Enhancements:
1933
+ * Changed SQL SELECT in indexes method so that it will execute faster on some large data dictionaries
1934
+ * Support for other date and time formats when assigning string to :date or :datetime column
1935
+
1936
+ ### 1.1.4 / 2008-07-14
1937
+
1938
+ * Enhancements:
1939
+ * Date/Time quoting changes to support composite_primary_keys
1940
+ * Added additional methods that are used by composite_primary_keys
1941
+
1942
+ ### 1.1.3 / 2008-07-10
1943
+
1944
+ * Enhancements:
1945
+ * Added support for custom create, update and delete methods when working with legacy databases where
1946
+ PL/SQL API should be used for create, update and delete operations
1947
+
1948
+ ### 1.1.2 / 2008-07-08
1949
+
1950
+ * Bug fixes:
1951
+ * Fixed after_save callback addition for session store in ActiveRecord version 2.0.2
1952
+ * Changed date column name recognition - now should match regex /(^|_)date(_|$)/i
1953
+ (previously "updated_at" was recognized as :date column and not as :datetime)
1954
+
1955
+ ### 1.1.1 / 2008-06-28
1956
+
1957
+ * Enhancements:
1958
+ * Added ignore_table_columns option
1959
+ * Added support for TIMESTAMP columns (without fractional seconds)
1960
+ * NLS_DATE_FORMAT and NLS_TIMESTAMP_FORMAT independent DATE and TIMESTAMP columns support
1961
+ * Bug fixes:
1962
+ * Checks if CGI::Session::ActiveRecordStore::Session does not have enhanced_write_lobs callback before adding it
1963
+ (Rails 2.0 does not add this callback, Rails 2.1 does)
1964
+
1965
+ ### 1.1.0 / 2008-05-05
1966
+
1967
+ * Forked from original activerecord-oracle-adapter-1.0.0.9216
1968
+ * Renamed oracle adapter to oracle_enhanced adapter
1969
+ * Added "enhanced" to method and class definitions so that oracle_enhanced and original oracle adapter
1970
+ could be used simultaneously
1971
+ * Added Rails rake tasks as a copy from original oracle tasks
1972
+ * Enhancements:
1973
+ * Improved performance of schema dump methods when used on large data dictionaries
1974
+ * Added LOB writing callback for sessions stored in database
1975
+ * Added emulate_dates_by_column_name option
1976
+ * Added emulate_integers_by_column_name option
1977
+ * Added emulate_booleans_from_strings option