torque-postgresql 4.0.1 → 4.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +52 -0
- data/lib/generators/torque/skill_generator.rb +17 -0
- data/lib/generators/torque/templates/trigger.sql.erb +3 -0
- data/lib/generators/torque/trigger_generator.rb +13 -0
- data/lib/torque/postgresql/adapter/database_statements.rb +98 -7
- data/lib/torque/postgresql/adapter/inheritance_statements.rb +297 -0
- data/lib/torque/postgresql/adapter/oid/array.rb +13 -0
- data/lib/torque/postgresql/adapter/oid/box.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/circle.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/composite.rb +117 -0
- data/lib/torque/postgresql/adapter/oid/enum.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/enum_set.rb +2 -2
- data/lib/torque/postgresql/adapter/oid/interval.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/line.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/lquery.rb +70 -0
- data/lib/torque/postgresql/adapter/oid/ltree.rb +111 -0
- data/lib/torque/postgresql/adapter/oid/segment.rb +1 -1
- data/lib/torque/postgresql/adapter/oid/struct.rb +150 -0
- data/lib/torque/postgresql/adapter/oid/struct_list.rb +52 -0
- data/lib/torque/postgresql/adapter/oid/struct_set.rb +38 -0
- data/lib/torque/postgresql/adapter/oid.rb +13 -0
- data/lib/torque/postgresql/adapter/quoting.rb +11 -2
- data/lib/torque/postgresql/adapter/schema_definitions.rb +51 -0
- data/lib/torque/postgresql/adapter/schema_dumper.rb +27 -0
- data/lib/torque/postgresql/adapter/schema_statements.rb +207 -0
- data/lib/torque/postgresql/adapter.rb +2 -5
- data/lib/torque/postgresql/arel/nodes.rb +114 -1
- data/lib/torque/postgresql/arel/visitors.rb +65 -8
- data/lib/torque/postgresql/associations/join_dependency.rb +55 -0
- data/lib/torque/postgresql/associations.rb +3 -0
- data/lib/torque/postgresql/attributes/base.rb +97 -0
- data/lib/torque/postgresql/attributes/composite.rb +98 -0
- data/lib/torque/postgresql/attributes/enum.rb +13 -7
- data/lib/torque/postgresql/attributes/lquery.rb +120 -0
- data/lib/torque/postgresql/attributes/ltree.rb +121 -0
- data/lib/torque/postgresql/attributes/simple_enum.rb +72 -0
- data/lib/torque/postgresql/attributes/struct.rb +137 -0
- data/lib/torque/postgresql/base.rb +26 -15
- data/lib/torque/postgresql/config.rb +100 -15
- data/lib/torque/postgresql/geometry_builder.rb +4 -10
- data/lib/torque/postgresql/inheritance/expander.rb +66 -0
- data/lib/torque/postgresql/inheritance/record.rb +52 -0
- data/lib/torque/postgresql/inheritance.rb +141 -68
- data/lib/torque/postgresql/migration/command_recorder.rb +76 -0
- data/lib/torque/postgresql/predicate_builder/arel_attribute_handler.rb +1 -1
- data/lib/torque/postgresql/predicate_builder/array_handler.rb +16 -8
- data/lib/torque/postgresql/predicate_builder/composite_handler.rb +122 -0
- data/lib/torque/postgresql/predicate_builder/ltree_handler.rb +112 -0
- data/lib/torque/postgresql/predicate_builder/struct_handler.rb +88 -0
- data/lib/torque/postgresql/predicate_builder.rb +53 -0
- data/lib/torque/postgresql/predicate_table.rb +61 -0
- data/lib/torque/postgresql/railtie.rb +52 -0
- data/lib/torque/postgresql/relation/auxiliary_statement.rb +7 -3
- data/lib/torque/postgresql/relation/buckets.rb +2 -1
- data/lib/torque/postgresql/relation/cross_join.rb +193 -0
- data/lib/torque/postgresql/relation/inheritance.rb +145 -28
- data/lib/torque/postgresql/relation/join_series.rb +1 -0
- data/lib/torque/postgresql/relation/merger.rb +30 -5
- data/lib/torque/postgresql/relation/segments.rb +140 -0
- data/lib/torque/postgresql/relation.rb +32 -12
- data/lib/torque/postgresql/schema_cache.rb +1 -0
- data/lib/torque/postgresql/validations.rb +29 -0
- data/lib/torque/postgresql/version.rb +1 -1
- data/lib/torque/postgresql/versioned_commands/command_migration.rb +24 -1
- data/lib/torque/postgresql/versioned_commands.rb +39 -0
- data/lib/torque/postgresql.rb +4 -0
- data/sig/generators/torque/function_generator.rbs +9 -0
- data/sig/generators/torque/skill_generator.rbs +7 -0
- data/sig/generators/torque/trigger_generator.rbs +9 -0
- data/sig/generators/torque/type_generator.rbs +9 -0
- data/sig/generators/torque/view_generator.rbs +9 -0
- data/sig/manifest.yaml +7 -0
- data/sig/torque/postgresql/adapter/database_statements.rbs +42 -0
- data/sig/torque/postgresql/adapter/inheritance_statements.rbs +36 -0
- data/sig/torque/postgresql/adapter/oid/array.rbs +20 -0
- data/sig/torque/postgresql/adapter/oid/box.rbs +28 -0
- data/sig/torque/postgresql/adapter/oid/circle.rbs +33 -0
- data/sig/torque/postgresql/adapter/oid/composite.rbs +35 -0
- data/sig/torque/postgresql/adapter/oid/enum.rbs +28 -0
- data/sig/torque/postgresql/adapter/oid/enum_set.rbs +19 -0
- data/sig/torque/postgresql/adapter/oid/interval.rbs +20 -0
- data/sig/torque/postgresql/adapter/oid/line.rbs +33 -0
- data/sig/torque/postgresql/adapter/oid/lquery.rbs +21 -0
- data/sig/torque/postgresql/adapter/oid/ltree.rbs +32 -0
- data/sig/torque/postgresql/adapter/oid/range.rbs +28 -0
- data/sig/torque/postgresql/adapter/oid/segment.rbs +38 -0
- data/sig/torque/postgresql/adapter/oid/struct.rbs +41 -0
- data/sig/torque/postgresql/adapter/oid/struct_list.rbs +20 -0
- data/sig/torque/postgresql/adapter/oid/struct_set.rbs +18 -0
- data/sig/torque/postgresql/adapter/oid.rbs +9 -0
- data/sig/torque/postgresql/adapter/quoting.rbs +20 -0
- data/sig/torque/postgresql/adapter/schema_creation.rbs +13 -0
- data/sig/torque/postgresql/adapter/schema_definitions.rbs +55 -0
- data/sig/torque/postgresql/adapter/schema_dumper.rbs +37 -0
- data/sig/torque/postgresql/adapter/schema_overrides.rbs +46 -0
- data/sig/torque/postgresql/adapter/schema_statements.rbs +50 -0
- data/sig/torque/postgresql/adapter.rbs +24 -0
- data/sig/torque/postgresql/arel/infix_operation.rbs +79 -0
- data/sig/torque/postgresql/arel/join_source.rbs +19 -0
- data/sig/torque/postgresql/arel/nodes.rbs +83 -0
- data/sig/torque/postgresql/arel/operations.rbs +28 -0
- data/sig/torque/postgresql/arel/select_manager.rbs +15 -0
- data/sig/torque/postgresql/arel/visitors.rbs +30 -0
- data/sig/torque/postgresql/arel.rbs +6 -0
- data/sig/torque/postgresql/associations/association_scope.rbs +28 -0
- data/sig/torque/postgresql/associations/belongs_to_many_association.rbs +51 -0
- data/sig/torque/postgresql/associations/builder/belongs_to_many.rbs +24 -0
- data/sig/torque/postgresql/associations/builder/has_many.rbs +15 -0
- data/sig/torque/postgresql/associations/builder.rbs +8 -0
- data/sig/torque/postgresql/associations/foreign_association.rbs +16 -0
- data/sig/torque/postgresql/associations/join_dependency.rbs +16 -0
- data/sig/torque/postgresql/associations/preloader/association.rbs +32 -0
- data/sig/torque/postgresql/associations/preloader/loader_query.rbs +20 -0
- data/sig/torque/postgresql/associations/preloader.rbs +8 -0
- data/sig/torque/postgresql/associations.rbs +17 -0
- data/sig/torque/postgresql/attributes/base.rbs +37 -0
- data/sig/torque/postgresql/attributes/builder/enum.rbs +38 -0
- data/sig/torque/postgresql/attributes/builder/full_text_search.rbs +27 -0
- data/sig/torque/postgresql/attributes/builder/period.rbs +106 -0
- data/sig/torque/postgresql/attributes/builder.rbs +19 -0
- data/sig/torque/postgresql/attributes/composite.rbs +28 -0
- data/sig/torque/postgresql/attributes/enum.rbs +69 -0
- data/sig/torque/postgresql/attributes/enum_set.rbs +75 -0
- data/sig/torque/postgresql/attributes/full_text_search.rbs +13 -0
- data/sig/torque/postgresql/attributes/lazy.rbs +17 -0
- data/sig/torque/postgresql/attributes/lquery.rbs +48 -0
- data/sig/torque/postgresql/attributes/ltree.rbs +46 -0
- data/sig/torque/postgresql/attributes/period.rbs +13 -0
- data/sig/torque/postgresql/attributes/simple_enum.rbs +39 -0
- data/sig/torque/postgresql/attributes/struct.rbs +38 -0
- data/sig/torque/postgresql/attributes.rbs +6 -0
- data/sig/torque/postgresql/autosave_association.rbs +16 -0
- data/sig/torque/postgresql/auxiliary_statement/recursive.rbs +22 -0
- data/sig/torque/postgresql/auxiliary_statement/settings.rbs +63 -0
- data/sig/torque/postgresql/auxiliary_statement.rbs +57 -0
- data/sig/torque/postgresql/base.rbs +41 -0
- data/sig/torque/postgresql/collector.rbs +7 -0
- data/sig/torque/postgresql/config.rbs +9 -0
- data/sig/torque/postgresql/function.rbs +21 -0
- data/sig/torque/postgresql/geometry_builder.rbs +20 -0
- data/sig/torque/postgresql/i18n.rbs +15 -0
- data/sig/torque/postgresql/inheritance/expander.rbs +23 -0
- data/sig/torque/postgresql/inheritance/record.rbs +20 -0
- data/sig/torque/postgresql/inheritance.rbs +47 -0
- data/sig/torque/postgresql/insert_all.rbs +22 -0
- data/sig/torque/postgresql/migration/command_recorder.rbs +30 -0
- data/sig/torque/postgresql/migration.rbs +6 -0
- data/sig/torque/postgresql/predicate_builder/arel_attribute_handler.rbs +15 -0
- data/sig/torque/postgresql/predicate_builder/array_handler.rbs +26 -0
- data/sig/torque/postgresql/predicate_builder/composite_handler.rbs +26 -0
- data/sig/torque/postgresql/predicate_builder/enumerator_lazy_handler.rbs +18 -0
- data/sig/torque/postgresql/predicate_builder/ltree_handler.rbs +36 -0
- data/sig/torque/postgresql/predicate_builder/regexp_handler.rbs +16 -0
- data/sig/torque/postgresql/predicate_builder/struct_handler.rbs +24 -0
- data/sig/torque/postgresql/predicate_builder.rbs +23 -0
- data/sig/torque/postgresql/predicate_table.rbs +24 -0
- data/sig/torque/postgresql/railtie.rbs +10 -0
- data/sig/torque/postgresql/reflection/abstract_reflection.rbs +22 -0
- data/sig/torque/postgresql/reflection/association_reflection.rbs +18 -0
- data/sig/torque/postgresql/reflection/belongs_to_many_reflection.rbs +30 -0
- data/sig/torque/postgresql/reflection/has_many_reflection.rbs +14 -0
- data/sig/torque/postgresql/reflection/runtime_reflection.rbs +18 -0
- data/sig/torque/postgresql/reflection/through_reflection.rbs +14 -0
- data/sig/torque/postgresql/reflection.rbs +11 -0
- data/sig/torque/postgresql/relation/auxiliary_statement.rbs +29 -0
- data/sig/torque/postgresql/relation/buckets.rbs +35 -0
- data/sig/torque/postgresql/relation/cross_join.rbs +63 -0
- data/sig/torque/postgresql/relation/distinct_on.rbs +16 -0
- data/sig/torque/postgresql/relation/inheritance.rbs +48 -0
- data/sig/torque/postgresql/relation/join_series.rbs +28 -0
- data/sig/torque/postgresql/relation/merger.rbs +23 -0
- data/sig/torque/postgresql/relation/segments.rbs +27 -0
- data/sig/torque/postgresql/relation.rbs +48 -0
- data/sig/torque/postgresql/schema_cache/bound_schema_reflection.rbs +14 -0
- data/sig/torque/postgresql/schema_cache/inheritance.rbs +12 -0
- data/sig/torque/postgresql/schema_cache/schema_reflection.rbs +14 -0
- data/sig/torque/postgresql/schema_cache.rbs +43 -0
- data/sig/torque/postgresql/table_name.rbs +20 -0
- data/sig/torque/postgresql/validations.rbs +13 -0
- data/sig/torque/postgresql/version.rbs +5 -0
- data/sig/torque/postgresql/versioned_commands/command_migration.rbs +54 -0
- data/sig/torque/postgresql/versioned_commands/generator.rbs +17 -0
- data/sig/torque/postgresql/versioned_commands/migration_context.rbs +30 -0
- data/sig/torque/postgresql/versioned_commands/migrator.rbs +19 -0
- data/sig/torque/postgresql/versioned_commands/schema_table.rbs +23 -0
- data/sig/torque/postgresql/versioned_commands.rbs +25 -0
- data/sig/torque/postgresql.rbs +26 -0
- data/skills/torque-postgresql/SKILL.md +70 -0
- data/spec/fixtures/migrations/20250101000008_create_trigger_audit_users_v1.sql +3 -0
- data/spec/initialize.rb +29 -2
- data/spec/mocks/cache_query.rb +13 -1
- data/spec/models/author.rb +1 -1
- data/spec/models/comment.rb +2 -0
- data/spec/models/place.rb +2 -0
- data/spec/models/profile.rb +31 -0
- data/spec/rbs_helper.rb +8 -0
- data/spec/schema.rb +35 -4
- data/spec/spec_helper.rb +1 -0
- data/spec/tests/arel_spec.rb +3 -3
- data/spec/tests/auxiliary_statement_spec.rb +12 -0
- data/spec/tests/buckets_spec.rb +122 -0
- data/spec/tests/composite_spec.rb +867 -0
- data/spec/tests/cross_join_spec.rb +185 -0
- data/spec/tests/distinct_on_spec.rb +5 -0
- data/spec/tests/enum_set_spec.rb +4 -0
- data/spec/tests/enum_spec.rb +20 -4
- data/spec/tests/geometric_builder_spec.rb +16 -5
- data/spec/tests/has_many_spec.rb +2 -1
- data/spec/tests/interval_spec.rb +6 -0
- data/spec/tests/ltree_spec.rb +886 -0
- data/spec/tests/predicate_builder_spec.rb +120 -0
- data/spec/tests/relation_spec.rb +25 -69
- data/spec/tests/segments_spec.rb +264 -0
- data/spec/tests/struct_spec.rb +1170 -0
- data/spec/tests/table_inheritance_spec.rb +1037 -56
- data/spec/tests/versioned_commands_spec.rb +145 -0
- metadata +198 -2
|
@@ -8,6 +8,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
8
8
|
expect(connection).not_to respond_to(:create_function)
|
|
9
9
|
expect(connection).not_to respond_to(:create_type)
|
|
10
10
|
expect(connection).not_to respond_to(:create_view)
|
|
11
|
+
expect(connection).not_to respond_to(:create_trigger)
|
|
11
12
|
end
|
|
12
13
|
|
|
13
14
|
it 'does not have the methods available in a migration' do
|
|
@@ -15,6 +16,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
15
16
|
expect(instance).not_to respond_to(:create_function)
|
|
16
17
|
expect(instance).not_to respond_to(:create_type)
|
|
17
18
|
expect(instance).not_to respond_to(:create_view)
|
|
19
|
+
expect(instance).not_to respond_to(:create_trigger)
|
|
18
20
|
end
|
|
19
21
|
|
|
20
22
|
it 'does have the methods in schema definition' do
|
|
@@ -22,6 +24,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
22
24
|
expect(instance).to respond_to(:create_function)
|
|
23
25
|
expect(instance).to respond_to(:create_type)
|
|
24
26
|
expect(instance).to respond_to(:create_view)
|
|
27
|
+
expect(instance).to respond_to(:create_trigger)
|
|
25
28
|
end
|
|
26
29
|
|
|
27
30
|
context 'on context' do
|
|
@@ -39,6 +42,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
39
42
|
expect(result[4]).to eq('20250101000005_create_view_all_users_v1.sql')
|
|
40
43
|
expect(result[5]).to eq('20250101000006_create_type_user_id_v1.sql')
|
|
41
44
|
expect(result[6]).to eq('20250101000007_remove_function_count_users_v2.sql')
|
|
45
|
+
expect(result[7]).to eq('20250101000008_create_trigger_audit_users_v1.sql')
|
|
42
46
|
end
|
|
43
47
|
|
|
44
48
|
it 'correctly report the status of all migrations' do
|
|
@@ -50,6 +54,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
50
54
|
expect(result[4]).to eq(['down', '20250101000005', 'Create View all_users (v1)'])
|
|
51
55
|
expect(result[5]).to eq(['down', '20250101000006', 'Create Type user_id (v1)'])
|
|
52
56
|
expect(result[6]).to eq(['down', '20250101000007', 'Remove Function count_users (v2)'])
|
|
57
|
+
expect(result[7]).to eq(['down', '20250101000008', 'Create Trigger audit_users (v1)'])
|
|
53
58
|
end
|
|
54
59
|
|
|
55
60
|
it 'reports for invalid names' do
|
|
@@ -280,6 +285,89 @@ RSpec.describe 'VersionedCommands' do
|
|
|
280
285
|
expect { base.validate!(:view, content, 'internal_test') }.not_to raise_error
|
|
281
286
|
end
|
|
282
287
|
end
|
|
288
|
+
|
|
289
|
+
context 'on trigger' do
|
|
290
|
+
it 'requires a proper definition' do
|
|
291
|
+
content = <<~SQL
|
|
292
|
+
CREATE OR REPLACE FUNCTION test() RETURNS trigger;
|
|
293
|
+
SQL
|
|
294
|
+
|
|
295
|
+
expect do
|
|
296
|
+
base.validate!(:trigger, content, 'test')
|
|
297
|
+
end.to raise_error(ArgumentError, /Missing or invalid trigger/)
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
it 'prevents multiple trigger definitions' do
|
|
301
|
+
content = <<~SQL
|
|
302
|
+
CREATE OR REPLACE TRIGGER test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
303
|
+
CREATE OR REPLACE TRIGGER other_test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
304
|
+
SQL
|
|
305
|
+
|
|
306
|
+
expect do
|
|
307
|
+
base.validate!(:trigger, content, 'test')
|
|
308
|
+
end.to raise_error(ArgumentError, /More than one trigger/)
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
it 'requires OR REPLACE clause' do
|
|
312
|
+
content = <<~SQL
|
|
313
|
+
CREATE TRIGGER test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
314
|
+
SQL
|
|
315
|
+
|
|
316
|
+
expect do
|
|
317
|
+
base.validate!(:trigger, content, 'test')
|
|
318
|
+
end.to raise_error(ArgumentError, /'OR REPLACE' is required/)
|
|
319
|
+
end
|
|
320
|
+
|
|
321
|
+
it 'requires matching name' do
|
|
322
|
+
content = <<~SQL
|
|
323
|
+
CREATE OR REPLACE TRIGGER other_test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
324
|
+
SQL
|
|
325
|
+
|
|
326
|
+
expect do
|
|
327
|
+
base.validate!(:trigger, content, 'test')
|
|
328
|
+
end.to raise_error(ArgumentError, /must match file name/)
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
it 'works when setup correctly' do
|
|
332
|
+
content = <<~SQL
|
|
333
|
+
CREATE OR REPLACE TRIGGER TEST BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
334
|
+
SQL
|
|
335
|
+
|
|
336
|
+
expect { base.validate!(:trigger, content, 'test') }.not_to raise_error
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
it 'supports a bundled function' do
|
|
340
|
+
content = <<~SQL
|
|
341
|
+
CREATE OR REPLACE FUNCTION fn() RETURNS trigger AS $$ BEGIN RETURN NEW; END; $$ LANGUAGE plpgsql;
|
|
342
|
+
CREATE OR REPLACE TRIGGER test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
343
|
+
SQL
|
|
344
|
+
|
|
345
|
+
expect { base.validate!(:trigger, content, 'test') }.not_to raise_error
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
it 'prevents multiple bundled functions' do
|
|
349
|
+
content = <<~SQL
|
|
350
|
+
CREATE OR REPLACE FUNCTION fn() RETURNS trigger;
|
|
351
|
+
CREATE OR REPLACE FUNCTION other_fn() RETURNS trigger;
|
|
352
|
+
CREATE OR REPLACE TRIGGER test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
353
|
+
SQL
|
|
354
|
+
|
|
355
|
+
expect do
|
|
356
|
+
base.validate!(:trigger, content, 'test')
|
|
357
|
+
end.to raise_error(ArgumentError, /one function/)
|
|
358
|
+
end
|
|
359
|
+
|
|
360
|
+
it 'requires OR REPLACE on the bundled function' do
|
|
361
|
+
content = <<~SQL
|
|
362
|
+
CREATE FUNCTION fn() RETURNS trigger;
|
|
363
|
+
CREATE OR REPLACE TRIGGER test BEFORE INSERT ON users FOR EACH ROW EXECUTE FUNCTION fn();
|
|
364
|
+
SQL
|
|
365
|
+
|
|
366
|
+
expect do
|
|
367
|
+
base.validate!(:trigger, content, 'test')
|
|
368
|
+
end.to raise_error(ArgumentError, /'OR REPLACE' is required/)
|
|
369
|
+
end
|
|
370
|
+
end
|
|
283
371
|
end
|
|
284
372
|
|
|
285
373
|
context 'on running' do
|
|
@@ -363,6 +451,34 @@ RSpec.describe 'VersionedCommands' do
|
|
|
363
451
|
expect(connection).to receive(:execute).with('DROP VIEW test;')
|
|
364
452
|
command.migrate(:down)
|
|
365
453
|
end
|
|
454
|
+
|
|
455
|
+
it 'properly drops triggers' do
|
|
456
|
+
command.type = 'trigger'
|
|
457
|
+
|
|
458
|
+
sql.replace(<<~SQL)
|
|
459
|
+
CREATE OR REPLACE TRIGGER test
|
|
460
|
+
BEFORE INSERT ON users
|
|
461
|
+
FOR EACH ROW EXECUTE FUNCTION fn();
|
|
462
|
+
SQL
|
|
463
|
+
|
|
464
|
+
expect(connection).to receive(:execute).with('DROP TRIGGER test ON users;')
|
|
465
|
+
command.migrate(:down)
|
|
466
|
+
end
|
|
467
|
+
|
|
468
|
+
it 'properly drops triggers with bundled functions' do
|
|
469
|
+
command.type = 'trigger'
|
|
470
|
+
|
|
471
|
+
sql.replace(<<~SQL)
|
|
472
|
+
CREATE OR REPLACE FUNCTION fn() RETURNS trigger AS $$ BEGIN RETURN NEW; END; $$ LANGUAGE plpgsql;
|
|
473
|
+
CREATE OR REPLACE TRIGGER test
|
|
474
|
+
BEFORE INSERT ON internal.users
|
|
475
|
+
FOR EACH ROW EXECUTE FUNCTION fn();
|
|
476
|
+
SQL
|
|
477
|
+
|
|
478
|
+
expect(connection).to receive(:execute).with('DROP TRIGGER test ON internal.users;')
|
|
479
|
+
expect(connection).to receive(:execute).with('DROP FUNCTION fn();')
|
|
480
|
+
command.migrate(:down)
|
|
481
|
+
end
|
|
366
482
|
end
|
|
367
483
|
|
|
368
484
|
context 'on migrator' do
|
|
@@ -449,6 +565,8 @@ RSpec.describe 'VersionedCommands' do
|
|
|
449
565
|
end
|
|
450
566
|
|
|
451
567
|
before do
|
|
568
|
+
connection.instance_variable_set(:@schemas_whitelist, nil)
|
|
569
|
+
|
|
452
570
|
allow(commands_table).to receive(:new).and_return(schema_table)
|
|
453
571
|
allow(schema_table).to receive(:versions_of).and_return([])
|
|
454
572
|
allow(schema_table).to receive(:table_name).and_return('versioned_commands_tbl')
|
|
@@ -459,6 +577,7 @@ RSpec.describe 'VersionedCommands' do
|
|
|
459
577
|
expect(dump_result).not_to include('# These are types managed by versioned commands')
|
|
460
578
|
expect(dump_result).not_to include('# These are functions managed by versioned commands')
|
|
461
579
|
expect(dump_result).not_to include('# These are views managed by versioned commands')
|
|
580
|
+
expect(dump_result).not_to include('# These are triggers managed by versioned commands')
|
|
462
581
|
end
|
|
463
582
|
|
|
464
583
|
it 'includes all types' do
|
|
@@ -509,5 +628,31 @@ RSpec.describe 'VersionedCommands' do
|
|
|
509
628
|
expect(dump_result).to include('create_view "internal_other", version: 2')
|
|
510
629
|
expect(dump_result).not_to include('create_view "removed", version: 1')
|
|
511
630
|
end
|
|
631
|
+
|
|
632
|
+
it 'includes all triggers' do
|
|
633
|
+
body = 'RETURNS trigger AS $$ BEGIN RETURN NEW; END; $$ LANGUAGE plpgsql'
|
|
634
|
+
connection.execute('CREATE TABLE trigger_users (id integer);')
|
|
635
|
+
connection.execute('CREATE TABLE internal.trigger_users (id integer);')
|
|
636
|
+
connection.execute("CREATE FUNCTION trigger_fn() #{body};")
|
|
637
|
+
connection.execute(<<~SQL)
|
|
638
|
+
CREATE TRIGGER test BEFORE INSERT ON trigger_users
|
|
639
|
+
FOR EACH ROW EXECUTE FUNCTION trigger_fn();
|
|
640
|
+
SQL
|
|
641
|
+
connection.execute(<<~SQL)
|
|
642
|
+
CREATE TRIGGER other BEFORE INSERT ON internal.trigger_users
|
|
643
|
+
FOR EACH ROW EXECUTE FUNCTION trigger_fn();
|
|
644
|
+
SQL
|
|
645
|
+
|
|
646
|
+
allow(schema_table).to receive(:versions_of).with('trigger').and_return([
|
|
647
|
+
['test', 1],
|
|
648
|
+
['internal_other', 2],
|
|
649
|
+
['remove', 1],
|
|
650
|
+
])
|
|
651
|
+
|
|
652
|
+
expect(dump_result).to include('# These are triggers managed by versioned commands')
|
|
653
|
+
expect(dump_result).to include('create_trigger "test", version: 1')
|
|
654
|
+
expect(dump_result).to include('create_trigger "internal_other", version: 2')
|
|
655
|
+
expect(dump_result).not_to include('create_trigger "removed", version: 1')
|
|
656
|
+
end
|
|
512
657
|
end
|
|
513
658
|
end
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: torque-postgresql
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Carlos Silva
|
|
8
8
|
bindir: bin
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date:
|
|
10
|
+
date: 2026-11-10 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: rails
|
|
@@ -37,6 +37,20 @@ dependencies:
|
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
39
|
version: '1.2'
|
|
40
|
+
- !ruby/object:Gem::Dependency
|
|
41
|
+
name: ostruct
|
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - ">="
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: '0.6'
|
|
47
|
+
type: :runtime
|
|
48
|
+
prerelease: false
|
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0.6'
|
|
40
54
|
- !ruby/object:Gem::Dependency
|
|
41
55
|
name: rake
|
|
42
56
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -93,6 +107,20 @@ dependencies:
|
|
|
93
107
|
- - "~>"
|
|
94
108
|
- !ruby/object:Gem::Version
|
|
95
109
|
version: '3.5'
|
|
110
|
+
- !ruby/object:Gem::Dependency
|
|
111
|
+
name: rbs
|
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
|
113
|
+
requirements:
|
|
114
|
+
- - "~>"
|
|
115
|
+
- !ruby/object:Gem::Version
|
|
116
|
+
version: '3.8'
|
|
117
|
+
type: :development
|
|
118
|
+
prerelease: false
|
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
120
|
+
requirements:
|
|
121
|
+
- - "~>"
|
|
122
|
+
- !ruby/object:Gem::Version
|
|
123
|
+
version: '3.8'
|
|
96
124
|
- !ruby/object:Gem::Dependency
|
|
97
125
|
name: factory_bot
|
|
98
126
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -133,25 +161,35 @@ files:
|
|
|
133
161
|
- README.rdoc
|
|
134
162
|
- Rakefile
|
|
135
163
|
- lib/generators/torque/function_generator.rb
|
|
164
|
+
- lib/generators/torque/skill_generator.rb
|
|
136
165
|
- lib/generators/torque/templates/function.sql.erb
|
|
166
|
+
- lib/generators/torque/templates/trigger.sql.erb
|
|
137
167
|
- lib/generators/torque/templates/type.sql.erb
|
|
138
168
|
- lib/generators/torque/templates/view.sql.erb
|
|
169
|
+
- lib/generators/torque/trigger_generator.rb
|
|
139
170
|
- lib/generators/torque/type_generator.rb
|
|
140
171
|
- lib/generators/torque/view_generator.rb
|
|
141
172
|
- lib/torque-postgresql.rb
|
|
142
173
|
- lib/torque/postgresql.rb
|
|
143
174
|
- lib/torque/postgresql/adapter.rb
|
|
144
175
|
- lib/torque/postgresql/adapter/database_statements.rb
|
|
176
|
+
- lib/torque/postgresql/adapter/inheritance_statements.rb
|
|
145
177
|
- lib/torque/postgresql/adapter/oid.rb
|
|
146
178
|
- lib/torque/postgresql/adapter/oid/array.rb
|
|
147
179
|
- lib/torque/postgresql/adapter/oid/box.rb
|
|
148
180
|
- lib/torque/postgresql/adapter/oid/circle.rb
|
|
181
|
+
- lib/torque/postgresql/adapter/oid/composite.rb
|
|
149
182
|
- lib/torque/postgresql/adapter/oid/enum.rb
|
|
150
183
|
- lib/torque/postgresql/adapter/oid/enum_set.rb
|
|
151
184
|
- lib/torque/postgresql/adapter/oid/interval.rb
|
|
152
185
|
- lib/torque/postgresql/adapter/oid/line.rb
|
|
186
|
+
- lib/torque/postgresql/adapter/oid/lquery.rb
|
|
187
|
+
- lib/torque/postgresql/adapter/oid/ltree.rb
|
|
153
188
|
- lib/torque/postgresql/adapter/oid/range.rb
|
|
154
189
|
- lib/torque/postgresql/adapter/oid/segment.rb
|
|
190
|
+
- lib/torque/postgresql/adapter/oid/struct.rb
|
|
191
|
+
- lib/torque/postgresql/adapter/oid/struct_list.rb
|
|
192
|
+
- lib/torque/postgresql/adapter/oid/struct_set.rb
|
|
155
193
|
- lib/torque/postgresql/adapter/quoting.rb
|
|
156
194
|
- lib/torque/postgresql/adapter/schema_creation.rb
|
|
157
195
|
- lib/torque/postgresql/adapter/schema_definitions.rb
|
|
@@ -172,19 +210,26 @@ files:
|
|
|
172
210
|
- lib/torque/postgresql/associations/builder/belongs_to_many.rb
|
|
173
211
|
- lib/torque/postgresql/associations/builder/has_many.rb
|
|
174
212
|
- lib/torque/postgresql/associations/foreign_association.rb
|
|
213
|
+
- lib/torque/postgresql/associations/join_dependency.rb
|
|
175
214
|
- lib/torque/postgresql/associations/preloader.rb
|
|
176
215
|
- lib/torque/postgresql/associations/preloader/association.rb
|
|
177
216
|
- lib/torque/postgresql/associations/preloader/loader_query.rb
|
|
178
217
|
- lib/torque/postgresql/attributes.rb
|
|
218
|
+
- lib/torque/postgresql/attributes/base.rb
|
|
179
219
|
- lib/torque/postgresql/attributes/builder.rb
|
|
180
220
|
- lib/torque/postgresql/attributes/builder/enum.rb
|
|
181
221
|
- lib/torque/postgresql/attributes/builder/full_text_search.rb
|
|
182
222
|
- lib/torque/postgresql/attributes/builder/period.rb
|
|
223
|
+
- lib/torque/postgresql/attributes/composite.rb
|
|
183
224
|
- lib/torque/postgresql/attributes/enum.rb
|
|
184
225
|
- lib/torque/postgresql/attributes/enum_set.rb
|
|
185
226
|
- lib/torque/postgresql/attributes/full_text_search.rb
|
|
186
227
|
- lib/torque/postgresql/attributes/lazy.rb
|
|
228
|
+
- lib/torque/postgresql/attributes/lquery.rb
|
|
229
|
+
- lib/torque/postgresql/attributes/ltree.rb
|
|
187
230
|
- lib/torque/postgresql/attributes/period.rb
|
|
231
|
+
- lib/torque/postgresql/attributes/simple_enum.rb
|
|
232
|
+
- lib/torque/postgresql/attributes/struct.rb
|
|
188
233
|
- lib/torque/postgresql/autosave_association.rb
|
|
189
234
|
- lib/torque/postgresql/auxiliary_statement.rb
|
|
190
235
|
- lib/torque/postgresql/auxiliary_statement/recursive.rb
|
|
@@ -196,14 +241,20 @@ files:
|
|
|
196
241
|
- lib/torque/postgresql/geometry_builder.rb
|
|
197
242
|
- lib/torque/postgresql/i18n.rb
|
|
198
243
|
- lib/torque/postgresql/inheritance.rb
|
|
244
|
+
- lib/torque/postgresql/inheritance/expander.rb
|
|
245
|
+
- lib/torque/postgresql/inheritance/record.rb
|
|
199
246
|
- lib/torque/postgresql/insert_all.rb
|
|
200
247
|
- lib/torque/postgresql/migration.rb
|
|
201
248
|
- lib/torque/postgresql/migration/command_recorder.rb
|
|
202
249
|
- lib/torque/postgresql/predicate_builder.rb
|
|
203
250
|
- lib/torque/postgresql/predicate_builder/arel_attribute_handler.rb
|
|
204
251
|
- lib/torque/postgresql/predicate_builder/array_handler.rb
|
|
252
|
+
- lib/torque/postgresql/predicate_builder/composite_handler.rb
|
|
205
253
|
- lib/torque/postgresql/predicate_builder/enumerator_lazy_handler.rb
|
|
254
|
+
- lib/torque/postgresql/predicate_builder/ltree_handler.rb
|
|
206
255
|
- lib/torque/postgresql/predicate_builder/regexp_handler.rb
|
|
256
|
+
- lib/torque/postgresql/predicate_builder/struct_handler.rb
|
|
257
|
+
- lib/torque/postgresql/predicate_table.rb
|
|
207
258
|
- lib/torque/postgresql/railtie.rb
|
|
208
259
|
- lib/torque/postgresql/reflection.rb
|
|
209
260
|
- lib/torque/postgresql/reflection/abstract_reflection.rb
|
|
@@ -215,15 +266,18 @@ files:
|
|
|
215
266
|
- lib/torque/postgresql/relation.rb
|
|
216
267
|
- lib/torque/postgresql/relation/auxiliary_statement.rb
|
|
217
268
|
- lib/torque/postgresql/relation/buckets.rb
|
|
269
|
+
- lib/torque/postgresql/relation/cross_join.rb
|
|
218
270
|
- lib/torque/postgresql/relation/distinct_on.rb
|
|
219
271
|
- lib/torque/postgresql/relation/inheritance.rb
|
|
220
272
|
- lib/torque/postgresql/relation/join_series.rb
|
|
221
273
|
- lib/torque/postgresql/relation/merger.rb
|
|
274
|
+
- lib/torque/postgresql/relation/segments.rb
|
|
222
275
|
- lib/torque/postgresql/schema_cache.rb
|
|
223
276
|
- lib/torque/postgresql/schema_cache/bound_schema_reflection.rb
|
|
224
277
|
- lib/torque/postgresql/schema_cache/inheritance.rb
|
|
225
278
|
- lib/torque/postgresql/schema_cache/schema_reflection.rb
|
|
226
279
|
- lib/torque/postgresql/table_name.rb
|
|
280
|
+
- lib/torque/postgresql/validations.rb
|
|
227
281
|
- lib/torque/postgresql/version.rb
|
|
228
282
|
- lib/torque/postgresql/versioned_commands.rb
|
|
229
283
|
- lib/torque/postgresql/versioned_commands/command_migration.rb
|
|
@@ -231,6 +285,128 @@ files:
|
|
|
231
285
|
- lib/torque/postgresql/versioned_commands/migration_context.rb
|
|
232
286
|
- lib/torque/postgresql/versioned_commands/migrator.rb
|
|
233
287
|
- lib/torque/postgresql/versioned_commands/schema_table.rb
|
|
288
|
+
- sig/generators/torque/function_generator.rbs
|
|
289
|
+
- sig/generators/torque/skill_generator.rbs
|
|
290
|
+
- sig/generators/torque/trigger_generator.rbs
|
|
291
|
+
- sig/generators/torque/type_generator.rbs
|
|
292
|
+
- sig/generators/torque/view_generator.rbs
|
|
293
|
+
- sig/manifest.yaml
|
|
294
|
+
- sig/torque/postgresql.rbs
|
|
295
|
+
- sig/torque/postgresql/adapter.rbs
|
|
296
|
+
- sig/torque/postgresql/adapter/database_statements.rbs
|
|
297
|
+
- sig/torque/postgresql/adapter/inheritance_statements.rbs
|
|
298
|
+
- sig/torque/postgresql/adapter/oid.rbs
|
|
299
|
+
- sig/torque/postgresql/adapter/oid/array.rbs
|
|
300
|
+
- sig/torque/postgresql/adapter/oid/box.rbs
|
|
301
|
+
- sig/torque/postgresql/adapter/oid/circle.rbs
|
|
302
|
+
- sig/torque/postgresql/adapter/oid/composite.rbs
|
|
303
|
+
- sig/torque/postgresql/adapter/oid/enum.rbs
|
|
304
|
+
- sig/torque/postgresql/adapter/oid/enum_set.rbs
|
|
305
|
+
- sig/torque/postgresql/adapter/oid/interval.rbs
|
|
306
|
+
- sig/torque/postgresql/adapter/oid/line.rbs
|
|
307
|
+
- sig/torque/postgresql/adapter/oid/lquery.rbs
|
|
308
|
+
- sig/torque/postgresql/adapter/oid/ltree.rbs
|
|
309
|
+
- sig/torque/postgresql/adapter/oid/range.rbs
|
|
310
|
+
- sig/torque/postgresql/adapter/oid/segment.rbs
|
|
311
|
+
- sig/torque/postgresql/adapter/oid/struct.rbs
|
|
312
|
+
- sig/torque/postgresql/adapter/oid/struct_list.rbs
|
|
313
|
+
- sig/torque/postgresql/adapter/oid/struct_set.rbs
|
|
314
|
+
- sig/torque/postgresql/adapter/quoting.rbs
|
|
315
|
+
- sig/torque/postgresql/adapter/schema_creation.rbs
|
|
316
|
+
- sig/torque/postgresql/adapter/schema_definitions.rbs
|
|
317
|
+
- sig/torque/postgresql/adapter/schema_dumper.rbs
|
|
318
|
+
- sig/torque/postgresql/adapter/schema_overrides.rbs
|
|
319
|
+
- sig/torque/postgresql/adapter/schema_statements.rbs
|
|
320
|
+
- sig/torque/postgresql/arel.rbs
|
|
321
|
+
- sig/torque/postgresql/arel/infix_operation.rbs
|
|
322
|
+
- sig/torque/postgresql/arel/join_source.rbs
|
|
323
|
+
- sig/torque/postgresql/arel/nodes.rbs
|
|
324
|
+
- sig/torque/postgresql/arel/operations.rbs
|
|
325
|
+
- sig/torque/postgresql/arel/select_manager.rbs
|
|
326
|
+
- sig/torque/postgresql/arel/visitors.rbs
|
|
327
|
+
- sig/torque/postgresql/associations.rbs
|
|
328
|
+
- sig/torque/postgresql/associations/association_scope.rbs
|
|
329
|
+
- sig/torque/postgresql/associations/belongs_to_many_association.rbs
|
|
330
|
+
- sig/torque/postgresql/associations/builder.rbs
|
|
331
|
+
- sig/torque/postgresql/associations/builder/belongs_to_many.rbs
|
|
332
|
+
- sig/torque/postgresql/associations/builder/has_many.rbs
|
|
333
|
+
- sig/torque/postgresql/associations/foreign_association.rbs
|
|
334
|
+
- sig/torque/postgresql/associations/join_dependency.rbs
|
|
335
|
+
- sig/torque/postgresql/associations/preloader.rbs
|
|
336
|
+
- sig/torque/postgresql/associations/preloader/association.rbs
|
|
337
|
+
- sig/torque/postgresql/associations/preloader/loader_query.rbs
|
|
338
|
+
- sig/torque/postgresql/attributes.rbs
|
|
339
|
+
- sig/torque/postgresql/attributes/base.rbs
|
|
340
|
+
- sig/torque/postgresql/attributes/builder.rbs
|
|
341
|
+
- sig/torque/postgresql/attributes/builder/enum.rbs
|
|
342
|
+
- sig/torque/postgresql/attributes/builder/full_text_search.rbs
|
|
343
|
+
- sig/torque/postgresql/attributes/builder/period.rbs
|
|
344
|
+
- sig/torque/postgresql/attributes/composite.rbs
|
|
345
|
+
- sig/torque/postgresql/attributes/enum.rbs
|
|
346
|
+
- sig/torque/postgresql/attributes/enum_set.rbs
|
|
347
|
+
- sig/torque/postgresql/attributes/full_text_search.rbs
|
|
348
|
+
- sig/torque/postgresql/attributes/lazy.rbs
|
|
349
|
+
- sig/torque/postgresql/attributes/lquery.rbs
|
|
350
|
+
- sig/torque/postgresql/attributes/ltree.rbs
|
|
351
|
+
- sig/torque/postgresql/attributes/period.rbs
|
|
352
|
+
- sig/torque/postgresql/attributes/simple_enum.rbs
|
|
353
|
+
- sig/torque/postgresql/attributes/struct.rbs
|
|
354
|
+
- sig/torque/postgresql/autosave_association.rbs
|
|
355
|
+
- sig/torque/postgresql/auxiliary_statement.rbs
|
|
356
|
+
- sig/torque/postgresql/auxiliary_statement/recursive.rbs
|
|
357
|
+
- sig/torque/postgresql/auxiliary_statement/settings.rbs
|
|
358
|
+
- sig/torque/postgresql/base.rbs
|
|
359
|
+
- sig/torque/postgresql/collector.rbs
|
|
360
|
+
- sig/torque/postgresql/config.rbs
|
|
361
|
+
- sig/torque/postgresql/function.rbs
|
|
362
|
+
- sig/torque/postgresql/geometry_builder.rbs
|
|
363
|
+
- sig/torque/postgresql/i18n.rbs
|
|
364
|
+
- sig/torque/postgresql/inheritance.rbs
|
|
365
|
+
- sig/torque/postgresql/inheritance/expander.rbs
|
|
366
|
+
- sig/torque/postgresql/inheritance/record.rbs
|
|
367
|
+
- sig/torque/postgresql/insert_all.rbs
|
|
368
|
+
- sig/torque/postgresql/migration.rbs
|
|
369
|
+
- sig/torque/postgresql/migration/command_recorder.rbs
|
|
370
|
+
- sig/torque/postgresql/predicate_builder.rbs
|
|
371
|
+
- sig/torque/postgresql/predicate_builder/arel_attribute_handler.rbs
|
|
372
|
+
- sig/torque/postgresql/predicate_builder/array_handler.rbs
|
|
373
|
+
- sig/torque/postgresql/predicate_builder/composite_handler.rbs
|
|
374
|
+
- sig/torque/postgresql/predicate_builder/enumerator_lazy_handler.rbs
|
|
375
|
+
- sig/torque/postgresql/predicate_builder/ltree_handler.rbs
|
|
376
|
+
- sig/torque/postgresql/predicate_builder/regexp_handler.rbs
|
|
377
|
+
- sig/torque/postgresql/predicate_builder/struct_handler.rbs
|
|
378
|
+
- sig/torque/postgresql/predicate_table.rbs
|
|
379
|
+
- sig/torque/postgresql/railtie.rbs
|
|
380
|
+
- sig/torque/postgresql/reflection.rbs
|
|
381
|
+
- sig/torque/postgresql/reflection/abstract_reflection.rbs
|
|
382
|
+
- sig/torque/postgresql/reflection/association_reflection.rbs
|
|
383
|
+
- sig/torque/postgresql/reflection/belongs_to_many_reflection.rbs
|
|
384
|
+
- sig/torque/postgresql/reflection/has_many_reflection.rbs
|
|
385
|
+
- sig/torque/postgresql/reflection/runtime_reflection.rbs
|
|
386
|
+
- sig/torque/postgresql/reflection/through_reflection.rbs
|
|
387
|
+
- sig/torque/postgresql/relation.rbs
|
|
388
|
+
- sig/torque/postgresql/relation/auxiliary_statement.rbs
|
|
389
|
+
- sig/torque/postgresql/relation/buckets.rbs
|
|
390
|
+
- sig/torque/postgresql/relation/cross_join.rbs
|
|
391
|
+
- sig/torque/postgresql/relation/distinct_on.rbs
|
|
392
|
+
- sig/torque/postgresql/relation/inheritance.rbs
|
|
393
|
+
- sig/torque/postgresql/relation/join_series.rbs
|
|
394
|
+
- sig/torque/postgresql/relation/merger.rbs
|
|
395
|
+
- sig/torque/postgresql/relation/segments.rbs
|
|
396
|
+
- sig/torque/postgresql/schema_cache.rbs
|
|
397
|
+
- sig/torque/postgresql/schema_cache/bound_schema_reflection.rbs
|
|
398
|
+
- sig/torque/postgresql/schema_cache/inheritance.rbs
|
|
399
|
+
- sig/torque/postgresql/schema_cache/schema_reflection.rbs
|
|
400
|
+
- sig/torque/postgresql/table_name.rbs
|
|
401
|
+
- sig/torque/postgresql/validations.rbs
|
|
402
|
+
- sig/torque/postgresql/version.rbs
|
|
403
|
+
- sig/torque/postgresql/versioned_commands.rbs
|
|
404
|
+
- sig/torque/postgresql/versioned_commands/command_migration.rbs
|
|
405
|
+
- sig/torque/postgresql/versioned_commands/generator.rbs
|
|
406
|
+
- sig/torque/postgresql/versioned_commands/migration_context.rbs
|
|
407
|
+
- sig/torque/postgresql/versioned_commands/migrator.rbs
|
|
408
|
+
- sig/torque/postgresql/versioned_commands/schema_table.rbs
|
|
409
|
+
- skills/torque-postgresql/SKILL.md
|
|
234
410
|
- spec/en.yml
|
|
235
411
|
- spec/factories/authors.rb
|
|
236
412
|
- spec/factories/comments.rb
|
|
@@ -247,6 +423,7 @@ files:
|
|
|
247
423
|
- spec/fixtures/migrations/20250101000005_create_view_all_users_v1.sql
|
|
248
424
|
- spec/fixtures/migrations/20250101000006_create_type_user_id_v1.sql
|
|
249
425
|
- spec/fixtures/migrations/20250101000007_remove_function_count_users_v2.sql
|
|
426
|
+
- spec/fixtures/migrations/20250101000008_create_trigger_audit_users_v1.sql
|
|
250
427
|
- spec/initialize.rb
|
|
251
428
|
- spec/mocks/cache_query.rb
|
|
252
429
|
- spec/mocks/create_table.rb
|
|
@@ -263,7 +440,9 @@ files:
|
|
|
263
440
|
- spec/models/guest_comment.rb
|
|
264
441
|
- spec/models/internal/user.rb
|
|
265
442
|
- spec/models/item.rb
|
|
443
|
+
- spec/models/place.rb
|
|
266
444
|
- spec/models/post.rb
|
|
445
|
+
- spec/models/profile.rb
|
|
267
446
|
- spec/models/question.rb
|
|
268
447
|
- spec/models/question_select.rb
|
|
269
448
|
- spec/models/tag.rb
|
|
@@ -271,12 +450,16 @@ files:
|
|
|
271
450
|
- spec/models/time_keeper.rb
|
|
272
451
|
- spec/models/user.rb
|
|
273
452
|
- spec/models/video.rb
|
|
453
|
+
- spec/rbs_helper.rb
|
|
274
454
|
- spec/schema.rb
|
|
275
455
|
- spec/spec_helper.rb
|
|
276
456
|
- spec/tests/arel_spec.rb
|
|
277
457
|
- spec/tests/auxiliary_statement_spec.rb
|
|
278
458
|
- spec/tests/belongs_to_many_spec.rb
|
|
459
|
+
- spec/tests/buckets_spec.rb
|
|
279
460
|
- spec/tests/collector_spec.rb
|
|
461
|
+
- spec/tests/composite_spec.rb
|
|
462
|
+
- spec/tests/cross_join_spec.rb
|
|
280
463
|
- spec/tests/distinct_on_spec.rb
|
|
281
464
|
- spec/tests/enum_set_spec.rb
|
|
282
465
|
- spec/tests/enum_spec.rb
|
|
@@ -287,11 +470,14 @@ files:
|
|
|
287
470
|
- spec/tests/insert_all_spec.rb
|
|
288
471
|
- spec/tests/interval_spec.rb
|
|
289
472
|
- spec/tests/lazy_spec.rb
|
|
473
|
+
- spec/tests/ltree_spec.rb
|
|
290
474
|
- spec/tests/period_spec.rb
|
|
291
475
|
- spec/tests/predicate_builder_spec.rb
|
|
292
476
|
- spec/tests/quoting_spec.rb
|
|
293
477
|
- spec/tests/relation_spec.rb
|
|
294
478
|
- spec/tests/schema_spec.rb
|
|
479
|
+
- spec/tests/segments_spec.rb
|
|
480
|
+
- spec/tests/struct_spec.rb
|
|
295
481
|
- spec/tests/table_inheritance_spec.rb
|
|
296
482
|
- spec/tests/versioned_commands_spec.rb
|
|
297
483
|
homepage: https://github.com/crashtech/torque-postgresql
|
|
@@ -338,6 +524,7 @@ test_files:
|
|
|
338
524
|
- spec/fixtures/migrations/20250101000005_create_view_all_users_v1.sql
|
|
339
525
|
- spec/fixtures/migrations/20250101000006_create_type_user_id_v1.sql
|
|
340
526
|
- spec/fixtures/migrations/20250101000007_remove_function_count_users_v2.sql
|
|
527
|
+
- spec/fixtures/migrations/20250101000008_create_trigger_audit_users_v1.sql
|
|
341
528
|
- spec/initialize.rb
|
|
342
529
|
- spec/mocks/cache_query.rb
|
|
343
530
|
- spec/mocks/create_table.rb
|
|
@@ -354,7 +541,9 @@ test_files:
|
|
|
354
541
|
- spec/models/guest_comment.rb
|
|
355
542
|
- spec/models/internal/user.rb
|
|
356
543
|
- spec/models/item.rb
|
|
544
|
+
- spec/models/place.rb
|
|
357
545
|
- spec/models/post.rb
|
|
546
|
+
- spec/models/profile.rb
|
|
358
547
|
- spec/models/question.rb
|
|
359
548
|
- spec/models/question_select.rb
|
|
360
549
|
- spec/models/tag.rb
|
|
@@ -362,12 +551,16 @@ test_files:
|
|
|
362
551
|
- spec/models/time_keeper.rb
|
|
363
552
|
- spec/models/user.rb
|
|
364
553
|
- spec/models/video.rb
|
|
554
|
+
- spec/rbs_helper.rb
|
|
365
555
|
- spec/schema.rb
|
|
366
556
|
- spec/spec_helper.rb
|
|
367
557
|
- spec/tests/arel_spec.rb
|
|
368
558
|
- spec/tests/auxiliary_statement_spec.rb
|
|
369
559
|
- spec/tests/belongs_to_many_spec.rb
|
|
560
|
+
- spec/tests/buckets_spec.rb
|
|
370
561
|
- spec/tests/collector_spec.rb
|
|
562
|
+
- spec/tests/composite_spec.rb
|
|
563
|
+
- spec/tests/cross_join_spec.rb
|
|
371
564
|
- spec/tests/distinct_on_spec.rb
|
|
372
565
|
- spec/tests/enum_set_spec.rb
|
|
373
566
|
- spec/tests/enum_spec.rb
|
|
@@ -378,10 +571,13 @@ test_files:
|
|
|
378
571
|
- spec/tests/insert_all_spec.rb
|
|
379
572
|
- spec/tests/interval_spec.rb
|
|
380
573
|
- spec/tests/lazy_spec.rb
|
|
574
|
+
- spec/tests/ltree_spec.rb
|
|
381
575
|
- spec/tests/period_spec.rb
|
|
382
576
|
- spec/tests/predicate_builder_spec.rb
|
|
383
577
|
- spec/tests/quoting_spec.rb
|
|
384
578
|
- spec/tests/relation_spec.rb
|
|
385
579
|
- spec/tests/schema_spec.rb
|
|
580
|
+
- spec/tests/segments_spec.rb
|
|
581
|
+
- spec/tests/struct_spec.rb
|
|
386
582
|
- spec/tests/table_inheritance_spec.rb
|
|
387
583
|
- spec/tests/versioned_commands_spec.rb
|