purgatory 6.0.1 → 6.0.3

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: a1583114c3324345ef6ace121844c2dbc67769d92982acfe17b6e96239d8d745
4
- data.tar.gz: dff5194db0354ac30037530e6d007291db0adf30a01fc950e2d75f13990cd5fd
3
+ metadata.gz: 2af3c60d4f7b1c69ed124e020216752e1078b24eafeea8af633ec91ab25c1a14
4
+ data.tar.gz: f731d8381bc1430a47999a0dfbef2acba055620c0410cebd92a1585495a027d6
5
5
  SHA512:
6
- metadata.gz: f354e1057db8afa43f520c1c58658f0bb04fadc5b4ec63a972d733691bddc1673b30f010cbadfa7f857d0dbf0ab61796c9b1803c6e29d679e816e091a77c35f7
7
- data.tar.gz: afb6c2f8af9874ab2ae52dc76174eec87c5fd97869ece5c2fabd3bbc4eb49f6b904de905d45766444b58b3f3e0a9f6b1e1c086836b10bed2b61d4fc62189a31b
6
+ metadata.gz: 7e42df9ba9269376d816c414c4dce1f7f115ab66598d2bf98965d4d8c53098f636819def2be40cc394cbe7a4efd995746206a3256f21e6c4ac40e9d0840143a1
7
+ data.tar.gz: c6b61df8ad74d59bc3d86e2e8d64634f406edaa81c7c91d809316f45096361f101400f4518aded25fae3b5a220d015a683a2b77ad8aa288bad7dfeece02b2dfb
data/VERSION CHANGED
@@ -1 +1 @@
1
- 6.0.1
1
+ 6.0.3
@@ -16,7 +16,7 @@ class Purgatory < ActiveRecord::Base
16
16
  def self.pending
17
17
  where(approved_at: nil)
18
18
  end
19
-
19
+
20
20
  def self.approved
21
21
  where ["approved_at IS NOT NULL"]
22
22
  end
@@ -51,7 +51,8 @@ class Purgatory < ActiveRecord::Base
51
51
  unless approved?
52
52
  success = soul_with_changes.save
53
53
  if performable_method.present? && success
54
- success = soul.send(performable_method[:method], *performable_method[:args])
54
+ performable_method[:kwargs] ||= {}
55
+ success = soul.send(performable_method[:method], *performable_method[:args], **performable_method[:kwargs])
55
56
  end
56
57
 
57
58
  if success
@@ -31,9 +31,9 @@ module PurgatoryModule
31
31
  @options = options
32
32
  end
33
33
 
34
- def method_missing(method, *args)
34
+ def method_missing(method, *args, **kwargs)
35
35
  return nil if Purgatory.pending_with_matching_soul(@soul).any? && @options[:fail_if_matching_soul]
36
- Purgatory.create soul: @soul, requester: @requester, performable_method: {method: method.to_sym, args: args}
36
+ Purgatory.create soul: @soul, requester: @requester, performable_method: { method: method.to_sym, args: args, kwargs: kwargs }
37
37
  end
38
38
  end
39
39
 
data/purgatory.gemspec CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "purgatory"
6
- s.version = "6.0.1"
6
+ s.version = "6.0.3"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: purgatory
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 6.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elan Dubrofsky
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2017-08-24 00:00:00.000000000 Z
@@ -47,7 +47,7 @@ homepage: http://github.com/financeit/purgatory
47
47
  licenses:
48
48
  - MIT
49
49
  metadata: {}
50
- post_install_message:
50
+ post_install_message:
51
51
  rdoc_options: []
52
52
  require_paths:
53
53
  - lib
@@ -62,9 +62,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  requirements: []
65
- rubyforge_project:
66
- rubygems_version: 2.7.6.2
67
- signing_key:
65
+ rubygems_version: 3.5.15
66
+ signing_key:
68
67
  specification_version: 4
69
68
  summary: Allow changes to a model to be put in purgatory until they are approved
70
69
  test_files: []