Repository navigation
Modernize: Rails 7.1–8.1, Ruby 3.2–4.0, Propshaft, browser specs - #52
Merged
Merged
Conversation
- Require Ruby 3.2+, Rails 7.1+, Administrate 1.0+ and test the full Ruby 3.2–4.0 × Rails 7.1–8.1 matrix in CI (Rails 7.x on Sprockets, Rails 8 on Propshaft) - Drop the sprockets-rails dependency; only register the script for precompilation when Sprockets is present - Wrap script.js in an IIFE so it doesn't define globals like `init` - Include helpers via ActiveSupport.on_load(:action_view) - Load namespace controllers with Zeitwerk's eager_load_dir instead of require_dependency - Keep the button helper's default `button` class when other options such as `confirm:` are given - Replace the Rails 6.1 dummy app with a minimal version-agnostic one - Add Cuprite system specs for the batch action UI and make helper specs markup-order independent - Move dev dependencies to the Gemfile, stop committing Gemfile.lock, clean up gemspec metadata and packaged files - Add Dependabot config, ignore built gems, bump .tool-versions to 4.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the gem up to date with current Ruby, Rails and asset pipelines.
Support and CI
rails >= 5.2claim was never tested, and Administrate 1.0 itself needs Rails 6.0+.RAILS_VERSIONin the Gemfile, andGemfile.lockis no longer committed, since one lockfile can't cover the matrix..github/dependabot.ymlwith grouped monthly updates for bundler and GitHub Actions.Library changes
sprockets-railsdependency is gone. The script is only registered for precompilation when Sprockets is present; Propshaft serves engine assets automatically.script.jsis wrapped in an IIFE. Before, its top-levelconst initwould throw a SyntaxError if any other script on the page declaredinit.ActiveSupport.on_load(:action_view)instead ofActionView::Base.send :include, so ActionView isn't loaded early.Rails.autoloaders.main.eager_load_dirinstead ofrequire_dependency.confirm:withoutclass:no longer drops the defaultbuttonclass (it renderedclass="btn ").Tests
main.button_tomarkup differs slightly between Rails versions.Gemspec
required_ruby_version, metadata (source_code_uri,changelog_uri,bug_tracker_uri,rubygems_mfa_required), a fixed homepage URL, and an explicit file list. The built gem contains onlyapp/,config/,lib/, README, CHANGELOG and LICENSE, and builds without warnings.Verified locally