recurly 2.0.8 → 2.0.9
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of recurly might be problematic. Click here for more details.
- data/README.markdown +2 -2
- data/lib/recurly/adjustment.rb +1 -1
- data/lib/recurly/billing_info.rb +2 -0
- data/lib/recurly/invoice.rb +1 -1
- data/lib/recurly/resource.rb +7 -6
- data/lib/recurly/resource/pager.rb +11 -2
- data/lib/recurly/subscription.rb +11 -0
- data/lib/recurly/version.rb +1 -1
- metadata +16 -16
data/README.markdown
CHANGED
@@ -12,7 +12,7 @@ Recurly is packaged as a Ruby gem. We recommend you install it with
|
|
12
12
|
[Bundler](http://gembundler.com/) by adding the following line to your Gemfile:
|
13
13
|
|
14
14
|
``` ruby
|
15
|
-
gem 'recurly', '~> 2.0.
|
15
|
+
gem 'recurly', '~> 2.0.9'
|
16
16
|
```
|
17
17
|
|
18
18
|
Recurly will automatically use [Nokogiri](http://nokogiri.org/) (for a nice
|
@@ -62,7 +62,7 @@ Instructions and examples are available on
|
|
62
62
|
[Recurly's documentation site](http://docs.recurly.com/api/basics).
|
63
63
|
|
64
64
|
Recurly's gem API is available
|
65
|
-
[here](http://rubydoc.info/gems/recurly/2.0.
|
65
|
+
[here](http://rubydoc.info/gems/recurly/2.0.9/frames).
|
66
66
|
|
67
67
|
|
68
68
|
## Contributing
|
data/lib/recurly/adjustment.rb
CHANGED
data/lib/recurly/billing_info.rb
CHANGED
data/lib/recurly/invoice.rb
CHANGED
data/lib/recurly/resource.rb
CHANGED
@@ -205,7 +205,7 @@ module Recurly
|
|
205
205
|
# a.name_change # => [nil, "Stephen"]
|
206
206
|
def define_attribute_methods attribute_names
|
207
207
|
@attribute_names = attribute_names.map! { |m| m.to_s }.sort!.freeze
|
208
|
-
remove_const :AttributeMethods if
|
208
|
+
remove_const :AttributeMethods if constants.include? :AttributeMethods
|
209
209
|
include const_set :AttributeMethods, Module.new {
|
210
210
|
attribute_names.each do |name|
|
211
211
|
define_method(name) { self[name] } # Get.
|
@@ -422,7 +422,7 @@ module Recurly
|
|
422
422
|
# @return [Hash] A list of association names for the current class.
|
423
423
|
def associations
|
424
424
|
@associations ||= begin
|
425
|
-
unless
|
425
|
+
unless constants.include? :Associations
|
426
426
|
include const_set :Associations, Module.new
|
427
427
|
end
|
428
428
|
|
@@ -506,11 +506,12 @@ module Recurly
|
|
506
506
|
a = associations.find { |k, v| v.include? name.to_s } and a.first
|
507
507
|
end
|
508
508
|
|
509
|
-
def embedded!
|
510
|
-
private_class_method(*%w(
|
511
|
-
new create create! paginate find_each scoped where all
|
512
|
-
))
|
509
|
+
def embedded! root_index = false
|
513
510
|
private :initialize
|
511
|
+
private_class_method(*%w(new create create!))
|
512
|
+
unless root_index
|
513
|
+
private_class_method(*%w(all find_each first paginate scoped where))
|
514
|
+
end
|
514
515
|
end
|
515
516
|
end
|
516
517
|
|
@@ -160,6 +160,15 @@ module Recurly
|
|
160
160
|
new(attributes) { |record| record.save! }
|
161
161
|
end
|
162
162
|
|
163
|
+
def find uuid
|
164
|
+
if resource_class.respond_to? :find
|
165
|
+
raise NoMethodError,
|
166
|
+
"#find must be called on #{resource_class} directly"
|
167
|
+
end
|
168
|
+
|
169
|
+
resource_class.from_response API.get("#{uri}/#{uuid}")
|
170
|
+
end
|
171
|
+
|
163
172
|
# @return [true, false]
|
164
173
|
# @see Object#respond_to?
|
165
174
|
def respond_to? method_name, include_private = false
|
@@ -177,8 +186,8 @@ module Recurly
|
|
177
186
|
@count = response['X-Records'].to_i
|
178
187
|
@links = {}
|
179
188
|
if links = response['Link']
|
180
|
-
links.scan(/<([^>]+)>; rel="([^"]+)"/).each do |link|
|
181
|
-
@links[
|
189
|
+
links.scan(/<([^>]+)>; rel="([^"]+)"/).each do |link, rel|
|
190
|
+
@links[rel] = link.freeze
|
182
191
|
end
|
183
192
|
end
|
184
193
|
@links.freeze
|
data/lib/recurly/subscription.rb
CHANGED
@@ -37,6 +37,7 @@ module Recurly
|
|
37
37
|
trial_ends_at
|
38
38
|
pending_subscription
|
39
39
|
subscription_add_ons
|
40
|
+
coupon_code
|
40
41
|
)
|
41
42
|
alias to_param uuid
|
42
43
|
|
@@ -61,6 +62,16 @@ module Recurly
|
|
61
62
|
self[:plan_code] = plan_code
|
62
63
|
end
|
63
64
|
|
65
|
+
# Assign a Coupon resource (rather than a coupon code).
|
66
|
+
#
|
67
|
+
# @param coupon [Coupon]
|
68
|
+
def coupon= coupon
|
69
|
+
self.coupon_code = (
|
70
|
+
coupon.coupon_code if coupon.respond_to? :coupon_code
|
71
|
+
)
|
72
|
+
attributes[:coupon] = coupon
|
73
|
+
end
|
74
|
+
|
64
75
|
# @return [AddOns]
|
65
76
|
def subscription_add_ons
|
66
77
|
AddOns.new self, super
|
data/lib/recurly/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: recurly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-11-
|
12
|
+
date: 2011-11-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70125982298980 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.9.2
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70125982298980
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: bundler
|
27
|
-
requirement: &
|
27
|
+
requirement: &70125982298100 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.1.pre.10
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70125982298100
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: minitest
|
38
|
-
requirement: &
|
38
|
+
requirement: &70125982297300 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 2.6.1
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70125982297300
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: webmock
|
49
|
-
requirement: &
|
49
|
+
requirement: &70125982296580 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.7.6
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70125982296580
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: guard-minitest
|
60
|
-
requirement: &
|
60
|
+
requirement: &70125982295680 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 0.4.0
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70125982295680
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rb-fsevent
|
71
|
-
requirement: &
|
71
|
+
requirement: &70125982294700 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.4.3.1
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70125982294700
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: growl_notify
|
82
|
-
requirement: &
|
82
|
+
requirement: &70125982293960 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,7 +87,7 @@ dependencies:
|
|
87
87
|
version: 0.0.1
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70125982293960
|
91
91
|
description: ! 'An API client library for Recurly: http://recurly.com'
|
92
92
|
email: support@recurly.com
|
93
93
|
executables:
|