legion-data 1.4.17 → 1.4.18
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/CHANGELOG.md +6 -0
- data/lib/legion/data/local.rb +13 -6
- data/lib/legion/data/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4b72221cdf5567d6602fa63754684e02cd690ece98810eddc539061b9f4ae19c
|
|
4
|
+
data.tar.gz: 9865f85a9281f562bc9d6160198193f1b0c7b00c8c9132dc7c72b70160dace9d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz: '
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '049288bc4a3b94d1430b992bb78d693517757fafadac4b65535b873eb8d3d0e3bbb4765d635388badf6df48ec302d06dfc6b04de9f54a85ec8acd805b0e90dda'
|
|
7
|
+
data.tar.gz: 32bb5d25decd349a5dc85c08400c3e2364fca356c62d185a103ec68e47989f0ada735f5d28f1c8405ed3e41172deb8ad590b56b4b4d391ef49b14723335a9adc
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Legion::Data Changelog
|
|
2
2
|
|
|
3
|
+
## [1.4.18] - 2026-03-23
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
- Fix extension migration timing: late `register_migrations` calls now run immediately if DB is connected
|
|
7
|
+
- Fix cross-extension schema_migrations conflicts with per-extension migration tables
|
|
8
|
+
|
|
3
9
|
## [1.4.17] - 2026-03-22
|
|
4
10
|
|
|
5
11
|
### Added
|
data/lib/legion/data/local.rb
CHANGED
|
@@ -33,6 +33,7 @@ module Legion
|
|
|
33
33
|
def register_migrations(name:, path:)
|
|
34
34
|
@registered_migrations ||= {}
|
|
35
35
|
@registered_migrations[name] = path
|
|
36
|
+
run_single_migration(name, path) if connected?
|
|
36
37
|
end
|
|
37
38
|
|
|
38
39
|
def registered_migrations
|
|
@@ -57,15 +58,21 @@ module Legion
|
|
|
57
58
|
def run_migrations
|
|
58
59
|
return unless local_settings.dig(:migrations, :auto_migrate) != false
|
|
59
60
|
|
|
60
|
-
registered_migrations.
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
::Sequel::TimestampMigrator.new(@connection, path).run
|
|
64
|
-
rescue StandardError => e
|
|
65
|
-
Legion::Logging.warn "Local migration failed for #{path}: #{e.message}" if defined?(Legion::Logging)
|
|
61
|
+
registered_migrations.each do |name, path|
|
|
62
|
+
run_single_migration(name, path)
|
|
66
63
|
end
|
|
67
64
|
end
|
|
68
65
|
|
|
66
|
+
def run_single_migration(name, path)
|
|
67
|
+
return unless local_settings.dig(:migrations, :auto_migrate) != false
|
|
68
|
+
return unless File.directory?(path)
|
|
69
|
+
|
|
70
|
+
table = :"schema_migrations_#{name}"
|
|
71
|
+
::Sequel::TimestampMigrator.new(@connection, path, table: table).run
|
|
72
|
+
rescue StandardError => e
|
|
73
|
+
Legion::Logging.warn "Local migration failed for #{path}: #{e.message}" if defined?(Legion::Logging)
|
|
74
|
+
end
|
|
75
|
+
|
|
69
76
|
def local_settings
|
|
70
77
|
return {} unless defined?(Legion::Settings)
|
|
71
78
|
|
data/lib/legion/data/version.rb
CHANGED