dynamic_migrations 3.8.1 → 3.8.2

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
  SHA256:
3
- metadata.gz: 1235cefb0bc31fd54a095fbef1111be30cb13f89bb6c4358364f35594ffe95ff
4
- data.tar.gz: e9050d22292034176525471025a8981fba83c8945b8a81f754c3c2a222cc4538
3
+ metadata.gz: 2641592d2902b2b4db711882300e45157cf45df12d3f19ceea84ff97e13f6fab
4
+ data.tar.gz: d6eb83a0f1d0631acc1474d18305e0828688210f7008dbddb460dc1b2cfaf668
5
5
  SHA512:
6
- metadata.gz: 2be636e7faf4eb9d05d8f6fb507603aa362f341982a44f99e7e35dd365481fe7042b04e1dcd743981ea321082af61be38e8a1b73c31109e09252f3736c51afb3
7
- data.tar.gz: 9db574a68a9009bee00bb5e8d16604b577e0d33a999ece3df62144516a15ba8f0187e624346ab87913f3c04805de4140eb0dd5b68c5d0f1fd30dff7010efef97
6
+ metadata.gz: 48130e442efa9a4e2ab9763fe8e0cb1f35bca56691361e0d3c350813e89c31e1445f59ff76b981e560eb521e8dfb72822ac80c04c738203b62237ccc9690ecc1
7
+ data.tar.gz: 0a40ea04a41e2f072fe0f8ae9a163a1989c0e8c752b7078491ae5b75bbe18cfc3d3eebd777a61de2b4372297e78c54539d3a449b11a76771c19a86370d5fe588
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.8.2](https://github.com/craigulliott/dynamic_migrations/compare/v3.8.1...v3.8.2) (2023-10-06)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * fetch_normalized_check_clause_and_column_names was using column names from the validation instead of the table it belonged to ([5157205](https://github.com/craigulliott/dynamic_migrations/commit/5157205fc52cfbf062d61054bf12c117a5df5b57))
9
+
3
10
  ## [3.8.1](https://github.com/craigulliott/dynamic_migrations/compare/v3.8.0...v3.8.1) (2023-10-06)
4
11
 
5
12
 
@@ -14,6 +14,9 @@ module DynamicMigrations
14
14
  class ExpectedArrayOfColumnsError < StandardError
15
15
  end
16
16
 
17
+ class ExpectedTableColumnsError < StandardError
18
+ end
19
+
17
20
  class DuplicateColumnError < StandardError
18
21
  end
19
22
 
@@ -122,6 +125,9 @@ module DynamicMigrations
122
125
  end
123
126
 
124
127
  def fetch_normalized_check_clause_and_column_names
128
+ if table.columns.empty?
129
+ raise ExpectedTableColumnsError, "Can not normalize check clause or validation columnns because the table has no columns"
130
+ end
125
131
  result = table.schema.database.with_connection do |connection|
126
132
  # wrapped in a transaction just in case something here fails, because
127
133
  # we don't want the temporary table to be persisted
@@ -130,7 +136,7 @@ module DynamicMigrations
130
136
  # create the temp table and add the expected columns and constraint
131
137
  connection.exec(<<~SQL)
132
138
  CREATE TEMP TABLE validation_normalized_check_clause_temp_table (
133
- #{columns.map { |column| '"' + column.name.to_s + '" ' + column.temp_table_data_type.to_s }.join(", ")},
139
+ #{table.columns.map { |column| '"' + column.name.to_s + '" ' + column.temp_table_data_type.to_s }.join(", ")},
134
140
  CONSTRAINT #{name} CHECK (#{check_clause})
135
141
  );
136
142
  SQL
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DynamicMigrations
4
- VERSION = "3.8.1"
4
+ VERSION = "3.8.2"
5
5
  end
@@ -36,6 +36,9 @@ module DynamicMigrations
36
36
  class ExpectedArrayOfColumnsError < StandardError
37
37
  end
38
38
 
39
+ class ExpectedTableColumnsError < StandardError
40
+ end
41
+
39
42
  class DuplicateColumnError < StandardError
40
43
  end
41
44
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dynamic_migrations
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.1
4
+ version: 3.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Craig Ulliott