activerecord-sqlserver-adapter 6.0.2 → 6.1.2.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +33 -56
- data/README.md +28 -11
- data/VERSION +1 -1
- data/activerecord-sqlserver-adapter.gemspec +1 -1
- data/lib/active_record/connection_adapters/sqlserver/core_ext/attribute_methods.rb +2 -0
- data/lib/active_record/connection_adapters/sqlserver/core_ext/calculations.rb +5 -10
- data/lib/active_record/connection_adapters/sqlserver/core_ext/explain.rb +9 -2
- data/lib/active_record/connection_adapters/sqlserver/core_ext/finder_methods.rb +2 -0
- data/lib/active_record/connection_adapters/sqlserver/core_ext/preloader.rb +2 -0
- data/lib/active_record/connection_adapters/sqlserver/database_limits.rb +0 -4
- data/lib/active_record/connection_adapters/sqlserver/database_statements.rb +27 -15
- data/lib/active_record/connection_adapters/sqlserver/quoting.rb +4 -3
- data/lib/active_record/connection_adapters/sqlserver/schema_creation.rb +22 -1
- data/lib/active_record/connection_adapters/sqlserver/schema_dumper.rb +9 -3
- data/lib/active_record/connection_adapters/sqlserver/schema_statements.rb +8 -6
- data/lib/active_record/connection_adapters/sqlserver/sql_type_metadata.rb +36 -7
- data/lib/active_record/connection_adapters/sqlserver/table_definition.rb +0 -1
- data/lib/active_record/connection_adapters/sqlserver/transaction.rb +2 -2
- data/lib/active_record/connection_adapters/sqlserver/type/date.rb +2 -1
- data/lib/active_record/connection_adapters/sqlserver/utils.rb +1 -1
- data/lib/active_record/connection_adapters/sqlserver_adapter.rb +100 -70
- data/lib/active_record/connection_adapters/sqlserver_column.rb +75 -19
- data/lib/active_record/sqlserver_base.rb +9 -15
- data/lib/active_record/tasks/sqlserver_database_tasks.rb +17 -14
- data/lib/arel/visitors/sqlserver.rb +74 -29
- data/test/cases/adapter_test_sqlserver.rb +27 -17
- data/test/cases/change_column_collation_test_sqlserver.rb +33 -0
- data/test/cases/coerced_tests.rb +544 -77
- data/test/cases/column_test_sqlserver.rb +4 -0
- data/test/cases/disconnected_test_sqlserver.rb +39 -0
- data/test/cases/execute_procedure_test_sqlserver.rb +9 -0
- data/test/cases/fetch_test_sqlserver.rb +18 -0
- data/test/cases/in_clause_test_sqlserver.rb +27 -0
- data/test/cases/migration_test_sqlserver.rb +7 -0
- data/test/cases/order_test_sqlserver.rb +7 -0
- data/test/cases/primary_keys_test_sqlserver.rb +103 -0
- data/test/cases/rake_test_sqlserver.rb +38 -2
- data/test/cases/schema_dumper_test_sqlserver.rb +9 -0
- data/test/migrations/create_clients_and_change_column_collation.rb +19 -0
- data/test/models/sqlserver/composite_pk.rb +9 -0
- data/test/models/sqlserver/sst_string_collation.rb +3 -0
- data/test/schema/sqlserver_specific_schema.rb +25 -0
- data/test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic.dump +0 -0
- data/test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic_associations.dump +0 -0
- data/test/support/sql_counter_sqlserver.rb +14 -12
- metadata +23 -8
- data/lib/active_record/connection_adapters/sqlserver/core_ext/query_methods.rb +0 -28
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: activerecord-sqlserver-adapter
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.
|
|
4
|
+
version: 6.1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ken Collins
|
|
@@ -14,7 +14,7 @@ authors:
|
|
|
14
14
|
autorequire:
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
|
-
date: 2021-
|
|
17
|
+
date: 2021-09-06 00:00:00.000000000 Z
|
|
18
18
|
dependencies:
|
|
19
19
|
- !ruby/object:Gem::Dependency
|
|
20
20
|
name: activerecord
|
|
@@ -22,14 +22,14 @@ dependencies:
|
|
|
22
22
|
requirements:
|
|
23
23
|
- - "~>"
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: 6.
|
|
25
|
+
version: 6.1.0
|
|
26
26
|
type: :runtime
|
|
27
27
|
prerelease: false
|
|
28
28
|
version_requirements: !ruby/object:Gem::Requirement
|
|
29
29
|
requirements:
|
|
30
30
|
- - "~>"
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: 6.
|
|
32
|
+
version: 6.1.0
|
|
33
33
|
- !ruby/object:Gem::Dependency
|
|
34
34
|
name: tiny_tds
|
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -78,7 +78,6 @@ files:
|
|
|
78
78
|
- lib/active_record/connection_adapters/sqlserver/core_ext/explain_subscriber.rb
|
|
79
79
|
- lib/active_record/connection_adapters/sqlserver/core_ext/finder_methods.rb
|
|
80
80
|
- lib/active_record/connection_adapters/sqlserver/core_ext/preloader.rb
|
|
81
|
-
- lib/active_record/connection_adapters/sqlserver/core_ext/query_methods.rb
|
|
82
81
|
- lib/active_record/connection_adapters/sqlserver/database_limits.rb
|
|
83
82
|
- lib/active_record/connection_adapters/sqlserver/database_statements.rb
|
|
84
83
|
- lib/active_record/connection_adapters/sqlserver/database_tasks.rb
|
|
@@ -144,10 +143,12 @@ files:
|
|
|
144
143
|
- test/bin/install-openssl.sh
|
|
145
144
|
- test/bin/setup.sh
|
|
146
145
|
- test/cases/adapter_test_sqlserver.rb
|
|
146
|
+
- test/cases/change_column_collation_test_sqlserver.rb
|
|
147
147
|
- test/cases/change_column_null_test_sqlserver.rb
|
|
148
148
|
- test/cases/coerced_tests.rb
|
|
149
149
|
- test/cases/column_test_sqlserver.rb
|
|
150
150
|
- test/cases/connection_test_sqlserver.rb
|
|
151
|
+
- test/cases/disconnected_test_sqlserver.rb
|
|
151
152
|
- test/cases/execute_procedure_test_sqlserver.rb
|
|
152
153
|
- test/cases/fetch_test_sqlserver.rb
|
|
153
154
|
- test/cases/fully_qualified_identifier_test_sqlserver.rb
|
|
@@ -160,6 +161,7 @@ files:
|
|
|
160
161
|
- test/cases/optimizer_hints_test_sqlserver.rb
|
|
161
162
|
- test/cases/order_test_sqlserver.rb
|
|
162
163
|
- test/cases/pessimistic_locking_test_sqlserver.rb
|
|
164
|
+
- test/cases/primary_keys_test_sqlserver.rb
|
|
163
165
|
- test/cases/rake_test_sqlserver.rb
|
|
164
166
|
- test/cases/schema_dumper_test_sqlserver.rb
|
|
165
167
|
- test/cases/schema_test_sqlserver.rb
|
|
@@ -173,9 +175,11 @@ files:
|
|
|
173
175
|
- test/config.yml
|
|
174
176
|
- test/debug.rb
|
|
175
177
|
- test/fixtures/1px.gif
|
|
178
|
+
- test/migrations/create_clients_and_change_column_collation.rb
|
|
176
179
|
- test/migrations/create_clients_and_change_column_null.rb
|
|
177
180
|
- test/migrations/transaction_table/1_table_will_never_be_created.rb
|
|
178
181
|
- test/models/sqlserver/booking.rb
|
|
182
|
+
- test/models/sqlserver/composite_pk.rb
|
|
179
183
|
- test/models/sqlserver/customers_view.rb
|
|
180
184
|
- test/models/sqlserver/datatype.rb
|
|
181
185
|
- test/models/sqlserver/datatype_migration.rb
|
|
@@ -191,6 +195,7 @@ files:
|
|
|
191
195
|
- test/models/sqlserver/quoted_view_1.rb
|
|
192
196
|
- test/models/sqlserver/quoted_view_2.rb
|
|
193
197
|
- test/models/sqlserver/sst_memory.rb
|
|
198
|
+
- test/models/sqlserver/sst_string_collation.rb
|
|
194
199
|
- test/models/sqlserver/string_default.rb
|
|
195
200
|
- test/models/sqlserver/string_defaults_big_view.rb
|
|
196
201
|
- test/models/sqlserver/string_defaults_view.rb
|
|
@@ -207,6 +212,8 @@ files:
|
|
|
207
212
|
- test/support/connection_reflection.rb
|
|
208
213
|
- test/support/core_ext/query_cache.rb
|
|
209
214
|
- test/support/load_schema_sqlserver.rb
|
|
215
|
+
- test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic.dump
|
|
216
|
+
- test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic_associations.dump
|
|
210
217
|
- test/support/minitest_sqlserver.rb
|
|
211
218
|
- test/support/paths_sqlserver.rb
|
|
212
219
|
- test/support/rake_helpers.rb
|
|
@@ -217,8 +224,8 @@ licenses:
|
|
|
217
224
|
- MIT
|
|
218
225
|
metadata:
|
|
219
226
|
bug_tracker_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/issues
|
|
220
|
-
changelog_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/blob/v6.
|
|
221
|
-
source_code_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/tree/v6.
|
|
227
|
+
changelog_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/blob/v6.1.2.0/CHANGELOG.md
|
|
228
|
+
source_code_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/tree/v6.1.2.0
|
|
222
229
|
post_install_message:
|
|
223
230
|
rdoc_options: []
|
|
224
231
|
require_paths:
|
|
@@ -234,7 +241,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
234
241
|
- !ruby/object:Gem::Version
|
|
235
242
|
version: '0'
|
|
236
243
|
requirements: []
|
|
237
|
-
rubygems_version: 3.
|
|
244
|
+
rubygems_version: 3.2.22
|
|
238
245
|
signing_key:
|
|
239
246
|
specification_version: 4
|
|
240
247
|
summary: ActiveRecord SQL Server Adapter.
|
|
@@ -245,10 +252,12 @@ test_files:
|
|
|
245
252
|
- test/bin/install-openssl.sh
|
|
246
253
|
- test/bin/setup.sh
|
|
247
254
|
- test/cases/adapter_test_sqlserver.rb
|
|
255
|
+
- test/cases/change_column_collation_test_sqlserver.rb
|
|
248
256
|
- test/cases/change_column_null_test_sqlserver.rb
|
|
249
257
|
- test/cases/coerced_tests.rb
|
|
250
258
|
- test/cases/column_test_sqlserver.rb
|
|
251
259
|
- test/cases/connection_test_sqlserver.rb
|
|
260
|
+
- test/cases/disconnected_test_sqlserver.rb
|
|
252
261
|
- test/cases/execute_procedure_test_sqlserver.rb
|
|
253
262
|
- test/cases/fetch_test_sqlserver.rb
|
|
254
263
|
- test/cases/fully_qualified_identifier_test_sqlserver.rb
|
|
@@ -261,6 +270,7 @@ test_files:
|
|
|
261
270
|
- test/cases/optimizer_hints_test_sqlserver.rb
|
|
262
271
|
- test/cases/order_test_sqlserver.rb
|
|
263
272
|
- test/cases/pessimistic_locking_test_sqlserver.rb
|
|
273
|
+
- test/cases/primary_keys_test_sqlserver.rb
|
|
264
274
|
- test/cases/rake_test_sqlserver.rb
|
|
265
275
|
- test/cases/schema_dumper_test_sqlserver.rb
|
|
266
276
|
- test/cases/schema_test_sqlserver.rb
|
|
@@ -274,9 +284,11 @@ test_files:
|
|
|
274
284
|
- test/config.yml
|
|
275
285
|
- test/debug.rb
|
|
276
286
|
- test/fixtures/1px.gif
|
|
287
|
+
- test/migrations/create_clients_and_change_column_collation.rb
|
|
277
288
|
- test/migrations/create_clients_and_change_column_null.rb
|
|
278
289
|
- test/migrations/transaction_table/1_table_will_never_be_created.rb
|
|
279
290
|
- test/models/sqlserver/booking.rb
|
|
291
|
+
- test/models/sqlserver/composite_pk.rb
|
|
280
292
|
- test/models/sqlserver/customers_view.rb
|
|
281
293
|
- test/models/sqlserver/datatype.rb
|
|
282
294
|
- test/models/sqlserver/datatype_migration.rb
|
|
@@ -292,6 +304,7 @@ test_files:
|
|
|
292
304
|
- test/models/sqlserver/quoted_view_1.rb
|
|
293
305
|
- test/models/sqlserver/quoted_view_2.rb
|
|
294
306
|
- test/models/sqlserver/sst_memory.rb
|
|
307
|
+
- test/models/sqlserver/sst_string_collation.rb
|
|
295
308
|
- test/models/sqlserver/string_default.rb
|
|
296
309
|
- test/models/sqlserver/string_defaults_big_view.rb
|
|
297
310
|
- test/models/sqlserver/string_defaults_view.rb
|
|
@@ -308,6 +321,8 @@ test_files:
|
|
|
308
321
|
- test/support/connection_reflection.rb
|
|
309
322
|
- test/support/core_ext/query_cache.rb
|
|
310
323
|
- test/support/load_schema_sqlserver.rb
|
|
324
|
+
- test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic.dump
|
|
325
|
+
- test/support/marshal_compatibility_fixtures/SQLServer/rails_6_0_topic_associations.dump
|
|
311
326
|
- test/support/minitest_sqlserver.rb
|
|
312
327
|
- test/support/paths_sqlserver.rb
|
|
313
328
|
- test/support/rake_helpers.rb
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "active_record/relation"
|
|
4
|
-
require "active_record/version"
|
|
5
|
-
|
|
6
|
-
module ActiveRecord
|
|
7
|
-
module ConnectionAdapters
|
|
8
|
-
module SQLServer
|
|
9
|
-
module CoreExt
|
|
10
|
-
module QueryMethods
|
|
11
|
-
private
|
|
12
|
-
|
|
13
|
-
# Copy of original from Rails master.
|
|
14
|
-
# This patch can be removed when adapter supports Rails version greater than 6.0.2.2
|
|
15
|
-
def table_name_matches?(from)
|
|
16
|
-
table_name = Regexp.escape(table.name)
|
|
17
|
-
quoted_table_name = Regexp.escape(connection.quote_table_name(table.name))
|
|
18
|
-
/(?:\A|(?<!FROM)\s)(?:\b#{table_name}\b|#{quoted_table_name})(?!\.)/i.match?(from.to_s)
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
ActiveSupport.on_load(:active_record) do
|
|
27
|
-
ActiveRecord::Relation.include(ActiveRecord::ConnectionAdapters::SQLServer::CoreExt::QueryMethods)
|
|
28
|
-
end
|