activerecord-sqlserver-adapter 6.0.1 → 6.1.1.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/.github/workflows/ci.yml +26 -0
- data/CHANGELOG.md +29 -46
- data/README.md +32 -3
- data/RUNNING_UNIT_TESTS.md +1 -1
- 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 +28 -16
- data/lib/active_record/connection_adapters/sqlserver/quoting.rb +8 -7
- 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 +31 -9
- 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.rb +1 -0
- data/lib/active_record/connection_adapters/sqlserver/type/date.rb +2 -1
- data/lib/active_record/connection_adapters/sqlserver/type/decimal_without_scale.rb +22 -0
- data/lib/active_record/connection_adapters/sqlserver/utils.rb +1 -1
- data/lib/active_record/connection_adapters/sqlserver_adapter.rb +100 -69
- 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 +125 -40
- data/test/cases/adapter_test_sqlserver.rb +50 -16
- data/test/cases/change_column_collation_test_sqlserver.rb +33 -0
- data/test/cases/coerced_tests.rb +611 -78
- data/test/cases/column_test_sqlserver.rb +9 -2
- 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/lateral_test_sqlserver.rb +35 -0
- data/test/cases/migration_test_sqlserver.rb +51 -0
- data/test/cases/optimizer_hints_test_sqlserver.rb +72 -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 +14 -3
- 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 +29 -9
- data/.travis.yml +0 -23
- data/lib/active_record/connection_adapters/sqlserver/core_ext/query_methods.rb +0 -28
@@ -16,7 +16,7 @@ class SchemaDumperTestSQLServer < ActiveRecord::TestCase
|
|
16
16
|
assert_line :tinyint, type: "integer", limit: 1, precision: nil, scale: nil, default: 42
|
17
17
|
assert_line :bit, type: "boolean", limit: nil, precision: nil, scale: nil, default: true
|
18
18
|
assert_line :decimal_9_2, type: "decimal", limit: nil, precision: 9, scale: 2, default: 12345.01
|
19
|
-
assert_line :numeric_18_0, type: "decimal", limit: nil, precision: 18, scale:
|
19
|
+
assert_line :numeric_18_0, type: "decimal", limit: nil, precision: 18, scale: nil, default: 191
|
20
20
|
assert_line :numeric_36_2, type: "decimal", limit: nil, precision: 36, scale: 2, default: 12345678901234567890.01
|
21
21
|
assert_line :money, type: "money", limit: nil, precision: 19, scale: 4, default: 4.2
|
22
22
|
assert_line :smallmoney, type: "smallmoney", limit: nil, precision: 10, scale: 4, default: 4.2
|
@@ -75,7 +75,7 @@ class SchemaDumperTestSQLServer < ActiveRecord::TestCase
|
|
75
75
|
assert_line :integer_col, type: "integer", limit: nil, precision: nil, scale: nil, default: nil
|
76
76
|
assert_line :bigint_col, type: "bigint", limit: nil, precision: nil, scale: nil, default: nil
|
77
77
|
assert_line :boolean_col, type: "boolean", limit: nil, precision: nil, scale: nil, default: nil
|
78
|
-
assert_line :decimal_col, type: "decimal", limit: nil, precision: 18, scale:
|
78
|
+
assert_line :decimal_col, type: "decimal", limit: nil, precision: 18, scale: nil, default: nil
|
79
79
|
assert_line :float_col, type: "float", limit: nil, precision: nil, scale: nil, default: nil
|
80
80
|
assert_line :string_col, type: "string", limit: nil, precision: nil, scale: nil, default: nil
|
81
81
|
assert_line :text_col, type: "text", limit: nil, precision: nil, scale: nil, default: nil
|
@@ -119,6 +119,15 @@ class SchemaDumperTestSQLServer < ActiveRecord::TestCase
|
|
119
119
|
assert_line :json_col, type: "text", limit: nil, precision: nil, scale: nil, default: nil
|
120
120
|
end
|
121
121
|
|
122
|
+
it "dump column collation" do
|
123
|
+
generate_schema_for_table('sst_string_collation')
|
124
|
+
|
125
|
+
assert_line :string_without_collation, type: "string", limit: nil, default: nil, collation: nil
|
126
|
+
assert_line :string_default_collation, type: "varchar", limit: nil, default: nil, collation: nil
|
127
|
+
assert_line :string_with_collation, type: "varchar", limit: nil, default: nil, collation: "SQL_Latin1_General_CP1_CS_AS"
|
128
|
+
assert_line :varchar_with_collation, type: "varchar", limit: nil, default: nil, collation: "SQL_Latin1_General_CP1_CS_AS"
|
129
|
+
end
|
130
|
+
|
122
131
|
# Special Cases
|
123
132
|
|
124
133
|
it "honor nonstandard primary keys" do
|
@@ -166,13 +175,15 @@ class SchemaDumperTestSQLServer < ActiveRecord::TestCase
|
|
166
175
|
|
167
176
|
def assert_line(column_name, options = {})
|
168
177
|
line = line(column_name)
|
169
|
-
assert line, "
|
178
|
+
assert line, "Could not find line with column name: #{column_name.inspect} in schema:\n#{schema}"
|
179
|
+
|
170
180
|
[:type, :limit, :precision, :scale, :collation, :default].each do |key|
|
171
181
|
next unless options.key?(key)
|
172
182
|
|
173
183
|
actual = key == :type ? line.send(:type_method) : line.send(key)
|
174
184
|
expected = options[key]
|
175
185
|
message = "#{key.to_s.titleize} of #{expected.inspect} not found in:\n#{line}"
|
186
|
+
|
176
187
|
if expected.nil?
|
177
188
|
_(actual).must_be_nil message
|
178
189
|
elsif expected.is_a?(Array)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class CreateClientsAndChangeColumnCollation < ActiveRecord::Migration[5.2]
|
4
|
+
def up
|
5
|
+
create_table :clients do |t|
|
6
|
+
t.string :name
|
7
|
+
t.string :code, collation: :SQL_Latin1_General_CP1_CS_AS
|
8
|
+
|
9
|
+
t.timestamps
|
10
|
+
end
|
11
|
+
|
12
|
+
change_column :clients, :name, :string, collation: 'SQL_Latin1_General_CP1_CS_AS'
|
13
|
+
change_column :clients, :code, :string, collation: 'SQL_Latin1_General_CP1_CI_AS'
|
14
|
+
end
|
15
|
+
|
16
|
+
def down
|
17
|
+
drop_table :clients
|
18
|
+
end
|
19
|
+
end
|
@@ -95,6 +95,13 @@ ActiveRecord::Schema.define do
|
|
95
95
|
t.column :string_with_multiline_default, :string, default: "Some long default with a\nnew line."
|
96
96
|
end
|
97
97
|
|
98
|
+
create_table :sst_string_collation, collation: :SQL_Latin1_General_CP1_CI_AS, force: true do |t|
|
99
|
+
t.string :string_without_collation
|
100
|
+
t.varchar :string_default_collation, collation: :SQL_Latin1_General_CP1_CI_AS
|
101
|
+
t.varchar :string_with_collation, collation: :SQL_Latin1_General_CP1_CS_AS
|
102
|
+
t.varchar :varchar_with_collation, collation: :SQL_Latin1_General_CP1_CS_AS
|
103
|
+
end
|
104
|
+
|
98
105
|
create_table :sst_edge_schemas, force: true do |t|
|
99
106
|
t.string :description
|
100
107
|
t.column "crazy]]quote", :string
|
@@ -287,4 +294,22 @@ ActiveRecord::Schema.define do
|
|
287
294
|
CONSTRAINT PK_UNIQUE_KEY PRIMARY KEY (id)
|
288
295
|
);
|
289
296
|
SQLSERVERUNIQUEKEYS
|
297
|
+
|
298
|
+
execute "IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'sst_composite_without_identity') DROP TABLE sst_composite_without_identity"
|
299
|
+
execute <<-COMPOSITE_WITHOUT_IDENTITY
|
300
|
+
CREATE TABLE sst_composite_without_identity (
|
301
|
+
pk_col_one int NOT NULL,
|
302
|
+
pk_col_two int NOT NULL,
|
303
|
+
CONSTRAINT PK_sst_composite_without_identity PRIMARY KEY (pk_col_one, pk_col_two)
|
304
|
+
);
|
305
|
+
COMPOSITE_WITHOUT_IDENTITY
|
306
|
+
|
307
|
+
execute "IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'sst_composite_with_identity') DROP TABLE sst_composite_with_identity"
|
308
|
+
execute <<-COMPOSITE_WITH_IDENTITY
|
309
|
+
CREATE TABLE sst_composite_with_identity (
|
310
|
+
pk_col_one int IDENTITY NOT NULL,
|
311
|
+
pk_col_two int NOT NULL,
|
312
|
+
CONSTRAINT PK_sst_composite_with_identity PRIMARY KEY (pk_col_one, pk_col_two)
|
313
|
+
);
|
314
|
+
COMPOSITE_WITH_IDENTITY
|
290
315
|
end
|
Binary file
|
@@ -11,17 +11,19 @@ module ARTest
|
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
14
|
+
# TODO: Delete the code below after all Rails 6.1 tests passing.
|
15
|
+
#
|
16
|
+
# ignored_sql = [
|
17
|
+
# /INFORMATION_SCHEMA\.(TABLES|VIEWS|COLUMNS|KEY_COLUMN_USAGE)/im,
|
18
|
+
# /sys.columns/i,
|
19
|
+
# /SELECT @@version/,
|
20
|
+
# /SELECT @@TRANCOUNT/,
|
21
|
+
# /(BEGIN|COMMIT|ROLLBACK|SAVE) TRANSACTION/,
|
22
|
+
# /SELECT CAST\(.* AS .*\) AS value/,
|
23
|
+
# /SELECT DATABASEPROPERTYEX/im
|
24
|
+
# ]
|
25
|
+
#
|
26
|
+
# sqlcounter = ObjectSpace.each_object(ActiveRecord::SQLCounter).to_a.first
|
27
|
+
# sqlcounter.instance_variable_set :@ignore, Regexp.union(ignored_sql.push(sqlcounter.ignore))
|
26
28
|
end
|
27
29
|
end
|
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.1.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-08-11 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
|
@@ -54,9 +54,9 @@ extra_rdoc_files: []
|
|
54
54
|
files:
|
55
55
|
- ".editorconfig"
|
56
56
|
- ".github/issue_template.md"
|
57
|
+
- ".github/workflows/ci.yml"
|
57
58
|
- ".gitignore"
|
58
59
|
- ".rubocop.yml"
|
59
|
-
- ".travis.yml"
|
60
60
|
- CHANGELOG.md
|
61
61
|
- CODE_OF_CONDUCT.md
|
62
62
|
- Dockerfile.ci
|
@@ -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
|
@@ -104,6 +103,7 @@ files:
|
|
104
103
|
- lib/active_record/connection_adapters/sqlserver/type/datetime2.rb
|
105
104
|
- lib/active_record/connection_adapters/sqlserver/type/datetimeoffset.rb
|
106
105
|
- lib/active_record/connection_adapters/sqlserver/type/decimal.rb
|
106
|
+
- lib/active_record/connection_adapters/sqlserver/type/decimal_without_scale.rb
|
107
107
|
- lib/active_record/connection_adapters/sqlserver/type/float.rb
|
108
108
|
- lib/active_record/connection_adapters/sqlserver/type/integer.rb
|
109
109
|
- lib/active_record/connection_adapters/sqlserver/type/json.rb
|
@@ -143,10 +143,12 @@ files:
|
|
143
143
|
- test/bin/install-openssl.sh
|
144
144
|
- test/bin/setup.sh
|
145
145
|
- test/cases/adapter_test_sqlserver.rb
|
146
|
+
- test/cases/change_column_collation_test_sqlserver.rb
|
146
147
|
- test/cases/change_column_null_test_sqlserver.rb
|
147
148
|
- test/cases/coerced_tests.rb
|
148
149
|
- test/cases/column_test_sqlserver.rb
|
149
150
|
- test/cases/connection_test_sqlserver.rb
|
151
|
+
- test/cases/disconnected_test_sqlserver.rb
|
150
152
|
- test/cases/execute_procedure_test_sqlserver.rb
|
151
153
|
- test/cases/fetch_test_sqlserver.rb
|
152
154
|
- test/cases/fully_qualified_identifier_test_sqlserver.rb
|
@@ -154,9 +156,12 @@ files:
|
|
154
156
|
- test/cases/in_clause_test_sqlserver.rb
|
155
157
|
- test/cases/index_test_sqlserver.rb
|
156
158
|
- test/cases/json_test_sqlserver.rb
|
159
|
+
- test/cases/lateral_test_sqlserver.rb
|
157
160
|
- test/cases/migration_test_sqlserver.rb
|
161
|
+
- test/cases/optimizer_hints_test_sqlserver.rb
|
158
162
|
- test/cases/order_test_sqlserver.rb
|
159
163
|
- test/cases/pessimistic_locking_test_sqlserver.rb
|
164
|
+
- test/cases/primary_keys_test_sqlserver.rb
|
160
165
|
- test/cases/rake_test_sqlserver.rb
|
161
166
|
- test/cases/schema_dumper_test_sqlserver.rb
|
162
167
|
- test/cases/schema_test_sqlserver.rb
|
@@ -170,9 +175,11 @@ files:
|
|
170
175
|
- test/config.yml
|
171
176
|
- test/debug.rb
|
172
177
|
- test/fixtures/1px.gif
|
178
|
+
- test/migrations/create_clients_and_change_column_collation.rb
|
173
179
|
- test/migrations/create_clients_and_change_column_null.rb
|
174
180
|
- test/migrations/transaction_table/1_table_will_never_be_created.rb
|
175
181
|
- test/models/sqlserver/booking.rb
|
182
|
+
- test/models/sqlserver/composite_pk.rb
|
176
183
|
- test/models/sqlserver/customers_view.rb
|
177
184
|
- test/models/sqlserver/datatype.rb
|
178
185
|
- test/models/sqlserver/datatype_migration.rb
|
@@ -188,6 +195,7 @@ files:
|
|
188
195
|
- test/models/sqlserver/quoted_view_1.rb
|
189
196
|
- test/models/sqlserver/quoted_view_2.rb
|
190
197
|
- test/models/sqlserver/sst_memory.rb
|
198
|
+
- test/models/sqlserver/sst_string_collation.rb
|
191
199
|
- test/models/sqlserver/string_default.rb
|
192
200
|
- test/models/sqlserver/string_defaults_big_view.rb
|
193
201
|
- test/models/sqlserver/string_defaults_view.rb
|
@@ -204,6 +212,8 @@ files:
|
|
204
212
|
- test/support/connection_reflection.rb
|
205
213
|
- test/support/core_ext/query_cache.rb
|
206
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
|
207
217
|
- test/support/minitest_sqlserver.rb
|
208
218
|
- test/support/paths_sqlserver.rb
|
209
219
|
- test/support/rake_helpers.rb
|
@@ -214,8 +224,8 @@ licenses:
|
|
214
224
|
- MIT
|
215
225
|
metadata:
|
216
226
|
bug_tracker_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/issues
|
217
|
-
changelog_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/blob/v6.
|
218
|
-
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.1.0/CHANGELOG.md
|
228
|
+
source_code_uri: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/tree/v6.1.1.0
|
219
229
|
post_install_message:
|
220
230
|
rdoc_options: []
|
221
231
|
require_paths:
|
@@ -231,7 +241,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
231
241
|
- !ruby/object:Gem::Version
|
232
242
|
version: '0'
|
233
243
|
requirements: []
|
234
|
-
rubygems_version: 3.
|
244
|
+
rubygems_version: 3.2.22
|
235
245
|
signing_key:
|
236
246
|
specification_version: 4
|
237
247
|
summary: ActiveRecord SQL Server Adapter.
|
@@ -242,10 +252,12 @@ test_files:
|
|
242
252
|
- test/bin/install-openssl.sh
|
243
253
|
- test/bin/setup.sh
|
244
254
|
- test/cases/adapter_test_sqlserver.rb
|
255
|
+
- test/cases/change_column_collation_test_sqlserver.rb
|
245
256
|
- test/cases/change_column_null_test_sqlserver.rb
|
246
257
|
- test/cases/coerced_tests.rb
|
247
258
|
- test/cases/column_test_sqlserver.rb
|
248
259
|
- test/cases/connection_test_sqlserver.rb
|
260
|
+
- test/cases/disconnected_test_sqlserver.rb
|
249
261
|
- test/cases/execute_procedure_test_sqlserver.rb
|
250
262
|
- test/cases/fetch_test_sqlserver.rb
|
251
263
|
- test/cases/fully_qualified_identifier_test_sqlserver.rb
|
@@ -253,9 +265,12 @@ test_files:
|
|
253
265
|
- test/cases/in_clause_test_sqlserver.rb
|
254
266
|
- test/cases/index_test_sqlserver.rb
|
255
267
|
- test/cases/json_test_sqlserver.rb
|
268
|
+
- test/cases/lateral_test_sqlserver.rb
|
256
269
|
- test/cases/migration_test_sqlserver.rb
|
270
|
+
- test/cases/optimizer_hints_test_sqlserver.rb
|
257
271
|
- test/cases/order_test_sqlserver.rb
|
258
272
|
- test/cases/pessimistic_locking_test_sqlserver.rb
|
273
|
+
- test/cases/primary_keys_test_sqlserver.rb
|
259
274
|
- test/cases/rake_test_sqlserver.rb
|
260
275
|
- test/cases/schema_dumper_test_sqlserver.rb
|
261
276
|
- test/cases/schema_test_sqlserver.rb
|
@@ -269,9 +284,11 @@ test_files:
|
|
269
284
|
- test/config.yml
|
270
285
|
- test/debug.rb
|
271
286
|
- test/fixtures/1px.gif
|
287
|
+
- test/migrations/create_clients_and_change_column_collation.rb
|
272
288
|
- test/migrations/create_clients_and_change_column_null.rb
|
273
289
|
- test/migrations/transaction_table/1_table_will_never_be_created.rb
|
274
290
|
- test/models/sqlserver/booking.rb
|
291
|
+
- test/models/sqlserver/composite_pk.rb
|
275
292
|
- test/models/sqlserver/customers_view.rb
|
276
293
|
- test/models/sqlserver/datatype.rb
|
277
294
|
- test/models/sqlserver/datatype_migration.rb
|
@@ -287,6 +304,7 @@ test_files:
|
|
287
304
|
- test/models/sqlserver/quoted_view_1.rb
|
288
305
|
- test/models/sqlserver/quoted_view_2.rb
|
289
306
|
- test/models/sqlserver/sst_memory.rb
|
307
|
+
- test/models/sqlserver/sst_string_collation.rb
|
290
308
|
- test/models/sqlserver/string_default.rb
|
291
309
|
- test/models/sqlserver/string_defaults_big_view.rb
|
292
310
|
- test/models/sqlserver/string_defaults_view.rb
|
@@ -303,6 +321,8 @@ test_files:
|
|
303
321
|
- test/support/connection_reflection.rb
|
304
322
|
- test/support/core_ext/query_cache.rb
|
305
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
|
306
326
|
- test/support/minitest_sqlserver.rb
|
307
327
|
- test/support/paths_sqlserver.rb
|
308
328
|
- test/support/rake_helpers.rb
|
data/.travis.yml
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
sudo: required
|
2
|
-
cache: bundler
|
3
|
-
services:
|
4
|
-
- docker
|
5
|
-
env:
|
6
|
-
global:
|
7
|
-
- COMPOSE_FILE: docker-compose.ci.yml
|
8
|
-
before_install:
|
9
|
-
- sudo rm /usr/local/bin/docker-compose
|
10
|
-
- sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
11
|
-
- sudo chmod +x /usr/local/bin/docker-compose
|
12
|
-
install:
|
13
|
-
- docker-compose build --build-arg TARGET_VERSION=$TARGET_VERSION
|
14
|
-
script:
|
15
|
-
- docker-compose run ci
|
16
|
-
matrix:
|
17
|
-
include:
|
18
|
-
- name: 2.5.8
|
19
|
-
env: TARGET_VERSION=2.5.8
|
20
|
-
- name: 2.6.6
|
21
|
-
env: TARGET_VERSION=2.6.6
|
22
|
-
- name: 2.7.1
|
23
|
-
env: TARGET_VERSION=2.7.1
|
@@ -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
|