stripe 3.8.2 → 5.45.0

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.
Files changed (214) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +424 -1
  3. data/CODE_OF_CONDUCT.md +77 -0
  4. data/Gemfile +15 -20
  5. data/README.md +201 -58
  6. data/Rakefile +12 -9
  7. data/VERSION +1 -1
  8. data/bin/stripe-console +3 -1
  9. data/lib/stripe/api_operations/create.rb +3 -1
  10. data/lib/stripe/api_operations/delete.rb +30 -2
  11. data/lib/stripe/api_operations/list.rb +3 -12
  12. data/lib/stripe/api_operations/nested_resource.rb +40 -28
  13. data/lib/stripe/api_operations/request.rb +83 -9
  14. data/lib/stripe/api_operations/save.rb +19 -7
  15. data/lib/stripe/api_resource.rb +65 -4
  16. data/lib/stripe/connection_manager.rb +200 -0
  17. data/lib/stripe/error_object.rb +93 -0
  18. data/lib/stripe/errors.rb +47 -19
  19. data/lib/stripe/instrumentation.rb +84 -0
  20. data/lib/stripe/list_object.rb +43 -7
  21. data/lib/stripe/multipart_encoder.rb +131 -0
  22. data/lib/stripe/oauth.rb +14 -7
  23. data/lib/stripe/object_types.rb +110 -0
  24. data/lib/stripe/{account.rb → resources/account.rb} +60 -28
  25. data/lib/stripe/resources/account_link.rb +10 -0
  26. data/lib/stripe/resources/alipay_account.rb +34 -0
  27. data/lib/stripe/{apple_pay_domain.rb → resources/apple_pay_domain.rb} +4 -1
  28. data/lib/stripe/resources/application_fee.rb +14 -0
  29. data/lib/stripe/resources/application_fee_refund.rb +31 -0
  30. data/lib/stripe/resources/balance.rb +8 -0
  31. data/lib/stripe/resources/balance_transaction.rb +10 -0
  32. data/lib/stripe/resources/bank_account.rb +43 -0
  33. data/lib/stripe/resources/billing_portal/configuration.rb +14 -0
  34. data/lib/stripe/resources/billing_portal/session.rb +12 -0
  35. data/lib/stripe/{bitcoin_receiver.rb → resources/bitcoin_receiver.rb} +6 -6
  36. data/lib/stripe/resources/bitcoin_transaction.rb +16 -0
  37. data/lib/stripe/resources/capability.rb +34 -0
  38. data/lib/stripe/{card.rb → resources/card.rb} +15 -4
  39. data/lib/stripe/resources/charge.rb +23 -0
  40. data/lib/stripe/resources/checkout/session.rb +27 -0
  41. data/lib/stripe/resources/country_spec.rb +10 -0
  42. data/lib/stripe/{coupon.rb → resources/coupon.rb} +5 -2
  43. data/lib/stripe/resources/credit_note.rb +33 -0
  44. data/lib/stripe/resources/credit_note_line_item.rb +8 -0
  45. data/lib/stripe/resources/customer.rb +52 -0
  46. data/lib/stripe/resources/customer_balance_transaction.rb +31 -0
  47. data/lib/stripe/resources/discount.rb +8 -0
  48. data/lib/stripe/resources/dispute.rb +22 -0
  49. data/lib/stripe/resources/ephemeral_key.rb +20 -0
  50. data/lib/stripe/resources/event.rb +10 -0
  51. data/lib/stripe/resources/exchange_rate.rb +10 -0
  52. data/lib/stripe/resources/file.rb +36 -0
  53. data/lib/stripe/resources/file_link.rb +12 -0
  54. data/lib/stripe/resources/identity/verification_report.rb +12 -0
  55. data/lib/stripe/resources/identity/verification_session.rb +35 -0
  56. data/lib/stripe/resources/invoice.rb +74 -0
  57. data/lib/stripe/{invoice_item.rb → resources/invoice_item.rb} +5 -2
  58. data/lib/stripe/resources/invoice_line_item.rb +8 -0
  59. data/lib/stripe/resources/issuing/authorization.rb +34 -0
  60. data/lib/stripe/resources/issuing/card.rb +25 -0
  61. data/lib/stripe/resources/issuing/card_details.rb +10 -0
  62. data/lib/stripe/resources/issuing/cardholder.rb +14 -0
  63. data/lib/stripe/resources/issuing/dispute.rb +25 -0
  64. data/lib/stripe/resources/issuing/transaction.rb +13 -0
  65. data/lib/stripe/resources/line_item.rb +8 -0
  66. data/lib/stripe/resources/login_link.rb +15 -0
  67. data/lib/stripe/resources/mandate.rb +8 -0
  68. data/lib/stripe/resources/order.rb +33 -0
  69. data/lib/stripe/resources/order_return.rb +10 -0
  70. data/lib/stripe/resources/payment_intent.rb +53 -0
  71. data/lib/stripe/resources/payment_link.rb +23 -0
  72. data/lib/stripe/resources/payment_method.rb +33 -0
  73. data/lib/stripe/resources/payout.rb +33 -0
  74. data/lib/stripe/resources/person.rb +32 -0
  75. data/lib/stripe/{plan.rb → resources/plan.rb} +4 -1
  76. data/lib/stripe/resources/price.rb +12 -0
  77. data/lib/stripe/{product.rb → resources/product.rb} +6 -3
  78. data/lib/stripe/resources/promotion_code.rb +12 -0
  79. data/lib/stripe/resources/quote.rb +105 -0
  80. data/lib/stripe/resources/radar/early_fraud_warning.rb +12 -0
  81. data/lib/stripe/resources/radar/value_list.rb +15 -0
  82. data/lib/stripe/resources/radar/value_list_item.rb +14 -0
  83. data/lib/stripe/{recipient.rb → resources/recipient.rb} +5 -6
  84. data/lib/stripe/resources/recipient_transfer.rb +7 -0
  85. data/lib/stripe/{refund.rb → resources/refund.rb} +4 -1
  86. data/lib/stripe/resources/reporting/report_run.rb +13 -0
  87. data/lib/stripe/resources/reporting/report_type.rb +13 -0
  88. data/lib/stripe/resources/reversal.rb +30 -0
  89. data/lib/stripe/resources/review.rb +21 -0
  90. data/lib/stripe/resources/setup_attempt.rb +10 -0
  91. data/lib/stripe/resources/setup_intent.rb +43 -0
  92. data/lib/stripe/resources/shipping_rate.rb +12 -0
  93. data/lib/stripe/resources/sigma/scheduled_query_run.rb +16 -0
  94. data/lib/stripe/{sku.rb → resources/sku.rb} +6 -3
  95. data/lib/stripe/resources/source.rb +47 -0
  96. data/lib/stripe/resources/source_transaction.rb +8 -0
  97. data/lib/stripe/resources/subscription.rb +26 -0
  98. data/lib/stripe/resources/subscription_item.rb +26 -0
  99. data/lib/stripe/resources/subscription_schedule.rb +33 -0
  100. data/lib/stripe/resources/tax_code.rb +10 -0
  101. data/lib/stripe/resources/tax_id.rb +27 -0
  102. data/lib/stripe/resources/tax_rate.rb +12 -0
  103. data/lib/stripe/resources/terminal/connection_token.rb +12 -0
  104. data/lib/stripe/resources/terminal/location.rb +15 -0
  105. data/lib/stripe/resources/terminal/reader.rb +15 -0
  106. data/lib/stripe/resources/test_helpers/test_clock.rb +25 -0
  107. data/lib/stripe/{three_d_secure.rb → resources/three_d_secure.rb} +4 -1
  108. data/lib/stripe/resources/token.rb +10 -0
  109. data/lib/stripe/resources/topup.rb +23 -0
  110. data/lib/stripe/resources/transfer.rb +27 -0
  111. data/lib/stripe/resources/usage_record.rb +8 -0
  112. data/lib/stripe/resources/usage_record_summary.rb +8 -0
  113. data/lib/stripe/resources/webhook_endpoint.rb +13 -0
  114. data/lib/stripe/resources.rb +93 -0
  115. data/lib/stripe/singleton_api_resource.rb +8 -2
  116. data/lib/stripe/stripe_client.rb +712 -233
  117. data/lib/stripe/stripe_configuration.rb +194 -0
  118. data/lib/stripe/stripe_object.rb +180 -67
  119. data/lib/stripe/stripe_response.rb +89 -27
  120. data/lib/stripe/util.rb +87 -168
  121. data/lib/stripe/version.rb +3 -1
  122. data/lib/stripe/webhook.rb +45 -10
  123. data/lib/stripe.rb +47 -160
  124. data/stripe.gemspec +27 -8
  125. metadata +112 -178
  126. data/.gitattributes +0 -4
  127. data/.github/ISSUE_TEMPLATE.md +0 -5
  128. data/.gitignore +0 -6
  129. data/.rubocop.yml +0 -20
  130. data/.rubocop_todo.yml +0 -60
  131. data/.travis.yml +0 -38
  132. data/lib/stripe/alipay_account.rb +0 -25
  133. data/lib/stripe/application_fee.rb +0 -25
  134. data/lib/stripe/application_fee_refund.rb +0 -20
  135. data/lib/stripe/balance.rb +0 -5
  136. data/lib/stripe/balance_transaction.rb +0 -11
  137. data/lib/stripe/bank_account.rb +0 -30
  138. data/lib/stripe/bitcoin_transaction.rb +0 -13
  139. data/lib/stripe/charge.rb +0 -82
  140. data/lib/stripe/country_spec.rb +0 -11
  141. data/lib/stripe/customer.rb +0 -88
  142. data/lib/stripe/dispute.rb +0 -17
  143. data/lib/stripe/ephemeral_key.rb +0 -18
  144. data/lib/stripe/event.rb +0 -7
  145. data/lib/stripe/exchange_rate.rb +0 -11
  146. data/lib/stripe/file_upload.rb +0 -35
  147. data/lib/stripe/invoice.rb +0 -30
  148. data/lib/stripe/invoice_line_item.rb +0 -5
  149. data/lib/stripe/login_link.rb +0 -9
  150. data/lib/stripe/order.rb +0 -35
  151. data/lib/stripe/order_return.rb +0 -11
  152. data/lib/stripe/payout.rb +0 -18
  153. data/lib/stripe/recipient_transfer.rb +0 -5
  154. data/lib/stripe/reversal.rb +0 -20
  155. data/lib/stripe/source.rb +0 -36
  156. data/lib/stripe/source_transaction.rb +0 -5
  157. data/lib/stripe/subscription.rb +0 -43
  158. data/lib/stripe/subscription_item.rb +0 -14
  159. data/lib/stripe/token.rb +0 -7
  160. data/lib/stripe/transfer.rb +0 -21
  161. data/test/api_stub_helpers.rb +0 -0
  162. data/test/stripe/account_external_accounts_operations_test.rb +0 -66
  163. data/test/stripe/account_login_links_operations_test.rb +0 -19
  164. data/test/stripe/account_test.rb +0 -190
  165. data/test/stripe/alipay_account_test.rb +0 -35
  166. data/test/stripe/api_operations_test.rb +0 -76
  167. data/test/stripe/api_resource_test.rb +0 -522
  168. data/test/stripe/apple_pay_domain_test.rb +0 -31
  169. data/test/stripe/application_fee_refund_test.rb +0 -35
  170. data/test/stripe/application_fee_refunds_operations_test.rb +0 -54
  171. data/test/stripe/application_fee_test.rb +0 -12
  172. data/test/stripe/balance_test.rb +0 -11
  173. data/test/stripe/bank_account_test.rb +0 -34
  174. data/test/stripe/charge_test.rb +0 -57
  175. data/test/stripe/country_spec_test.rb +0 -18
  176. data/test/stripe/coupon_test.rb +0 -42
  177. data/test/stripe/customer_card_test.rb +0 -42
  178. data/test/stripe/customer_sources_operations_test.rb +0 -66
  179. data/test/stripe/customer_test.rb +0 -113
  180. data/test/stripe/dispute_test.rb +0 -40
  181. data/test/stripe/ephemeral_key_test.rb +0 -84
  182. data/test/stripe/errors_test.rb +0 -18
  183. data/test/stripe/exchange_rate_test.rb +0 -18
  184. data/test/stripe/file_upload_test.rb +0 -83
  185. data/test/stripe/invoice_item_test.rb +0 -53
  186. data/test/stripe/invoice_line_item_test.rb +0 -6
  187. data/test/stripe/invoice_test.rb +0 -111
  188. data/test/stripe/list_object_test.rb +0 -154
  189. data/test/stripe/login_link_test.rb +0 -35
  190. data/test/stripe/oauth_test.rb +0 -77
  191. data/test/stripe/order_return_test.rb +0 -19
  192. data/test/stripe/order_test.rb +0 -57
  193. data/test/stripe/payout_test.rb +0 -48
  194. data/test/stripe/plan_test.rb +0 -50
  195. data/test/stripe/product_test.rb +0 -45
  196. data/test/stripe/recipient_test.rb +0 -47
  197. data/test/stripe/refund_test.rb +0 -37
  198. data/test/stripe/reversal_test.rb +0 -41
  199. data/test/stripe/sku_test.rb +0 -48
  200. data/test/stripe/source_test.rb +0 -84
  201. data/test/stripe/source_transaction_test.rb +0 -28
  202. data/test/stripe/stripe_client_test.rb +0 -728
  203. data/test/stripe/stripe_object_test.rb +0 -448
  204. data/test/stripe/stripe_response_test.rb +0 -47
  205. data/test/stripe/subscription_item_test.rb +0 -52
  206. data/test/stripe/subscription_test.rb +0 -104
  207. data/test/stripe/three_d_secure_test.rb +0 -21
  208. data/test/stripe/transfer_reversals_operations_test.rb +0 -55
  209. data/test/stripe/transfer_test.rb +0 -41
  210. data/test/stripe/util_test.rb +0 -432
  211. data/test/stripe/webhook_test.rb +0 -94
  212. data/test/stripe_test.rb +0 -59
  213. data/test/test_data.rb +0 -59
  214. data/test/test_helper.rb +0 -60
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d454a76d37a56cc1ac7249b7b1d6130db55fa1fe
4
- data.tar.gz: fa2a235117656908deb0ea747295ef63ae8b92b9
2
+ SHA256:
3
+ metadata.gz: 2971f0ad2ef29349e932246a9bc9065d5d1ce53f21c14f7bcdb205b443779a42
4
+ data.tar.gz: a9a980c5cbdc14d79d60f5873f267db10153bd556c81378ec3c3ca270d87252d
5
5
  SHA512:
6
- metadata.gz: 3e34f48148db809fc089c73bdbdec2481135d3c60a9494959563657e5ddfeeed496a771982c0f56b5c97024aa821ff321afabeac33a9da15d4af99d11342c95b
7
- data.tar.gz: 94c23e01ebcb044b4042fd305345a1d962ccd1d5eb9fa67849941c6e8f4079921b1a3ec770175fd89e50be0b0fa0b4940a12c83b79bf507687f791f5fb3673eb
6
+ metadata.gz: 47c89bc9c732bafeae007d6663ca82cbf5e32938d392bb130209d389f7fa59fa54ecb26b0f7b93658b8cd18eab82127c2bfedd6b8c6e3887bb92c99bcc41f11b
7
+ data.tar.gz: a73469bc20fbf0fae44c6409efbe53ce8d90c54dca56fe2f99dfc8a8fd045e9ac295b9df86f13be555648ead094746cb385cb2731cdbb40edbae858f2083f292
data/CHANGELOG.md CHANGED
@@ -1,5 +1,427 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.45.0 - 2022-03-01
4
+ * [#1035](https://github.com/stripe/stripe-ruby/pull/1035) API Updates
5
+ * Add support for new resource `TestHelpers.TestClock`
6
+
7
+ ## 5.44.0 - 2022-02-16
8
+ * [#1032](https://github.com/stripe/stripe-ruby/pull/1032) API Updates
9
+ * Add support for `verify_microdeposits` method on resources `PaymentIntent` and `SetupIntent`
10
+
11
+ ## 5.43.0 - 2022-01-20
12
+ * [#1031](https://github.com/stripe/stripe-ruby/pull/1031) API Updates
13
+ * Add support for new resource `PaymentLink`
14
+
15
+ ## 5.42.0 - 2021-12-13
16
+ * [#1022](https://github.com/stripe/stripe-ruby/pull/1022) Add connection manager logging and include object IDs in logging.
17
+
18
+ ## 5.41.0 - 2021-11-16
19
+ * [#1017](https://github.com/stripe/stripe-ruby/pull/1017) API Updates
20
+ * Add support for new resource `ShippingRate`
21
+
22
+ ## 5.40.0 - 2021-11-11
23
+ * [#1015](https://github.com/stripe/stripe-ruby/pull/1015) API Updates
24
+ * Add support for `expire` method on resource `Checkout.Session`
25
+ * [#1013](https://github.com/stripe/stripe-ruby/pull/1013) Add tests for child resources.
26
+ * [#1012](https://github.com/stripe/stripe-ruby/pull/1012) Add tests for namespaced resources.
27
+ * [#1011](https://github.com/stripe/stripe-ruby/pull/1011) codegen: 3 more files
28
+
29
+ ## 5.39.0 - 2021-10-11
30
+ * [#1010](https://github.com/stripe/stripe-ruby/pull/1010) API Updates
31
+ * Add support for `list_payment_methods` method on resource `Customer`
32
+
33
+ ## 5.38.0 - 2021-08-10
34
+ * [#993](https://github.com/stripe/stripe-ruby/pull/993) Add `request_id` to RequestEndEvent
35
+ * [#991](https://github.com/stripe/stripe-ruby/pull/991) Codegen more files
36
+ * [#989](https://github.com/stripe/stripe-ruby/pull/989) Remove unused API error types from docs.
37
+
38
+ ## 5.37.0 - 2021-07-14
39
+ * [#988](https://github.com/stripe/stripe-ruby/pull/988) API Updates
40
+ * Add support for `list_computed_upfront_line_items` method on resource `Quote`
41
+
42
+ ## 5.36.0 - 2021-07-09
43
+ * [#987](https://github.com/stripe/stripe-ruby/pull/987) Add support for `Quote` API
44
+
45
+ ## 5.35.0 - 2021-06-30
46
+ * [#985](https://github.com/stripe/stripe-ruby/pull/985) Update normalize_opts to use dup instead of clone.
47
+ * [#982](https://github.com/stripe/stripe-ruby/pull/982) Deprecate travis
48
+ * [#983](https://github.com/stripe/stripe-ruby/pull/983) Add support for making a request and receiving the response as a stream.
49
+
50
+ ## 5.34.0 - 2021-06-04
51
+ * [#981](https://github.com/stripe/stripe-ruby/pull/981) API Updates
52
+ * Add support for `TaxCode` API.
53
+
54
+ ## 5.33.0 - 2021-05-19
55
+ * [#979](https://github.com/stripe/stripe-ruby/pull/979) Add support for the Identify VerificationSession and VerificationReport APIs
56
+
57
+ ## 5.32.1 - 2021-04-05
58
+ * Correct use of regexp `match` in gemspec for old versions of Ruby
59
+
60
+ ## 5.32.0 - 2021-04-05
61
+ * [#973](https://github.com/stripe/stripe-ruby/pull/973) Reduce packed gem size
62
+
63
+ ## 5.31.0 - 2021-04-02
64
+ * [#968](https://github.com/stripe/stripe-ruby/pull/968) Allow StripeClient to be configured per instance
65
+ * [#971](https://github.com/stripe/stripe-ruby/pull/971) On config change, only clear connection managers for changed config
66
+ * [#972](https://github.com/stripe/stripe-ruby/pull/972) Rename `Stripe.configuration` to `Stripe.config`
67
+ * [#970](https://github.com/stripe/stripe-ruby/pull/970) Reserve some critical field names when adding `StripeObject` accessors
68
+ * [#967](https://github.com/stripe/stripe-ruby/pull/967) CI: github actions
69
+
70
+ ## 5.30.0 - 2021-02-22
71
+ * [#965](https://github.com/stripe/stripe-ruby/pull/965) Add support for the Billing Portal Configuration API
72
+
73
+ ## 5.29.1 - 2021-02-09
74
+ * [#964](https://github.com/stripe/stripe-ruby/pull/964) Fix return value of `Customer#delete_discount`
75
+
76
+ ## 5.29.0 - 2021-01-05
77
+ * [#952](https://github.com/stripe/stripe-ruby/pull/952) Allow client_id configuration on instance config
78
+
79
+ ## 5.28.0 - 2020-10-14
80
+ * [#950](https://github.com/stripe/stripe-ruby/pull/950) Add configuration option for `write_timeout` for connections on Ruby 2.6+
81
+
82
+ ## 5.27.0 - 2020-10-14
83
+ * [#951](https://github.com/stripe/stripe-ruby/pull/951) Add support for the Payout Reverse API
84
+
85
+ ## 5.26.0 - 2020-09-29
86
+ * [#949](https://github.com/stripe/stripe-ruby/pull/949) Add support for the `SetupAttempt` resource and List API
87
+
88
+ ## 5.25.0 - 2020-09-02
89
+ * [#944](https://github.com/stripe/stripe-ruby/pull/944) Add support for the Issuing Dispute Submit API
90
+
91
+ ## 5.24.0 - 2020-08-26
92
+ * [#939](https://github.com/stripe/stripe-ruby/pull/939) Extract configurations into separate object
93
+ * [#940](https://github.com/stripe/stripe-ruby/pull/940) Fix typo in documentation of `stripe_object.rb`
94
+
95
+ ## 5.23.1 - 2020-08-05
96
+ * [#936](https://github.com/stripe/stripe-ruby/pull/936) Rename API resource's `request` method
97
+
98
+ ## 5.23.0 - 2020-08-05
99
+ * [#937](https://github.com/stripe/stripe-ruby/pull/937) Add support for the `PromotionCode` resource and APIs
100
+
101
+ ## 5.22.0 - 2020-05-11
102
+ * [#918](https://github.com/stripe/stripe-ruby/pull/918) Add support for the `LineItem` resource and APIs
103
+
104
+ ## 5.21.0 - 2020-04-29
105
+ * [#917](https://github.com/stripe/stripe-ruby/pull/917) Add support for the `Price` resource and APIs
106
+
107
+ ## 5.20.0 - 2020-04-27
108
+ * [#916](https://github.com/stripe/stripe-ruby/pull/916) Add new `.generate_header` method for webhooks
109
+
110
+ ## 5.19.0 - 2020-04-24
111
+ * [#915](https://github.com/stripe/stripe-ruby/pull/915) Expose `Stripe::Webhook.compute_signature` publicly
112
+
113
+ ## 5.18.0 - 2020-04-22
114
+ * [#911](https://github.com/stripe/stripe-ruby/pull/911) Add support for `BillingPortal` namespace and `Session` resource and APIs
115
+
116
+ ## 5.17.0 - 2020-02-26
117
+ * [#907](https://github.com/stripe/stripe-ruby/pull/907) Add `StripeError#idempotent_replayed?`
118
+
119
+ ## 5.16.0 - 2020-02-26
120
+ * [#906](https://github.com/stripe/stripe-ruby/pull/906) Add support for listing Checkout sessions
121
+ * [#903](https://github.com/stripe/stripe-ruby/pull/903) Upgrade to Rubocop 0.80
122
+
123
+ ## 5.15.0 - 2020-02-10
124
+ * [#902](https://github.com/stripe/stripe-ruby/pull/902) Add `request_begin` instrumentation callback
125
+
126
+ ## 5.14.0 - 2020-01-14
127
+ * [#896](https://github.com/stripe/stripe-ruby/pull/896) Add support for `CreditNoteLineItem`
128
+ * [#894](https://github.com/stripe/stripe-ruby/pull/894) Clean up test output by capturing `$stderr` when we expect warnings
129
+ * [#892](https://github.com/stripe/stripe-ruby/pull/892) Explicitly pass a parameter as hash to be more ruby 2.7 friendly
130
+ * [#893](https://github.com/stripe/stripe-ruby/pull/893) Upgrade Rubocop to 0.79
131
+
132
+ ## 5.13.0 - 2020-01-08
133
+ * [#891](https://github.com/stripe/stripe-ruby/pull/891) Fix most Ruby 2.7 warnings
134
+
135
+ ## 5.12.1 - 2020-01-06
136
+ * [#890](https://github.com/stripe/stripe-ruby/pull/890) Override API key with `client_secret` in `OAuth.token`
137
+
138
+ ## 5.12.0 - 2020-01-02
139
+ * [#889](https://github.com/stripe/stripe-ruby/pull/889) Add support for retrieve source transaction API method
140
+
141
+ ## 5.11.0 - 2019-11-26
142
+ * [#885](https://github.com/stripe/stripe-ruby/pull/885) Add support for `CreditNote` preview
143
+
144
+ ## 5.10.0 - 2019-11-08
145
+ * [#882](https://github.com/stripe/stripe-ruby/pull/882) Add list_usage_record_summaries and list_source_transactions
146
+
147
+ ## 5.9.0 - 2019-11-07
148
+ * [#870](https://github.com/stripe/stripe-ruby/pull/870) Add request instrumentation callback (see `README.md` for usage example)
149
+
150
+ ## 5.8.0 - 2019-11-05
151
+ * [#879](https://github.com/stripe/stripe-ruby/pull/879) Add support for `Mandate`
152
+ * [#876](https://github.com/stripe/stripe-ruby/pull/876) Add additional per-request configuration documentation
153
+ * [#874](https://github.com/stripe/stripe-ruby/pull/874) Raise an error when requests params are invalid
154
+ * [#873](https://github.com/stripe/stripe-ruby/pull/873) Contributor Covenant
155
+
156
+ ## 5.7.1 - 2019-10-15
157
+ * [#869](https://github.com/stripe/stripe-ruby/pull/869) Fixes the misnamed `connection_base=` setter to be named `connect_base=`
158
+
159
+ ## 5.7.0 - 2019-10-10
160
+ * [#865](https://github.com/stripe/stripe-ruby/pull/865) Support backwards pagination with list's `#auto_paging_each`
161
+
162
+ ## 5.6.0 - 2019-10-04
163
+ * [#861](https://github.com/stripe/stripe-ruby/pull/861) Nicer error when specifying non-nil non-string opt value
164
+
165
+ ## 5.5.0 - 2019-10-03
166
+ * [#859](https://github.com/stripe/stripe-ruby/pull/859) User-friendly messages and retries for `EOFError`, `Errno::ECONNRESET`, `Errno::ETIMEDOUT`, and `Errno::EHOSTUNREACH` network errors
167
+
168
+ ## 5.4.1 - 2019-10-01
169
+ * [#858](https://github.com/stripe/stripe-ruby/pull/858) Drop Timecop dependency
170
+
171
+ ## 5.4.0 - 2019-10-01
172
+ * [#857](https://github.com/stripe/stripe-ruby/pull/857) Move to monotonic time for duration calculations
173
+
174
+ ## 5.3.0 - 2019-10-01
175
+ * [#853](https://github.com/stripe/stripe-ruby/pull/853) Support `Stripe-Should-Retry` header
176
+
177
+ ## 5.2.0 - 2019-09-19
178
+ * [#851](https://github.com/stripe/stripe-ruby/pull/851) Introduce system for garbage collecting connection managers
179
+
180
+ ## 5.1.1 - 2019-09-04
181
+ * [#845](https://github.com/stripe/stripe-ruby/pull/845) Transfer the request_id from the http_headers to error.
182
+
183
+ ## 5.1.0 - 2019-08-27
184
+ * [#841](https://github.com/stripe/stripe-ruby/pull/841) Retry requests on a 429 that's a lock timeout
185
+
186
+ ## 5.0.1 - 2019-08-20
187
+ * [#836](https://github.com/stripe/stripe-ruby/pull/836) Increase connection keep alive timeout to 30 seconds
188
+
189
+ ## 5.0.0 - 2019-08-20
190
+ Major version release. The [migration guide](https://github.com/stripe/stripe-ruby/wiki/Migration-guide-for-v5) contains a detailed list of backwards-incompatible changes with upgrade instructions.
191
+
192
+ Pull requests included in this release (cf. [#815](https://github.com/stripe/stripe-ruby/pull/815)) (⚠️ = breaking changes):
193
+ * ⚠️ [#813](https://github.com/stripe/stripe-ruby/pull/813): Convert library to use built-in `Net::HTTP`
194
+ * ⚠️ [#816](https://github.com/stripe/stripe-ruby/pull/816): Make `code` argument in `CardError` named instead of positional.
195
+ * ⚠️ [#817](https://github.com/stripe/stripe-ruby/pull/817): Drop support for very old Ruby versions.
196
+ * [#818](https://github.com/stripe/stripe-ruby/pull/818): Bump Rubocop to latest version
197
+ * [#819](https://github.com/stripe/stripe-ruby/pull/819): Ruby minimum version increase followup
198
+ * ⚠️ [#820](https://github.com/stripe/stripe-ruby/pull/820): Remove old deprecated methods
199
+ * ⚠️ [#823](https://github.com/stripe/stripe-ruby/pull/823): Remove all alias for list methods
200
+ * ⚠️ [#826](https://github.com/stripe/stripe-ruby/pull/826): Remove `UsageRecord.create` method
201
+ * ⚠️ [#827](https://github.com/stripe/stripe-ruby/pull/827): Remove `IssuerFraudRecord`
202
+ * [#811](https://github.com/stripe/stripe-ruby/pull/811): Add `ErrorObject` to `StripeError` exceptions
203
+ * [#828](https://github.com/stripe/stripe-ruby/pull/828): Tweak retry logic to be a little more like stripe-node
204
+ * [#829](https://github.com/stripe/stripe-ruby/pull/829): Reset connections when connection-changing configuration changes (optional)
205
+ * [#830](https://github.com/stripe/stripe-ruby/pull/830): Fix inverted sign for 500 retries
206
+ * ⚠️[#831](https://github.com/stripe/stripe-ruby/pull/831): Remove a few more very old deprecated methods
207
+ * [#832](https://github.com/stripe/stripe-ruby/pull/832): Minor cleanup in `StripeClient`
208
+ * [#833](https://github.com/stripe/stripe-ruby/pull/833): Do better bookkeeping when tracking state in `Thread.current`
209
+ * [#834](https://github.com/stripe/stripe-ruby/pull/834): Add `Invoice.list_upcoming_line_items` method
210
+
211
+ ## 4.24.0 - 2019-08-12
212
+ * [#825](https://github.com/stripe/stripe-ruby/pull/825) Add `SubscriptionItem.create_usage_record` method
213
+ - This release also removed the `SubscriptionSchedule.revisions` method. This should have been included in the previous release (4.23.0)
214
+
215
+ ## 4.23.0 - 2019-08-09
216
+ * [#824](https://github.com/stripe/stripe-ruby/pull/824) Remove SubscriptionScheduleRevision
217
+ - This is technically a breaking change. We've chosen to release it as a minor vesion bump because the associated API is unused.
218
+
219
+ ## 4.22.1 - 2019-08-09
220
+ * [#808](https://github.com/stripe/stripe-ruby/pull/808) Unify request/response handling
221
+
222
+ ## 4.22.0 - 2019-07-30
223
+ * [#821](https://github.com/stripe/stripe-ruby/pull/821) Listing `BalanceTransaction` objects now uses `/v1/balance_transactions` instead of `/v1/balance/history`
224
+
225
+ ## 4.21.3 - 2019-07-15
226
+ * [#810](https://github.com/stripe/stripe-ruby/pull/810) Better error message when passing non-string to custom method
227
+
228
+ ## 4.21.2 - 2019-07-05
229
+ * [#806](https://github.com/stripe/stripe-ruby/pull/806) Revert back to `initialize_from` from `Util.convert_to_stripe_object`
230
+
231
+ ## 4.21.1 - 2019-07-04
232
+ * [#807](https://github.com/stripe/stripe-ruby/pull/807) Add gem metadata
233
+
234
+ ## 4.21.0 - 2019-06-28
235
+ * [#803](https://github.com/stripe/stripe-ruby/pull/803) Add support for the `SetupIntent` resource and APIs
236
+
237
+ ## 4.20.1 - 2019-06-28
238
+ * [#805](https://github.com/stripe/stripe-ruby/pull/805) Fix formatting in `ConnectionFailed` error message
239
+
240
+ ## 4.20.0 - 2019-06-24
241
+ * [#800](https://github.com/stripe/stripe-ruby/pull/800) Enable request latency telemetry by default
242
+
243
+ ## 4.19.0 - 2019-06-17
244
+ * [#770](https://github.com/stripe/stripe-ruby/pull/770) Add support for `CustomerBalanceTransaction` resource and APIs
245
+
246
+ ## 4.18.1 - 2019-05-27
247
+ * [#789](https://github.com/stripe/stripe-ruby/pull/789) Allow `Order#pay` to be called without arguments
248
+
249
+ ## 4.18.0 - 2019-05-23
250
+ * [#783](https://github.com/stripe/stripe-ruby/pull/783) Add support for `radar.early_fraud_warning` resource
251
+
252
+ ## 4.17.0 - 2019-05-14
253
+ * [#779](https://github.com/stripe/stripe-ruby/pull/779) Add support for the Capability resource and APIs
254
+
255
+ ## 4.16.0 - 2019-04-24
256
+ * [#760](https://github.com/stripe/stripe-ruby/pull/760) Add support for the `TaxRate` resource and APIs
257
+
258
+ ## 4.15.0 - 2019-04-22
259
+ * [#762](https://github.com/stripe/stripe-ruby/pull/762) Add support for the `TaxId` resource and APIs
260
+
261
+ ## 4.14.0 - 2019-04-18
262
+ * [#758](https://github.com/stripe/stripe-ruby/pull/758) Add support for the `CreditNote` resource and APIs
263
+
264
+ ## 4.13.0 - 2019-04-16
265
+ * [#766](https://github.com/stripe/stripe-ruby/pull/766) Relax constraints on objects that we'll accept as a file (now they just need to respond to `#read`)
266
+
267
+ ## 4.12.0 - 2019-04-02
268
+ * [#752](https://github.com/stripe/stripe-ruby/pull/752) Add `.delete` class method on deletable API resources
269
+ * [#754](https://github.com/stripe/stripe-ruby/pull/754) Add class methods for all custom API requests (e.g. `Charge.capture`)
270
+
271
+ ## 4.11.0 - 2019-03-26
272
+ * [#753](https://github.com/stripe/stripe-ruby/pull/753) Add a global proxy configuration parameter
273
+
274
+ ## 4.10.0 - 2019-03-18
275
+ * [#745](https://github.com/stripe/stripe-ruby/pull/745) Add support for the `PaymentMethod` resource and APIs
276
+ * [#747](https://github.com/stripe/stripe-ruby/pull/747) Add support for retrieving a Checkout `Session`
277
+ * [#748](https://github.com/stripe/stripe-ruby/pull/748) Add support for deleting a Terminal `Location` and `Reader`
278
+
279
+ ## 4.9.1 - 2019-03-18
280
+ * [#750](https://github.com/stripe/stripe-ruby/pull/750) Catch error and warn if unable to remove a method
281
+
282
+ ## 4.9.0 - 2019-02-12
283
+ * [#739](https://github.com/stripe/stripe-ruby/pull/739) Add support for `SubscriptionSchedule` and `SubscriptionScheduleRevision`
284
+
285
+ ## 4.8.1 - 2019-02-11
286
+ * [#743](https://github.com/stripe/stripe-ruby/pull/743) Fix bug in file uploading introduced in #741
287
+
288
+ ## 4.8.0 - 2019-02-03
289
+ * [#741](https://github.com/stripe/stripe-ruby/pull/741) Use `FaradayStripeEncoder` to encode all parameter styles
290
+
291
+ ## 4.7.1 - 2019-02-01
292
+ * [#740](https://github.com/stripe/stripe-ruby/pull/740) Fix query encoding for integer-indexed maps
293
+
294
+ ## 4.7.0 - 2019-01-23
295
+ * [#735](https://github.com/stripe/stripe-ruby/pull/735) Rename `CheckoutSession` to `Session` and move it under the `Checkout` namespace. This is a breaking change, but we've reached out to affected merchants and all new merchants would use the new approach.
296
+
297
+ ## 4.6.0 - 2019-01-21
298
+ * [#736](https://github.com/stripe/stripe-ruby/pull/736) Properly serialize `individual` on `Account` objects
299
+
300
+ ## 4.5.0 - 2019-01-02
301
+ * [#719](https://github.com/stripe/stripe-ruby/pull/719) Generate OAuth authorize URLs for Express accounts as well as standard
302
+
303
+ ## 4.4.1 - 2018-12-31
304
+ * [#718](https://github.com/stripe/stripe-ruby/pull/718) Fix an error message typo
305
+
306
+ ## 4.4.0 - 2018-12-21
307
+ * [#716](https://github.com/stripe/stripe-ruby/pull/716) Add support for the `CheckoutSession` resource
308
+
309
+ ## 4.3.0 - 2018-12-10
310
+ * [#711](https://github.com/stripe/stripe-ruby/pull/711) Add support for account links
311
+
312
+ ## 4.2.0 - 2018-11-28
313
+ * [#705](https://github.com/stripe/stripe-ruby/pull/705) Add support for the `Review` APIs
314
+
315
+ ## 4.1.0 - 2018-11-27
316
+ * [#695](https://github.com/stripe/stripe-ruby/pull/695) Add support for `ValueList` and `ValueListItem` for Radar
317
+
318
+ ## 4.0.3 - 2018-11-19
319
+ * [#703](https://github.com/stripe/stripe-ruby/pull/703) Don't use `Net::HTTP::Persistent` on Windows where it's not well supported
320
+
321
+ ## 4.0.2 - 2018-11-16
322
+ * [#701](https://github.com/stripe/stripe-ruby/pull/701) Require minimum Faraday 0.13 for proper support of persistent connections
323
+
324
+ ## 4.0.1 - 2018-11-15
325
+ * [#699](https://github.com/stripe/stripe-ruby/pull/699) Only send telemetry if `Request-Id` was present in the response
326
+
327
+ ## 4.0.0 - 2018-11-15
328
+ * [#698](https://github.com/stripe/stripe-ruby/pull/698) Use persistent connections by default through `Net::HTTP::Persistent`
329
+ * [#698](https://github.com/stripe/stripe-ruby/pull/698) Drop support for Ruby 2.0 (which we consider a breaking change here)
330
+
331
+ ## 3.31.1 - 2018-11-12
332
+ * [#697](https://github.com/stripe/stripe-ruby/pull/697) Send telemetry in milliseconds specifically
333
+
334
+ ## 3.31.0 - 2018-11-12
335
+ * [#696](https://github.com/stripe/stripe-ruby/pull/696) Add configurable telemetry to gather information on client-side request latency
336
+
337
+ ## 3.30.0 - 2018-11-08
338
+ * [#693](https://github.com/stripe/stripe-ruby/pull/693) Add new API endpoints for the `Invoice` resource.
339
+
340
+ ## 3.29.0 - 2018-10-30
341
+ * [#692](https://github.com/stripe/stripe-ruby/pull/692) Add support for the `Person` resource
342
+ * [#694](https://github.com/stripe/stripe-ruby/pull/694) Add support for the `WebhookEndpoint` resource
343
+
344
+ ## 3.28.0 - 2018-09-24
345
+ * [#690](https://github.com/stripe/stripe-ruby/pull/690) Add support for Stripe Terminal
346
+
347
+ ## 3.27.0 - 2018-09-24
348
+ * [#689](https://github.com/stripe/stripe-ruby/pull/689) Rename `FileUpload` to `File`
349
+
350
+ ## 3.26.1 - 2018-09-14
351
+ * [#688](https://github.com/stripe/stripe-ruby/pull/688) Fix hash equality on `StripeObject`
352
+
353
+ ## 3.26.0 - 2018-09-05
354
+ * [#681](https://github.com/stripe/stripe-ruby/pull/681) Add support for reporting resources
355
+
356
+ ## 3.25.0 - 2018-08-28
357
+ * [#678](https://github.com/stripe/stripe-ruby/pull/678) Allow payment intent `#cancel`, `#capture`, and `#confirm` to take their own parameters
358
+
359
+ ## 3.24.0 - 2018-08-27
360
+ * [#675](https://github.com/stripe/stripe-ruby/pull/675) Remove support for `BitcoinReceiver` write-actions
361
+
362
+ ## 3.23.0 - 2018-08-23
363
+ * [#676](https://github.com/stripe/stripe-ruby/pull/676) Add support for usage record summaries
364
+
365
+ ## 3.22.0 - 2018-08-15
366
+ * [#674](https://github.com/stripe/stripe-ruby/pull/674) Use integer-indexed encoding for all arrays
367
+
368
+ ## 3.21.0 - 2018-08-03
369
+ * [#671](https://github.com/stripe/stripe-ruby/pull/671) Add cancel support for topups
370
+
371
+ ## 3.20.0 - 2018-08-03
372
+ * [#669](https://github.com/stripe/stripe-ruby/pull/669) Add support for file links
373
+
374
+ ## 3.19.0 - 2018-07-27
375
+ * [#666](https://github.com/stripe/stripe-ruby/pull/666) Add support for scheduled query runs (`Stripe::Sigma::ScheduledQueryRun`) for Sigma
376
+
377
+ ## 3.18.0 - 2018-07-26
378
+ * [#665](https://github.com/stripe/stripe-ruby/pull/665) Add support for Stripe Issuing
379
+
380
+ ## 3.17.2 - 2018-07-19
381
+ * [#664](https://github.com/stripe/stripe-ruby/pull/664) Don't colorize log output being sent to a configured logger
382
+
383
+ ## 3.17.1 - 2018-07-19
384
+ * [#663](https://github.com/stripe/stripe-ruby/pull/663) Internal improvements to `ApiResource.class_url`
385
+
386
+ ## 3.17.0 - 2018-06-28
387
+ * [#658](https://github.com/stripe/stripe-ruby/pull/658) Add support for `partner_id` from `Stripe.set_app_info`
388
+
389
+ ## 3.16.0 - 2018-06-28
390
+ * [#657](https://github.com/stripe/stripe-ruby/pull/657) Add support for payment intents
391
+
392
+ ## 3.15.0 - 2018-05-10
393
+ * [#649](https://github.com/stripe/stripe-ruby/pull/649) Freeze all string literals
394
+
395
+ ## 3.14.0 - 2018-05-09
396
+ * [#645](https://github.com/stripe/stripe-ruby/pull/645) Add support for issuer fraud records
397
+
398
+ ## 3.13.1 - 2018-05-07
399
+ * [#647](https://github.com/stripe/stripe-ruby/pull/647) Merge query parameters coming from path with `params` argument
400
+
401
+ ## 3.13.0 - 2018-04-11
402
+ * [#498](https://github.com/stripe/stripe-ruby/pull/498) Add support for flexible billing primitives
403
+
404
+ ## 3.12.1 - 2018-04-05
405
+ * [#636](https://github.com/stripe/stripe-ruby/pull/636) Fix a warning for uninitialized instance variable `@additive_params`
406
+
407
+ ## 3.12.0 - 2018-04-05
408
+ * [#632](https://github.com/stripe/stripe-ruby/pull/632) Introduce `additive_object_param` so that non-`metadata` subobjects don't zero their keys as they're being replaced
409
+
410
+ ## 3.11.0 - 2018-02-26
411
+ * [#628](https://github.com/stripe/stripe-ruby/pull/628) Add support for `code` attribute on all Stripe exceptions
412
+
413
+ ## 3.10.0 - 2018-02-21
414
+ * [#627](https://github.com/stripe/stripe-ruby/pull/627) Add support for topups
415
+
416
+ ## 3.9.2 - 2018-02-12
417
+ * [#625](https://github.com/stripe/stripe-ruby/pull/625) Skip calling `to_hash` for `nil`
418
+
419
+ ## 3.9.1 - 2017-12-15
420
+ * [#616](https://github.com/stripe/stripe-ruby/pull/616) Support all file-like objects for uploads with duck typed checks on `path` and `read` (we previously whitelisted only certain classes)
421
+
422
+ ## 3.9.0 - 2017-12-08
423
+ * [#613](https://github.com/stripe/stripe-ruby/pull/613) Introduce new `IdempotencyError` type for idempotency-specific failures
424
+
3
425
  ## 3.8.2 - 2017-12-07
4
426
  * [#612](https://github.com/stripe/stripe-ruby/pull/612) Fix integer-indexed array encoding when sent as query parameter (subscription items can now be used when fetching an upcoming invoice)
5
427
 
@@ -65,7 +487,8 @@
65
487
  * Handle `invalid_client` OAuth error code
66
488
  * Improve safety of error handling logic safer for unrecognized OAuth error codes
67
489
 
68
- ## 3.0.2 - 2017-07-12 (yanked)
490
+ ## 3.0.2 - 2017-07-12
491
+ **Important:** This version is non-functional and has been yanked in favor of 3.0.3.
69
492
  * Convert `nil` to empty string when serializing parameters (instead of opaquely dropping it) -- NOTE: this change has since been reverted
70
493
 
71
494
  ## 3.0.1 - 2017-07-11
@@ -0,0 +1,77 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to make participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, sex characteristics, gender identity and expression,
9
+ level of experience, education, socio-economic status, nationality, personal
10
+ appearance, race, religion, or sexual identity and orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies within all project spaces, and it also applies when
49
+ an individual is representing the project or its community in public spaces.
50
+ Examples of representing a project or community include using an official
51
+ project e-mail address, posting via an official social media account, or acting
52
+ as an appointed representative at an online or offline event. Representation of
53
+ a project may be further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at conduct@stripe.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72
+
73
+ [homepage]: https://www.contributor-covenant.org
74
+
75
+ For answers to common questions about this code of conduct, see
76
+ https://www.contributor-covenant.org/faq
77
+
data/Gemfile CHANGED
@@ -1,38 +1,33 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source "https://rubygems.org"
2
4
 
3
5
  gemspec
4
6
 
5
7
  group :development do
6
8
  gem "mocha", "~> 0.13.2"
9
+ gem "rack", ">= 2.0.6"
7
10
  gem "rake"
8
- gem "shoulda-context"
11
+
12
+ # Update to 2.0.0 once it ships.
13
+ gem "shoulda-context", "2.0.0.rc4"
14
+
9
15
  gem "test-unit"
10
- gem "timecop"
11
- gem "webmock"
16
+
17
+ # Version doesn't matter that much, but this one contains some fixes for Ruby
18
+ # 2.7 warnings that add noise to the test suite.
19
+ gem "webmock", ">= 3.8.0"
12
20
 
13
21
  # Rubocop changes pretty quickly: new cops get added and old cops change
14
22
  # names or go into new namespaces. This is a library and we don't have
15
23
  # `Gemfile.lock` checked in, so to prevent good builds from suddenly going
16
24
  # bad, pin to a specific version number here. Try to keep this relatively
17
25
  # up-to-date, but it's not the end of the world if it's not.
18
- gem "rubocop", "0.50.0"
19
-
20
- # Rack 2.0+ requires Ruby >= 2.2.2 which is problematic for the test suite on
21
- # older Ruby versions. Check Ruby the version here and put a maximum
22
- # constraint on Rack if necessary.
23
- if RUBY_VERSION >= "2.2.2"
24
- gem "rack", ">= 1.5"
25
- else
26
- gem "rack", ">= 1.5", "< 2.0" # rubocop:disable Bundler/DuplicatedGem
27
- end
26
+ gem "rubocop", "0.80"
28
27
 
29
28
  platforms :mri do
30
- # to avoid problems, bring Byebug in on just versions of Ruby under which
31
- # it's known to work well
32
- if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new("2.0.0")
33
- gem "byebug"
34
- gem "pry"
35
- gem "pry-byebug"
36
- end
29
+ gem "byebug"
30
+ gem "pry"
31
+ gem "pry-byebug"
37
32
  end
38
33
  end