acts_as_trackable 0.3.5 → 0.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 +4 -4
- data/.gitignore +1 -0
- data/Gemfile +0 -2
- data/Gemfile.lock +4 -6
- data/changelog.md +7 -0
- data/lib/acts_as_trackable/trackable.rb +19 -1
- data/lib/acts_as_trackable/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 69a6aa75568eb589a8c65044e6ea53fb3acf026554bd81515767b1a41ff8817f
|
4
|
+
data.tar.gz: e2dc8735530dbb20a63c21d5fd714f3cb8fe8b7895908804294db9ac8675f197
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63a6c3ed2c204153d4d14dbf60cffd5183dfb18d3aae4afd78deb7a42d9c127d5d9e2f10a7113897ea6ad89290a5f80078132f86daba6eb2c2619e38dc8004d2
|
7
|
+
data.tar.gz: 2c2914f5a6e1146dbe602a5ef25ab611d1415790aeb4bb3b9f24b7d9c9d9e6e44b4ced964402856ce1e558ac2ccbe2e3cae0685bc4bcc203bbb3ca3aa84c9eb3
|
data/.gitignore
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
acts_as_trackable (0.
|
4
|
+
acts_as_trackable (0.4.1)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
@@ -66,9 +66,9 @@ GEM
|
|
66
66
|
crass (~> 1.0.2)
|
67
67
|
nokogiri (>= 1.12.0)
|
68
68
|
minitest (5.25.5)
|
69
|
-
nokogiri (1.18.
|
69
|
+
nokogiri (1.18.9-arm64-darwin)
|
70
70
|
racc (~> 1.4)
|
71
|
-
nokogiri (1.18.
|
71
|
+
nokogiri (1.18.9-x86_64-darwin)
|
72
72
|
racc (~> 1.4)
|
73
73
|
pp (0.6.2)
|
74
74
|
prettyprint
|
@@ -109,7 +109,7 @@ GEM
|
|
109
109
|
sqlite3 (2.6.0-arm64-darwin)
|
110
110
|
sqlite3 (2.6.0-x86_64-darwin)
|
111
111
|
stringio (3.1.5)
|
112
|
-
thor (1.
|
112
|
+
thor (1.4.0)
|
113
113
|
timeout (0.4.3)
|
114
114
|
tzinfo (2.0.6)
|
115
115
|
concurrent-ruby (~> 1.0)
|
@@ -125,8 +125,6 @@ DEPENDENCIES
|
|
125
125
|
activesupport (~> 7.2, >= 7.2.2)
|
126
126
|
acts_as_trackable!
|
127
127
|
generator_spec
|
128
|
-
nokogiri (~> 1.16, >= 1.16.7)
|
129
|
-
rake (~> 13.2, >= 13.2.1)
|
130
128
|
sqlite3 (~> 2.2)
|
131
129
|
|
132
130
|
BUNDLED WITH
|
data/changelog.md
CHANGED
@@ -1,4 +1,11 @@
|
|
1
1
|
# acts_as_trackable Changelog
|
2
|
+
## Version: 0.4.0
|
3
|
+
### Patch
|
4
|
+
- Upgraded dependencies to patch CVE-2025-6021, CVE-2025-6170, CVE-2025-49794, CVE-2025-49795, CVE-2025-49796, and CVE-2025-54314.
|
5
|
+
## Version: 0.4.0
|
6
|
+
### Minor
|
7
|
+
- Performance Improvement: The `object_activity` method now memoizes results.
|
8
|
+
- Migration Required: Replace `Preloader` calls with `includes(:object_activity)` for bulk loading.
|
2
9
|
## Version: 0.3.5
|
3
10
|
### Patch
|
4
11
|
- Upgraded dependencies to patch CVE-2022-44571
|
@@ -9,9 +9,27 @@ module Trackable
|
|
9
9
|
has_one :object_activity, as: :object, dependent: :destroy
|
10
10
|
|
11
11
|
define_method :object_activity do
|
12
|
-
|
12
|
+
# Return cached value if already set
|
13
|
+
return @object_activity if defined?(@object_activity)
|
14
|
+
|
15
|
+
# If the association is preloaded use it
|
16
|
+
if association(:object_activity).loaded?
|
17
|
+
loaded = association(:object_activity).target
|
18
|
+
|
19
|
+
if loaded&.object_id == id &&
|
20
|
+
[self.class.name, self.class.base_class.name].include?(loaded.object_type)
|
21
|
+
@object_activity = loaded
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
# Fallback to DB query if not preloaded or not matched
|
26
|
+
@object_activity ||= ObjectActivity.find_by(
|
27
|
+
object_id: id,
|
28
|
+
object_type: [self.class.name, self.class.base_class.name]
|
29
|
+
)
|
13
30
|
end
|
14
31
|
|
32
|
+
|
15
33
|
delegate :created_by, :updated_by, to: :object_activity, allow_nil: true
|
16
34
|
|
17
35
|
after_commit :log_object_activity, on: %i[create update], if: -> { modifier.present? }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: acts_as_trackable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ahmad Keewan
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2025-
|
12
|
+
date: 2025-07-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: generator_spec
|