composite_primary_keys 7.0.3 → 7.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4e6b7d1159c668d23e4edcdf8b2fcb0634a81c7a
4
- data.tar.gz: ba6783910246e18e7aaa729e0fec71160ca8c7fb
3
+ metadata.gz: 7a45d32305e2b207027f386128b7b77714e65486
4
+ data.tar.gz: 1e574a8bedaeaca37da16e406fc6e3d1246bcee3
5
5
  SHA512:
6
- metadata.gz: a2943835037daa080b7a2d1f1e4d18a60d761968729c45460d8a4ce4da1f980aaa53f9c346e18459f7d3347811df83de0d4710835d3c1f8792a2f0f00255a787
7
- data.tar.gz: 9e2b28913094cb75c372572a8c4eaed1d167cef8fd73b091aeb75e93799dbac68d1ccfe0be1ca1478d4469533fa81caf7df6ea866396320881daba4f64b2b796
6
+ metadata.gz: 390a1b12a5d5f1c2cf8a5c40538445f98432508dd4d68223a9ce7aa431f79280b49de4ab3cd344b8bd2e43116e0eac7ed19d07bcec56186a635330e77f5b1db7
7
+ data.tar.gz: 27f2fa1cc51821ae47ac57cd8d504cb58d7b7528b7a5f0096c4134f6595194ef729e48297b8df887b635829e2c0c1f26113591aaa5d951c73b49c541754454d5
@@ -1,3 +1,9 @@
1
+ == 7.0.4 (2014-07-?)
2
+
3
+ * Fix overriding of Relation#where_values_hash (Pavel)
4
+ * Add travis CI support (Pavel)
5
+ * Run AR's original relation_for_destroy when primary key is not composite (Pavel)
6
+
1
7
  == 7.0.3 (2014-07-04)
2
8
 
3
9
  * Fixes for Rails 4.1.2+ compatibility (Tom Hughes)
@@ -10,6 +10,11 @@ module CompositePrimaryKeys
10
10
  # self.class.arel_table[pk].eq(substitute))
11
11
  #relation.bind_values = [[column, id]]
12
12
 
13
+ # run AR's original relation_for_destroy when primary key is not composite
14
+ if Array(self.class.primary_key).size <= 1
15
+ return super
16
+ end
17
+
13
18
  relation = self.class.unscoped
14
19
 
15
20
  Array(self.class.primary_key).each_with_index do |key, index|
@@ -60,7 +60,7 @@ module ActiveRecord
60
60
 
61
61
  def add_cpk_where_values_hash
62
62
  class << self
63
- def where_values_hash
63
+ def where_values_hash(relation_table_name = table_name)
64
64
  # CPK adds this so that it finds the Equality nodes beneath the And node:
65
65
  #equalities = where_values.grep(Arel::Nodes::Equality).find_all { |node|
66
66
  # node.left.relation.name == table_name
@@ -68,7 +68,7 @@ module ActiveRecord
68
68
  nodes_from_and = where_values.grep(Arel::Nodes::And).map {|and_node| and_node.children.grep(Arel::Nodes::Equality) }.flatten
69
69
 
70
70
  equalities = (nodes_from_and + where_values.grep(Arel::Nodes::Equality)).find_all { |node|
71
- node.left.relation.name == table_name
71
+ node.left.relation.name == relation_table_name
72
72
  }
73
73
 
74
74
  binds = Hash[bind_values.find_all(&:first).map { |column, v| [column.name, v] }]
@@ -2,7 +2,7 @@ module CompositePrimaryKeys
2
2
  module VERSION
3
3
  MAJOR = 7
4
4
  MINOR = 0
5
- TINY = 3
5
+ TINY = 4
6
6
  STRING = [MAJOR, MINOR, TINY].join('.')
7
7
  end
8
8
  end
@@ -0,0 +1,15 @@
1
+ mysql:
2
+ adapter: mysql2
3
+ username: travis
4
+ password: ""
5
+ database: composite_primary_keys_unittest
6
+
7
+ sqlite3:
8
+ adapter: sqlite3
9
+ database: db/composite_primary_keys_unittest.sqlite
10
+
11
+ postgresql:
12
+ adapter: postgresql
13
+ database: composite_primary_keys_unittest
14
+ username: postgres
15
+ host: localhost
@@ -0,0 +1,3 @@
1
+ class RestaurantsSuburb < ActiveRecord::Base
2
+
3
+ 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: 7.0.3
4
+ version: 7.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charlie Savage
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-04 00:00:00.000000000 Z
11
+ date: 2014-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -86,6 +86,7 @@ files:
86
86
  - test/README_tests.rdoc
87
87
  - test/abstract_unit.rb
88
88
  - test/connections/connection_spec.rb
89
+ - test/connections/databases.ci.yml
89
90
  - test/connections/databases.example.yml
90
91
  - test/connections/databases.yml
91
92
  - test/connections/native_ibm_db/connection.rb
@@ -139,6 +140,7 @@ files:
139
140
  - test/fixtures/reference_types.yml
140
141
  - test/fixtures/restaurant.rb
141
142
  - test/fixtures/restaurants.yml
143
+ - test/fixtures/restaurants_suburb.rb
142
144
  - test/fixtures/restaurants_suburbs.yml
143
145
  - test/fixtures/room.rb
144
146
  - test/fixtures/room_assignment.rb