auditable 0.1.0 → 0.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.
- data/CHANGELOG.md +5 -1
- data/Gemfile +1 -0
- data/lib/auditable/audit.rb +1 -4
- data/lib/auditable/auditing.rb +4 -5
- data/lib/auditable/version.rb +1 -1
- metadata +129 -86
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
-
### 0.1.
|
1
|
+
### 0.1.1 (2012-04-11)
|
2
|
+
#### Fixes
|
3
|
+
* Fix bug/inconsistency between `user` and `changed_by`, now with `alias_attribute :changed_by, :user`
|
4
|
+
|
5
|
+
### 0.1.0 (2012-04-11)
|
2
6
|
#### Changes
|
3
7
|
* previously, `audit_tag_with` updates the latest audit if no changes are detected in a record's audited changes. now it creates a new audit row instead because this works better and prevent losing history if we call `audit_tag_with` multiple times. new audits are only created if the combo of 4 attributes is different: `modifications`, `tag`, `user`, `action`.
|
4
8
|
* bump minor version because it is more ready for production use at this point
|
data/Gemfile
CHANGED
data/lib/auditable/audit.rb
CHANGED
@@ -66,10 +66,7 @@ module Auditable
|
|
66
66
|
# Returns user object
|
67
67
|
#
|
68
68
|
# Use same method name like in update_attributes:
|
69
|
-
|
70
|
-
def changed_by
|
71
|
-
user
|
72
|
-
end
|
69
|
+
alias_attribute :changed_by, :user
|
73
70
|
|
74
71
|
def same_audited_content?(other_audit)
|
75
72
|
other_audit and relevant_attributes == other_audit.relevant_attributes
|
data/lib/auditable/auditing.rb
CHANGED
@@ -64,11 +64,10 @@ module Auditable
|
|
64
64
|
last_saved_audit = audits.last
|
65
65
|
|
66
66
|
# build new audit
|
67
|
-
audit = audits.build(:modifications => snap)
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
audit.attributes = audit.attributes.merge options
|
67
|
+
audit = audits.build(options.merge :modifications => snap)
|
68
|
+
audit.tag = self.audit_tag if audit_tag
|
69
|
+
audit.action = self.audit_action if audit_action
|
70
|
+
audit.changed_by = self.changed_by if changed_by
|
72
71
|
|
73
72
|
# only save if it's different from before
|
74
73
|
if !audit.same_audited_content?(last_saved_audit)
|
data/lib/auditable/version.rb
CHANGED
metadata
CHANGED
@@ -1,112 +1,146 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: auditable
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Harley Trung
|
9
14
|
autorequire:
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
17
|
+
|
18
|
+
date: 2012-04-11 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
15
21
|
name: rake
|
16
|
-
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
17
24
|
none: false
|
18
|
-
requirements:
|
19
|
-
- -
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 3
|
29
|
+
segments:
|
30
|
+
- 0
|
31
|
+
version: "0"
|
22
32
|
type: :development
|
23
|
-
|
24
|
-
|
25
|
-
- !ruby/object:Gem::Dependency
|
33
|
+
version_requirements: *id001
|
34
|
+
- !ruby/object:Gem::Dependency
|
26
35
|
name: rspec
|
27
|
-
|
36
|
+
prerelease: false
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
28
38
|
none: false
|
29
|
-
requirements:
|
30
|
-
- -
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
hash: 7
|
43
|
+
segments:
|
44
|
+
- 2
|
45
|
+
version: "2"
|
33
46
|
type: :development
|
34
|
-
|
35
|
-
|
36
|
-
- !ruby/object:Gem::Dependency
|
47
|
+
version_requirements: *id002
|
48
|
+
- !ruby/object:Gem::Dependency
|
37
49
|
name: watchr
|
38
|
-
|
50
|
+
prerelease: false
|
51
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
39
52
|
none: false
|
40
|
-
requirements:
|
41
|
-
- -
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
hash: 3
|
57
|
+
segments:
|
58
|
+
- 0
|
59
|
+
version: "0"
|
44
60
|
type: :development
|
45
|
-
|
46
|
-
|
47
|
-
- !ruby/object:Gem::Dependency
|
61
|
+
version_requirements: *id003
|
62
|
+
- !ruby/object:Gem::Dependency
|
48
63
|
name: sqlite3
|
49
|
-
|
64
|
+
prerelease: false
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
50
66
|
none: false
|
51
|
-
requirements:
|
52
|
-
- -
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
hash: 3
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
version: "0"
|
55
74
|
type: :development
|
56
|
-
|
57
|
-
|
58
|
-
- !ruby/object:Gem::Dependency
|
75
|
+
version_requirements: *id004
|
76
|
+
- !ruby/object:Gem::Dependency
|
59
77
|
name: yard
|
60
|
-
|
78
|
+
prerelease: false
|
79
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
61
80
|
none: false
|
62
|
-
requirements:
|
63
|
-
- -
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
hash: 3
|
85
|
+
segments:
|
86
|
+
- 0
|
87
|
+
version: "0"
|
66
88
|
type: :development
|
67
|
-
|
68
|
-
|
69
|
-
- !ruby/object:Gem::Dependency
|
89
|
+
version_requirements: *id005
|
90
|
+
- !ruby/object:Gem::Dependency
|
70
91
|
name: rdiscount
|
71
|
-
|
92
|
+
prerelease: false
|
93
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
72
94
|
none: false
|
73
|
-
requirements:
|
74
|
-
- -
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
hash: 3
|
99
|
+
segments:
|
100
|
+
- 0
|
101
|
+
version: "0"
|
77
102
|
type: :development
|
78
|
-
|
79
|
-
|
80
|
-
- !ruby/object:Gem::Dependency
|
103
|
+
version_requirements: *id006
|
104
|
+
- !ruby/object:Gem::Dependency
|
81
105
|
name: activesupport
|
82
|
-
|
106
|
+
prerelease: false
|
107
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
83
108
|
none: false
|
84
|
-
requirements:
|
85
|
-
- -
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
hash: 7
|
113
|
+
segments:
|
114
|
+
- 3
|
115
|
+
- 0
|
116
|
+
version: "3.0"
|
88
117
|
type: :runtime
|
89
|
-
|
90
|
-
|
91
|
-
- !ruby/object:Gem::Dependency
|
118
|
+
version_requirements: *id007
|
119
|
+
- !ruby/object:Gem::Dependency
|
92
120
|
name: activerecord
|
93
|
-
|
121
|
+
prerelease: false
|
122
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
94
123
|
none: false
|
95
|
-
requirements:
|
96
|
-
- -
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
|
124
|
+
requirements:
|
125
|
+
- - ">="
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
hash: 7
|
128
|
+
segments:
|
129
|
+
- 3
|
130
|
+
- 0
|
131
|
+
version: "3.0"
|
99
132
|
type: :runtime
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
and diff them for you. Starting from scratch to work with Rails 3.2.2 onwards
|
104
|
-
email:
|
133
|
+
version_requirements: *id008
|
134
|
+
description: A simple gem that audit models' attributes or methods by taking snapshots and diff them for you. Starting from scratch to work with Rails 3.2.2 onwards
|
135
|
+
email:
|
105
136
|
- harley@socialsci.com
|
106
137
|
executables: []
|
138
|
+
|
107
139
|
extensions: []
|
140
|
+
|
108
141
|
extra_rdoc_files: []
|
109
|
-
|
142
|
+
|
143
|
+
files:
|
110
144
|
- .gitignore
|
111
145
|
- .rspec
|
112
146
|
- .rvmrc
|
@@ -131,29 +165,38 @@ files:
|
|
131
165
|
- specs.watchr
|
132
166
|
homepage: https://github.com/harleyttd/auditable
|
133
167
|
licenses: []
|
168
|
+
|
134
169
|
post_install_message:
|
135
170
|
rdoc_options: []
|
136
|
-
|
171
|
+
|
172
|
+
require_paths:
|
137
173
|
- lib
|
138
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
174
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
139
175
|
none: false
|
140
|
-
requirements:
|
141
|
-
- -
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
|
144
|
-
|
176
|
+
requirements:
|
177
|
+
- - ">="
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
hash: 3
|
180
|
+
segments:
|
181
|
+
- 0
|
182
|
+
version: "0"
|
183
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
145
184
|
none: false
|
146
|
-
requirements:
|
147
|
-
- -
|
148
|
-
- !ruby/object:Gem::Version
|
149
|
-
|
185
|
+
requirements:
|
186
|
+
- - ">="
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
hash: 3
|
189
|
+
segments:
|
190
|
+
- 0
|
191
|
+
version: "0"
|
150
192
|
requirements: []
|
193
|
+
|
151
194
|
rubyforge_project:
|
152
195
|
rubygems_version: 1.8.17
|
153
196
|
signing_key:
|
154
197
|
specification_version: 3
|
155
198
|
summary: A simple gem to audit attributes and methods in ActiveRecord models.
|
156
|
-
test_files:
|
199
|
+
test_files:
|
157
200
|
- spec/lib/auditable_spec.rb
|
158
201
|
- spec/spec_helper.rb
|
159
202
|
- spec/support/models.rb
|