From 8e3f971f563f71da9bf2fcaa3aa3145e89e5cba9 Mon Sep 17 00:00:00 2001 From: Robin Daugherty Date: Wed, 9 Mar 2016 20:33:13 -0500 Subject: [PATCH 1/5] Use Module#prepend when it exists Use duck typing instead of assuming that certain Ruby versions have specific capabilities. --- lib/raven/integrations/rails.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/raven/integrations/rails.rb b/lib/raven/integrations/rails.rb index 428d4bae0..b98e23fb5 100644 --- a/lib/raven/integrations/rails.rb +++ b/lib/raven/integrations/rails.rb @@ -30,10 +30,10 @@ class Rails < ::Rails::Railtie exceptions_class = ::ActionDispatch::ShowExceptions end unless exceptions_class.nil? - if RUBY_VERSION.to_f < 2.0 - exceptions_class.send(:include, Raven::Rails::Middleware::OldDebugExceptionsCatcher) - else + if exceptions_class.respond_to? :prepend exceptions_class.send(:prepend, Raven::Rails::Middleware::DebugExceptionsCatcher) + else + exceptions_class.send(:include, Raven::Rails::Middleware::OldDebugExceptionsCatcher) end end end From 5f948fc87313e07d5b3cbbbcf6f8372829fc7d58 Mon Sep 17 00:00:00 2001 From: Robin Daugherty Date: Wed, 9 Mar 2016 21:03:39 -0500 Subject: [PATCH 2/5] Add build of JRuby 1.7 in Ruby 2.0 mode --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index 4d8e8c65b..17277aaa8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,6 +25,9 @@ notifications: on_failure: change matrix: + include: + - rvm: jruby-1.7.24 + env: JRUBY_OPTS="--2.0" allow_failures: - rvm: ruby-head exclude: From b1a743fb59def2916d3f46842ff29d7a5cdf5630 Mon Sep 17 00:00:00 2001 From: Robin Daugherty Date: Wed, 9 Mar 2016 21:13:13 -0500 Subject: [PATCH 3/5] Build modern JRuby versions --- .travis.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.travis.yml b/.travis.yml index 17277aaa8..ca54c44c0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,6 +28,16 @@ matrix: include: - rvm: jruby-1.7.24 env: JRUBY_OPTS="--2.0" + gemfile: gemfiles/rails41.gemfile + - rvm: jruby-1.7.24 + env: JRUBY_OPTS="--2.0" + gemfile: gemfiles/rails42.gemfile + - rvm: jruby-9.0.5.0 + gemfile: gemfiles/rails41.gemfile + - rvm: jruby-9.0.5.0 + gemfile: gemfiles/rails42.gemfile + - rvm: jruby-9.0.5.0 + gemfile: gemfiles/rails5.gemfile allow_failures: - rvm: ruby-head exclude: From 2c031cb0ff83bfd1b2173bdb4b895d8280a94dc2 Mon Sep 17 00:00:00 2001 From: Robin Daugherty Date: Wed, 9 Mar 2016 21:53:16 -0500 Subject: [PATCH 4/5] Look for private `prepend` method --- lib/raven/integrations/rails.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/raven/integrations/rails.rb b/lib/raven/integrations/rails.rb index b98e23fb5..946e5d3c5 100644 --- a/lib/raven/integrations/rails.rb +++ b/lib/raven/integrations/rails.rb @@ -30,7 +30,7 @@ class Rails < ::Rails::Railtie exceptions_class = ::ActionDispatch::ShowExceptions end unless exceptions_class.nil? - if exceptions_class.respond_to? :prepend + if exceptions_class.respond_to?(:prepend, true) exceptions_class.send(:prepend, Raven::Rails::Middleware::DebugExceptionsCatcher) else exceptions_class.send(:include, Raven::Rails::Middleware::OldDebugExceptionsCatcher) From c124c78ec2d209941b5a284515bb15d287016cc7 Mon Sep 17 00:00:00 2001 From: Robin Daugherty Date: Thu, 17 Mar 2016 21:23:02 -0400 Subject: [PATCH 5/5] Remove rails41 JRuby builds --- .travis.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 96e528974..2c630af8d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,14 +22,9 @@ notifications: matrix: include: - - rvm: jruby-1.7.24 - env: JRUBY_OPTS="--2.0" - gemfile: gemfiles/rails41.gemfile - rvm: jruby-1.7.24 env: JRUBY_OPTS="--2.0" gemfile: gemfiles/rails42.gemfile - - rvm: jruby-9.0.5.0 - gemfile: gemfiles/rails41.gemfile - rvm: jruby-9.0.5.0 gemfile: gemfiles/rails42.gemfile - rvm: jruby-9.0.5.0