composite_primary_keys 12.0.6 → 12.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/History.rdoc +9 -0
- data/lib/composite_primary_keys.rb +1 -0
- data/lib/composite_primary_keys/version.rb +1 -1
- data/test/connections/databases.ci.yml +5 -2
- data/test/test_create.rb +27 -1
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8349636fa2a670d60ef8f8cf288d31f805aafebb8c3f0d121c23aafb4f34dc08
|
4
|
+
data.tar.gz: 7932c338e6e3fad7831715dff3b879a9364356e19b93eeba8e5db55e74f6ad25
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9659459ef7f9d4a0331e778904d7c3fe869c18c638a9b852bd1961cd8892699e6ef6e7cbea3127510926277cc6ad21a1ecd5d0e722f229b883361be02dc7aff9
|
7
|
+
data.tar.gz: 7dd7ce6eac76e6728f00337f325d55014b04e209458d826e439454a53eee9668f4e5cb165a2dfa07d4c9821d75f88666b156a66a875c78e87ce97dec35f7d262
|
data/History.rdoc
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
== 12.0.8 (2021-02-16)
|
2
|
+
* Revert to previous MySQL/MariaDB auto increment fix
|
3
|
+
|
4
|
+
== 12.0.7 (2021-02-15)
|
5
|
+
* Switch to GitHub actions (ta1kt0me)
|
6
|
+
* Fix MySQL/MariaDB query cache issue bug introduced in version 12.0.3 - see #539 (Charlie Savage)
|
7
|
+
* Do a better job of supporting composite keys with an auto incrementing field for
|
8
|
+
MySQL and MariaDB (Charlie Savage)
|
9
|
+
|
1
10
|
== 12.0.6 (2021-01-04)
|
2
11
|
* Fix issue when calling in_batches without a block (Charlie Savage)
|
3
12
|
|
@@ -62,6 +62,7 @@ require 'active_record/nested_attributes'
|
|
62
62
|
require 'active_record/connection_adapters/abstract/database_statements'
|
63
63
|
require 'active_record/connection_adapters/abstract_adapter'
|
64
64
|
require 'active_record/connection_adapters/postgresql/database_statements'
|
65
|
+
require 'active_record/connection_adapters/mysql/database_statements'
|
65
66
|
|
66
67
|
require 'active_record/relation/where_clause'
|
67
68
|
|
@@ -1,7 +1,9 @@
|
|
1
1
|
mysql:
|
2
2
|
adapter: mysql2
|
3
|
-
username:
|
4
|
-
password:
|
3
|
+
username: github
|
4
|
+
password: github
|
5
|
+
host: 127.0.0.1
|
6
|
+
port: 3306
|
5
7
|
encoding: utf8mb4
|
6
8
|
charset: utf8mb4
|
7
9
|
collation: utf8mb4_bin
|
@@ -11,6 +13,7 @@ postgresql:
|
|
11
13
|
adapter: postgresql
|
12
14
|
database: composite_primary_keys_unittest
|
13
15
|
username: postgres
|
16
|
+
password: postgres
|
14
17
|
host: localhost
|
15
18
|
|
16
19
|
sqlite:
|
data/test/test_create.rb
CHANGED
@@ -48,12 +48,21 @@ class TestCreate < ActiveSupport::TestCase
|
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
|
+
def test_create_with_array
|
52
|
+
date = Date.new(2027, 01, 27)
|
53
|
+
tariff = Tariff.create!(id: [10, date], amount: 27)
|
54
|
+
refute_nil(tariff)
|
55
|
+
assert_equal([10, date], tariff.id)
|
56
|
+
assert_equal(date, tariff.start_date)
|
57
|
+
assert_equal(27, tariff.amount)
|
58
|
+
end
|
59
|
+
|
51
60
|
def test_create_with_partial_serial
|
52
61
|
attributes = {:location_id => 100}
|
53
62
|
|
54
63
|
# SQLite does not support an autoincrementing field in a composite key
|
55
64
|
if Department.connection.class.name == "ActiveRecord::ConnectionAdapters::SQLite3Adapter"
|
56
|
-
attributes[:id] =
|
65
|
+
attributes[:id] = 200
|
57
66
|
end
|
58
67
|
|
59
68
|
department = Department.new(attributes)
|
@@ -177,4 +186,21 @@ class TestCreate < ActiveSupport::TestCase
|
|
177
186
|
suburb = Suburb.find_or_create_by!(:name => 'New Suburb', :city_id => 3, :suburb_id => 1)
|
178
187
|
refute_nil(suburb)
|
179
188
|
end
|
189
|
+
|
190
|
+
def test_cache
|
191
|
+
Suburb.cache do
|
192
|
+
# Suburb does not exist
|
193
|
+
suburb = Suburb.find_by(:city_id => 10, :suburb_id => 10)
|
194
|
+
assert_nil(suburb)
|
195
|
+
|
196
|
+
# Create it
|
197
|
+
suburb = Suburb.create!(:name => 'New Suburb', :city_id => 10, :suburb_id => 10)
|
198
|
+
|
199
|
+
# Should be able to find it
|
200
|
+
suburb = Suburb.find_by(:city_id => 10)
|
201
|
+
refute_nil(suburb)
|
202
|
+
refute_nil(suburb.city_id)
|
203
|
+
refute_nil(suburb.suburb_id)
|
204
|
+
end
|
205
|
+
end
|
180
206
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: composite_primary_keys
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 12.0.
|
4
|
+
version: 12.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charlie Savage
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
description: Composite key support for ActiveRecord
|
42
|
-
email:
|
42
|
+
email:
|
43
43
|
executables: []
|
44
44
|
extensions: []
|
45
45
|
extra_rdoc_files: []
|
@@ -201,7 +201,7 @@ homepage: https://github.com/composite-primary-keys/composite_primary_keys
|
|
201
201
|
licenses:
|
202
202
|
- MIT
|
203
203
|
metadata: {}
|
204
|
-
post_install_message:
|
204
|
+
post_install_message:
|
205
205
|
rdoc_options: []
|
206
206
|
require_paths:
|
207
207
|
- lib
|
@@ -216,16 +216,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
216
216
|
- !ruby/object:Gem::Version
|
217
217
|
version: '0'
|
218
218
|
requirements: []
|
219
|
-
rubygems_version: 3.
|
220
|
-
signing_key:
|
219
|
+
rubygems_version: 3.2.8
|
220
|
+
signing_key:
|
221
221
|
specification_version: 4
|
222
222
|
summary: Composite key support for ActiveRecord
|
223
223
|
test_files:
|
224
|
-
- test/abstract_unit.rb
|
225
224
|
- test/README_tests.rdoc
|
225
|
+
- test/abstract_unit.rb
|
226
226
|
- test/test_associations.rb
|
227
|
-
- test/test_attributes.rb
|
228
227
|
- test/test_attribute_methods.rb
|
228
|
+
- test/test_attributes.rb
|
229
229
|
- test/test_calculations.rb
|
230
230
|
- test/test_callbacks.rb
|
231
231
|
- test/test_composite_arrays.rb
|