-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Drop debugging support in preference of validated builds against Ruby 2.7.x -> 3.2.x #292
Drop debugging support in preference of validated builds against Ruby 2.7.x -> 3.2.x #292
Conversation
42d7ed3
to
37ca86a
Compare
7a92d80
to
893e44e
Compare
@chadlwilson Thank you for contributing to gauge-ruby. Your pull request has been labeled as a release candidate 🎉🎉. Merging this PR will trigger a release. Please bump up the version as part of this PR.Instructions to bump the version can found at CONTRIBUTING.md If the CONTRIBUTING.md file does not exist or does not include instructions about bumping up the version, please looks previous commits in git history to see what changes need to be done. |
debase and ruby-debug-ide don't seem to install reliably on Ruby 3.1 Linux for reasons that are hard to get to the bottom of. Maybe this is better to be added back later, perhaps via ruby/debug Signed-off-by: Chad Wilson <[email protected]>
893e44e
to
27f8e9e
Compare
Hey @zabil and @sriv - what do you think about this? The intent here was to bring confidence that things 'work' on newer Ruby versions, especially with the parser/unparser dependencies which have looseish couplings to support for only certain ruby code versions. The current setup (including ruby-debug-ide and debase) generally does bundle install ok in later Ruby versions (I have validated up to and including ruby 3.1 with GoCD func tests via Linux x64, Linux arm64 and Darwin arm64) but no idea if the debugging actually works, as I don't use VS Code or this functionality. I also don't really know why the gems won't install successfully via the GH actions builds here although there are reported weirdnesses an problems with various debase versions across archs in the wider community. I don't really want to drop debugging support, but it would be good to validate the plugin on later rubies. Right now ruby 2.7 is the only version the isntalls work on via GH actions and that is officially EOL. (Probably somewhat maintained on older enterprisey Linux distros but not on Darwin/windows) |
Makes sense to me. |
Perhaps I wasn't so clear - does it make sense even at the cost of dropping the debugging support due to these unexplained failures installing the debase source gems? I'm not so confident on that trade-off. I feel to fix those it'd involve either reworking debugging support using the more modern ruby/debug (which is a bit beyond my capability/interest) or digging much deeper into why the gem installs succeed in some OSes/setups but not others - possibly due to missing dev libs/headers and such. If someone has the necessary ruby insight I could create another branch/PR to show the failures in GH actions for someone to take a look. |
Hey @chadlwilson What I meant is that it's beneficial to support newer Ruby versions if that means sacrificing the debug functionality, until someone picks up and fixes it. An option could be creating a separate plugin tailored specifically for Ruby 3+ users. This would allow us to inform them about any non-functional elements while still maintaining backwards compatibility. I understand that it might require extra effort, but in the long run, it could potentially be less disruptive. I'm also interested in hearing @sriv's thoughts on this approach. |
Yeah, possibly. Although if thinking of that direction in preference to dropping debugging, it would probably make more sense to first dig deeper to understand the nature of the problems are on Ruby 3.
Maybe I'll spend a bit more time digging into that and trying to replicate. It might just be some dev tools need to be |
I am ok to ditch the debugger support for ruby altogether. I don't know if it is being used by anyone, I would be surprised if there are many takers. I would prioritize modern ruby over debase support. (debase is an indirect dependency IIRC brought in by |
In any case, I wouldn't want a separate plugin for ruby3. If we want backward compatibility check, we could check for |
OK, thanks both. Let me timebox some experiments. Might be something that can be worked around by installing build toolchains ( |
I give up: https://github.com/getgauge/gauge-ruby/actions/runs/5463424559/jobs/9944094508 Tried various combinations of Might related to the Given Ruby 2.7 is EOL, and the need to have confidence with gem installs on 3.x I think we should just drop debugging for now and I'll raise a "help wanted" issue for someone to re-add if they are keen. Even if I can get the gems to install, seems unlikely it actually works with confidence given the issues reported against ruby-debug/ruby-debug-ide#217 ruby-debug/debase#94 |
27f8e9e
to
ced3a0b
Compare
Signed-off-by: Chad Wilson <[email protected]>
ced3a0b
to
80581be
Compare
Signed-off-by: Chad Wilson <[email protected]>
Test against more than Ruby 2.7, along us to roll things forward more easily.
Removes debugging as it fails on Ruby 3+. Not really sure the cause, but ruby-debug/debase#94 and
No source for ruby-3.x.x-pxxx
errors preventing the gems from installing in some cases. Might relate to the way GH Actions sets up Ruby on ubuntu and windows, however I can also replicate some problems via containers and various issues on MacOS with certain debase and ruby combinations.See #294 for adding debugging back if folks have interest.