Conversation
|
@joker1007 My fix to rb-sys to make it compatible with Ruby 4.1 (HEAD) was merged, and now the CI passes! Just needed to target rb_sys in git. |
|
The CI failure on Ruby 3.3 was a fluke network error checking out a dependency from git. |
There was a problem hiding this comment.
Pull request overview
Updates tree_stump’s dependencies and project metadata to track tree-sitter 0.26 / LANGUAGE_VERSION 15 and enable builds against Ruby HEAD (4.1.0+1), including CI coverage for ruby-head.
Changes:
- Bump
rb_sysgem dependency to~> 0.9.124. - Switch Rust extension dependencies to
rb-sys 0.9.124and a pinned git revision ofmagnus. - Document platform compatibility and add
ruby-headto the CI matrix.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
tree_stump.gemspec |
Updates runtime dependency on rb_sys to 0.9.124. |
ext/tree_stump/Cargo.toml |
Uses a pinned git magnus rev and bumps rb-sys crate version. |
Gemfile |
Overrides rb_sys to track upstream git main (Ruby HEAD support). |
Cargo.lock |
Lockfile updates reflecting new Rust dependency sources/versions. |
README.md |
Clarifies MRI focus and adds a platform compatibility section. |
.github/workflows/rspec.yml |
Adds ruby-head as an experimental CI target. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@joker1007 Since Ruby 3.2 goes EOL in just over a month, and will subsequently be dropped by rubygems/bundler, I've split out the Ruby 3.2 into a discrete workflow. This will make it easy to drop support for either version - just delete the workflow and update the readme. Also, if you want we could make the EOL builds experimental, since support can only be "best effort", since the ruby is EOL, but I haven't done that yet. |
|
@joker1007 Turns out we can't support Ruby 3.1 at all because magnus no longer supports it. So we have no choice but to increment the minimum required ruby version in the gemspec to 3.2. |
# Conflicts: # .github/workflows/rspec.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- magnus: Now uses rev = "b77ee863fc4311627658841f09e98f9c0374eeae" instead of branch main - rb-sys: Now uses rev = "5e2978121cd809d33fd1aeca54c685ebe6dc01de" instead of branch main # Conflicts: # Gemfile
…t source - both tree_stump and Magnus resolve to the exact same crates.io package - Cargo unifies them into a single dependency (with the feature enabled) - no linking conflict
- It was already implicitly no longer supported - We can't support Ruby versions that magnus doesn't support
|
@joker1007 Now it's fully baked. :) |
| [dependencies] | ||
| magnus = { version = "0.8.2" } | ||
| rb-sys = { version = "0.9.119", features = ["stable-api-compiled-fallback"] } | ||
| magnus = { git = "https://github.com/matsadler/magnus.git", rev = "b77ee863fc4311627658841f09e98f9c0374eeae" } |
There was a problem hiding this comment.
Thank you very much!
There's one thing that concerns me.
As a personal policy, I prefer not to specify particular Git commits for dependencies used in actual builds.
If possible, I would prefer to wait for the next version of magnus to be released.
There was a problem hiding this comment.
Yeah, no worries. We can leave this open until then. Nothing urgent here - other than an all green build. 📦
There was a problem hiding this comment.
@matsadler & @gjtorikian - any idea when there will be a next release of magnus?
This PR is tracking changes in my fork, where I am working on:
4.1.0+1(current HEAD)Refs:
Includes (on top of):