Skip to content

Latest commit

 

History

History
1123 lines (816 loc) · 46.7 KB

CHANGELOG.md

File metadata and controls

1123 lines (816 loc) · 46.7 KB

Changelog

7.2.0-beta.1 - 2022-08-23

  • #1122 API Updates for beta branch
    • Updated stable APIs to the latest version
    • Stripe-Version beta headers are not pinned by-default and need to be manually specified, please refer to beta SDKs README section

7.1.0 - 2022-08-19

  • #1116 API Updates
    • Add support for new resource CustomerCashBalanceTransaction
  • #1118 Update AllowedChars in rubocop config
  • #1117 Refresh rubocop config.
  • #1115 Add a support section to the readme

7.1.0-beta.2 - 2022-08-11

  • #1113 API Updates for beta branch
    • Updated stable APIs to the latest version
    • Add refund_payment method to Terminal resource

7.1.0-beta.1 - 2022-08-03

  • #1107 API Updates for beta branch
    • Updated stable APIs to the latest version
    • Added the Order resource support

7.0.0 - 2022-08-02

Breaking changes that arose during code generation of the library that we postponed for the next major version. For changes to the SDK, read more detailed description at https://github.com/stripe/stripe-ruby/wiki/Migration-guide-for-v7. For changes to the Stripe products, read more at https://stripe.com/docs/upgrades#2022-08-01.

"⚠️" symbol highlights breaking changes.

  • #1106 API Updates
  • #1092 API Updates
  • #1090 Use auto-generation for Invoice methods
  • #1103 Next major release changes

6.6.0-beta.1 - 2022-07-22

  • #1100 API Updates for beta branch
    • Updated stable APIs to the latest version
    • Add QuotePhase resource
  • #1097 API Updates for beta branch
    • Updated stable APIs to the latest version
    • Add SubscriptionSchedule.amend method.
  • #1093 API Updates for beta branch
    • Include server_side_confirmation_beta=v1 beta
    • Add secretKeyConfirmation to PaymentIntent
  • #1085 API Updates for beta branch
    • Updated stable APIs to the latest version
  • #1075 Use the generated API version

6.5.0 - 2022-06-29

  • #1084 API Updates
    • Add support for deliver_card, fail_card, return_card, and ship_card test helper methods on resource Issuing.Card
  • #1076 fix: Update logging to coerce ASCII-8BIT into UTF-8.

6.4.0 - 2022-06-17

  • #1073 API Updates

    • Add support for fund_cash_balance test helper method on resource Customer
  • #1074 Support updating pre-release versions

  • #1072 Trigger workflows on beta branches

  • #1071 Use request_stripe_object for all requests

  • #1070 API Updates

    Switch from using meta-programing to generating explicit methods for custom methods.

  • #1069 chore: Stop special implementation of Account.persons method.

6.3.0 - 2022-06-08

  • #1063 fix: Update cash balance methods to no longer require nested ID.

6.2.0 - 2022-05-23

  • #1060 API Updates
    • Add support for new resource Apps.Secret

6.1.0 - 2022-05-19

  • #1057 API Updates
    • Add support for new resources Treasury.CreditReversal, Treasury.DebitReversal, Treasury.FinancialAccountFeatures, Treasury.FinancialAccount, Treasury.FlowDetails, Treasury.InboundTransfer, Treasury.OutboundPayment, Treasury.OutboundTransfer, Treasury.ReceivedCredit, Treasury.ReceivedDebit, Treasury.TransactionEntry, and Treasury.Transaction
    • Add support for retrieve_payment_method method on resource Customer
    • Add support for list_owners and list methods on resource FinancialConnections.Account

6.0.0 - 2022-05-09

  • #1056 API Updates Major version release. The migration guide contains more information.

    (⚠️ = breaking changes):

    • ⚠️ Replace the legacy Order API with the new Order API.
      • New methods: cancel, list_line_items, reopen, and submit
      • Removed methods: pay and return_order
      • Removed resources: OrderItem and OrderReturn
    • ⚠️ Rename FinancialConnections::Account.refresh to `FinancialConnections::Account.refresh_account

5.55.0 - 2022-05-05

  • #1055 API Updates
    • Add support for new resources FinancialConnections.AccountOwner, FinancialConnections.AccountOwnership, FinancialConnections.Account, and FinancialConnections.Session

5.54.0 - 2022-05-03

  • #1053 API Updates
    • Add support for new resource CashBalance

5.53.0 - 2022-04-21

  • #1050 API Updates
    • Add support for expire test helper method on resource Refund

5.52.0 - 2022-04-18

  • #1046 #1047 API Updates
    • Add support for new resources FundingInstructions and Terminal.Configuration

5.51.0 - 2022-04-15

  • #1046 This release was incomplete and was yanked from RubyGems immediately after it was published.

5.50.0 - 2022-04-13

  • #1045 API Updates
    • Add support for increment_authorization method on resource PaymentIntent

5.49.0 - 2022-04-08

  • #1043 API Updates
    • Add support for apply_customer_balance method on resource PaymentIntent

5.48.0 - 2022-03-30

  • #1041 API Updates
    • Add support for cancel_action, process_payment_intent, process_setup_intent, and set_reader_display methods on resource Terminal.Reader

5.47.0 - 2022-03-29

  • #1040 API Updates

    • Add support for Search API
      • Add support for search method on resources Charge, Customer, Invoice, PaymentIntent, Price, Product, and Subscription
  • #1034 Add supporting classes for test helper generation

5.46.0 - 2022-03-23

  • #1039 API Updates
    • Add support for cancel method on resource Refund
  • #992 Add support for Search API

5.45.0 - 2022-03-01

  • #1035 API Updates
    • Add support for new resource TestHelpers.TestClock

5.44.0 - 2022-02-16

  • #1032 API Updates
    • Add support for verify_microdeposits method on resources PaymentIntent and SetupIntent

5.43.0 - 2022-01-20

  • #1031 API Updates
    • Add support for new resource PaymentLink

5.42.0 - 2021-12-13

  • #1022 Add connection manager logging and include object IDs in logging.

5.41.0 - 2021-11-16

  • #1017 API Updates
    • Add support for new resource ShippingRate

5.40.0 - 2021-11-11

  • #1015 API Updates
    • Add support for expire method on resource Checkout.Session
  • #1013 Add tests for child resources.
  • #1012 Add tests for namespaced resources.
  • #1011 codegen: 3 more files

5.39.0 - 2021-10-11

  • #1010 API Updates
    • Add support for list_payment_methods method on resource Customer

5.38.0 - 2021-08-10

  • #993 Add request_id to RequestEndEvent
  • #991 Codegen more files
  • #989 Remove unused API error types from docs.

5.37.0 - 2021-07-14

  • #988 API Updates
    • Add support for list_computed_upfront_line_items method on resource Quote

5.36.0 - 2021-07-09

  • #987 Add support for Quote API

5.35.0 - 2021-06-30

  • #985 Update normalize_opts to use dup instead of clone.
  • #982 Deprecate travis
  • #983 Add support for making a request and receiving the response as a stream.

5.34.0 - 2021-06-04

  • #981 API Updates
    • Add support for TaxCode API.

5.33.0 - 2021-05-19

  • #979 Add support for the Identify VerificationSession and VerificationReport APIs

5.32.1 - 2021-04-05

  • Correct use of regexp match in gemspec for old versions of Ruby

5.32.0 - 2021-04-05

  • #973 Reduce packed gem size

5.31.0 - 2021-04-02

  • #968 Allow StripeClient to be configured per instance
  • #971 On config change, only clear connection managers for changed config
  • #972 Rename Stripe.configuration to Stripe.config
  • #970 Reserve some critical field names when adding StripeObject accessors
  • #967 CI: github actions

5.30.0 - 2021-02-22

  • #965 Add support for the Billing Portal Configuration API

5.29.1 - 2021-02-09

  • #964 Fix return value of Customer#delete_discount

5.29.0 - 2021-01-05

  • #952 Allow client_id configuration on instance config

5.28.0 - 2020-10-14

  • #950 Add configuration option for write_timeout for connections on Ruby 2.6+

5.27.0 - 2020-10-14

  • #951 Add support for the Payout Reverse API

5.26.0 - 2020-09-29

  • #949 Add support for the SetupAttempt resource and List API

5.25.0 - 2020-09-02

  • #944 Add support for the Issuing Dispute Submit API

5.24.0 - 2020-08-26

  • #939 Extract configurations into separate object
  • #940 Fix typo in documentation of stripe_object.rb

5.23.1 - 2020-08-05

  • #936 Rename API resource's request method

5.23.0 - 2020-08-05

  • #937 Add support for the PromotionCode resource and APIs

5.22.0 - 2020-05-11

  • #918 Add support for the LineItem resource and APIs

5.21.0 - 2020-04-29

  • #917 Add support for the Price resource and APIs

5.20.0 - 2020-04-27

  • #916 Add new .generate_header method for webhooks

5.19.0 - 2020-04-24

  • #915 Expose Stripe::Webhook.compute_signature publicly

5.18.0 - 2020-04-22

  • #911 Add support for BillingPortal namespace and Session resource and APIs

5.17.0 - 2020-02-26

  • #907 Add StripeError#idempotent_replayed?

5.16.0 - 2020-02-26

  • #906 Add support for listing Checkout sessions
  • #903 Upgrade to Rubocop 0.80

5.15.0 - 2020-02-10

  • #902 Add request_begin instrumentation callback

5.14.0 - 2020-01-14

  • #896 Add support for CreditNoteLineItem
  • #894 Clean up test output by capturing $stderr when we expect warnings
  • #892 Explicitly pass a parameter as hash to be more ruby 2.7 friendly
  • #893 Upgrade Rubocop to 0.79

5.13.0 - 2020-01-08

  • #891 Fix most Ruby 2.7 warnings

5.12.1 - 2020-01-06

  • #890 Override API key with client_secret in OAuth.token

5.12.0 - 2020-01-02

  • #889 Add support for retrieve source transaction API method

5.11.0 - 2019-11-26

  • #885 Add support for CreditNote preview

5.10.0 - 2019-11-08

  • #882 Add list_usage_record_summaries and list_source_transactions

5.9.0 - 2019-11-07

  • #870 Add request instrumentation callback (see README.md for usage example)

5.8.0 - 2019-11-05

  • #879 Add support for Mandate
  • #876 Add additional per-request configuration documentation
  • #874 Raise an error when requests params are invalid
  • #873 Contributor Covenant

5.7.1 - 2019-10-15

  • #869 Fixes the misnamed connection_base= setter to be named connect_base=

5.7.0 - 2019-10-10

  • #865 Support backwards pagination with list's #auto_paging_each

5.6.0 - 2019-10-04

  • #861 Nicer error when specifying non-nil non-string opt value

5.5.0 - 2019-10-03

  • #859 User-friendly messages and retries for EOFError, Errno::ECONNRESET, Errno::ETIMEDOUT, and Errno::EHOSTUNREACH network errors

5.4.1 - 2019-10-01

  • #858 Drop Timecop dependency

5.4.0 - 2019-10-01

  • #857 Move to monotonic time for duration calculations

5.3.0 - 2019-10-01

  • #853 Support Stripe-Should-Retry header

5.2.0 - 2019-09-19

  • #851 Introduce system for garbage collecting connection managers

5.1.1 - 2019-09-04

  • #845 Transfer the request_id from the http_headers to error.

5.1.0 - 2019-08-27

  • #841 Retry requests on a 429 that's a lock timeout

5.0.1 - 2019-08-20

  • #836 Increase connection keep alive timeout to 30 seconds

5.0.0 - 2019-08-20

Major version release. The migration guide contains a detailed list of backwards-incompatible changes with upgrade instructions.

Pull requests included in this release (cf. #815) (⚠️ = breaking changes):

  • ⚠️ #813: Convert library to use built-in Net::HTTP
  • ⚠️ #816: Make code argument in CardError named instead of positional.
  • ⚠️ #817: Drop support for very old Ruby versions.
  • #818: Bump Rubocop to latest version
  • #819: Ruby minimum version increase followup
  • ⚠️ #820: Remove old deprecated methods
  • ⚠️ #823: Remove all alias for list methods
  • ⚠️ #826: Remove UsageRecord.create method
  • ⚠️ #827: Remove IssuerFraudRecord
  • #811: Add ErrorObject to StripeError exceptions
  • #828: Tweak retry logic to be a little more like stripe-node
  • #829: Reset connections when connection-changing configuration changes (optional)
  • #830: Fix inverted sign for 500 retries
  • ⚠️#831: Remove a few more very old deprecated methods
  • #832: Minor cleanup in StripeClient
  • #833: Do better bookkeeping when tracking state in Thread.current
  • #834: Add Invoice.list_upcoming_line_items method

4.24.0 - 2019-08-12

  • #825 Add SubscriptionItem.create_usage_record method
    • This release also removed the SubscriptionSchedule.revisions method. This should have been included in the previous release (4.23.0)

4.23.0 - 2019-08-09

  • #824 Remove SubscriptionScheduleRevision
    • This is technically a breaking change. We've chosen to release it as a minor vesion bump because the associated API is unused.

4.22.1 - 2019-08-09

  • #808 Unify request/response handling

4.22.0 - 2019-07-30

  • #821 Listing BalanceTransaction objects now uses /v1/balance_transactions instead of /v1/balance/history

4.21.3 - 2019-07-15

  • #810 Better error message when passing non-string to custom method

4.21.2 - 2019-07-05

  • #806 Revert back to initialize_from from Util.convert_to_stripe_object

4.21.1 - 2019-07-04

  • #807 Add gem metadata

4.21.0 - 2019-06-28

  • #803 Add support for the SetupIntent resource and APIs

4.20.1 - 2019-06-28

  • #805 Fix formatting in ConnectionFailed error message

4.20.0 - 2019-06-24

  • #800 Enable request latency telemetry by default

4.19.0 - 2019-06-17

  • #770 Add support for CustomerBalanceTransaction resource and APIs

4.18.1 - 2019-05-27

  • #789 Allow Order#pay to be called without arguments

4.18.0 - 2019-05-23

  • #783 Add support for radar.early_fraud_warning resource

4.17.0 - 2019-05-14

  • #779 Add support for the Capability resource and APIs

4.16.0 - 2019-04-24

  • #760 Add support for the TaxRate resource and APIs

4.15.0 - 2019-04-22

  • #762 Add support for the TaxId resource and APIs

4.14.0 - 2019-04-18

  • #758 Add support for the CreditNote resource and APIs

4.13.0 - 2019-04-16

  • #766 Relax constraints on objects that we'll accept as a file (now they just need to respond to #read)

4.12.0 - 2019-04-02

  • #752 Add .delete class method on deletable API resources
  • #754 Add class methods for all custom API requests (e.g. Charge.capture)

4.11.0 - 2019-03-26

  • #753 Add a global proxy configuration parameter

4.10.0 - 2019-03-18

  • #745 Add support for the PaymentMethod resource and APIs
  • #747 Add support for retrieving a Checkout Session
  • #748 Add support for deleting a Terminal Location and Reader

4.9.1 - 2019-03-18

  • #750 Catch error and warn if unable to remove a method

4.9.0 - 2019-02-12

  • #739 Add support for SubscriptionSchedule and SubscriptionScheduleRevision

4.8.1 - 2019-02-11

  • #743 Fix bug in file uploading introduced in #741

4.8.0 - 2019-02-03

  • #741 Use FaradayStripeEncoder to encode all parameter styles

4.7.1 - 2019-02-01

  • #740 Fix query encoding for integer-indexed maps

4.7.0 - 2019-01-23

  • #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.

4.6.0 - 2019-01-21

  • #736 Properly serialize individual on Account objects

4.5.0 - 2019-01-02

  • #719 Generate OAuth authorize URLs for Express accounts as well as standard

4.4.1 - 2018-12-31

  • #718 Fix an error message typo

4.4.0 - 2018-12-21

  • #716 Add support for the CheckoutSession resource

4.3.0 - 2018-12-10

  • #711 Add support for account links

4.2.0 - 2018-11-28

  • #705 Add support for the Review APIs

4.1.0 - 2018-11-27

  • #695 Add support for ValueList and ValueListItem for Radar

4.0.3 - 2018-11-19

  • #703 Don't use Net::HTTP::Persistent on Windows where it's not well supported

4.0.2 - 2018-11-16

  • #701 Require minimum Faraday 0.13 for proper support of persistent connections

4.0.1 - 2018-11-15

  • #699 Only send telemetry if Request-Id was present in the response

4.0.0 - 2018-11-15

  • #698 Use persistent connections by default through Net::HTTP::Persistent
  • #698 Drop support for Ruby 2.0 (which we consider a breaking change here)

3.31.1 - 2018-11-12

  • #697 Send telemetry in milliseconds specifically

3.31.0 - 2018-11-12

  • #696 Add configurable telemetry to gather information on client-side request latency

3.30.0 - 2018-11-08

  • #693 Add new API endpoints for the Invoice resource.

3.29.0 - 2018-10-30

  • #692 Add support for the Person resource
  • #694 Add support for the WebhookEndpoint resource

3.28.0 - 2018-09-24

  • #690 Add support for Stripe Terminal

3.27.0 - 2018-09-24

  • #689 Rename FileUpload to File

3.26.1 - 2018-09-14

  • #688 Fix hash equality on StripeObject

3.26.0 - 2018-09-05

  • #681 Add support for reporting resources

3.25.0 - 2018-08-28

  • #678 Allow payment intent #cancel, #capture, and #confirm to take their own parameters

3.24.0 - 2018-08-27

  • #675 Remove support for BitcoinReceiver write-actions

3.23.0 - 2018-08-23

  • #676 Add support for usage record summaries

3.22.0 - 2018-08-15

  • #674 Use integer-indexed encoding for all arrays

3.21.0 - 2018-08-03

  • #671 Add cancel support for topups

3.20.0 - 2018-08-03

  • #669 Add support for file links

3.19.0 - 2018-07-27

  • #666 Add support for scheduled query runs (Stripe::Sigma::ScheduledQueryRun) for Sigma

3.18.0 - 2018-07-26

  • #665 Add support for Stripe Issuing

3.17.2 - 2018-07-19

  • #664 Don't colorize log output being sent to a configured logger

3.17.1 - 2018-07-19

  • #663 Internal improvements to ApiResource.class_url

3.17.0 - 2018-06-28

  • #658 Add support for partner_id from Stripe.set_app_info

3.16.0 - 2018-06-28

  • #657 Add support for payment intents

3.15.0 - 2018-05-10

  • #649 Freeze all string literals

3.14.0 - 2018-05-09

  • #645 Add support for issuer fraud records

3.13.1 - 2018-05-07

  • #647 Merge query parameters coming from path with params argument

3.13.0 - 2018-04-11

  • #498 Add support for flexible billing primitives

3.12.1 - 2018-04-05

  • #636 Fix a warning for uninitialized instance variable @additive_params

3.12.0 - 2018-04-05

  • #632 Introduce additive_object_param so that non-metadata subobjects don't zero their keys as they're being replaced

3.11.0 - 2018-02-26

  • #628 Add support for code attribute on all Stripe exceptions

3.10.0 - 2018-02-21

  • #627 Add support for topups

3.9.2 - 2018-02-12

  • #625 Skip calling to_hash for nil

3.9.1 - 2017-12-15

  • #616 Support all file-like objects for uploads with duck typed checks on path and read (we previously whitelisted only certain classes)

3.9.0 - 2017-12-08

  • #613 Introduce new IdempotencyError type for idempotency-specific failures

3.8.2 - 2017-12-07

  • #612 Fix integer-indexed array encoding when sent as query parameter (subscription items can now be used when fetching an upcoming invoice)

3.8.1 - 2017-12-06

  • #611 Support Tempfile (as well as File) in file uploads

3.8.0 - 2017-10-31

  • #606 Support for exchange rates APIs

3.7.0 - 2017-10-26

  • #603 Support for listing source transactions

3.6.0 - 2017-10-17

  • #597 Add static methods to manipulate resources from parent
    • Account gains methods for external accounts and login links (e.g. .create_account, create_login_link)
    • ApplicationFee gains methods for refunds
    • Customer gains methods for sources
    • Transfer gains methods for reversals

3.5.3 - 2017-10-16

  • #594 Make sure that StripeObject's #deep_copy maintains original class
  • #595 Allow Object#method to be called on StripeObject even if it conflicts with an accessor
  • #596 Encode arrays as integer-indexed hashes where appropriate
  • #598 Don't persist idempotency_key opt between requests

3.5.2 - 2017-10-13

  • #592 Bring back Marshal.dump/load support with custom marshal encoder/decoder

3.5.1 - 2017-10-12

  • #591 Use thread-local StripeClient instances for thread safety

3.5.0 - 2017-10-11

  • #589 Rename source delete to detach (and deprecate the former)

3.4.1 - 2017-10-05

  • #586 Log query strings as well as form bodies with STRIPE_LOG
  • #588 Require minimum Faraday 0.10 for bug fix in parameter encoding

3.4.0 - 2017-09-20

  • Mark legacy Bitcoin API as deprecated, and remove corresponding tests
  • Mark recipients API as deprecated, and remove recipient card tests

3.3.2 - 2017-09-20

  • Correct minimum required Ruby version in gemspec (it's 2.0.0)

3.3.1 - 2017-08-18

  • Only parse webhook payload after verification to decrease likelihood of attack

3.3.0 - 2017-08-11

  • Add support for standard library logger interface with Stripe.logger
  • Error logs now go to stderr if using Stripe.log_level/STRIPE_LOG
  • Stripe.log_level/STRIPE_LOG now support Stipe::LEVEL_ERROR

3.2.0 - 2017-08-03

  • Add logging for request retry account and Stripe-Account header

3.1.0 - 2017-08-03

  • Implement request logging with Stripe.log_level and STRIPE_LOG

3.0.3 - 2017-07-28

  • Revert nil to empty string coercion from 3.0.2
  • Handle invalid_client OAuth error code
  • Improve safety of error handling logic safer for unrecognized OAuth error codes

3.0.2 - 2017-07-12

Important: This version is non-functional and has been yanked in favor of 3.0.3.

  • Convert nil to empty string when serializing parameters (instead of opaquely dropping it) -- NOTE: this change has since been reverted

3.0.1 - 2017-07-11

  • Properties set with an API resource will now serialize that resource's ID if possible
  • API resources will throw an ArgumentError on save if a property has been with an API resource that cannot be serialized

3.0.0 - 2017-06-27

  • #pay on invoice now takes params as well as opts

2.12.0 - 2017-06-20

  • Add support for ephemeral keys

2.11.0 - 2017-05-26

  • Warn when keys that look like opts are included as parameters

2.10.0 - 2017-05-25

  • Add support for account login links

2.9.0 - 2017-05-18

  • Support for OAuth operations in Stripe::OAuth

2.8.0 - 2017-04-28

  • Support for checking webhook signatures

2.7.0 - 2017-04-26

  • Add model InvoiceLineItem

2.6.0 - 2017-04-26

  • Add OBJECT_NAME constants to all API resources

2.5.0 - 2017-04-24

  • Make opts argument in Util.convert_to_stripe_object optional

2.4.0 - 2017-04-18

  • Add Stripe.set_app_info for use by plugin creators

2.3.0 - 2017-04-14

  • Add question mark accessor when assigning boolean value to undefined field

2.2.1 - 2017-04-07

  • Declare minimum required Faraday as 0.9

2.2.0 - 2017-04-06

  • Add support for payouts and recipient transfers

2.1.0 - 2017-03-17

  • Support for detaching sources from customers

2.0.3 - 2017-03-16

  • Fix marshalling of StripeObjects that have an embedded client

2.0.2 - 2017-03-16

  • Fix bad field reference when recovering from a JSON parsing problem

2.0.1 - 2017-02-22

  • Fix multipart parameter encoding to repair broken file uploads

2.0.0 - 2017-02-14

  • Drop support for Ruby 1.9
  • Allow HTTP client that makes Stripe calls to be configured via Faraday
  • Drop RestClient
  • Switch to OpenAPI 2.0 spec and generated fixtures in test suite
  • Switch to Webmock in test suite

1.58.0 - 2017-01-19

  • Remove erroneously added list methods for Source model

1.57.1 - 2016-11-28

  • Disallow sending protected fields along with API resource .update

1.57.0 - 2016-11-21

  • Add retrieve method for 3-D Secure resources

1.56.2 - 2016-11-17

  • Improve StripeObject's #to_s to better handle how embedded objects are displayed

1.56.1 - 2016-11-09

  • Fix (fairly serious) memory like in StripeObject

1.56.0 - 2016-10-24

  • Add accessors for new fields added in #update_attributes
  • Handle multi-plan subscriptions through new subscription items
  • Handle 403 status codes from the API

1.55.1 - 2016-10-24

Identical to 1.56.0 above. I incorrectly cut a patch-level release.

1.55.0 - 2016-09-15

  • Add support for Apple Pay domains

1.54.0 - 2016-09-01

  • Whitelist errors that should be retried; scope to known socket and HTTP errors

1.53.0 - 2016-08-31

  • Relax version constraint on rest-client (and by extension mime-types) for users on Ruby 2+

1.52.0 - 2016-08-30

  • Make sure Subscription's source is saved with its parent

1.51.1 - 2016-08-30

  • Make sure Account's external_account is saved with its parent

1.51.0 - 2016-08-26

  • Error when an array of maps is detected that cannot be accurately encoded
  • Start using strings for header names instead of symbols for better clarity

1.50.1 - 2016-08-25

  • Fix encoding of arrays of maps where maps unequal sets of keys

1.50.0 - 2016-08-15

  • Allow sources to be created

1.49.0 - 2016-07-28

  • Add top-level Source model

1.48.0 - 2016-07-12

  • Add ThreeDSecure model for 3-D secure payments

1.47.0 - 2016-07-11

  • Allow rest-client version 2.0+ to be used with the gem

1.46.0 - 2016-07-07

  • Allow retry when a 409 conflict is encountered

1.45.0 - 2016-07-07

  • Do not send subresources when updating except when explicitly told to do so (see #433)

1.44.0 - 2016-06-29

  • Add update class method to all resources that can be updated

1.43.1 - 2016-06-17

  • Fix type of resource returned from Order#return_order

1.43.0 - 2016-05-20

  • Allow Relay orders to be returned and add associated types
  • Support Alipay account retrieval and deletion

1.42.0 - 2016-05-04

  • Add support for the new /v1/subscriptions endpoint (retrieve, list, create, update, and delete)

1.41.0 - 2016-04-13

  • Add global stripe_account option that adds a Stripe-Account header to all requests

1.40.0 - 2016-04-06

  • Fix bug that omitted subresources from serialization

1.39.0 - 2016-03-31

  • Update CA cert bundle for compatibility with OpenSSL versions below 1.0.1

1.38.0 - 2016-03-18

  • Allow opts to be passed to an API resource's #save method

1.37.0 - 2016-03-14

  • Add Account#reject to support the new API feature

1.36.2 - 2016-03-14

  • Fix reference to non-existent #url in ListObject

1.36.1 - 2016-03-04

  • Fix serialization when subhash given to #save or #update_attributes

1.36.0 - 2016-02-08

  • Add CountrySpec model for looking up country payment information

1.35.1 - 2016-02-03

  • Add compatibility layer for old API versions on Charge#refund

1.35.0 - 2016-02-01

  • Allow CA cert bundle location to be configured
  • Updated bundled CA certs

1.34.0 - 2016-01-25

  • Add support for deleting products and SKUs

1.33.1 - 2016-01-21

  • Pass through arguments of Charge#refund

1.33.0 - 2016-01-19

  • Re-implement Charge#refund helper to use the modern endpoint suggested by docs

1.32.1 - 2016-01-07

  • Fix bug where ivar left uninitialized in StripeObject could error on serialization
  • Fix bug where a nil customer from API could error Bitcoin model on refresh

1.32.0 - 2016-01-05

  • Add configuration to optionally retry network failures
  • Use modern API endpoint for producing application fee refunds

1.31.0 - 2015-10-29

  • Add BankAccount#verify convenience method

1.30.3 - 2015-10-28

  • Fix bug where arrays that were not additional_owners were not properly encoded for requests

1.30.2 - 2015-10-12

  • Fix bug where opts didn't properly propagate to descendant StripeObjects

1.30.1 - 2015-10-10

  • Fix bug that prevent lists of hashes from being URI-encoded properly
  • Fix bug where filter conditions were not making it past the first instantiated ListObject

1.30.0 - 2015-10-09

  • Add StripeObject#deleted? for a reliable way to check whether an object is alive
  • Deprecate StripeObject#refresh_from
  • New parameter encoding scheme that doesn't use URI.escape

1.29.1 - 2015-10-06

  • Fix bug where ampersands were not being properly encoded

1.29.0 - 2015-10-05

  • Add pagination helpers #auto_paging_each, #previous_page, and #next_page

1.28.1 - 2015-10-05

  • Fix URI being referenced by file upload resources

1.28.0 - 2015-10-05

  • Make StripeObject's #save "upsert"-like; creates an object if new
  • Add #update_attributes to StripeObject for safe mass assignment
  • Properly mass assign attributes on calls to #save
  • Add question mark helpers for boolean fields (e.g. #paid? as well as old #paid)
  • Fix a bug that broke the API for StripeObject initialization
  • Remove use of deprecated URI.escape

1.27.2 - 2015-09-25

  • Correct the URLs used to fetch Bitcoin transactions.

1.27.1 - 2015-09-20

  • Use hash rockets for backwards compatibility.

1.27.0 - 2015-09-14

  • Add Orders, Products, and SKUs for Relay

1.26.0 - 2015-09-11

  • Add support for 429 Rate Limited response

1.25.0 - 2015-08-17

  • Added support for refund listing and retrieval without an associated charge

1.24.0 - 2015-08-03

  • Added support for deleting managed accounts
  • Added support for dispute listing and retrieval
  • Bugfix: token objects now are the correct class

1.23.0 - 2015-07-06

  • Added request IDs and HTTP headers to errors

1.22.0 - 2015-06-10

  • Added support for bank accounts and debit cards in managed accounts (via the external_accounts param)

1.21.0 - 2015-04-14

  • Remove TLS cert revocation check (all pre-heartbleed certs have expired)
  • Bugfix: don't unset keys when they don't exist on StripeObject

1.20.4 - 2015-03-26

  • Raise an error when explicitly passing nil as the API key on resource methods
  • Fix error when passing an API key to Balance.retrieve (github issue #232)

1.20.3 - 2015-03-13

  • Fixed error when updating certain resources (github issue #224)

1.20.2 - 2015-03-10

  • Added support for updating nested hashes besides metadata (which was already supported)
  • Fixed bug in balance retrieval

1.20.1 - 2015-02-26

  • Updated Card to point to customer sources endpoint when customer property is set

1.20.0 - 2015-02-19

  • Added Update & Delete operations to Bitcoin Receivers

1.19.1 - 2015-02-18

  • Fixed fetching upcoming invoice/paying invoice methods

1.19.0 - 2015-02-15

  • Support for new Transfers /reversals endpoint
  • Account retrieval now optionally accepts an account ID
  • Better support for passing custom headers, like Stripe-Account, through requests

1.18.0 - 2015-01-21

  • 1 major enhancement:
    • Added support for making bitcoin charges through BitcoinReceiver source object

1.17.3 - 2015-01-12

  • 1 bugfix:
    • Fixed API key propagation for ApplicationFee#refund

1.17.2 - 2015-01-08

  • 1 bugfix:
    • Fixed API key propagation for child resources

1.17.1 - 2015-01-07

  • 2 minor enhacements:
    • Fixed dependencies for Ruby versions less than 1.9.3
    • Added deauthorize method to Account object

1.17.0 - 2014-12-15

  • 1 major enhacement:
    • File uploads resource was added (for uploading pdf or image documents for disputes)

1.16.1 - 2014-12-19

  • 2 minor enhancements:
    • Ability to send idempotent requests
    • Ability to specify stripe account as a header

1.16.0 - 2014-10-08

  • 1 minor enhacement:
    • Coupons now support update operations - useful for manipulating metadata

1.15.0 - 2014-07-26

  • 1 major enhacement:
    • Application Fee refunds now a list instead of array

1.14.0 - 2014-06-17

  • 1 major enhancement:
    • Add metadata for refunds and disputes

1.13.0 - 2014-05-28

  • 1 major enhancement:
    • Support for canceling transfers

1.12.0 - 2014-05-21

  • 1 major enhancement:
    • Support for cards for recipients

1.11.0 - 2014-04-09

  • 2 minor enhancements:
    • Update included ca bundles
    • Implement certificate blacklisting

1.10.2 - 2014-02-18

  • 1 minor enhancement:
    • Add create_subscription on Customer resources, so you can create subscriptions without needing to retrieve the customer first (github issue #120)

1.10.1 - 2014-02-03

  • 1 bugfix:
    • Fix marshaling of StripeObjects

1.10.0 - 2014-01-29

  • 2 major enhancements

    • Support for multiple subscriptions per customer
    • Testing ruby 2.1.0
  • 2 minor enhancements

    • Replace multi_json with json
    • Allow #save to take opts (for :expand)
  • 1 bugfix

    • Fix #try and #respond_to? on StripeObjects

1.9.9 - 2013-12-02

  • 1 major enhancement
    • Add ApplicationFee resource

1.8.9 - 2013-11-14

  • 2 bugfixes:
    • Fix gemspec dependencies so the gem doesn't break for Ruby 1.8 users
    • Fix api_resource_test to not use returns as a way of testing rescue behavior

1.8.8 - 2013-10-3

  • 1 major enhancement
    • Add support for metadata on resources

1.8.7 - 2013-08-18

  • 1 minor enhancement
    • Add support for closing disputes.

1.8.6 - 2013-08-13

  • 1 major enhancement
    • Add Balance and BalanceTransaction resources

1.8.5 - 2013-08-12

  • 1 major enhancement
    • Add support for unsetting attributes by setting to nil. This permits unsetting email and description on customers and description on charges. Setting properties to a blank string is now an error.
    • Attempting to set an object's id is now an error

1.8.4 - 2013-07-11

  • 1 major enhancement
    • Add support for new cards API (Stripe API version - 2013-07-05)

1.8.3 - 2013-05-06

  • 1 bugfix:
    • Fix handling of per-call API keys (github issue #67)

1.8.2 - 2013-05-01

  • 3 minor enhancements:

    • Use to_sym instead of type checking for minor performance improvement (github issue #59)
    • Handle low-memory situations without throwing an exception (github issue #61)
    • Add an Customer#upcoming_invoice convenience method (github issue #65)
  • 1 bugfix:

    • Allow updating resources without first retrieving them (github issue #60)

1.8.1 - 2013-04-19

  • 1 minor enhancement:
    • Add support for specifying an API key when retrieving an upcoming invoice

1.8.0 - 2013-04-11

  • 1 major enhancement:
    • Add new Recipient resource
    • Allow Transfers to be createable

1.7.11 - 2013-02-21

  • 1 minor enhancement
    • Add 'id' to the list of permanent attributes

1.7.10 - 2013-02-01

  • 1 major enhancement
    • Add support for passing options when retrieving Stripe objects e.g., Stripe::Charge.retrieve({id:"foo", expand:["customer"]}) Stripe::Charge("foo") is still supported as well

1.7.9 - 2013-01-15

  • 1 major enhancement
    • Add support for setting a Stripe API version override.

1.7.8 - 2012-11-21

  • 1 bugfix
    • Relax the version constraint on multi_json (github issue #44)

1.7.7 - 2012-11-07

  • 1 minor enhancement:

    • Add support for updating charge disputes
  • 1 bugfix

    • Fix Account API resource bug

1.7.6 - 2012-10-30

  • 1 major enhancement
    • Add support for creating invoices

1.7.5 - 2012-10-25

  • 1 major enhancement
    • Add support for new API lists

1.7.4 - 2012-10-08

  • 1 bugfix
    • Fix bug introduced in 1.7.3 calling API methods that take no arguments, like Stripe::Invoice#pay (github issue #42)

1.7.3 - 2012-09-14

  • 2 bugfixes
    • Make sure that both keys and values of GET params are URL-encoded. NOTE: If you were previously URL-encoding values yourself, you may need to adjust your code.
    • URL-encode POST params directly, instead of allowing rest-client to do it to work around an unfortunate interaction with the hashery gem (github issue #38)

1.7.2 - 2012-08-31

  • 1 major enhancement
    • Add support for new pay and update methods for Invoice objects

1.7.1 - 2012-08-15

  • 1 major enhancement
    • Add new Account API resource

1.7.0 - 2012-05-17

  • 3 major enhancements:

    • Switch from vendored stripe-json to multi_json for all JSON parsing and rendering. This should not impact programmatic usage of the library, but may cause small rendering differences from, e.g., StripeObject#inspect (github issue #22)
    • Add new delete_discount method to Customer objects
    • Add new Transfer API resource
  • 2 minor enhancements:

    • Switch from HTTP Basic auth to Bearer auth (Note: Stripe will support Basic auth for the indefinite future, but recommends Bearer auth when possible going forward)
    • Numerous test suite improvements

1.6.3 - 2012-03-22

  • 1 bugfix:
    • Encode GET query strings ourselves instead of using rest-client to work around a bug

1.6.2 - 2012-02-24

  • 1 bugfix:
    • Correct argument handling in StripeObject#as_json

1.6.1 - 2012-02-22

  • 1 bugfix:
    • Fix StripeObject#inspect when ActiveSupport 3.0 is loaded

1.6.0 - 2012-02-01

  • A whole bunch of releases between 1.5.0 and 1.6.0, but few changes, mainly the addition of plans, coupons, events, and tokens
  • 1.6.0 also contains a new inspect/to_string implementation

1.5.0 - 2011-05-09

  • 1 major enhancement:
    • Update for new RESTful API

1.3.4 - 2011-01-07

  • 1 major enhancement:
    • Rename to Stripe

1.2 - 2010-06-06

  • 1 major enhancement:
    • Support for the set_customer_subscription and delete_customer API methods

1.1 - 2010-03-14

  • 1 major enhancement:
    • Support for recurring billing

1.0 - 2010-01-05

  • 1 major enhancement:
    • Initial release