Merge pull request #2327 from rails-api/ruby-2-6-rails-4-2-test-patch

Add support for Ruby 2.6, configure sqlite3 to use ~> 1.4 for rails 6+, patch for Rails 4.2 against Ruby 2.6
This commit is contained in:
Wasif Hossain 2019-04-23 02:50:47 +06:00 committed by GitHub
commit 7896ad656a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 65 additions and 27 deletions

View File

@ -1,6 +1,15 @@
language: ruby
sudo: false
ruby_supported_versions:
- &ruby_2_1 2.1.10
- &ruby_2_2 2.2.10
- &ruby_2_3 2.3.8
- &ruby_2_4 2.4.6
- &ruby_2_5 2.5.5
- &ruby_2_6 2.6.3
- &ruby_head ruby-head
cache:
directories:
- vendor/bundle
@ -25,38 +34,39 @@ env:
- "RAILS_VERSION=master"
rvm:
- 2.1.10
- 2.2.8
- 2.3.5
- 2.4.2
- 2.5.3
- ruby-head
- *ruby_2_1
- *ruby_2_2
- *ruby_2_3
- *ruby_2_4
- *ruby_2_5
- *ruby_2_6
- *ruby_head
branches:
only:
- 0-10-stable
only: 0-10-stable
matrix:
include:
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=4.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=4.2 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=5.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
# See JRuby currently failing on Rails 5+ https://github.com/jruby/activerecord-jdbc-adapter/issues/708
# - { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=5.0 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
# - { rvm: jruby-head, jdk: oraclejdk8, env: "RAILS_VERSION=5.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=4.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=4.2 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=5.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
# See JRuby currently failing on Rails 5+ https://github.com/jruby/activerecord-jdbc-adapter/issues/708
# - { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=5.0 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
# - { rvm: jruby-head, jdk: oraclejdk8, env: "RAILS_VERSION=5.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }
exclude:
- { rvm: 2.1.10, env: RAILS_VERSION=master }
- { rvm: 2.2.8, env: RAILS_VERSION=master }
- { rvm: 2.3.5, env: RAILS_VERSION=master }
- { rvm: 2.4.2, env: RAILS_VERSION=master }
- { rvm: 2.1.10, env: RAILS_VERSION=5.0 }
- { rvm: 2.1.10, env: RAILS_VERSION=5.1 }
- { rvm: 2.1.10, env: RAILS_VERSION=5.2 }
- { rvm: 2.4.2, env: RAILS_VERSION=4.1 }
- { rvm: 2.5.3, env: RAILS_VERSION=4.1 }
- { rvm: ruby-head, env: RAILS_VERSION=4.1 }
- { rvm: *ruby_2_4, env: RAILS_VERSION=master }
- { rvm: *ruby_2_3, env: RAILS_VERSION=master }
- { rvm: *ruby_2_2, env: RAILS_VERSION=master }
- { rvm: *ruby_2_1, env: RAILS_VERSION=master }
- { rvm: *ruby_2_1, env: RAILS_VERSION=5.2 }
- { rvm: *ruby_2_1, env: RAILS_VERSION=5.1 }
- { rvm: *ruby_2_1, env: RAILS_VERSION=5.0 }
- { rvm: *ruby_head, env: RAILS_VERSION=4.1 }
- { rvm: *ruby_2_6, env: RAILS_VERSION=4.1 }
- { rvm: *ruby_2_5, env: RAILS_VERSION=4.1 }
- { rvm: *ruby_2_4, env: RAILS_VERSION=4.1 }
allow_failures:
- rvm: ruby-head
- rvm: *ruby_head
- rvm: jruby-head
# See JRuby currently failing on Rails 5+ https://github.com/jruby/activerecord-jdbc-adapter/issues/708
- { rvm: jruby-9.1.13.0, jdk: oraclejdk8, env: "RAILS_VERSION=5.1 JRUBY_OPTS='--dev -J-Xmx1024M --debug'" }

10
Gemfile
View File

@ -53,7 +53,13 @@ group :bench do
end
group :test do
gem 'sqlite3', '~> 1.3.13', platform: (@windows_platforms + [:ruby])
platforms(*(@windows_platforms + [:ruby])) do
if version == 'master' || version >= '6'
gem 'sqlite3', '~> 1.4'
else
gem 'sqlite3', '~> 1.3.13'
end
end
platforms :jruby do
if version == 'master' || version >= '5'
gem 'activerecord-jdbcsqlite3-adapter', '~> 50'
@ -65,7 +71,7 @@ group :test do
gem 'm', '~> 1.5'
gem 'pry', '>= 0.10'
gem 'byebug', '~> 8.2' if RUBY_VERSION < '2.2'
gem 'pry-byebug', platform: :ruby
gem 'pry-byebug', platforms: :ruby
end
group :development, :test do

View File

@ -1,3 +1,5 @@
# frozen_string_literal: true
require File.expand_path(['..', 'app'].join(File::SEPARATOR), __FILE__)
run Rails.application

View File

@ -0,0 +1,18 @@
# frozen_string_literal: true
if RUBY_VERSION >= '2.6.0'
if Rails::VERSION::MAJOR < 5
module ActionController
class TestResponse < ActionDispatch::TestResponse
def recycle!
# HACK: to avoid MonitorMixin double-initialize error:
@mon_mutex_owner_object_id = nil
@mon_mutex = nil
initialize
end
end
end
else
puts 'Monkeypatch for ActionController::TestResponse no longer needed'
end
end

View File

@ -56,6 +56,8 @@ end
require 'support/rails_app'
require 'support/ruby_2_6_rails_4_2_patch'
# require "rails/test_help"
require 'support/serialization_testing'