dynamic_migrations 3.6.15 → 3.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +37 -0
- data/lib/dynamic_migrations/active_record/migrators/primary_key.rb +21 -0
- data/lib/dynamic_migrations/active_record/migrators.rb +1 -0
- data/lib/dynamic_migrations/postgres/generator/primary_key.rb +32 -0
- data/lib/dynamic_migrations/postgres/generator/table.rb +20 -4
- data/lib/dynamic_migrations/postgres/generator/table_migration.rb +1 -1
- data/lib/dynamic_migrations/postgres/generator/validation.rb +0 -4
- data/lib/dynamic_migrations/postgres/generator/validation_template_base.rb +5 -3
- data/lib/dynamic_migrations/postgres/generator.rb +4 -5
- data/lib/dynamic_migrations/postgres/server/database/connection.rb +3 -1
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/functions.rb +1 -1
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/foreign_key_constraints.rb +2 -2
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/indexes.rb +2 -2
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/triggers.rb +2 -2
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/unique_constraints.rb +2 -2
- data/lib/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/validations.rb +2 -2
- data/lib/dynamic_migrations/postgres/server/database/differences.rb +3 -3
- data/lib/dynamic_migrations/postgres/server/database/enums_loader.rb +1 -1
- data/lib/dynamic_migrations/postgres/server/database/keys_and_unique_constraints_loader.rb +8 -0
- data/lib/dynamic_migrations/postgres/server/database/schema/function.rb +51 -2
- data/lib/dynamic_migrations/postgres/server/database/schema/table/column.rb +29 -2
- data/lib/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraint.rb +4 -7
- data/lib/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraints.rb +5 -0
- data/lib/dynamic_migrations/postgres/server/database/schema/table/trigger.rb +72 -6
- data/lib/dynamic_migrations/postgres/server/database/schema/table/validation.rb +95 -12
- data/lib/dynamic_migrations/postgres/server/database/schema/table/validations.rb +1 -1
- data/lib/dynamic_migrations/postgres/server/database/schema/table.rb +2 -0
- data/lib/dynamic_migrations/postgres/server/database/structure_loader.rb +9 -1
- data/lib/dynamic_migrations/postgres/server/database/triggers_and_functions_loader.rb +4 -3
- data/lib/dynamic_migrations/postgres/server/database/validations_loader.rb +42 -29
- data/lib/dynamic_migrations/postgres/server/database.rb +6 -0
- data/lib/dynamic_migrations/version.rb +1 -1
- data/lib/dynamic_migrations.rb +1 -0
- data/sig/dynamic_migrations/active_record/migrators/primary_key.rbs +18 -0
- data/sig/dynamic_migrations/postgres/generator/primary_key.rbs +2 -0
- data/sig/dynamic_migrations/postgres/generator/table.rbs +2 -0
- data/sig/dynamic_migrations/postgres/generator/validation_template_base.rbs +7 -7
- data/sig/dynamic_migrations/postgres/generator.rbs +1 -1
- data/sig/dynamic_migrations/postgres/server/database/connection.rbs +1 -1
- data/sig/dynamic_migrations/postgres/server/database/keys_and_unique_constraints_loader.rbs +1 -0
- data/sig/dynamic_migrations/postgres/server/database/schema/enum.rbs +2 -2
- data/sig/dynamic_migrations/postgres/server/database/schema/enums.rbs +1 -1
- data/sig/dynamic_migrations/postgres/server/database/schema/function.rbs +9 -0
- data/sig/dynamic_migrations/postgres/server/database/schema/table/column.rbs +4 -0
- data/sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraint.rbs +0 -3
- data/sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraints.rbs +1 -0
- data/sig/dynamic_migrations/postgres/server/database/schema/table/trigger.rbs +9 -0
- data/sig/dynamic_migrations/postgres/server/database/schema/table/validation.rbs +9 -1
- data/sig/dynamic_migrations/postgres/server/database/schema/table/validations.rbs +1 -1
- data/sig/dynamic_migrations/postgres/server/database/schema/table.rbs +1 -0
- data/sig/dynamic_migrations/postgres/server/database/structure_loader.rbs +1 -0
- data/sig/dynamic_migrations/postgres/server/database/validations_loader.rbs +1 -0
- data/sig/dynamic_migrations/postgres/server/database.rbs +1 -0
- metadata +4 -2
@@ -9,6 +9,8 @@ module DynamicMigrations
|
|
9
9
|
class Table
|
10
10
|
class Trigger < Source
|
11
11
|
@action_order: Integer?
|
12
|
+
@normalized_action_condition: String?
|
13
|
+
|
12
14
|
attr_reader table: Table
|
13
15
|
attr_reader name: Symbol
|
14
16
|
attr_reader event_manipulation: Symbol
|
@@ -26,6 +28,10 @@ module DynamicMigrations
|
|
26
28
|
def action_order: -> Integer
|
27
29
|
def has_description?: -> false
|
28
30
|
def differences_descriptions: (Trigger other_trigger) -> Array[String]
|
31
|
+
def normalized_action_condition: -> String?
|
32
|
+
|
33
|
+
private
|
34
|
+
def fetch_normalized_action_condition: -> String
|
29
35
|
|
30
36
|
class ExpectedTableError < StandardError
|
31
37
|
end
|
@@ -56,6 +62,9 @@ module DynamicMigrations
|
|
56
62
|
|
57
63
|
class UnexpectedTemplateError < StandardError
|
58
64
|
end
|
65
|
+
|
66
|
+
class UnnormalizableActionConditionError < StandardError
|
67
|
+
end
|
59
68
|
end
|
60
69
|
end
|
61
70
|
end
|
@@ -6,6 +6,7 @@ module DynamicMigrations
|
|
6
6
|
class Table
|
7
7
|
class Validation < Source
|
8
8
|
@columns: Hash[Symbol, Column]
|
9
|
+
@normalized_check_clause_and_column_names: {check_clause: String, column_names: Array[Symbol]}?
|
9
10
|
|
10
11
|
attr_reader table: Table
|
11
12
|
attr_reader name: Symbol
|
@@ -15,13 +16,18 @@ module DynamicMigrations
|
|
15
16
|
attr_reader description: String?
|
16
17
|
attr_reader template: Symbol?
|
17
18
|
|
18
|
-
def initialize: (database_or_configuration source, Table table, Array[Column] columns, Symbol name, String check_clause, ?deferrable: bool, ?initially_deferred: bool, ?description: String?, ?template: Symbol?) -> void
|
19
|
+
def initialize: (database_or_configuration source, Table table, Array[Column]? columns, Symbol name, String check_clause, ?deferrable: bool, ?initially_deferred: bool, ?description: String?, ?template: Symbol?) -> void
|
19
20
|
def columns: -> Array[Column]
|
20
21
|
def column_names: -> Array[Symbol]
|
21
22
|
def has_description?: -> bool
|
22
23
|
def differences_descriptions: (Validation other_validation) -> Array[String]
|
24
|
+
def normalized_check_clause: -> String
|
23
25
|
|
24
26
|
private
|
27
|
+
|
28
|
+
def normalized_check_clause_and_column_names: -> {check_clause: String, column_names: Array[Symbol]}
|
29
|
+
def fetch_normalized_check_clause_and_column_names: -> {check_clause: String, column_names: Array[Symbol]}
|
30
|
+
|
25
31
|
def add_column: (Column column) -> void
|
26
32
|
|
27
33
|
class ExpectedTableError < StandardError
|
@@ -39,6 +45,8 @@ module DynamicMigrations
|
|
39
45
|
class UnexpectedTemplateError < StandardError
|
40
46
|
end
|
41
47
|
|
48
|
+
class UnnormalizableCheckClauseError < StandardError
|
49
|
+
end
|
42
50
|
end
|
43
51
|
end
|
44
52
|
end
|
@@ -11,7 +11,7 @@ module DynamicMigrations
|
|
11
11
|
def has_validation?: (Symbol name) -> bool
|
12
12
|
def validations: -> Array[Validation]
|
13
13
|
def validations_hash: -> Hash[Symbol, Validation]
|
14
|
-
def add_validation: (Symbol name, Array[Symbol] column_names, String check_clause, **untyped) -> untyped
|
14
|
+
def add_validation: (Symbol name, Array[Symbol]? column_names, String check_clause, **untyped) -> untyped
|
15
15
|
|
16
16
|
# these come from the table object (which this module is included into)
|
17
17
|
def source: -> database_or_configuration
|
@@ -16,6 +16,7 @@ module DynamicMigrations
|
|
16
16
|
attr_reader schema: Schema
|
17
17
|
attr_reader name: Symbol
|
18
18
|
attr_reader description: String?
|
19
|
+
attr_reader remote_foreign_key_constraints: Array[ForeignKeyConstraint]
|
19
20
|
def initialize: (database_or_configuration source, Schema schema, Symbol name, ?description: String?) -> void
|
20
21
|
def has_description?: -> bool
|
21
22
|
def add_primary_key: (Symbol name, Array[Symbol] column_names, **untyped) -> untyped
|
@@ -8,6 +8,7 @@ module DynamicMigrations
|
|
8
8
|
def recursively_load_database_structure: -> void
|
9
9
|
def fetch_schema_names: -> Array[String]
|
10
10
|
def fetch_table_names: (Symbol schema_name) -> Array[String]
|
11
|
+
def refresh_database_structure_cache: -> void
|
11
12
|
|
12
13
|
# these come from the database object (which this module is included into)
|
13
14
|
def connection: -> PG::Connection
|
@@ -5,6 +5,7 @@ module DynamicMigrations
|
|
5
5
|
module ValidationsLoader
|
6
6
|
def create_database_validations_cache: -> void
|
7
7
|
def fetch_validations: -> Hash[untyped, untyped]
|
8
|
+
def refresh_database_validations_cache: -> void
|
8
9
|
|
9
10
|
# these come from the database object (which this module is included into)
|
10
11
|
def connection: -> PG::Connection
|
@@ -25,6 +25,7 @@ module DynamicMigrations
|
|
25
25
|
def initialize: (Server server, Symbol name) -> void
|
26
26
|
def schema: (Symbol schema_name, database_or_configuration source) -> untyped
|
27
27
|
def differences: -> Differences
|
28
|
+
def refresh_caches: -> void
|
28
29
|
|
29
30
|
class ExpectedServerError < StandardError
|
30
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynamic_migrations
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Craig Ulliott
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-09-
|
11
|
+
date: 2023-09-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pg
|
@@ -71,6 +71,7 @@ files:
|
|
71
71
|
- lib/dynamic_migrations/active_record/migrators/foreign_key_constraint.rb
|
72
72
|
- lib/dynamic_migrations/active_record/migrators/function.rb
|
73
73
|
- lib/dynamic_migrations/active_record/migrators/index.rb
|
74
|
+
- lib/dynamic_migrations/active_record/migrators/primary_key.rb
|
74
75
|
- lib/dynamic_migrations/active_record/migrators/table.rb
|
75
76
|
- lib/dynamic_migrations/active_record/migrators/trigger.rb
|
76
77
|
- lib/dynamic_migrations/active_record/migrators/unique_constraint.rb
|
@@ -162,6 +163,7 @@ files:
|
|
162
163
|
- sig/dynamic_migrations/active_record/migrators/foreign_key_constraint.rbs
|
163
164
|
- sig/dynamic_migrations/active_record/migrators/function.rbs
|
164
165
|
- sig/dynamic_migrations/active_record/migrators/index.rbs
|
166
|
+
- sig/dynamic_migrations/active_record/migrators/primary_key.rbs
|
165
167
|
- sig/dynamic_migrations/active_record/migrators/table.rbs
|
166
168
|
- sig/dynamic_migrations/active_record/migrators/trigger.rbs
|
167
169
|
- sig/dynamic_migrations/active_record/migrators/unique_constraint.rbs
|