logidze 1.4.0 → 1.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0cc10c417605b0f92991c201aeb958a44bc6130b64fd3b278780fb780818ccb3
4
- data.tar.gz: 3c06efc69a95294bff75de4c8d91c1528c0cc67f5c0b5753097599a4c9e8fe5b
3
+ metadata.gz: 36d9b51109a8042f93fdc4d8350976c68b001fdc0b303aedd2d19a863dce6897
4
+ data.tar.gz: e5c029e63f7601950ea244abdcec6cc38f95e77998020e31b34f41cb124bcdbb
5
5
  SHA512:
6
- metadata.gz: 62d98e00caed7aa2a6f2ccd2be0ed536d2500ef0f195a391f17569c18cf7ce6051ef846abe45d167633100129d7e26555ae3ab4c728f73c05cfaec56dcd5df96
7
- data.tar.gz: 56652129cef0c7ca97b2a87dd7a94ff6711b21a43680ba87a4af7f3b253fea7a171a5d2307bd81b8af2ca46a08f4b999929cfedf8dd46db2a75a72c61a8f551d
6
+ metadata.gz: 2851e9be4abc97199559012b784738a7f62240831a01bbed64579d8e7f705d772948ebe483740e97dab456ddba71583fce56c0147e2b7483562f8264528e2234
7
+ data.tar.gz: 5735fd7e31b8bc4eb40983e1c5a36ddd398c22bd25e5884795c2d6a4a27f8685ec8ac1c683e171cdccbcc36dcb06191b504de2063bb215813664f3c293153f5c
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## master (unreleased)
4
4
 
5
+ ## 1.4.1 (2025-06-05)
6
+
7
+ - Don't drop functions in the upgrade migration. ([@palkan][])
8
+
5
9
  ## 1.4.0 (2025-05-09) 🎇
6
10
 
7
11
  - Support Rails 7.2 ([@atomaka][])
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Logidze
4
+ class LogidzeData < ::ApplicationRecord
5
+ attribute :log_data, Logidze::History::Type.new
6
+
7
+ belongs_to :loggable, polymorphic: true
8
+ end
9
+ end
@@ -1,19 +1,5 @@
1
1
  class <%= @migration_class_name %> < ActiveRecord::Migration[<%= ActiveRecord::Migration.current_version %>]
2
2
  def up
3
- <%- if update? -%>
4
- # Drop legacy functions (<1.0)
5
- execute <<~SQL
6
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb);
7
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb);
8
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb, text[]);
9
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb, text[]);
10
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb, timestamp with time zone, text[]);
11
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb, text, text[]);
12
- DROP FUNCTION IF EXISTS logidze_exclude_keys(jsonb, VARIADIC text[]);
13
- DROP FUNCTION IF EXISTS logidze_compact_history(jsonb);
14
- SQL
15
-
16
- <%- end -%>
17
3
  execute <<~SQL
18
4
  <%- function_definitions.each do |f| -%>
19
5
  <%= inject_sql("#{f.name}.sql", indent: 6) %>
@@ -1,41 +1,22 @@
1
1
  class <%= @migration_class_name %> < ActiveRecord::Migration[<%= ActiveRecord::Migration.current_version %>]
2
2
  def change
3
- <%- if update? -%>
4
- reversible do |dir|
5
- dir.up do
6
- # Drop legacy functions (<1.0)
7
- execute <<~SQL
8
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb);
9
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb);
10
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb, text[]);
11
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb, text[]);
12
- DROP FUNCTION IF EXISTS logidze_version(bigint, jsonb, timestamp with time zone, text[]);
13
- DROP FUNCTION IF EXISTS logidze_snapshot(jsonb, text, text[]);
14
- DROP FUNCTION IF EXISTS logidze_exclude_keys(jsonb, VARIADIC text[]);
15
- DROP FUNCTION IF EXISTS logidze_compact_history(jsonb);
16
- SQL
17
- end
18
- end
19
-
20
- <%- end -%>
21
3
  <%- function_definitions.each do |f| -%>
22
4
  <%- previous_version = previous_version_for(f.name) -%>
23
5
  <%- if previous_version -%>
24
6
  <%- if previous_version != f.version -%>
25
- update_function :<%= f.name %>, version: <%= f.version %>, revert_to_version: <%= previous_version %>
26
- <%- end -%>
27
- <%- else -%>
28
7
  reversible do |dir|
29
8
  dir.up do
30
9
  create_function :<%= f.name %>, version: <%= f.version %>
31
10
  end
32
11
 
33
12
  dir.down do
34
- execute "DROP FUNCTION IF EXISTS <%= f.name %>(<%= f.signature %>) CASCADE"
13
+ create_function :<%= f.name %>, version: <%= previous_version %>
35
14
  end
36
15
  end
37
-
38
- <%- end -%>
16
+ <%- end %>
17
+ <%- else -%>
18
+ create_function :<%= f.name %>, version: <%= f.version %>
19
+ <%- end %>
39
20
  <%- end -%>
40
21
  end
41
22
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Logidze
4
- VERSION = "1.4.0"
4
+ VERSION = "1.4.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logidze
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - palkan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-09 00:00:00.000000000 Z
11
+ date: 2025-06-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -160,6 +160,7 @@ files:
160
160
  - CHANGELOG.md
161
161
  - LICENSE.txt
162
162
  - README.md
163
+ - app/models/logidze/logidze_data.rb
163
164
  - lib/generators/logidze/fx_helper.rb
164
165
  - lib/generators/logidze/inject_sql.rb
165
166
  - lib/generators/logidze/install/USAGE