Skip to content

Conversation

@takaokouji
Copy link
Collaborator

Add full Rails 8.0 compatibility while maintaining backward compatibility with Rails 6.1, 7.0, 7.1, and 7.2.

Key Changes:

  1. SQLite3 Dependency Update:

    • Rails 8.0 requires sqlite3 >= 2.1 (was ~> 1.4)
    • Add conditional gem requirement in Gemfile:
      • Rails 8.x: sqlite3 >= 2.1
      • Rails 6-7: sqlite3 ~> 1.4
    • Use bundle lock --add-platform ruby for cross-platform support
  2. Schema Format Configuration:

    • Rails 8.0 removed :none as valid schema_format option
    • Add version-conditional logic in test_helper.rb:
      • Rails 8.0+: Use :ruby format
      • Rails < 8.0: Use :none format (disables schema dumps)

Files Modified:

  • Gemfile: Added Rails 8.x sqlite3 version condition
  • test/test_helper.rb: Conditional schema_format based on Rails version

Test Results:

  • Rails 6.1.7.10: ✅ 674/674 tests passing
  • Rails 7.0.10: ✅ 674/674 tests passing
  • Rails 7.1.6: ✅ 674/674 tests passing
  • Rails 7.2.3: ✅ 674/674 tests passing
  • Rails 8.0.4: ✅ 674/674 tests passing

All backward compatibility maintained across Rails 6.1-8.0.

🤖 Generated with Claude Code

All Submissions:

  • I've checked to ensure there aren't other open Pull Requests for the same update/change.
  • I've submitted a ticket for my issue if one did not already exist.
  • My submission passes all tests. (Please run the full test suite locally to cut down on noise from travis failures.)
  • I've used Github auto-closing keywords in the commit message or the description.
  • I've added/updated tests for this change.

New Feature Submissions:

  • I've submitted an issue that describes this feature, and received the go ahead from the maintainers.
  • My submission includes new tests.
  • My submission maintains compliance with JSON:API.

Bug fixes and Changes to Core Features:

  • I've included an explanation of what the changes do and why I'd like you to include them.
  • I've provided test(s) that fails without the change.

Test Plan:

Reviewer Checklist:

  • Maintains compliance with JSON:API
  • Adequate test coverage exists to prevent regressions

Add full Rails 8.0 compatibility while maintaining backward compatibility
with Rails 6.1, 7.0, 7.1, and 7.2.

Key Changes:

1. SQLite3 Dependency Update:
   - Rails 8.0 requires sqlite3 >= 2.1 (was ~> 1.4)
   - Add conditional gem requirement in Gemfile:
     * Rails 8.x: sqlite3 >= 2.1
     * Rails 6-7: sqlite3 ~> 1.4
   - Use bundle lock --add-platform ruby for cross-platform support

2. Schema Format Configuration:
   - Rails 8.0 removed :none as valid schema_format option
   - Add version-conditional logic in test_helper.rb:
     * Rails 8.0+: Use :ruby format
     * Rails < 8.0: Use :none format (disables schema dumps)

Files Modified:
- Gemfile: Added Rails 8.x sqlite3 version condition
- test/test_helper.rb: Conditional schema_format based on Rails version

Test Results:
- Rails 6.1.7.10: ✅ 674/674 tests passing
- Rails 7.0.10: ✅ 674/674 tests passing
- Rails 7.1.6: ✅ 674/674 tests passing
- Rails 7.2.3: ✅ 674/674 tests passing
- Rails 8.0.4: ✅ 674/674 tests passing

All backward compatibility maintained across Rails 6.1-8.0.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant