Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Stripe 11 #165

Merged
merged 1 commit into from
Apr 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ jobs:
- stripe8
- stripe9
- stripe10
- stripe11
include:
- { ruby: "2.3", gemfile: "rails3.2", bundler: "1" }
- { ruby: "2.5", gemfile: "rails5.1", bundler: "default" }
Expand Down
4 changes: 4 additions & 0 deletions Appraisals
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,10 @@ appraise "stripe10" do
gem "stripe", "~> 10.0"
end

appraise "stripe11" do
gem "stripe", "~> 11.0"
end

appraise "rails_master" do
gem "rails", github: "rails"
end
127 changes: 72 additions & 55 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
### [Unreleased] - TBD

- Add Stripe 11 support (#165)

### 2.8.0 (Mar 18, 2024)

- Add Stripe 9 support (#162)
Expand Down Expand Up @@ -64,107 +66,122 @@
### 1.9.1 (December 5, 2017)

This release is in preparation for some backward incompatible changes due to
arrive in v2.0.0. It is highly recommended that everyone secure their webhook
arrive in v2.0.0. It is highly recommended that everyone secure their webhook
endpoints by using `StripeEvent.signing_secret`. See the README and [Stripe's
documentation](https://stripe.com/docs/webhooks#signatures) for more
information.

* Deprecate `StripeEvent.authentication_secret` (#96)
* Deprecate unverified use of Stripe's webhooks (#96)
- Deprecate `StripeEvent.authentication_secret` (#96)
- Deprecate unverified use of Stripe's webhooks (#96)

### 1.9.0 (November 30, 2017)

* Support for Rails 5.1 (#94, Thanks @krasnoukhov and @simplepractice!)
- Support for Rails 5.1 (#94, Thanks @krasnoukhov and @simplepractice!)

### 1.8.0 (August 29, 2017)

* Support for [Stripe's Webhook Signature Verification](https://stripe.com/docs/webhooks#signatures) (#83, #90, Thanks @mikeycgto!)
* Secure compare during basic authentication check (#91, Thanks @mikeycgto!)
- Support for [Stripe's Webhook Signature Verification](https://stripe.com/docs/webhooks#signatures) (#83, #90, Thanks @mikeycgto!)
- Secure compare during basic authentication check (#91, Thanks @mikeycgto!)

### 1.7.0 (July 5, 2017)

* Support stripe v3 gem as a dependency (#87)
- Support stripe v3 gem as a dependency (#87)

### 1.6.0 (February 27, 2017)

* Support stripe v2 gem as a dependency (#82, b3cee03)
- Support stripe v2 gem as a dependency (#82, b3cee03)

### 1.5.1 (September 20, 2016)

* Better Rails 5 support. Prefer `before_action` over `before_filter`. (#69, Thanks @mcolyer)
- Better Rails 5 support. Prefer `before_action` over `before_filter`. (#69, Thanks @mcolyer)

### 1.5.0 (February 25, 2015)
* Added [replay attack protection](https://github.com/integrallis/stripe_event#securing-your-webhook-endpoint) on webhooks. See `StripeEvent.authentication_secret`. Thanks @brentdax for both the initial discussion and the implementation! #53, #55
* Dropped official support for Rails 3.1 and Rails 4.0

- Added [replay attack protection](https://github.com/integrallis/stripe_event#securing-your-webhook-endpoint) on webhooks. See `StripeEvent.authentication_secret`. Thanks @brentdax for both the initial discussion and the implementation! #53, #55
- Dropped official support for Rails 3.1 and Rails 4.0

### 1.4.0 (November 1, 2014)
* Add `StripeEvent.listening?` method to easily determine if an event type has any registered handlers. Thank you to [Vladimir Andrijevik](https://github.com/vandrijevik) for the [idea and implementation](https://github.com/integrallis/stripe_event/pull/42).

- Add `StripeEvent.listening?` method to easily determine if an event type has any registered handlers. Thank you to [Vladimir Andrijevik](https://github.com/vandrijevik) for the [idea and implementation](https://github.com/integrallis/stripe_event/pull/42).

### 1.3.0 (July 22, 2014)
* Allow for ignoring particular events. Thank you to [anark](https://github.com/anark) for suggesting the change, and [Ryan McGeary](https://github.com/rmm5t) and [Pete Keen](https://github.com/peterkeen) for working on the implementation.

- Allow for ignoring particular events. Thank you to [anark](https://github.com/anark) for suggesting the change, and [Ryan McGeary](https://github.com/rmm5t) and [Pete Keen](https://github.com/peterkeen) for working on the implementation.

### 1.2.0 (June 17, 2014)
* Gracefully authenticate `account.application.deauthorized` events. Thank you to [Ryan McGeary](https://github.com/rmm5t) for the pull request and for taking the time to test the change in a live environment.

- Gracefully authenticate `account.application.deauthorized` events. Thank you to [Ryan McGeary](https://github.com/rmm5t) for the pull request and for taking the time to test the change in a live environment.

### 1.1.0 (January 8, 2014)
* Deprecate `StripeEvent.setup` in favor of `StripeEvent.configure`. Remove `setup` at next major release.
* `StripeEvent.configure` yields the module to the block for configuration.
* `StripeEvent.configure` will raise `ArgumentError` unless a block is given.
* Track test coverage

- Deprecate `StripeEvent.setup` in favor of `StripeEvent.configure`. Remove `setup` at next major release.
- `StripeEvent.configure` yields the module to the block for configuration.
- `StripeEvent.configure` will raise `ArgumentError` unless a block is given.
- Track test coverage

### 1.0.0 (December 19, 2013)
* Internally namespace dispatched events to avoid maintaining a list of all possible event types.
* Subscribe to all event types with `StripeEvent.all` instead of `StripeEvent.subscribe`.
* Remove ability to subscribe to many event types with once call to `StripeEvent.subscribe`.
* Subscribers can be an object that responds to #call.
* Allow subscriber-generated `Stripe::StripeError`'s to bubble up. Thank you to [adamonduty](https://github.com/adamonduty) for the [patch](https://github.com/integrallis/stripe_event/pull/26).
* Only depend on `stripe` and `activesupport` gems.
* Add `rails` as a development dependency.
* Only `require 'stripe_event/engine'` if `Rails` constant exists to allow StripeEvent to be used outside of a Rails application.

- Internally namespace dispatched events to avoid maintaining a list of all possible event types.
- Subscribe to all event types with `StripeEvent.all` instead of `StripeEvent.subscribe`.
- Remove ability to subscribe to many event types with once call to `StripeEvent.subscribe`.
- Subscribers can be an object that responds to #call.
- Allow subscriber-generated `Stripe::StripeError`'s to bubble up. Thank you to [adamonduty](https://github.com/adamonduty) for the [patch](https://github.com/integrallis/stripe_event/pull/26).
- Only depend on `stripe` and `activesupport` gems.
- Add `rails` as a development dependency.
- Only `require 'stripe_event/engine'` if `Rails` constant exists to allow StripeEvent to be used outside of a Rails application.

### 0.6.1 (August 19, 2013)
* Update event type list
* Update test gemfiles

- Update event type list
- Update test gemfiles

### 0.6.0 (March 18, 2013)
* Rails 4 compatibility. Thank you to Ben Ubois for reporting the [issue](https://github.com/integrallis/stripe_event/issues/13) and to Matt Goldman for the [pull request](https://github.com/integrallis/stripe_event/pull/14).
* Run specs against different Rails versions
* Refactor internal usage of AS::Notifications
* Remove jruby-openssl as platform conditional dependency

- Rails 4 compatibility. Thank you to Ben Ubois for reporting the [issue](https://github.com/integrallis/stripe_event/issues/13) and to Matt Goldman for the [pull request](https://github.com/integrallis/stripe_event/pull/14).
- Run specs against different Rails versions
- Refactor internal usage of AS::Notifications
- Remove jruby-openssl as platform conditional dependency

### 0.5.0 (December 16, 2012)
* Remove `Gemfile.lock` from version control
* Internal event type list is now a set
* Update event type list
* Various internal refactorings
* More readable tests

- Remove `Gemfile.lock` from version control
- Internal event type list is now a set
- Update event type list
- Various internal refactorings
- More readable tests

### 0.4.0 (September 24, 2012)
* Add configuration for custom event retrieval. Thanks to Dan Hodos for the [pull request](https://github.com/integrallis/stripe_event/pull/6).
* Move module methods only used in tests into a test helper.
* Various internal refactorings and additional tests.
* Error classes will inherit from a base error class now.

- Add configuration for custom event retrieval. Thanks to Dan Hodos for the [pull request](https://github.com/integrallis/stripe_event/pull/6).
- Move module methods only used in tests into a test helper.
- Various internal refactorings and additional tests.
- Error classes will inherit from a base error class now.

### 0.3.1 (August 14, 2012)
* Fix controller inheritance issue. Thanks to Christopher Baran for [reporting the bug](https://github.com/integrallis/stripe_event/issues/1), and to Robert Bousquet for [fixing it](https://github.com/integrallis/stripe_event/pull/3).
* Deprecate registration method. Use 'setup' instead.

- Fix controller inheritance issue. Thanks to Christopher Baran for [reporting the bug](https://github.com/integrallis/stripe_event/issues/1), and to Robert Bousquet for [fixing it](https://github.com/integrallis/stripe_event/pull/3).
- Deprecate registration method. Use 'setup' instead.

### 0.3.0 (July 16, 2012)
* Add registration method for conveniently adding many subscribers
* Depend on jruby-openssl when running on jruby
* Remove unneeded rake dependency
* Remove configure method

- Add registration method for conveniently adding many subscribers
- Depend on jruby-openssl when running on jruby
- Remove unneeded rake dependency
- Remove configure method

### 0.2.0 (July 12, 2012)
* Register a subscriber to one/many/all events
* Remove sqlite3 development dependency
* Setup travis-ci for repo
* Hard code a placeholder api key in dummy app. Fixes failing tests when env var not defined.

- Register a subscriber to one/many/all events
- Remove sqlite3 development dependency
- Setup travis-ci for repo
- Hard code a placeholder api key in dummy app. Fixes failing tests when env var not defined.

### 0.1.1 (July 4, 2012)
* Improve README
* Specify development dependency versions
* Fix controller test which was passing incorrectly

- Improve README
- Specify development dependency versions
- Fix controller test which was passing incorrectly

### 0.1.0 (June 24, 2012)
* Initial release

- Initial release
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[CONCERN] I'm going to let this slide for the sake of time and the fact that it's effectively benign, but please never do this (reformatting of unrelated things) in a PR related to something else.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rmm5t Thank you for the note! My editor autoformatted the text and I didn't realize it until afterward.

7 changes: 7 additions & 0 deletions gemfiles/stripe11.gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# This file was generated by Appraisal

source "https://rubygems.org"

gem "stripe", "~> 11.0"

gemspec path: "../"
2 changes: 1 addition & 1 deletion stripe_event.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Gem::Specification.new do |s|
s.test_files = `git ls-files -- Appraisals {spec,gemfiles}/*`.split("\n")

s.add_dependency "activesupport", ">= 3.1"
s.add_dependency "stripe", [">= 2.8", "< 11"]
s.add_dependency "stripe", [">= 2.8", "< 12"]

s.add_development_dependency "appraisal"
s.add_development_dependency "rails", [">= 3.1"]
Expand Down