pg_audit_log 0.6.6 → 0.6.7

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
  SHA1:
3
- metadata.gz: 7ec491dc91a88e95b3a62a99119d71b9880b1633
4
- data.tar.gz: 5eb489c343b5d17208ae25a3f00ecc418d3aeecd
3
+ metadata.gz: 946dc5231a6ed7b9c032ce8885e92d057546e25f
4
+ data.tar.gz: 78793aadac855b97c3feec7d26a974a9adf6f965
5
5
  SHA512:
6
- metadata.gz: 83c89e0684320a261368562fbeb03167adc617814f858c59747787c3e775a57ea2d3783c8771561ead90692b3a8a7acaf30a5a3fe66ff5841aa7815424cc01e4
7
- data.tar.gz: 5f29260cda979560c08e8a2cd76474363595daba8f1821f79c6148f555a5f839fd56c8b3badf7f86655376c0901cfb5860d9134760eeae5422144e5a2a4ba216
6
+ metadata.gz: c2118e06daae669ab31cec6c757b5a87ca9f977fc07af5f580dd4f907ff1a204b6a0bbf5c79330d81af941e51841b22e0b28c0c3e82a21efd1ace611fc150b00
7
+ data.tar.gz: 1178296898b04f3c9361b7491029eb7cf9a5b3e9f00fbbd172d60de0cda164f9b3293cd50be037aa5007c5d331b623fce8e6c8916da62fea84bb1dac9d4694f4
@@ -8,19 +8,21 @@ before_script:
8
8
  - psql -c 'CREATE DATABASE pg_audit_log_test;' -U postgres
9
9
 
10
10
  rvm:
11
- - "1.9"
12
- - "2.0"
13
- - "2.1"
14
- - "2.2"
15
- #- jruby-19mode
16
- - rbx-2.2
11
+ - "2.1.10"
12
+ - "2.2.6"
13
+ - "2.3.3"
14
+ - "2.4.1"
17
15
 
18
16
  env:
19
17
  - RAILS_VERSION="~> 4.2.0"
20
- - RAILS_VERSION="~> 4.1.0"
21
- - RAILS_VERSION="~> 4.0.0"
22
- - RAILS_VERSION="~> 3.2.0"
18
+ - RAILS_VERSION="~> 5.0.0"
19
+ - RAILS_BRANCH="master"
23
20
 
24
21
  matrix:
25
22
  allow_failures:
26
23
  - env: RAILS_BRANCH="master"
24
+ exclude:
25
+ - rvm: "2.1.10"
26
+ env: RAILS_VERSION="~> 5.0.0"
27
+ - rvm: "2.1.10"
28
+ env: RAILS_BRANCH="master"
@@ -1,3 +1,7 @@
1
+ ### 0.6.7
2
+ - Fix nested calls to 'without_triggers'.
3
+
4
+
1
5
  ### 0.6.6
2
6
  - Bump Rails dependency to include all 4.2.x (@MrJaba)
3
7
  - Fixed migration name to be .rb file (@MrJaba)
@@ -68,23 +68,23 @@ class ActiveRecord::ConnectionAdapters::PostgreSQLAdapter
68
68
  end
69
69
  alias_method_chain :execute, :pg_audit_log
70
70
 
71
- def exec_query_with_pg_audit_log(sql, name = 'SQL', binds = [])
71
+ def exec_query_with_pg_audit_log(*args, &block)
72
72
  set_audit_user_id_and_name
73
- conn = exec_query_without_pg_audit_log(sql, name, binds)
73
+ conn = exec_query_without_pg_audit_log(*args, &block)
74
74
  conn
75
75
  end
76
76
  alias_method_chain :exec_query, :pg_audit_log
77
77
 
78
- def exec_update_with_pg_audit_log(sql, name = 'SQL', binds = [])
78
+ def exec_update_with_pg_audit_log(*args, &block)
79
79
  set_audit_user_id_and_name
80
- conn = exec_update_without_pg_audit_log(sql, name, binds)
80
+ conn = exec_update_without_pg_audit_log(*args, &block)
81
81
  conn
82
82
  end
83
83
  alias_method_chain :exec_update, :pg_audit_log
84
84
 
85
- def exec_delete_with_pg_audit_log(sql, name = 'SQL', binds = [])
85
+ def exec_delete_with_pg_audit_log(*args, &block)
86
86
  set_audit_user_id_and_name
87
- conn = exec_delete_without_pg_audit_log(sql, name, binds)
87
+ conn = exec_delete_without_pg_audit_log(*args, &block)
88
88
  conn
89
89
  end
90
90
  alias_method_chain :exec_delete, :pg_audit_log
@@ -49,18 +49,21 @@ module PgAuditLog
49
49
  end
50
50
 
51
51
  def enable
52
+ @disabled = false
52
53
  connection.set_user_id(nil)
53
54
  end
54
55
 
55
56
  def disable
57
+ @disabled = true
56
58
  connection.set_user_id(PgAuditLog::Function::DISABLED_USER)
57
59
  end
58
60
 
59
61
  def without_triggers
60
- disable
62
+ was_disabled = @disabled
63
+ disable unless was_disabled
61
64
  yield
62
65
  ensure
63
- enable
66
+ enable unless was_disabled
64
67
  end
65
68
 
66
69
  def create_for_table(table_name)
@@ -1,3 +1,3 @@
1
1
  module PgAuditLog
2
- VERSION = '0.6.6'.freeze
2
+ VERSION = '0.6.7'.freeze
3
3
  end
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
20
  spec.require_paths = ['lib']
21
21
 
22
- spec.add_dependency 'rails', '>= 3.2', '< 4.3'
22
+ spec.add_dependency 'rails', '>= 4.2', '< 5.1'
23
23
  spec.add_dependency 'pg', '>= 0.9.0'
24
24
  spec.add_development_dependency 'rspec', '~> 3.0'
25
25
  spec.add_development_dependency 'rspec-rails'
@@ -2,6 +2,7 @@ require 'spec_helper'
2
2
 
3
3
  describe PgAuditLog::Triggers do
4
4
  before :each do
5
+ PgAuditLog::Triggers.enable
5
6
  PgAuditLog::Triggers.uninstall rescue nil
6
7
  end
7
8
 
@@ -132,6 +133,20 @@ describe PgAuditLog::Triggers do
132
133
  }.to change(PgAuditLog::Entry, :count)
133
134
  expect(PgAuditLog::Entry.last.user_id).to eq(-1)
134
135
  end
136
+
137
+ context 'when nested' do
138
+ it 'does not enable prematurely' do
139
+ expect {
140
+ PgAuditLog::Triggers.without_triggers do
141
+ TableWithTriggers.create!
142
+ PgAuditLog::Triggers.without_triggers do
143
+ TableWithTriggers.create!
144
+ end
145
+ TableWithTriggers.create!
146
+ end
147
+ }.to_not change(PgAuditLog::Entry, :count)
148
+ end
149
+ end
135
150
  end
136
151
 
137
152
  describe ".create_for_table" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg_audit_log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.6
4
+ version: 0.6.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Case Commons, LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-09 00:00:00.000000000 Z
11
+ date: 2017-03-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '3.2'
19
+ version: '4.2'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '4.3'
22
+ version: '5.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '3.2'
29
+ version: '4.2'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '4.3'
32
+ version: '5.1'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: pg
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -145,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
145
  version: '0'
146
146
  requirements: []
147
147
  rubyforge_project:
148
- rubygems_version: 2.4.5
148
+ rubygems_version: 2.2.2
149
149
  signing_key:
150
150
  specification_version: 4
151
151
  summary: PostgreSQL-only database-level audit logging of all databases changes.
@@ -156,4 +156,3 @@ test_files:
156
156
  - spec/pg_audit_log_spec.rb
157
157
  - spec/spec_helper.rb
158
158
  - spec/triggers_spec.rb
159
- has_rdoc: