17 Commits

Author SHA1 Message Date
Olivier Bellone
e02ff7f849
Start using RuboCop for linting 2017-09-27 21:28:25 +02:00
Brandur
ce69d749e1 Implement STRIPE_LOG for stripe-ruby
Adds logging support for stripe-ruby in a similar way that we did it for
stripe-python [1], with the idea that users you can optionally get some
additional low-cost-to-configure logging for operational visibility or
debugging.

I made a few tweaks from the Python implementation (which I'll try to
contribute back to there):

* Added an elapsed parameter to responses so you can tell how long they
  lasted.
* Mixed in idempotency_key to all lines that users have a way to
  aggregate logs related to a request from start to finish.
* Standardized naming between different log lines as much as possible.
* Detect a TTY and produce output that's colorized and formatted.

[1] https://github.com/stripe/stripe-python/pull/269
2017-08-03 13:39:15 -07:00
Brandur
00180c5f35 Power test suite with stripe-mock
Moves away from Committee and towards stripe-mock, an external
self-contained executable API stub server based on OpenAPI [1]. The
motivation here is that instead of making stripe-ruby a special
snowflake, we can use a single well-tested and feature-rich mock
implementation to drive every API's test suite.

[1] https://github.com/stripe/stripe-mock
2017-07-31 13:25:48 -07:00
Brandur
357a99236a Add Committee/Sinatra + add Rack hack
We want to support older versions of Ruby so introduce a Rack hack to
get an older version of it that can run against them.
2017-02-14 12:17:37 -08:00
Brandur
db72af0fdc Push Pry into MRI
The JRuby build seems to be having trouble.
2017-02-14 12:17:37 -08:00
Brandur
ddaf36e00c Remove support for Ruby 1.9
This has been discussed, but we'll finally be doing it for the next
major version so that we can introduce a few features that depend on
gems that don't support 1.9.
2017-02-14 12:06:10 -08:00
Brandur
aa12f7e621 Relax rest-client requirements
Our fairly old requirements for rest-client (and therefore mime-types)
are starting to cause some dependency hell problems for some customers.
Try relaxing these constraints and locking 1.9 specifically into
compatible versions.
2016-08-31 06:56:17 -07:00
Brandur
d250120102 Workaround for mime-types related failures on 1.9 2016-07-11 15:06:56 -07:00
Brandur
1e166d9be7 Fix Gem builds in CI
CI is failing for a number of Ruby versions because shoulda is pulling
in should-matchers, which then pulls in activesupport. activesupport's
new 5.0.0 version is being picked up, and that requires at least Ruby
2.2.2.

Luckily the solution is easy, we're not using shoulda-matchers, only
shoulda-context, so just tighten up our dependencies a little and the
problem goes away.
2016-07-01 15:44:32 -07:00
Brandur
dd2bae2057 Lock Byebug to just the MRI
Here we predicate the installation of Byebug on being on the MRI. This
allows us to `bundle install` on alternate platforms like JRuby.

Also performs some Gemfile management: add latest MRI and JRuby versions
and remove special case Gemfiles.
2016-03-14 08:59:13 -07:00
Kyle Conroy
7bf660d124 Only support Ruby >= 1.9.3
Update the README, Gemfiles, and gemspec to remove all references to
Rubies < 1.9.3.
2015-11-04 14:52:56 -08:00
Russell Davis
317634ede7 Force an older version of the i18n gem for Ruby < 1.9.3
This should fix the travis build for 1.8.7 and 1.9.2.
2014-12-26 14:45:25 -08:00
Russell Davis
5ec4c3f68f Fix error in new versions of bundler from using frozen version string 2014-08-18 14:56:38 -07:00
Andy Brody
9cf5089dc1 Revert "Change rest-client pin to ruby < 1.9.2."
This reverts commit 39a196541f857ac6266b7a06f589ead21c87a8aa.

Just kidding. Activesupport itself depends on ruby >= 1.9.3.
2014-07-15 13:42:48 -07:00
Andy Brody
39a196541f Change rest-client pin to ruby < 1.9.2.
The latest rest-client supports rubies >= 1.9.2
2014-07-15 13:06:04 -07:00
Russell Davis
3c76c9f150 Fix gemfiles for use with Ruby < 1.9.3
Any project using this gem (with Ruby < 1.9.3) will need to do the same
in its own gemfile.
2014-07-13 13:44:36 -07:00
Evan Broder
eba6826b05 Add a (simple) Gemfile 2012-05-03 23:38:05 -07:00