stripe 3.31.1 → 4.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 25ebfbf84bcee0acb6cab757e949ab8654b7e41d
4
- data.tar.gz: '09546cf8adf0ad0dbfabd54675e256edfabdfab5'
2
+ SHA256:
3
+ metadata.gz: 176cc43da4fb0e5967142300c7d5f22f4c13b21b81dfc01dd703a99396d3cb39
4
+ data.tar.gz: a7c12a9c2d2758377902ef75822ede38e9e0680343778e080cb6c6cec7b814fc
5
5
  SHA512:
6
- metadata.gz: c10a085b2465b5da8ba4490d6c34cd25be875fa5bdb0de22e4e02c25b457d7d57bf8476c8126c0a2f1c7df9d4f0b4a401f0341b0bc2b230cd3cc535b40e40f9d
7
- data.tar.gz: 6779c4a2e3561ec53bc52a929cb51c17d9b17b2eea2ffb35f511924a84a8690be9f32022055de581d165a34d45adb2e74598583ae532cd13a5e47db3277e0ef4
6
+ metadata.gz: 1d01504fe2c3080c4ffd469f91c8250da6e98ddc519df7182d0c0c2d92d1095be58669a619f880b9bef831be96905fece73c14fdc81d56af1a9a74d2f5a30ad1
7
+ data.tar.gz: 22795339a7d756f0960f8dba40dd4e9541d01e11e0cd48b0bfde30dbd0e29574c9c206288457a8a3e86c94a916c3358d787670c22053507ea11557274794bfb1
data/.travis.yml CHANGED
@@ -1,7 +1,6 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 2.0
5
4
  - 2.1
6
5
  - 2.2
7
6
  - 2.3
@@ -18,7 +17,7 @@ sudo: false
18
17
  env:
19
18
  global:
20
19
  # If changing this number, please also change it in `test/test_helper.rb`.
21
- - STRIPE_MOCK_VERSION=0.35.0
20
+ - STRIPE_MOCK_VERSION=0.40.0
22
21
 
23
22
  cache:
24
23
  directories:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.5.0 - 2019-01-02
4
+ * [#719](https://github.com/stripe/stripe-ruby/pull/719) Generate OAuth authorize URLs for Express accounts as well as standard
5
+
6
+ ## 4.4.1 - 2018-12-31
7
+ * [#718](https://github.com/stripe/stripe-ruby/pull/718) Fix an error message typo
8
+
9
+ ## 4.4.0 - 2018-12-21
10
+ * [#716](https://github.com/stripe/stripe-ruby/pull/716) Add support for the `CheckoutSession` resource
11
+
12
+ ## 4.3.0 - 2018-12-10
13
+ * [#711](https://github.com/stripe/stripe-ruby/pull/711) Add support for account links
14
+
15
+ ## 4.2.0 - 2018-11-28
16
+ * [#705](https://github.com/stripe/stripe-ruby/pull/705) Add support for the `Review` APIs
17
+
18
+ ## 4.1.0 - 2018-11-27
19
+ * [#695](https://github.com/stripe/stripe-ruby/pull/695) Add support for `ValueList` and `ValueListItem` for Radar
20
+
21
+ ## 4.0.3 - 2018-11-19
22
+ * [#703](https://github.com/stripe/stripe-ruby/pull/703) Don't use `Net::HTTP::Persistent` on Windows where it's not well supported
23
+
24
+ ## 4.0.2 - 2018-11-16
25
+ * [#701](https://github.com/stripe/stripe-ruby/pull/701) Require minimum Faraday 0.13 for proper support of persistent connections
26
+
27
+ ## 4.0.1 - 2018-11-15
28
+ * [#699](https://github.com/stripe/stripe-ruby/pull/699) Only send telemetry if `Request-Id` was present in the response
29
+
30
+ ## 4.0.0 - 2018-11-15
31
+ * [#698](https://github.com/stripe/stripe-ruby/pull/698) Use persistent connections by default through `Net::HTTP::Persistent`
32
+ * [#698](https://github.com/stripe/stripe-ruby/pull/698) Drop support for Ruby 2.0 (which we consider a breaking change here)
33
+
3
34
  ## 3.31.1 - 2018-11-12
4
35
  * [#697](https://github.com/stripe/stripe-ruby/pull/697) Send telemetry in milliseconds specifically
5
36
 
data/Gemfile CHANGED
@@ -24,18 +24,14 @@ group :development do
24
24
  # older Ruby versions. Check Ruby the version here and put a maximum
25
25
  # constraint on Rack if necessary.
26
26
  if RUBY_VERSION >= "2.2.2"
27
- gem "rack", ">= 1.5"
27
+ gem "rack", ">= 2.0.6"
28
28
  else
29
- gem "rack", ">= 1.5", "< 2.0" # rubocop:disable Bundler/DuplicatedGem
29
+ gem "rack", ">= 1.6.11", "< 2.0" # rubocop:disable Bundler/DuplicatedGem
30
30
  end
31
31
 
32
32
  platforms :mri do
33
- # to avoid problems, bring Byebug in on just versions of Ruby under which
34
- # it's known to work well
35
- if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new("2.0.0")
36
- gem "byebug"
37
- gem "pry"
38
- gem "pry-byebug"
39
- end
33
+ gem "byebug"
34
+ gem "pry"
35
+ gem "pry-byebug"
40
36
  end
41
37
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.31.1
1
+ 4.5.0
data/lib/stripe.rb CHANGED
@@ -37,6 +37,7 @@ require "stripe/webhook"
37
37
 
38
38
  # Named API resources
39
39
  require "stripe/account"
40
+ require "stripe/account_link"
40
41
  require "stripe/alipay_account"
41
42
  require "stripe/apple_pay_domain"
42
43
  require "stripe/application_fee"
@@ -48,6 +49,7 @@ require "stripe/bitcoin_receiver"
48
49
  require "stripe/bitcoin_transaction"
49
50
  require "stripe/card"
50
51
  require "stripe/charge"
52
+ require "stripe/checkout_session"
51
53
  require "stripe/country_spec"
52
54
  require "stripe/coupon"
53
55
  require "stripe/customer"
@@ -75,12 +77,15 @@ require "stripe/payout"
75
77
  require "stripe/person"
76
78
  require "stripe/plan"
77
79
  require "stripe/product"
80
+ require "stripe/radar/value_list"
81
+ require "stripe/radar/value_list_item"
78
82
  require "stripe/recipient"
79
83
  require "stripe/recipient_transfer"
80
84
  require "stripe/refund"
81
85
  require "stripe/reporting/report_run"
82
86
  require "stripe/reporting/report_type"
83
87
  require "stripe/reversal"
88
+ require "stripe/review"
84
89
  require "stripe/sigma/scheduled_query_run"
85
90
  require "stripe/sku"
86
91
  require "stripe/source"
@@ -103,7 +103,7 @@ module Stripe
103
103
  end
104
104
 
105
105
  def legal_entity=(_)
106
- raise NoMethodError, 'Overridding legal_entity can cause serious issues. Instead, set the individual fields of legal_entity like blah.legal_entity.first_name = \'Blah\''
106
+ raise NoMethodError, 'Overriding legal_entity can cause serious issues. Instead, set the individual fields of legal_entity like blah.legal_entity.first_name = \'Blah\''
107
107
  end
108
108
 
109
109
  def deauthorize(client_id = nil, opts = {})
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ class AccountLink < APIResource
5
+ extend Stripe::APIOperations::Create
6
+
7
+ OBJECT_NAME = "account_link".freeze
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ class CheckoutSession < APIResource
5
+ extend Stripe::APIOperations::Create
6
+
7
+ OBJECT_NAME = "checkout_session".freeze
8
+ end
9
+ end
data/lib/stripe/oauth.rb CHANGED
@@ -31,11 +31,14 @@ module Stripe
31
31
  def self.authorize_url(params = {}, opts = {})
32
32
  base = opts[:connect_base] || Stripe.connect_base
33
33
 
34
+ path = "/oauth/authorize"
35
+ path = "/express" + path if opts[:express]
36
+
34
37
  params[:client_id] = get_client_id(params)
35
38
  params[:response_type] ||= "code"
36
39
  query = Util.encode_parameters(params)
37
40
 
38
- "#{base}/oauth/authorize?#{query}"
41
+ "#{base}#{path}?#{query}"
39
42
  end
40
43
 
41
44
  def self.token(params = {}, opts = {})
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ module Radar
5
+ class ValueList < Stripe::APIResource
6
+ extend Stripe::APIOperations::Create
7
+ include Stripe::APIOperations::Delete
8
+ extend Stripe::APIOperations::List
9
+ include Stripe::APIOperations::Save
10
+
11
+ OBJECT_NAME = "radar.value_list".freeze
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ module Radar
5
+ class ValueListItem < Stripe::APIResource
6
+ extend Stripe::APIOperations::Create
7
+ include Stripe::APIOperations::Delete
8
+ extend Stripe::APIOperations::List
9
+
10
+ OBJECT_NAME = "radar.value_list_item".freeze
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ class Review < APIResource
5
+ extend Stripe::APIOperations::List
6
+
7
+ OBJECT_NAME = "review".freeze
8
+
9
+ def approve(params = {}, opts = {})
10
+ resp, opts = request(:post, resource_url + "/approve", params, opts)
11
+ initialize_from(resp.data, opts)
12
+ end
13
+ end
14
+ end
@@ -31,11 +31,18 @@ module Stripe
31
31
  # of connection re-use, so make sure that we have a separate connection
32
32
  # object per thread.
33
33
  Thread.current[:stripe_client_default_conn] ||= begin
34
- conn = Faraday.new do |c|
35
- c.use Faraday::Request::Multipart
36
- c.use Faraday::Request::UrlEncoded
37
- c.use Faraday::Response::RaiseError
38
- c.adapter Faraday.default_adapter
34
+ conn = Faraday.new do |builder|
35
+ builder.use Faraday::Request::Multipart
36
+ builder.use Faraday::Request::UrlEncoded
37
+ builder.use Faraday::Response::RaiseError
38
+
39
+ # Net::HTTP::Persistent doesn't seem to do well on Windows or JRuby,
40
+ # so fall back to default there.
41
+ if Gem.win_platform? || RUBY_PLATFORM == "java"
42
+ builder.adapter :net_http
43
+ else
44
+ builder.adapter :net_http_persistent
45
+ end
39
46
  end
40
47
 
41
48
  if Stripe.verify_ssl_certs
@@ -218,7 +225,8 @@ module Stripe
218
225
  resp = yield
219
226
  context = context.dup_from_response(resp)
220
227
  log_response(context, request_start, resp.status, resp.body)
221
- if Stripe.enable_telemetry?
228
+
229
+ if Stripe.enable_telemetry? && context.request_id
222
230
  request_duration_ms = ((Time.now - request_start) * 1000).to_int
223
231
  @last_request_metrics = StripeRequestMetrics.new(context.request_id, request_duration_ms)
224
232
  end
@@ -270,7 +278,7 @@ module Stripe
270
278
  end
271
279
 
272
280
  # Formats a plugin "app info" hash into a string that we can tack onto the
273
- # end of a User-Agent string where it'll be fairly prominant in places like
281
+ # end of a User-Agent string where it'll be fairly prominent in places like
274
282
  # the Dashboard. Note that this formatting has been implemented to match
275
283
  # other libraries, and shouldn't be changed without universal consensus.
276
284
  def format_app_info(info)
data/lib/stripe/util.rb CHANGED
@@ -46,6 +46,7 @@ module Stripe
46
46
 
47
47
  # business objects
48
48
  Account::OBJECT_NAME => Account,
49
+ AccountLink::OBJECT_NAME => AccountLink,
49
50
  AlipayAccount::OBJECT_NAME => AlipayAccount,
50
51
  ApplePayDomain::OBJECT_NAME => ApplePayDomain,
51
52
  ApplicationFee::OBJECT_NAME => ApplicationFee,
@@ -57,6 +58,7 @@ module Stripe
57
58
  BitcoinTransaction::OBJECT_NAME => BitcoinTransaction,
58
59
  Card::OBJECT_NAME => Card,
59
60
  Charge::OBJECT_NAME => Charge,
61
+ CheckoutSession::OBJECT_NAME => CheckoutSession,
60
62
  CountrySpec::OBJECT_NAME => CountrySpec,
61
63
  Coupon::OBJECT_NAME => Coupon,
62
64
  Customer::OBJECT_NAME => Customer,
@@ -85,12 +87,15 @@ module Stripe
85
87
  Person::OBJECT_NAME => Person,
86
88
  Plan::OBJECT_NAME => Plan,
87
89
  Product::OBJECT_NAME => Product,
90
+ Radar::ValueList::OBJECT_NAME => Radar::ValueList,
91
+ Radar::ValueListItem::OBJECT_NAME => Radar::ValueListItem,
88
92
  Recipient::OBJECT_NAME => Recipient,
89
93
  RecipientTransfer::OBJECT_NAME => RecipientTransfer,
90
94
  Refund::OBJECT_NAME => Refund,
91
95
  Reporting::ReportRun::OBJECT_NAME => Reporting::ReportRun,
92
96
  Reporting::ReportType::OBJECT_NAME => Reporting::ReportType,
93
97
  Reversal::OBJECT_NAME => Reversal,
98
+ Review::OBJECT_NAME => Review,
94
99
  SKU::OBJECT_NAME => SKU,
95
100
  Sigma::ScheduledQueryRun::OBJECT_NAME => Sigma::ScheduledQueryRun,
96
101
  Source::OBJECT_NAME => Source,
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Stripe
4
- VERSION = "3.31.1".freeze
4
+ VERSION = "4.5.0".freeze
5
5
  end
data/stripe.gemspec CHANGED
@@ -7,7 +7,7 @@ require "stripe/version"
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "stripe"
9
9
  s.version = Stripe::VERSION
10
- s.required_ruby_version = ">= 2.0.0"
10
+ s.required_ruby_version = ">= 2.1.0"
11
11
  s.summary = "Ruby bindings for the Stripe API"
12
12
  s.description = "Stripe is the easiest way to accept payments online. See https://stripe.com for details."
13
13
  s.author = "Stripe"
@@ -15,7 +15,8 @@ Gem::Specification.new do |s|
15
15
  s.homepage = "https://stripe.com/docs/api/ruby"
16
16
  s.license = "MIT"
17
17
 
18
- s.add_dependency("faraday", "~> 0.10")
18
+ s.add_dependency("faraday", "~> 0.13")
19
+ s.add_dependency("net-http-persistent", "~> 3.0")
19
20
 
20
21
  s.files = `git ls-files`.split("\n")
21
22
  s.test_files = `git ls-files -- test/*`.split("\n")
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require ::File.expand_path("../../test_helper", __FILE__)
4
+
5
+ module Stripe
6
+ class AccountLinkTest < Test::Unit::TestCase
7
+ should "be creatable" do
8
+ link = Stripe::AccountLink.create(
9
+ account: "acct_123",
10
+ failure_url: "https://stripe.com/failure",
11
+ success_url: "https://stripe.com/success",
12
+ type: "custom_account_verification"
13
+ )
14
+ assert_requested :post, "#{Stripe.api_base}/v1/account_links"
15
+ assert link.is_a?(Stripe::AccountLink)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ require ::File.expand_path("../../test_helper", __FILE__)
4
+
5
+ module Stripe
6
+ class CheckoutSessionTest < Test::Unit::TestCase
7
+ should "be creatable" do
8
+ session = Stripe::CheckoutSession.create(
9
+ allowed_source_types: ["card"],
10
+ cancel_url: "https://stripe.com/cancel",
11
+ client_reference_id: "1234",
12
+ line_items: [
13
+ {
14
+ amount: 123,
15
+ currency: "usd",
16
+ description: "item 1",
17
+ images: [
18
+ "https://stripe.com/img1",
19
+ ],
20
+ name: "name",
21
+ quantity: 2,
22
+ },
23
+ ],
24
+ payment_intent_data: [
25
+ receipt_email: "test@stripe.com",
26
+ ],
27
+ success_url: "https://stripe.com/success"
28
+ )
29
+ assert_requested :post, "#{Stripe.api_base}/v1/checkout_sessions"
30
+ assert session.is_a?(Stripe::CheckoutSession)
31
+ end
32
+ end
33
+ end
@@ -35,6 +35,15 @@ module Stripe
35
35
  assert_equal(["https://example.com/profile/test"], params["stripe_user[url]"])
36
36
  assert_equal(["US"], params["stripe_user[country]"])
37
37
  end
38
+
39
+ should "optionally return an express path" do
40
+ uri_str = OAuth.authorize_url({}, express: true)
41
+
42
+ uri = URI.parse(uri_str)
43
+ assert_equal("https", uri.scheme)
44
+ assert_equal("connect.stripe.com", uri.host)
45
+ assert_equal("/express/oauth/authorize", uri.path)
46
+ end
38
47
  end
39
48
 
40
49
  context ".token" do
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ require ::File.expand_path("../../../test_helper", __FILE__)
4
+
5
+ module Stripe
6
+ module Radar
7
+ class ValueListItemTest < Test::Unit::TestCase
8
+ should "be listable" do
9
+ items = Stripe::Radar::ValueListItem.list(value_list: "rsl_123")
10
+ assert_requested :get, "#{Stripe.api_base}/v1/radar/value_list_items?value_list=rsl_123"
11
+ assert items.data.is_a?(Array)
12
+ assert items.first.is_a?(Stripe::Radar::ValueListItem)
13
+ end
14
+
15
+ should "be retrievable" do
16
+ item = Stripe::Radar::ValueListItem.retrieve("rsli_123")
17
+ assert_requested :get, "#{Stripe.api_base}/v1/radar/value_list_items/rsli_123"
18
+ assert item.is_a?(Stripe::Radar::ValueListItem)
19
+ end
20
+
21
+ should "be creatable" do
22
+ item = Stripe::Radar::ValueListItem.create(
23
+ value_list: "rsl_123",
24
+ value: "value"
25
+ )
26
+ assert_requested :post, "#{Stripe.api_base}/v1/radar/value_list_items"
27
+ assert item.is_a?(Stripe::Radar::ValueListItem)
28
+ end
29
+
30
+ should "be deletable" do
31
+ list = Stripe::Radar::ValueListItem.retrieve("rsli_123")
32
+ list = list.delete
33
+ assert_requested :delete, "#{Stripe.api_base}/v1/radar/value_list_items/rsli_123"
34
+ assert list.is_a?(Stripe::Radar::ValueListItem)
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require ::File.expand_path("../../../test_helper", __FILE__)
4
+
5
+ module Stripe
6
+ module Radar
7
+ class ValueListTest < Test::Unit::TestCase
8
+ should "be listable" do
9
+ lists = Stripe::Radar::ValueList.list
10
+ assert_requested :get, "#{Stripe.api_base}/v1/radar/value_lists"
11
+ assert lists.data.is_a?(Array)
12
+ assert lists.first.is_a?(Stripe::Radar::ValueList)
13
+ end
14
+
15
+ should "be retrievable" do
16
+ list = Stripe::Radar::ValueList.retrieve("rsl_123")
17
+ assert_requested :get, "#{Stripe.api_base}/v1/radar/value_lists/rsl_123"
18
+ assert list.is_a?(Stripe::Radar::ValueList)
19
+ end
20
+
21
+ should "be creatable" do
22
+ list = Stripe::Radar::ValueList.create(
23
+ alias: "list_alias",
24
+ name: "list_name"
25
+ )
26
+ assert_requested :post, "#{Stripe.api_base}/v1/radar/value_lists"
27
+ assert list.is_a?(Stripe::Radar::ValueList)
28
+ end
29
+
30
+ should "be saveable" do
31
+ list = Stripe::Radar::ValueList.retrieve("rsl_123")
32
+ list.metadata["key"] = "value"
33
+ list.save
34
+ assert_requested :post, "#{Stripe.api_base}/v1/radar/value_lists/rsl_123"
35
+ end
36
+
37
+ should "be updateable" do
38
+ list = Stripe::Radar::ValueList.update("rsl_123", metadata: { key: "value" })
39
+ assert_requested :post, "#{Stripe.api_base}/v1/radar/value_lists/rsl_123"
40
+ assert list.is_a?(Stripe::Radar::ValueList)
41
+ end
42
+
43
+ should "be deletable" do
44
+ list = Stripe::Radar::ValueList.retrieve("rsl_123")
45
+ list = list.delete
46
+ assert_requested :delete, "#{Stripe.api_base}/v1/radar/value_lists/rsl_123"
47
+ assert list.is_a?(Stripe::Radar::ValueList)
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require ::File.expand_path("../../test_helper", __FILE__)
4
+
5
+ module Stripe
6
+ class ReviewTest < Test::Unit::TestCase
7
+ should "be listable" do
8
+ reviews = Stripe::Review.list
9
+ assert_requested :get, "#{Stripe.api_base}/v1/reviews"
10
+ assert reviews.data.is_a?(Array)
11
+ assert reviews.first.is_a?(Stripe::Review)
12
+ end
13
+
14
+ should "be retrievable" do
15
+ review = Stripe::Review.retrieve("prv_123")
16
+ assert_requested :get, "#{Stripe.api_base}/v1/reviews/prv_123"
17
+ assert review.is_a?(Stripe::Review)
18
+ end
19
+
20
+ should "be approvable" do
21
+ review = Stripe::Review.retrieve("prv_123")
22
+ review.approve
23
+ assert_requested :post, "#{Stripe.api_base}/v1/reviews/prv_123/approve"
24
+ assert review.is_a?(Stripe::Review)
25
+ end
26
+ end
27
+ end
@@ -452,14 +452,14 @@ module Stripe
452
452
 
453
453
  should "#to_s will call to_s for all embedded stripe objects" do
454
454
  obj = Stripe::StripeObject.construct_from(id: "id",
455
- # embeded list object
455
+ # embedded list object
456
456
  refunds: Stripe::ListObject.construct_from(data: [
457
457
  # embedded object in list
458
458
  Stripe::StripeObject.construct_from(id: "id",
459
459
  # embedded object in an object in a list object
460
460
  metadata: Stripe::StripeObject.construct_from(foo: "bar")),
461
461
  ]),
462
- # embeded stripe object
462
+ # embedded stripe object
463
463
  metadata: Stripe::StripeObject.construct_from(foo: "bar"))
464
464
  expected = JSON.pretty_generate(id: "id",
465
465
  refunds: {
data/test/test_helper.rb CHANGED
@@ -16,7 +16,7 @@ PROJECT_ROOT = ::File.expand_path("../../", __FILE__)
16
16
  require ::File.expand_path("../test_data", __FILE__)
17
17
 
18
18
  # If changing this number, please also change it in `.travis.yml`.
19
- MOCK_MINIMUM_VERSION = "0.35.0".freeze
19
+ MOCK_MINIMUM_VERSION = "0.40.0".freeze
20
20
  MOCK_PORT = ENV["STRIPE_MOCK_PORT"] || 12_111
21
21
 
22
22
  # Disable all real network connections except those that are outgoing to
@@ -27,7 +27,8 @@ WebMock.disable_net_connect!(allow: "localhost:#{MOCK_PORT}")
27
27
  # we can print one error and fail fast so that it's more clear to the user how
28
28
  # they should fix the problem.
29
29
  begin
30
- resp = Faraday.get("http://localhost:#{MOCK_PORT}/")
30
+ conn = Faraday::Connection.new("http://localhost:#{MOCK_PORT}")
31
+ resp = conn.get("/")
31
32
  version = resp.headers["Stripe-Mock-Version"]
32
33
  if version != "master" &&
33
34
  Gem::Version.new(version) < Gem::Version.new(MOCK_MINIMUM_VERSION)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stripe
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.31.1
4
+ version: 4.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-13 00:00:00.000000000 Z
11
+ date: 2019-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,14 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.10'
19
+ version: '0.13'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.10'
26
+ version: '0.13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: net-http-persistent
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '3.0'
27
41
  description: Stripe is the easiest way to accept payments online. See https://stripe.com
28
42
  for details.
29
43
  email: support@stripe.com
@@ -50,6 +64,7 @@ files:
50
64
  - lib/data/ca-certificates.crt
51
65
  - lib/stripe.rb
52
66
  - lib/stripe/account.rb
67
+ - lib/stripe/account_link.rb
53
68
  - lib/stripe/alipay_account.rb
54
69
  - lib/stripe/api_operations/create.rb
55
70
  - lib/stripe/api_operations/delete.rb
@@ -68,6 +83,7 @@ files:
68
83
  - lib/stripe/bitcoin_transaction.rb
69
84
  - lib/stripe/card.rb
70
85
  - lib/stripe/charge.rb
86
+ - lib/stripe/checkout_session.rb
71
87
  - lib/stripe/country_spec.rb
72
88
  - lib/stripe/coupon.rb
73
89
  - lib/stripe/customer.rb
@@ -98,12 +114,15 @@ files:
98
114
  - lib/stripe/person.rb
99
115
  - lib/stripe/plan.rb
100
116
  - lib/stripe/product.rb
117
+ - lib/stripe/radar/value_list.rb
118
+ - lib/stripe/radar/value_list_item.rb
101
119
  - lib/stripe/recipient.rb
102
120
  - lib/stripe/recipient_transfer.rb
103
121
  - lib/stripe/refund.rb
104
122
  - lib/stripe/reporting/report_run.rb
105
123
  - lib/stripe/reporting/report_type.rb
106
124
  - lib/stripe/reversal.rb
125
+ - lib/stripe/review.rb
107
126
  - lib/stripe/sigma/scheduled_query_run.rb
108
127
  - lib/stripe/singleton_api_resource.rb
109
128
  - lib/stripe/sku.rb
@@ -130,6 +149,7 @@ files:
130
149
  - stripe.gemspec
131
150
  - test/api_stub_helpers.rb
132
151
  - test/stripe/account_external_accounts_operations_test.rb
152
+ - test/stripe/account_link_test.rb
133
153
  - test/stripe/account_login_links_operations_test.rb
134
154
  - test/stripe/account_persons_operations_test.rb
135
155
  - test/stripe/account_test.rb
@@ -143,6 +163,7 @@ files:
143
163
  - test/stripe/balance_test.rb
144
164
  - test/stripe/bank_account_test.rb
145
165
  - test/stripe/charge_test.rb
166
+ - test/stripe/checkout_session_test.rb
146
167
  - test/stripe/country_spec_test.rb
147
168
  - test/stripe/coupon_test.rb
148
169
  - test/stripe/customer_card_test.rb
@@ -174,11 +195,14 @@ files:
174
195
  - test/stripe/person_test.rb
175
196
  - test/stripe/plan_test.rb
176
197
  - test/stripe/product_test.rb
198
+ - test/stripe/radar/value_list_item_test.rb
199
+ - test/stripe/radar/value_list_test.rb
177
200
  - test/stripe/recipient_test.rb
178
201
  - test/stripe/refund_test.rb
179
202
  - test/stripe/reporting/report_run_test.rb
180
203
  - test/stripe/reporting/report_type_test.rb
181
204
  - test/stripe/reversal_test.rb
205
+ - test/stripe/review_test.rb
182
206
  - test/stripe/sigma/scheduled_query_run_test.rb
183
207
  - test/stripe/sku_test.rb
184
208
  - test/stripe/source_test.rb
@@ -215,7 +239,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
215
239
  requirements:
216
240
  - - ">="
217
241
  - !ruby/object:Gem::Version
218
- version: 2.0.0
242
+ version: 2.1.0
219
243
  required_rubygems_version: !ruby/object:Gem::Requirement
220
244
  requirements:
221
245
  - - ">="
@@ -223,13 +247,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
223
247
  version: '0'
224
248
  requirements: []
225
249
  rubyforge_project:
226
- rubygems_version: 2.6.14
250
+ rubygems_version: 2.7.7
227
251
  signing_key:
228
252
  specification_version: 4
229
253
  summary: Ruby bindings for the Stripe API
230
254
  test_files:
231
255
  - test/api_stub_helpers.rb
232
256
  - test/stripe/account_external_accounts_operations_test.rb
257
+ - test/stripe/account_link_test.rb
233
258
  - test/stripe/account_login_links_operations_test.rb
234
259
  - test/stripe/account_persons_operations_test.rb
235
260
  - test/stripe/account_test.rb
@@ -243,6 +268,7 @@ test_files:
243
268
  - test/stripe/balance_test.rb
244
269
  - test/stripe/bank_account_test.rb
245
270
  - test/stripe/charge_test.rb
271
+ - test/stripe/checkout_session_test.rb
246
272
  - test/stripe/country_spec_test.rb
247
273
  - test/stripe/coupon_test.rb
248
274
  - test/stripe/customer_card_test.rb
@@ -274,11 +300,14 @@ test_files:
274
300
  - test/stripe/person_test.rb
275
301
  - test/stripe/plan_test.rb
276
302
  - test/stripe/product_test.rb
303
+ - test/stripe/radar/value_list_item_test.rb
304
+ - test/stripe/radar/value_list_test.rb
277
305
  - test/stripe/recipient_test.rb
278
306
  - test/stripe/refund_test.rb
279
307
  - test/stripe/reporting/report_run_test.rb
280
308
  - test/stripe/reporting/report_type_test.rb
281
309
  - test/stripe/reversal_test.rb
310
+ - test/stripe/review_test.rb
282
311
  - test/stripe/sigma/scheduled_query_run_test.rb
283
312
  - test/stripe/sku_test.rb
284
313
  - test/stripe/source_test.rb