dynamic_migrations 3.4.0 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/lib/dynamic_migrations/active_record/migrators/foreign_key_constraint.rb +14 -14
  4. data/lib/dynamic_migrations/postgres/generator/extension.rb +2 -2
  5. data/lib/dynamic_migrations/postgres/generator/migration.rb +2 -2
  6. data/lib/dynamic_migrations/postgres/server/database/schema/table/column.rb +3 -0
  7. data/lib/dynamic_migrations/version.rb +1 -1
  8. data/sig/dynamic_migrations/active_record/migrators/column.rbs +18 -0
  9. data/sig/dynamic_migrations/active_record/migrators/enum.rbs +22 -0
  10. data/sig/dynamic_migrations/active_record/migrators/foreign_key_constraint.rbs +29 -0
  11. data/sig/dynamic_migrations/active_record/migrators/function.rbs +28 -0
  12. data/sig/dynamic_migrations/active_record/migrators/index.rbs +17 -0
  13. data/sig/dynamic_migrations/active_record/migrators/schema.rbs +17 -0
  14. data/sig/dynamic_migrations/active_record/migrators/table.rbs +18 -0
  15. data/sig/dynamic_migrations/active_record/migrators/trigger.rbs +32 -0
  16. data/sig/dynamic_migrations/active_record/migrators/unique_constraint.rbs +20 -0
  17. data/sig/dynamic_migrations/active_record/migrators/validation.rbs +24 -0
  18. data/sig/dynamic_migrations/active_record/migrators.rbs +37 -0
  19. data/sig/dynamic_migrations/expected_boolean_error.rbs +4 -0
  20. data/sig/dynamic_migrations/expected_integer_error.rbs +4 -0
  21. data/sig/dynamic_migrations/expected_string_error.rbs +4 -0
  22. data/sig/dynamic_migrations/expected_symbol_error.rbs +4 -0
  23. data/sig/dynamic_migrations/invalid_source_error.rbs +5 -0
  24. data/sig/dynamic_migrations/module_included_into_unexpected_target_error.rbs +7 -0
  25. data/sig/dynamic_migrations/name_helper.rbs +5 -0
  26. data/sig/dynamic_migrations/postgres/connections.rbs +12 -0
  27. data/sig/dynamic_migrations/postgres/generator/column.rbs +24 -0
  28. data/sig/dynamic_migrations/postgres/generator/database_migration.rbs +12 -0
  29. data/sig/dynamic_migrations/postgres/generator/enum.rbs +23 -0
  30. data/sig/dynamic_migrations/postgres/generator/extension.rbs +16 -0
  31. data/sig/dynamic_migrations/postgres/generator/foreign_key_constraint.rbs +21 -0
  32. data/sig/dynamic_migrations/postgres/generator/fragment.rbs +32 -0
  33. data/sig/dynamic_migrations/postgres/generator/function.rbs +21 -0
  34. data/sig/dynamic_migrations/postgres/generator/index.rbs +21 -0
  35. data/sig/dynamic_migrations/postgres/generator/migration.rbs +58 -0
  36. data/sig/dynamic_migrations/postgres/generator/migration_dependency_sorter.rbs +12 -0
  37. data/sig/dynamic_migrations/postgres/generator/primary_key.rbs +20 -0
  38. data/sig/dynamic_migrations/postgres/generator/schema.rbs +17 -0
  39. data/sig/dynamic_migrations/postgres/generator/schema_migration.rbs +13 -0
  40. data/sig/dynamic_migrations/postgres/generator/table.rbs +30 -0
  41. data/sig/dynamic_migrations/postgres/generator/table_migration.rbs +12 -0
  42. data/sig/dynamic_migrations/postgres/generator/trigger.rbs +22 -0
  43. data/sig/dynamic_migrations/postgres/generator/unique_constraint.rbs +21 -0
  44. data/sig/dynamic_migrations/postgres/generator/validation.rbs +21 -0
  45. data/sig/dynamic_migrations/postgres/generator.rbs +57 -0
  46. data/sig/dynamic_migrations/postgres/server/database/configured_extensions.rbs +18 -0
  47. data/sig/dynamic_migrations/postgres/server/database/configured_schemas.rbs +23 -0
  48. data/sig/dynamic_migrations/postgres/server/database/connection.rbs +29 -0
  49. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/extensions.rbs +22 -0
  50. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/enums.rbs +24 -0
  51. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/functions.rbs +24 -0
  52. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/columns.rbs +26 -0
  53. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/foreign_key_constraints.rbs +26 -0
  54. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/indexes.rbs +26 -0
  55. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/primary_key.rbs +25 -0
  56. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/triggers.rbs +26 -0
  57. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/unique_constraints.rbs +26 -0
  58. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/validations.rbs +26 -0
  59. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables.rbs +33 -0
  60. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas.rbs +30 -0
  61. data/sig/dynamic_migrations/postgres/server/database/differences/to_migrations.rbs +47 -0
  62. data/sig/dynamic_migrations/postgres/server/database/differences.rbs +54 -0
  63. data/sig/dynamic_migrations/postgres/server/database/enums_loader.rbs +18 -0
  64. data/sig/dynamic_migrations/postgres/server/database/extensions_loader.rbs +17 -0
  65. data/sig/dynamic_migrations/postgres/server/database/keys_and_unique_constraints_loader.rbs +15 -0
  66. data/sig/dynamic_migrations/postgres/server/database/loaded_extensions.rbs +19 -0
  67. data/sig/dynamic_migrations/postgres/server/database/loaded_schemas.rbs +23 -0
  68. data/sig/dynamic_migrations/postgres/server/database/loaded_schemas_builder.rbs +27 -0
  69. data/sig/dynamic_migrations/postgres/server/database/schema/enum.rbs +28 -0
  70. data/sig/dynamic_migrations/postgres/server/database/schema/enums.rbs +31 -0
  71. data/sig/dynamic_migrations/postgres/server/database/schema/function.rbs +30 -0
  72. data/sig/dynamic_migrations/postgres/server/database/schema/functions.rbs +31 -0
  73. data/sig/dynamic_migrations/postgres/server/database/schema/table/column.rbs +28 -0
  74. data/sig/dynamic_migrations/postgres/server/database/schema/table/columns.rbs +30 -0
  75. data/sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraint.rbs +55 -0
  76. data/sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraints.rbs +32 -0
  77. data/sig/dynamic_migrations/postgres/server/database/schema/table/index.rbs +62 -0
  78. data/sig/dynamic_migrations/postgres/server/database/schema/table/indexes.rbs +31 -0
  79. data/sig/dynamic_migrations/postgres/server/database/schema/table/primary_key.rbs +40 -0
  80. data/sig/dynamic_migrations/postgres/server/database/schema/table/trigger.rbs +61 -0
  81. data/sig/dynamic_migrations/postgres/server/database/schema/table/triggers.rbs +33 -0
  82. data/sig/dynamic_migrations/postgres/server/database/schema/table/unique_constraint.rbs +49 -0
  83. data/sig/dynamic_migrations/postgres/server/database/schema/table/unique_constraints.rbs +31 -0
  84. data/sig/dynamic_migrations/postgres/server/database/schema/table/validation.rbs +43 -0
  85. data/sig/dynamic_migrations/postgres/server/database/schema/table/validations.rbs +31 -0
  86. data/sig/dynamic_migrations/postgres/server/database/schema/table.rbs +38 -0
  87. data/sig/dynamic_migrations/postgres/server/database/schema/tables.rbs +28 -0
  88. data/sig/dynamic_migrations/postgres/server/database/schema.rbs +21 -0
  89. data/sig/dynamic_migrations/postgres/server/database/source.rbs +18 -0
  90. data/sig/dynamic_migrations/postgres/server/database/structure_loader.rbs +19 -0
  91. data/sig/dynamic_migrations/postgres/server/database/triggers_and_functions_loader.rbs +20 -0
  92. data/sig/dynamic_migrations/postgres/server/database/validations_loader.rbs +15 -0
  93. data/sig/dynamic_migrations/postgres/server/database.rbs +34 -0
  94. data/sig/dynamic_migrations/postgres/server.rbs +19 -0
  95. data/sig/dynamic_migrations/postgres.rbs +4 -0
  96. data/sig/dynamic_migrations.rbs +6 -0
  97. data/sig/pg.rbs +20 -0
  98. data/sig/tsort.rbs +3 -0
  99. metadata +93 -2
@@ -0,0 +1,40 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table
7
+ class PrimaryKey < Source
8
+ @columns: Hash[Symbol, Column]
9
+
10
+ attr_reader table: Table
11
+ attr_reader name: Symbol
12
+ attr_reader description: String?
13
+
14
+ def initialize: (database_or_configuration source, Table table, Array[Column] columns, Symbol name, ?description: String?) -> void
15
+ def columns: -> Array[Column]
16
+ def column_names: -> Array[Symbol]
17
+ def has_description?: -> bool
18
+ def differences_descriptions: (PrimaryKey other_primary_key) -> Array[String]
19
+
20
+ private
21
+ def add_column: (Column column) -> void
22
+
23
+ class ExpectedTableError < StandardError
24
+ end
25
+
26
+ class ExpectedArrayOfColumnsError < StandardError
27
+ end
28
+
29
+ class UnexpectedIndexTypeError < StandardError
30
+ end
31
+
32
+ class DuplicateColumnError < StandardError
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,61 @@
1
+ # TypeProf 0.21.7
2
+
3
+ # Classes
4
+ module DynamicMigrations
5
+ module Postgres
6
+ class Server
7
+ class Database
8
+ class Schema
9
+ class Table
10
+ class Trigger < Source
11
+ @action_order: Integer?
12
+ attr_reader table: Table
13
+ attr_reader name: Symbol
14
+ attr_reader event_manipulation: Symbol
15
+ attr_reader action_timing: Symbol
16
+ attr_reader action_condition: String?
17
+ attr_reader parameters: String?
18
+ attr_reader action_orientation: Symbol
19
+ attr_reader function: Function
20
+ attr_reader action_reference_old_table: Symbol?
21
+ attr_reader action_reference_new_table: Symbol?
22
+ attr_reader description: String?
23
+
24
+ def initialize: (database_or_configuration source, Table table, Symbol name, action_timing: Symbol, event_manipulation: Symbol, parameters: String?, action_orientation: Symbol, function: Function, ?action_order: Integer?, ?action_condition: String?, ?action_reference_old_table: Symbol?, ?action_reference_new_table: Symbol?, ?description: String?) -> void
25
+ def action_order: -> Integer
26
+ def has_description?: -> false
27
+ def differences_descriptions: (Trigger other_trigger) -> Array[String]
28
+
29
+ class ExpectedTableError < StandardError
30
+ end
31
+
32
+ class UnexpectedEventManipulationError < StandardError
33
+ end
34
+
35
+ class UnexpectedParametersError < StandardError
36
+ end
37
+
38
+ class UnexpectedActionOrientationError < StandardError
39
+ end
40
+
41
+ class UnexpectedActionTimingError < StandardError
42
+ end
43
+
44
+ class ExpectedOldRecordsTableError < StandardError
45
+ end
46
+
47
+ class ExpectedNewRecordsTableError < StandardError
48
+ end
49
+
50
+ class ExpectedFunctionError < StandardError
51
+ end
52
+
53
+ class UnexpectedActionOrderError < StandardError
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,33 @@
1
+ # TypeProf 0.21.7
2
+
3
+ # Classes
4
+ module DynamicMigrations
5
+ module Postgres
6
+ class Server
7
+ class Database
8
+ class Schema
9
+ class Table
10
+ module Triggers
11
+ @triggers: Hash[Symbol, Trigger]
12
+
13
+ def trigger: (Symbol name) -> Trigger
14
+ def has_trigger?: (untyped name) -> bool
15
+ def triggers: -> Array[Trigger]
16
+ def triggers_hash: -> Hash[Symbol, Trigger]
17
+ def add_trigger: (Symbol name, action_timing: Symbol, event_manipulation: Symbol, parameters: String, action_orientation: Symbol, function: Function, ?action_order: Integer?, ?action_condition: String?, ?action_reference_old_table: Symbol?, ?action_reference_new_table: Symbol?, ?description: String?) -> Trigger
18
+
19
+ # these come from the table object (which this module is included into)
20
+ def source: -> database_or_configuration
21
+
22
+ class TriggerDoesNotExistError < StandardError
23
+ end
24
+
25
+ class TriggerAlreadyExistsError < StandardError
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,49 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table
7
+ class UniqueConstraint < Source
8
+ INDEX_TYPES: [:btree, :hash, :gist, :gin, :bring, :spgist]
9
+ @columns: Hash[Symbol, Column]
10
+
11
+ attr_reader table: Table
12
+ attr_reader name: Symbol
13
+ attr_reader deferrable: bool
14
+ attr_reader initially_deferred: bool
15
+ attr_reader description: String?
16
+
17
+ def initialize: (database_or_configuration source, Table table, Array[Column] columns, Symbol name, ?deferrable: bool, ?initially_deferred: bool, ?description: String?) -> void
18
+ def columns: -> Array[Column]
19
+ def column_names: -> Array[Symbol]
20
+ def has_description?: -> bool
21
+ def differences_descriptions: (UniqueConstraint other_unique_constraint) -> Array[String]
22
+
23
+ private
24
+ def add_column: (Column column) -> void
25
+
26
+ class ExpectedTableError < StandardError
27
+ end
28
+
29
+ class ExpectedArrayOfColumnsError < StandardError
30
+ end
31
+
32
+ class UnexpectedIndexTypeError < StandardError
33
+ end
34
+
35
+ class UnexpectedOrderError < StandardError
36
+ end
37
+
38
+ class UnexpectedNullsPositionError < StandardError
39
+ end
40
+
41
+ class DuplicateColumnError < StandardError
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,31 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table
7
+ module UniqueConstraints
8
+ @unique_constraints: Hash[Symbol, UniqueConstraint]
9
+
10
+ def unique_constraint: (Symbol name) -> UniqueConstraint
11
+ def has_unique_constraint?: (Symbol name) -> bool
12
+ def unique_constraints: -> Array[UniqueConstraint]
13
+ def unique_constraints_hash: -> Hash[Symbol, UniqueConstraint]
14
+ def add_unique_constraint: (Symbol name, Array[Symbol] column_names, **untyped) -> UniqueConstraint
15
+
16
+ # these come from the table object (which this module is included into)
17
+ def source: -> database_or_configuration
18
+ def column: (Symbol column_name) -> Column
19
+
20
+ class UniqueConstraintDoesNotExistError < StandardError
21
+ end
22
+
23
+ class UniqueConstraintAlreadyExistsError < StandardError
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,43 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table
7
+ class Validation < Source
8
+ @columns: Hash[Symbol, Column]
9
+
10
+ attr_reader table: Table
11
+ attr_reader name: Symbol
12
+ attr_reader check_clause: String
13
+ attr_reader deferrable: bool
14
+ attr_reader initially_deferred: bool
15
+ attr_reader description: String?
16
+
17
+ def initialize: (database_or_configuration source, Table table, Array[Column] columns, Symbol name, String check_clause, ?deferrable: bool, ?initially_deferred: bool, ?description: String?) -> void
18
+ def columns: -> Array[Column]
19
+ def column_names: -> Array[Symbol]
20
+ def has_description?: -> bool
21
+ def differences_descriptions: (Validation other_validation) -> Array[String]
22
+
23
+ private
24
+ def add_column: (Column column) -> void
25
+
26
+ class ExpectedTableError < StandardError
27
+ end
28
+
29
+ class ExpectedArrayOfColumnsError < StandardError
30
+ end
31
+
32
+ class DuplicateColumnError < StandardError
33
+ end
34
+
35
+ class ModuleIncludedIntoUnexpectedTargetError < StandardError
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,31 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table
7
+ module Validations
8
+ @validations: Hash[Symbol, Validation]
9
+
10
+ def validation: (Symbol name) -> Validation
11
+ def has_validation?: (Symbol name) -> bool
12
+ def validations: -> Array[Validation]
13
+ def validations_hash: -> Hash[Symbol, Validation]
14
+ def add_validation: (Symbol name, Array[Symbol] column_names, String check_clause, **untyped) -> untyped
15
+
16
+ # these come from the table object (which this module is included into)
17
+ def source: -> database_or_configuration
18
+ def column: (Symbol column_name) -> Column
19
+
20
+ class ValidationDoesNotExistError < StandardError
21
+ end
22
+
23
+ class ValidationAlreadyExistsError < StandardError
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,38 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema
6
+ class Table < Source
7
+ @primary_key: PrimaryKey | nil
8
+
9
+ include Columns
10
+ include Validations
11
+ include Indexes
12
+ include ForeignKeyConstraints
13
+ include UniqueConstraints
14
+ include Triggers
15
+
16
+ attr_reader schema: Schema
17
+ attr_reader name: Symbol
18
+ attr_reader description: String?
19
+ def initialize: (database_or_configuration source, Schema schema, Symbol name, ?description: String?) -> void
20
+ def has_description?: -> bool
21
+ def add_primary_key: (Symbol name, Array[Symbol] column_names, **untyped) -> untyped
22
+ def has_primary_key?: -> bool
23
+ def primary_key: -> PrimaryKey
24
+
25
+ class ExpectedSchemaError < StandardError
26
+ end
27
+
28
+ class PrimaryKeyDoesNotExistError < StandardError
29
+ end
30
+
31
+ class PrimaryKeyAlreadyExistsError < StandardError
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,28 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema < Source
6
+ module Tables
7
+ @tables: Hash[Symbol, Table]
8
+
9
+ def add_table: (Symbol table_name, ?description: String?) -> Table
10
+ def table: (Symbol table_name) -> Table
11
+ def has_table?: (Symbol table_name) -> bool
12
+ def tables: -> Array[Table]
13
+ def tables_hash: -> Hash[Symbol, Table]
14
+
15
+ # these come from the schema object (which this module is included into)
16
+ def source: -> database_or_configuration
17
+
18
+ class TableAlreadyExistsError < StandardError
19
+ end
20
+
21
+ class TableDoesNotExistError < StandardError
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,21 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Schema < Source
6
+ include Functions
7
+ include Tables
8
+ include Enums
9
+
10
+ attr_reader database: Database
11
+ attr_reader name: Symbol
12
+ def initialize: (database_or_configuration source, Database database, Symbol name) -> void
13
+
14
+ class ExpectedDatabaseError < StandardError
15
+ end
16
+
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,18 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ class Source
6
+ attr_reader source: database_or_configuration
7
+ def initialize: (database_or_configuration source) -> void
8
+ def from_configuration?: -> bool
9
+ def from_database?: -> bool
10
+ def assert_is_a_symbol!: (untyped value) -> true
11
+
12
+ private
13
+ def method_differences_descriptions: (untyped other_object, Array[Symbol]) -> Array[String]
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,19 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ module StructureLoader
6
+ def create_database_structure_cache: -> void
7
+ def fetch_structure: -> Hash[untyped, untyped]
8
+ def recursively_load_database_structure: -> void
9
+ def fetch_schema_names: -> Array[String]
10
+ def fetch_table_names: (Symbol schema_name) -> Array[String]
11
+
12
+ # these come from the database object (which this module is included into)
13
+ def connection: -> PG::Connection
14
+ def add_loaded_schema: (Symbol schema_name) -> untyped
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,20 @@
1
+ # TypeProf 0.21.7
2
+
3
+ # Classes
4
+ module DynamicMigrations
5
+ module Postgres
6
+ class Server
7
+ class Database
8
+ module TriggersAndFunctionsLoader
9
+ def fetch_triggers_and_functions: -> Hash[untyped, untyped]
10
+
11
+ # these come from the database object (which this module is included into)
12
+ def connection: -> PG::Connection
13
+
14
+ class EventTriggerProcedureSchemaMismatchError < StandardError
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,15 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ module ValidationsLoader
6
+ def create_database_validations_cache: -> void
7
+ def fetch_validations: -> Hash[untyped, untyped]
8
+
9
+ # these come from the database object (which this module is included into)
10
+ def connection: -> PG::Connection
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,34 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ class Database
5
+ @configured_schemas: Hash[Symbol, Schema]
6
+ @loaded_schemas: Hash[Symbol, Schema]
7
+ @configured_extensions: Hash[Symbol, true]
8
+ @loaded_extensions: Hash[Symbol, true]
9
+
10
+ include Connection
11
+ include StructureLoader
12
+ include ValidationsLoader
13
+ include KeysAndUniqueConstraintsLoader
14
+ include TriggersAndFunctionsLoader
15
+ include LoadedSchemas
16
+ include ConfiguredSchemas
17
+ include LoadedSchemasBuilder
18
+ include ConfiguredExtensions
19
+ include LoadedExtensions
20
+ include EnumsLoader
21
+ include ExtensionsLoader
22
+
23
+ attr_reader server: Server
24
+ attr_reader name: Symbol
25
+ def initialize: (Server server, Symbol name) -> void
26
+ def schema: (Symbol schema_name, database_or_configuration source) -> untyped
27
+ def differences: -> Differences
28
+
29
+ class ExpectedServerError < StandardError
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,19 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ class Server
4
+ @databases: Hash[Symbol, Database]
5
+
6
+ attr_reader host: String
7
+ attr_reader port: Integer
8
+ attr_reader username: String
9
+ attr_reader password: String
10
+ def initialize: (String host, Integer port, String username, String password) -> void
11
+ def add_database: (Symbol database_name) -> Database
12
+ def database: (Symbol database_name) -> Database
13
+ def databases: -> Array[Database]
14
+
15
+ class DatabaseAlreadyExistsError < StandardError
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,4 @@
1
+ module DynamicMigrations
2
+ module Postgres
3
+ end
4
+ end
@@ -0,0 +1,6 @@
1
+ type database_or_configuration = :database | :configuration
2
+
3
+ module DynamicMigrations
4
+ VERSION: String
5
+ # See the writing guide of rbs: https://github.com/ruby/rbs#guides
6
+ end
data/sig/pg.rbs ADDED
@@ -0,0 +1,20 @@
1
+ module PG
2
+ class Connection
3
+ def close: () -> void
4
+ def exec: (String sql) -> Array[Hash[String, String]]
5
+ def exec_params: (String sql, *untyped) -> Array[Hash[String, String]]
6
+ end
7
+
8
+ def self.connect: (
9
+ host: String,
10
+ port: Integer,
11
+ user: String,
12
+ password: String?,
13
+ dbname: Symbol,
14
+ sslmode: "prefer"
15
+
16
+ ) -> Connection
17
+
18
+ class UndefinedTable < StandardError
19
+ end
20
+ end
data/sig/tsort.rbs ADDED
@@ -0,0 +1,3 @@
1
+ module TSort
2
+ def tsort: () -> Array[untyped]
3
+ 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.0
4
+ version: 3.5.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-08-23 00:00:00.000000000 Z
11
+ date: 2023-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pg
@@ -154,6 +154,97 @@ files:
154
154
  - lib/dynamic_migrations/postgres/server/database/triggers_and_functions_loader.rb
155
155
  - lib/dynamic_migrations/postgres/server/database/validations_loader.rb
156
156
  - lib/dynamic_migrations/version.rb
157
+ - sig/dynamic_migrations.rbs
158
+ - sig/dynamic_migrations/active_record/migrators.rbs
159
+ - sig/dynamic_migrations/active_record/migrators/column.rbs
160
+ - sig/dynamic_migrations/active_record/migrators/enum.rbs
161
+ - sig/dynamic_migrations/active_record/migrators/foreign_key_constraint.rbs
162
+ - sig/dynamic_migrations/active_record/migrators/function.rbs
163
+ - sig/dynamic_migrations/active_record/migrators/index.rbs
164
+ - sig/dynamic_migrations/active_record/migrators/schema.rbs
165
+ - sig/dynamic_migrations/active_record/migrators/table.rbs
166
+ - sig/dynamic_migrations/active_record/migrators/trigger.rbs
167
+ - sig/dynamic_migrations/active_record/migrators/unique_constraint.rbs
168
+ - sig/dynamic_migrations/active_record/migrators/validation.rbs
169
+ - sig/dynamic_migrations/expected_boolean_error.rbs
170
+ - sig/dynamic_migrations/expected_integer_error.rbs
171
+ - sig/dynamic_migrations/expected_string_error.rbs
172
+ - sig/dynamic_migrations/expected_symbol_error.rbs
173
+ - sig/dynamic_migrations/invalid_source_error.rbs
174
+ - sig/dynamic_migrations/module_included_into_unexpected_target_error.rbs
175
+ - sig/dynamic_migrations/name_helper.rbs
176
+ - sig/dynamic_migrations/postgres.rbs
177
+ - sig/dynamic_migrations/postgres/connections.rbs
178
+ - sig/dynamic_migrations/postgres/generator.rbs
179
+ - sig/dynamic_migrations/postgres/generator/column.rbs
180
+ - sig/dynamic_migrations/postgres/generator/database_migration.rbs
181
+ - sig/dynamic_migrations/postgres/generator/enum.rbs
182
+ - sig/dynamic_migrations/postgres/generator/extension.rbs
183
+ - sig/dynamic_migrations/postgres/generator/foreign_key_constraint.rbs
184
+ - sig/dynamic_migrations/postgres/generator/fragment.rbs
185
+ - sig/dynamic_migrations/postgres/generator/function.rbs
186
+ - sig/dynamic_migrations/postgres/generator/index.rbs
187
+ - sig/dynamic_migrations/postgres/generator/migration.rbs
188
+ - sig/dynamic_migrations/postgres/generator/migration_dependency_sorter.rbs
189
+ - sig/dynamic_migrations/postgres/generator/primary_key.rbs
190
+ - sig/dynamic_migrations/postgres/generator/schema.rbs
191
+ - sig/dynamic_migrations/postgres/generator/schema_migration.rbs
192
+ - sig/dynamic_migrations/postgres/generator/table.rbs
193
+ - sig/dynamic_migrations/postgres/generator/table_migration.rbs
194
+ - sig/dynamic_migrations/postgres/generator/trigger.rbs
195
+ - sig/dynamic_migrations/postgres/generator/unique_constraint.rbs
196
+ - sig/dynamic_migrations/postgres/generator/validation.rbs
197
+ - sig/dynamic_migrations/postgres/server.rbs
198
+ - sig/dynamic_migrations/postgres/server/database.rbs
199
+ - sig/dynamic_migrations/postgres/server/database/configured_extensions.rbs
200
+ - sig/dynamic_migrations/postgres/server/database/configured_schemas.rbs
201
+ - sig/dynamic_migrations/postgres/server/database/connection.rbs
202
+ - sig/dynamic_migrations/postgres/server/database/differences.rbs
203
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations.rbs
204
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/extensions.rbs
205
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas.rbs
206
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/enums.rbs
207
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/functions.rbs
208
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables.rbs
209
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/columns.rbs
210
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/foreign_key_constraints.rbs
211
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/indexes.rbs
212
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/primary_key.rbs
213
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/triggers.rbs
214
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/unique_constraints.rbs
215
+ - sig/dynamic_migrations/postgres/server/database/differences/to_migrations/schemas/tables/validations.rbs
216
+ - sig/dynamic_migrations/postgres/server/database/enums_loader.rbs
217
+ - sig/dynamic_migrations/postgres/server/database/extensions_loader.rbs
218
+ - sig/dynamic_migrations/postgres/server/database/keys_and_unique_constraints_loader.rbs
219
+ - sig/dynamic_migrations/postgres/server/database/loaded_extensions.rbs
220
+ - sig/dynamic_migrations/postgres/server/database/loaded_schemas.rbs
221
+ - sig/dynamic_migrations/postgres/server/database/loaded_schemas_builder.rbs
222
+ - sig/dynamic_migrations/postgres/server/database/schema.rbs
223
+ - sig/dynamic_migrations/postgres/server/database/schema/enum.rbs
224
+ - sig/dynamic_migrations/postgres/server/database/schema/enums.rbs
225
+ - sig/dynamic_migrations/postgres/server/database/schema/function.rbs
226
+ - sig/dynamic_migrations/postgres/server/database/schema/functions.rbs
227
+ - sig/dynamic_migrations/postgres/server/database/schema/table.rbs
228
+ - sig/dynamic_migrations/postgres/server/database/schema/table/column.rbs
229
+ - sig/dynamic_migrations/postgres/server/database/schema/table/columns.rbs
230
+ - sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraint.rbs
231
+ - sig/dynamic_migrations/postgres/server/database/schema/table/foreign_key_constraints.rbs
232
+ - sig/dynamic_migrations/postgres/server/database/schema/table/index.rbs
233
+ - sig/dynamic_migrations/postgres/server/database/schema/table/indexes.rbs
234
+ - sig/dynamic_migrations/postgres/server/database/schema/table/primary_key.rbs
235
+ - sig/dynamic_migrations/postgres/server/database/schema/table/trigger.rbs
236
+ - sig/dynamic_migrations/postgres/server/database/schema/table/triggers.rbs
237
+ - sig/dynamic_migrations/postgres/server/database/schema/table/unique_constraint.rbs
238
+ - sig/dynamic_migrations/postgres/server/database/schema/table/unique_constraints.rbs
239
+ - sig/dynamic_migrations/postgres/server/database/schema/table/validation.rbs
240
+ - sig/dynamic_migrations/postgres/server/database/schema/table/validations.rbs
241
+ - sig/dynamic_migrations/postgres/server/database/schema/tables.rbs
242
+ - sig/dynamic_migrations/postgres/server/database/source.rbs
243
+ - sig/dynamic_migrations/postgres/server/database/structure_loader.rbs
244
+ - sig/dynamic_migrations/postgres/server/database/triggers_and_functions_loader.rbs
245
+ - sig/dynamic_migrations/postgres/server/database/validations_loader.rbs
246
+ - sig/pg.rbs
247
+ - sig/tsort.rbs
157
248
  homepage:
158
249
  licenses:
159
250
  - MIT