diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e3917ee..32942ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,8 +14,10 @@ jobs: - Gemfile - gemfiles/rails_7_0_propshaft.gemfile - gemfiles/rails_7_1_propshaft.gemfile + - gemfiles/rails_main_propshaft.gemfile - gemfiles/rails_7_0_sprockets.gemfile - gemfiles/rails_7_1_sprockets.gemfile + - gemfiles/rails_main_sprockets.gemfile continue-on-error: [ false ] name: ${{ format('Tests (Ruby {0}, {1})', matrix.ruby-version, matrix.gemfile) }} @@ -30,7 +32,7 @@ jobs: - name: Remove Gemfile lock run: | - rm $BUNDLE_GEMFILE.lock + rm -f $BUNDLE_GEMFILE.lock - name: Install Ruby uses: ruby/setup-ruby@v1 diff --git a/.gitignore b/.gitignore index 4cca7d1..35f574d 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,6 @@ /test/dummy/public/assets .byebug_history *.gem + +# Ignore Gemfile.lock files for Rails main branch. +/gemfiles/rails_main*.gemfile.lock diff --git a/Appraisals b/Appraisals index 3ad0b8c..dd6b0c7 100644 --- a/Appraisals +++ b/Appraisals @@ -17,3 +17,13 @@ appraise "rails_7_1_propshaft" do gem "rails", "~> 7.1.0" gem "propshaft" end + +appraise "rails_main_sprockets" do + gem "rails", github: "rails/rails", branch: "main" + gem "sprockets-rails" +end + +appraise "rails_main_propshaft" do + gem "rails", github: "rails/rails", branch: "main" + gem "propshaft" +end diff --git a/gemfiles/rails_main_propshaft.gemfile b/gemfiles/rails_main_propshaft.gemfile new file mode 100644 index 0000000..c69d95a --- /dev/null +++ b/gemfiles/rails_main_propshaft.gemfile @@ -0,0 +1,23 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rails", branch: "main", git: "https://github.com/rails/rails.git" +gem "sqlite3" +gem "propshaft" + +group :development do + gem "appraisal" +end + +group :test do + gem "turbo-rails" + gem "stimulus-rails" + gem "byebug" + gem "rexml" + gem "capybara" + gem "selenium-webdriver" + gem "webdrivers" +end + +gemspec path: "../" diff --git a/gemfiles/rails_main_sprockets.gemfile b/gemfiles/rails_main_sprockets.gemfile new file mode 100644 index 0000000..eb0afbe --- /dev/null +++ b/gemfiles/rails_main_sprockets.gemfile @@ -0,0 +1,23 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "rails", branch: "main", git: "https://github.com/rails/rails.git" +gem "sqlite3" +gem "sprockets-rails" + +group :development do + gem "appraisal" +end + +group :test do + gem "turbo-rails" + gem "stimulus-rails" + gem "byebug" + gem "rexml" + gem "capybara" + gem "selenium-webdriver" + gem "webdrivers" +end + +gemspec path: "../" diff --git a/test/installer_test.rb b/test/installer_test.rb index 3ad776b..9a907e8 100644 --- a/test/installer_test.rb +++ b/test/installer_test.rb @@ -46,6 +46,10 @@ def with_new_rails_app gemfile = File.read("Gemfile") gemfile.gsub!(/^gem "importmap-rails".*/, "") gemfile << %(gem "importmap-rails", path: #{File.expand_path("..", __dir__).inspect}\n) + if Rails::VERSION::PRE == "alpha" + gemfile.gsub!(/^gem "rails".*/, "") + gemfile << %(gem "rails", path: #{Gem.loaded_specs["rails"].full_gem_path.inspect}\n) + end File.write("Gemfile", gemfile) run_command("bundle", "install")