audited 5.3.3 → 5.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/.github/workflows/ci.yml +11 -0
- data/Appraisals +10 -0
- data/CHANGELOG.md +12 -0
- data/README.md +1 -1
- data/gemfiles/rails50.gemfile +1 -0
- data/gemfiles/rails51.gemfile +1 -0
- data/gemfiles/rails52.gemfile +1 -0
- data/gemfiles/rails71.gemfile +10 -0
- data/lib/audited/audit.rb +5 -1
- data/lib/audited/request_store.rb +9 -0
- data/lib/audited/version.rb +1 -1
- data/lib/audited.rb +5 -4
- data/spec/audited/audit_spec.rb +1 -1
- data/spec/audited_spec.rb +5 -1
- data/spec/rails_app/config/application.rb +24 -1
- data/spec/support/active_record/models.rb +6 -1
- metadata +19 -11
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8064f489d5ebd438af237683541fb2436fc687d786a688f5d6ce936e24e6d89b
|
|
4
|
+
data.tar.gz: b6acaf26b868f64883dcd9af556cfc5233be1395c3fc03fdea13c3c7449de6b8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9466b4f7ab9a100e9ff0e9e5dbec591dc30e9027d8529c481f3e3faa72cb6d89c2cf5eb6c19e1cbbb6ceba5ea2f55a882e7c4fe2ef587a6eed676640d63372ff
|
|
7
|
+
data.tar.gz: 5f9050ffcff6dcadd3e4040aa941f2f48773ef575e69f2012d4088e9fed327ec35e3a386c7437bbe019cbfc2c32e0e4ac348f49977915ffac6c6e1b1d8580c6c
|
data/.github/workflows/ci.yml
CHANGED
|
@@ -18,6 +18,7 @@ jobs:
|
|
|
18
18
|
- rails60
|
|
19
19
|
- rails61
|
|
20
20
|
- rails70
|
|
21
|
+
- rails71
|
|
21
22
|
db: [POSTGRES, MYSQL, SQLITE]
|
|
22
23
|
exclude:
|
|
23
24
|
# MySQL has issues on Ruby 2.3
|
|
@@ -96,6 +97,16 @@ jobs:
|
|
|
96
97
|
- appraisal: rails70
|
|
97
98
|
ruby: 2.6
|
|
98
99
|
|
|
100
|
+
# Rails 7.1 supports Ruby 2.7+
|
|
101
|
+
- appraisal: rails71
|
|
102
|
+
ruby: 2.3
|
|
103
|
+
- appraisal: rails71
|
|
104
|
+
ruby: 2.4
|
|
105
|
+
- appraisal: rails71
|
|
106
|
+
ruby: 2.5
|
|
107
|
+
- appraisal: rails71
|
|
108
|
+
ruby: 2.6
|
|
109
|
+
|
|
99
110
|
services:
|
|
100
111
|
postgres:
|
|
101
112
|
image: postgres
|
data/Appraisals
CHANGED
|
@@ -7,6 +7,7 @@ appraise "rails50" do
|
|
|
7
7
|
gem "pg", ">= 0.18", "< 2.0"
|
|
8
8
|
gem "sqlite3", "~> 1.3.6"
|
|
9
9
|
gem "psych", "~> 3.1"
|
|
10
|
+
gem "loofah", "2.20.0"
|
|
10
11
|
end
|
|
11
12
|
|
|
12
13
|
appraise "rails51" do
|
|
@@ -15,6 +16,7 @@ appraise "rails51" do
|
|
|
15
16
|
gem "pg", ">= 0.18", "< 2.0"
|
|
16
17
|
gem "sqlite3", "~> 1.3.6"
|
|
17
18
|
gem "psych", "~> 3.1"
|
|
19
|
+
gem "loofah", "2.20.0"
|
|
18
20
|
end
|
|
19
21
|
|
|
20
22
|
appraise "rails52" do
|
|
@@ -23,6 +25,7 @@ appraise "rails52" do
|
|
|
23
25
|
gem "pg", ">= 0.18", "< 2.0"
|
|
24
26
|
gem "sqlite3", "~> 1.3.6"
|
|
25
27
|
gem "psych", "~> 3.1"
|
|
28
|
+
gem "loofah", "2.20.0"
|
|
26
29
|
end
|
|
27
30
|
|
|
28
31
|
appraise "rails60" do
|
|
@@ -45,3 +48,10 @@ appraise "rails70" do
|
|
|
45
48
|
gem "pg", ">= 1.1"
|
|
46
49
|
gem "sqlite3", ">= 1.4"
|
|
47
50
|
end
|
|
51
|
+
|
|
52
|
+
appraise "rails71" do
|
|
53
|
+
gem "rails", ">= 7.1.0.beta1", "< 7.2"
|
|
54
|
+
gem "mysql2", ">= 0.4.4"
|
|
55
|
+
gem "pg", ">= 1.1"
|
|
56
|
+
gem "sqlite3", ">= 1.4"
|
|
57
|
+
end
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Audited ChangeLog
|
|
2
2
|
|
|
3
|
+
## 5.4.1 (2023-09-30)
|
|
4
|
+
|
|
5
|
+
- Replace RequestStore with ActiveSupport::CurrentAttributes - @the-spectator
|
|
6
|
+
[#673](https://github.com/collectiveidea/audited/pull/673/)
|
|
7
|
+
- Don't require railtie when used outside of Rails - @nicduke38degrees
|
|
8
|
+
[#665](https://github.com/collectiveidea/audited/pull/665)
|
|
9
|
+
|
|
10
|
+
## 5.4.0 (2023-09-30)
|
|
11
|
+
|
|
12
|
+
- Add Rails 7.1 support - @yuki24
|
|
13
|
+
[#686](https://github.com/collectiveidea/audited/pull/686)
|
|
14
|
+
|
|
3
15
|
## 5.3.3 (2023-03-24)
|
|
4
16
|
|
|
5
17
|
- Use RequestStore instead of Thread.current for thread-safe requests - @tiagocassio
|
data/README.md
CHANGED
|
@@ -8,7 +8,7 @@ Audited
|
|
|
8
8
|
**Audited** (previously acts_as_audited) is an ORM extension that logs all changes to your models. Audited can also record who made those changes, save comments and associate models related to the changes.
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
Audited currently (5.x) works with Rails 7.0, 6.1, 6.0, 5.2, 5.1, and 5.0.
|
|
11
|
+
Audited currently (5.x) works with Rails 7.1, 7.0, 6.1, 6.0, 5.2, 5.1, and 5.0.
|
|
12
12
|
|
|
13
13
|
For Rails 4, use gem version 4.x
|
|
14
14
|
For Rails 3, use gem version 3.0 or see the [3.0-stable branch](https://github.com/collectiveidea/audited/tree/3.0-stable).
|
data/gemfiles/rails50.gemfile
CHANGED
data/gemfiles/rails51.gemfile
CHANGED
data/gemfiles/rails52.gemfile
CHANGED
data/lib/audited/audit.rb
CHANGED
|
@@ -49,7 +49,11 @@ module Audited
|
|
|
49
49
|
cattr_accessor :audited_class_names
|
|
50
50
|
self.audited_class_names = Set.new
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
if Rails.version >= "7.1"
|
|
53
|
+
serialize :audited_changes, coder: YAMLIfTextColumnType
|
|
54
|
+
else
|
|
55
|
+
serialize :audited_changes, YAMLIfTextColumnType
|
|
56
|
+
end
|
|
53
57
|
|
|
54
58
|
scope :ascending, -> { reorder(version: :asc) }
|
|
55
59
|
scope :descending, -> { reorder(version: :desc) }
|
data/lib/audited/version.rb
CHANGED
data/lib/audited.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require "active_record"
|
|
4
|
-
require "request_store"
|
|
5
4
|
|
|
6
5
|
module Audited
|
|
7
6
|
class << self
|
|
@@ -22,10 +21,11 @@ module Audited
|
|
|
22
21
|
|
|
23
22
|
# remove audit_model in next major version it was only shortly present in 5.1.0
|
|
24
23
|
alias_method :audit_model, :audit_class
|
|
25
|
-
deprecate audit_model: "use Audited.audit_class instead of Audited.audit_model. This method will be removed."
|
|
24
|
+
deprecate audit_model: "use Audited.audit_class instead of Audited.audit_model. This method will be removed.",
|
|
25
|
+
deprecator: ActiveSupport::Deprecation.new('6.0.0', 'Audited')
|
|
26
26
|
|
|
27
27
|
def store
|
|
28
|
-
RequestStore.
|
|
28
|
+
Audited::RequestStore.audited_store ||= {}
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
def config
|
|
@@ -41,6 +41,7 @@ module Audited
|
|
|
41
41
|
end
|
|
42
42
|
|
|
43
43
|
require "audited/auditor"
|
|
44
|
+
require "audited/request_store"
|
|
44
45
|
|
|
45
46
|
ActiveSupport.on_load :active_record do
|
|
46
47
|
require "audited/audit"
|
|
@@ -48,4 +49,4 @@ ActiveSupport.on_load :active_record do
|
|
|
48
49
|
end
|
|
49
50
|
|
|
50
51
|
require "audited/sweeper"
|
|
51
|
-
require "audited/railtie"
|
|
52
|
+
require "audited/railtie" if Audited.const_defined?(:Rails)
|
data/spec/audited/audit_spec.rb
CHANGED
data/spec/audited_spec.rb
CHANGED
|
@@ -3,12 +3,16 @@ require "spec_helper"
|
|
|
3
3
|
describe Audited do
|
|
4
4
|
describe "#store" do
|
|
5
5
|
describe "maintains state of store" do
|
|
6
|
-
let(:current_user) { RequestStore.
|
|
6
|
+
let(:current_user) { Audited::RequestStore.audited_store }
|
|
7
7
|
before { Audited.store[:current_user] = current_user }
|
|
8
8
|
|
|
9
9
|
it "checks store is not nil" do
|
|
10
10
|
expect(Audited.store[:current_user]).to eq(current_user)
|
|
11
11
|
end
|
|
12
|
+
|
|
13
|
+
it "when executed with Fibers" do
|
|
14
|
+
Fiber.new { expect(Audited.store[:current_user]).to eq(current_user) }.resume
|
|
15
|
+
end
|
|
12
16
|
end
|
|
13
17
|
end
|
|
14
18
|
end
|
|
@@ -5,11 +5,34 @@ module RailsApp
|
|
|
5
5
|
config.root = File.expand_path("../../", __FILE__)
|
|
6
6
|
config.i18n.enforce_available_locales = true
|
|
7
7
|
|
|
8
|
-
if
|
|
8
|
+
if Rails.version.start_with?("7.1") && config.active_record.respond_to?(:yaml_column_permitted_classes=)
|
|
9
|
+
config.active_record.yaml_column_permitted_classes = [
|
|
10
|
+
String,
|
|
11
|
+
Symbol,
|
|
12
|
+
Integer,
|
|
13
|
+
NilClass,
|
|
14
|
+
Float,
|
|
15
|
+
Time,
|
|
16
|
+
Date,
|
|
17
|
+
FalseClass,
|
|
18
|
+
Hash,
|
|
19
|
+
Array,
|
|
20
|
+
DateTime,
|
|
21
|
+
TrueClass,
|
|
22
|
+
BigDecimal,
|
|
23
|
+
ActiveSupport::TimeWithZone,
|
|
24
|
+
ActiveSupport::TimeZone,
|
|
25
|
+
ActiveSupport::HashWithIndifferentAccess
|
|
26
|
+
]
|
|
27
|
+
elsif !Rails.version.start_with?("5.0") && !Rails.version.start_with?("5.1") && config.active_record.respond_to?(:yaml_column_permitted_classes=)
|
|
9
28
|
config.active_record.yaml_column_permitted_classes =
|
|
10
29
|
%w[String Symbol Integer NilClass Float Time Date FalseClass Hash Array DateTime TrueClass BigDecimal
|
|
11
30
|
ActiveSupport::TimeWithZone ActiveSupport::TimeZone ActiveSupport::HashWithIndifferentAccess]
|
|
12
31
|
end
|
|
32
|
+
|
|
33
|
+
if Rails.version >= "7.1"
|
|
34
|
+
config.active_support.cache_format_version = 7.1
|
|
35
|
+
end
|
|
13
36
|
end
|
|
14
37
|
end
|
|
15
38
|
|
|
@@ -8,7 +8,12 @@ module Models
|
|
|
8
8
|
attribute :non_column_attr if Rails.version >= "5.1"
|
|
9
9
|
attr_protected :logins if respond_to?(:attr_protected)
|
|
10
10
|
enum status: {active: 0, reliable: 1, banned: 2}
|
|
11
|
-
|
|
11
|
+
|
|
12
|
+
if Rails.version >= "7.1"
|
|
13
|
+
serialize :phone_numbers, type: Array
|
|
14
|
+
else
|
|
15
|
+
serialize :phone_numbers, Array
|
|
16
|
+
end
|
|
12
17
|
|
|
13
18
|
def name=(val)
|
|
14
19
|
write_attribute(:name, CGI.escapeHTML(val))
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: audited
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 5.
|
|
4
|
+
version: 5.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brandon Keepers
|
|
@@ -13,7 +13,7 @@ authors:
|
|
|
13
13
|
autorequire:
|
|
14
14
|
bindir: bin
|
|
15
15
|
cert_chain: []
|
|
16
|
-
date: 2023-
|
|
16
|
+
date: 2023-11-06 00:00:00.000000000 Z
|
|
17
17
|
dependencies:
|
|
18
18
|
- !ruby/object:Gem::Dependency
|
|
19
19
|
name: activerecord
|
|
@@ -24,7 +24,7 @@ dependencies:
|
|
|
24
24
|
version: '5.0'
|
|
25
25
|
- - "<"
|
|
26
26
|
- !ruby/object:Gem::Version
|
|
27
|
-
version: '7.
|
|
27
|
+
version: '7.7'
|
|
28
28
|
type: :runtime
|
|
29
29
|
prerelease: false
|
|
30
30
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -34,21 +34,27 @@ dependencies:
|
|
|
34
34
|
version: '5.0'
|
|
35
35
|
- - "<"
|
|
36
36
|
- !ruby/object:Gem::Version
|
|
37
|
-
version: '7.
|
|
37
|
+
version: '7.7'
|
|
38
38
|
- !ruby/object:Gem::Dependency
|
|
39
|
-
name:
|
|
39
|
+
name: activesupport
|
|
40
40
|
requirement: !ruby/object:Gem::Requirement
|
|
41
41
|
requirements:
|
|
42
|
-
- - "
|
|
42
|
+
- - ">="
|
|
43
|
+
- !ruby/object:Gem::Version
|
|
44
|
+
version: '5.0'
|
|
45
|
+
- - "<"
|
|
43
46
|
- !ruby/object:Gem::Version
|
|
44
|
-
version: '
|
|
47
|
+
version: '7.7'
|
|
45
48
|
type: :runtime
|
|
46
49
|
prerelease: false
|
|
47
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
48
51
|
requirements:
|
|
49
|
-
- - "
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '5.0'
|
|
55
|
+
- - "<"
|
|
50
56
|
- !ruby/object:Gem::Version
|
|
51
|
-
version: '
|
|
57
|
+
version: '7.7'
|
|
52
58
|
- !ruby/object:Gem::Dependency
|
|
53
59
|
name: appraisal
|
|
54
60
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -72,7 +78,7 @@ dependencies:
|
|
|
72
78
|
version: '5.0'
|
|
73
79
|
- - "<"
|
|
74
80
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '7.
|
|
81
|
+
version: '7.7'
|
|
76
82
|
type: :development
|
|
77
83
|
prerelease: false
|
|
78
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -82,7 +88,7 @@ dependencies:
|
|
|
82
88
|
version: '5.0'
|
|
83
89
|
- - "<"
|
|
84
90
|
- !ruby/object:Gem::Version
|
|
85
|
-
version: '7.
|
|
91
|
+
version: '7.7'
|
|
86
92
|
- !ruby/object:Gem::Dependency
|
|
87
93
|
name: rspec-rails
|
|
88
94
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -196,11 +202,13 @@ files:
|
|
|
196
202
|
- gemfiles/rails60.gemfile
|
|
197
203
|
- gemfiles/rails61.gemfile
|
|
198
204
|
- gemfiles/rails70.gemfile
|
|
205
|
+
- gemfiles/rails71.gemfile
|
|
199
206
|
- lib/audited-rspec.rb
|
|
200
207
|
- lib/audited.rb
|
|
201
208
|
- lib/audited/audit.rb
|
|
202
209
|
- lib/audited/auditor.rb
|
|
203
210
|
- lib/audited/railtie.rb
|
|
211
|
+
- lib/audited/request_store.rb
|
|
204
212
|
- lib/audited/rspec_matchers.rb
|
|
205
213
|
- lib/audited/sweeper.rb
|
|
206
214
|
- lib/audited/version.rb
|