diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 882f24ee8..7cb8012e4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -58,6 +58,11 @@ jobs: orm: active_record adapter: sqlite3 asset: sprockets + - ruby: "3.3" + gemfile: gemfiles/rails_8.0.gemfile + orm: active_record + adapter: sqlite3 + asset: sprockets - ruby: "3.2" gemfile: gemfiles/composite_primary_keys.gemfile orm: active_record diff --git a/Appraisals b/Appraisals index ca42f1938..112766ead 100644 --- a/Appraisals +++ b/Appraisals @@ -56,6 +56,10 @@ appraise 'rails-7.0' do gem 'importmap-rails', require: false group :active_record do + platforms :ruby, :mswin, :mingw, :x64_mingw do + gem 'sqlite3', '~> 1.3' + end + platforms :jruby do gem 'activerecord-jdbcmysql-adapter', '~> 70.0' gem 'activerecord-jdbcpostgresql-adapter', '~> 70.0' @@ -78,6 +82,12 @@ appraise 'rails-7.1' do gem 'rails', '~> 7.1.0' gem 'importmap-rails', require: false + group :active_record do + platforms :ruby, :mswin, :mingw, :x64_mingw do + gem 'sqlite3', '~> 1.3' + end + end + group :mongoid do gem 'cancancan-mongoid' gem 'carrierwave-mongoid', '>= 0.6.3', require: 'carrierwave/mongoid' @@ -94,10 +104,19 @@ appraise 'rails-7.2' do gem 'importmap-rails', require: false end +appraise 'rails-8.0' do + gem 'rails', '~> 8.0.0' + gem 'importmap-rails', require: false +end + appraise 'composite_primary_keys' do gem 'rails', '~> 7.0.0' group :active_record do gem 'composite_primary_keys' + + platforms :ruby, :mswin, :mingw, :x64_mingw do + gem 'sqlite3', '~> 1.3' + end end end diff --git a/Gemfile b/Gemfile index 904083a02..0965e94b4 100644 --- a/Gemfile +++ b/Gemfile @@ -49,7 +49,7 @@ group :active_record do platforms :ruby, :mswin, :mingw, :x64_mingw do gem 'mysql2', '>= 0.3.14' gem 'pg', '>= 1.0.0' - gem 'sqlite3', '~> 1.3' + gem 'sqlite3', '>= 1.3.0' end end diff --git a/gemfiles/rails_6.0.gemfile b/gemfiles/rails_6.0.gemfile index b57ca868d..75954b32e 100644 --- a/gemfiles/rails_6.0.gemfile +++ b/gemfiles/rails_6.0.gemfile @@ -48,7 +48,7 @@ group :active_record do platforms :ruby, :mswin, :mingw, :x64_mingw do gem "mysql2", ">= 0.3.14" gem "pg", ">= 1.0.0" - gem "sqlite3", "~> 1.3" + gem "sqlite3", ">= 1.3.0" end platforms :jruby do diff --git a/gemfiles/rails_6.1.gemfile b/gemfiles/rails_6.1.gemfile index 8c4b1c44c..cdf08f0c8 100644 --- a/gemfiles/rails_6.1.gemfile +++ b/gemfiles/rails_6.1.gemfile @@ -47,7 +47,7 @@ group :active_record do platforms :ruby, :mswin, :mingw, :x64_mingw do gem "mysql2", ">= 0.3.14" gem "pg", ">= 1.0.0" - gem "sqlite3", "~> 1.3" + gem "sqlite3", ">= 1.3.0" end platforms :jruby do diff --git a/gemfiles/rails_7.2.gemfile b/gemfiles/rails_7.2.gemfile index f0edccff8..94dc6a1fa 100644 --- a/gemfiles/rails_7.2.gemfile +++ b/gemfiles/rails_7.2.gemfile @@ -48,7 +48,7 @@ group :active_record do platforms :ruby, :mswin, :mingw, :x64_mingw do gem "mysql2", ">= 0.3.14" gem "pg", ">= 1.0.0" - gem "sqlite3", "~> 1.3" + gem "sqlite3", ">= 1.3.0" end end diff --git a/gemfiles/rails_8.0.gemfile b/gemfiles/rails_8.0.gemfile new file mode 100644 index 000000000..873be4570 --- /dev/null +++ b/gemfiles/rails_8.0.gemfile @@ -0,0 +1,55 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "appraisal", ">= 2.0" +gem "devise", "~> 4.7" +gem "net-smtp", require: false +gem "rails", "~> 8.0.0" +gem "sassc-rails", "~> 2.1" +gem "turbo-rails" +gem "vite_rails", require: false +gem "webpacker", require: false +gem "webrick" +gem "importmap-rails", require: false + +group :development, :test do + gem "pry", ">= 0.9" +end + +group :test do + gem "cancancan", "~> 3.0" + gem "carrierwave", [">= 2.0.0.rc", "< 3"] + gem "cuprite", "!= 0.15.1" + gem "database_cleaner-active_record", ">= 2.0", require: false + gem "dragonfly", "~> 1.0" + gem "factory_bot", ">= 4.2", "!= 6.4.5" + gem "generator_spec", ">= 0.8" + gem "kt-paperclip" + gem "launchy", ">= 2.2" + gem "mini_magick", ">= 3.4" + gem "pundit" + gem "rack-cache", require: "rack/cache" + gem "rspec-expectations", "!= 3.8.3" + gem "rspec-rails", ">= 4.0.0.beta2" + gem "rspec-retry" + gem "rubocop", ["~> 1.20", "!= 1.22.2"], require: false + gem "rubocop-performance", require: false + gem "shrine", "~> 3.0" + gem "simplecov", ">= 0.9", require: false + gem "simplecov-lcov", require: false + gem "timecop", ">= 0.5" + gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby] +end + +group :active_record do + gem "paper_trail", ">= 12.0" + + platforms :ruby, :mswin, :mingw, :x64_mingw do + gem "mysql2", ">= 0.3.14" + gem "pg", ">= 1.0.0" + gem "sqlite3", ">= 1.3.0" + end +end + +gemspec path: "../" diff --git a/rails_admin.gemspec b/rails_admin.gemspec index 1905c682f..27bc72b3d 100644 --- a/rails_admin.gemspec +++ b/rails_admin.gemspec @@ -8,7 +8,7 @@ Gem::Specification.new do |spec| spec.add_dependency 'csv' spec.add_dependency 'kaminari', '>= 0.14', '< 2.0' spec.add_dependency 'nested_form', '~> 0.3' - spec.add_dependency 'rails', ['>= 6.0', '< 8'] + spec.add_dependency 'rails', ['>= 6.0', '< 9'] spec.add_dependency 'turbo-rails', ['>= 1.0', '< 3'] spec.add_development_dependency 'bundler', '>= 1.0' spec.authors = ['Erik Michaels-Ober', 'Bogdan Gaza', 'Petteri Kaapa', 'Benoit Benezech', 'Mitsuhiro Shibuya'] diff --git a/spec/dummy_app/Gemfile b/spec/dummy_app/Gemfile index 5a16903ea..f8c3ec1df 100644 --- a/spec/dummy_app/Gemfile +++ b/spec/dummy_app/Gemfile @@ -14,7 +14,7 @@ group :active_record do platforms :ruby, :mswin, :mingw do gem 'mysql2', '>= 0.3.14' gem 'pg', '>= 0.14' - gem 'sqlite3', '~> 1.3' + gem 'sqlite3', '>= 1.3.0' end gem 'paper_trail', '>= 12.0' @@ -26,7 +26,7 @@ gem 'devise', '>= 3.2' gem 'dragonfly', '~> 1.0' gem 'importmap-rails', require: false gem 'mini_magick', '>= 3.4' -gem 'mlb', '>= 0.7', github: 'mshibuya/mlb', branch: 'ruby-3' +gem 'mlb', '>= 0.7' gem 'paperclip', '>= 3.4' gem 'rails_admin', path: '../../' gem 'shrine', '~> 3.0' diff --git a/spec/dummy_app/Gemfile.rails6 b/spec/dummy_app/Gemfile.rails6 deleted file mode 100644 index 260b684c1..000000000 --- a/spec/dummy_app/Gemfile.rails6 +++ /dev/null @@ -1,49 +0,0 @@ -source 'https://rubygems.org' - -gem 'rails', '>= 6.0.0' -gem 'webpacker', require: false - -group :active_record do - platforms :jruby do - gem 'activerecord-jdbcmysql-adapter', '>= 1.2' - gem 'activerecord-jdbcpostgresql-adapter', '>= 1.2' - gem 'activerecord-jdbcsqlite3-adapter', '>= 1.2' - end - - platforms :ruby, :mswin, :mingw do - gem 'mysql2', '>= 0.3.14' - gem 'pg', '>= 0.14' - gem 'sqlite3', '>= 1.3.0' - end - - gem 'paper_trail', '>= 12.0' -end - -group :mongoid do - gem 'carrierwave-mongoid', '>= 0.6.3', require: 'carrierwave/mongoid' - gem 'kaminari-mongoid' - gem 'mongoid', ['>= 6.0', '< 8'] - gem 'mongoid-paperclip', '>= 0.0.8', require: 'mongoid_paperclip' - gem 'shrine-mongoid', '~> 1.0' -end - -gem 'carrierwave', '>= 2.0.0.rc', '< 3.0' -gem 'devise', '>= 3.2' -gem 'dragonfly', '~> 1.0' -gem 'mini_magick', '>= 3.4' -gem 'mlb', '>= 0.7', github: 'mshibuya/mlb', branch: 'ruby-3' -gem 'paperclip', '>= 3.4' -gem 'rails_admin', path: '../../' -gem 'shrine', '~> 3.0' -gem 'webrick' - -# Gems used only for assets and not required -# in production environments by default. -group :assets do - gem 'sassc-rails', '~> 2.1' - - # See https://github.com/sstephenson/execjs#readme for more supported runtimes - # gem 'therubyracer' - - gem 'uglifier', '>= 1.3' -end diff --git a/spec/rails_admin/config/fields/types/json_spec.rb b/spec/rails_admin/config/fields/types/json_spec.rb index a1e039582..a749d9302 100644 --- a/spec/rails_admin/config/fields/types/json_spec.rb +++ b/spec/rails_admin/config/fields/types/json_spec.rb @@ -24,7 +24,7 @@ it 'returns correct value for empty json' do allow(object).to receive(:json_field) { {} } actual = field.with(bindings).formatted_value - expect(actual).to match(/{\n+}/) + expect(actual).to match(/{\n*}/) end it 'retuns correct value' do @@ -72,7 +72,7 @@ it 'returns correct value for empty json' do allow(object).to receive(:json_field) { {} } actual = field.with(bindings).export_value - expect(actual).to match(/{\n+}/) + expect(actual).to match(/{\n*}/) end it 'returns correct value' do