Conversation
d8b6709 to
f0c630a
Compare
There was a problem hiding this comment.
Pull request overview
This pull request aims to update the ractor-wrapper gem for Ruby 4.0, introducing significant API changes and new features. However, Ruby 4.0 does not exist yet (the latest stable version is Ruby 3.3.x as of January 2025), which makes this update premature and will prevent the gem from being used in any current Ruby version.
Key changes include:
- Updating Ruby version requirement from 3.0 to 4.0 (nonexistent version)
- Adding
frozen_string_literal: truepragmas to all Ruby files - Renaming methods (
threads→thread_count,logging→logging_enabled,recovered_object→recover_object,move_return→move_result) - Adding new block execution features with
execute_block_in_ractoroption - Introducing new Ruby 4.0 APIs like
Ractor::Port,Ractor.shareable_proc, andRactor#value - Updating test infrastructure and dependencies
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| ractor-wrapper.gemspec | Updated Ruby version requirement to 4.0 (critical: version doesn't exist), improved description |
| lib/ractor/wrapper/version.rb | Added frozen_string_literal pragma, removed redundant .freeze on VERSION |
| lib/ractor/wrapper.rb | Major refactoring with API renames, new block execution features, bug fix in cleanup_phase needed (line 685-686), spelling error on line 576 |
| lib/ractor-wrapper.rb | Added frozen_string_literal pragma |
| test/test_wrapper.rb | Added frozen_string_literal pragma, updated tests for new API, added block execution tests |
| test/test_example.rb | New test file for README and SQLite3 examples |
| test/helper.rb | Added frozen_string_literal pragma, renamed fail → whoops, added helper methods |
| test/data/numbers.db | New SQLite database file for tests |
| README.md | Updated documentation for Ruby 4.0 APIs and new features, future copyright year (2026) |
| LICENSE.md | Updated copyright year to 2021-2026 (includes future year) |
| Gemfile | Updated dependencies to possibly nonexistent versions (minitest 6.0, potentially faraday 2.14, sqlite3 2.9) |
| .toys/ci.rb | New CI tool configuration |
| .toys/.toys.rb | Removed inline CI tool definition, added frozen_string_literal pragma |
| .rubocop.yml | Extensive rubocop configuration updates targeting Ruby 4.0 |
| .github/workflows/ci.yml | Updated CI workflow to use Ruby 4.0 (will fail) |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
No description provided.