Skip to content

Commit 777bee2

Browse files
justin808claude
andauthored
Skip version validation when package.json doesn't exist during setup (#1913)
This fixes an error that occurs when running `rake shakapacker:install` on a fresh Rails application. The validation was introduced in commit 0d87ea7 and runs during Rails initialization via an `after_initialize` hook. The problem: `shakapacker:install` needs to load the Rails environment before it can create package.json, but the version validation runs during environment loading and fails because package.json doesn't exist yet. The fix: Skip validation if package.json doesn't exist yet. This allows installation tasks to complete successfully while still validating versions on normal Rails application startup. This issue was reported in CI logs where `rake shakapacker:install` would fail with "package.json file not found" error. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <[email protected]>
1 parent 024b0e2 commit 777bee2

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

lib/react_on_rails/engine.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,13 @@ module ReactOnRails
66
class Engine < ::Rails::Engine
77
# Validate package versions and compatibility on Rails startup
88
# This ensures the application fails fast if versions don't match or packages are misconfigured
9+
# Skip validation during installation tasks (e.g., shakapacker:install)
910
initializer "react_on_rails.validate_version_and_package_compatibility" do
1011
config.after_initialize do
12+
# Skip validation if package.json doesn't exist yet (during initial setup)
13+
package_json = VersionChecker::NodePackageVersion.package_json_path
14+
next unless File.exist?(package_json)
15+
1116
Rails.logger.info "[React on Rails] Validating package version and compatibility..."
1217
VersionChecker.build.validate_version_and_package_compatibility!
1318
Rails.logger.info "[React on Rails] Package validation successful"

0 commit comments

Comments
 (0)