-
-
Notifications
You must be signed in to change notification settings - Fork 52
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
May break on Ruby versions below 3.2.0
due to non-evaluatable Symbol#inspect
#359
Comments
Symbol#inspect
Symbol#inspect
@prikha mhh, are you sure this affects ruby 2.7 also, which is the min ruby version requirement for 0.6.12? I'm compiling 2.7 right now (may not compile as its quite EOL and thus may not work against my linux openssl anymore). Even if its broken on 2.7, I'd just accept that given 2.7 is alreday EOL. Conceptually I've got not that much intention to keep my OSS working for EOL rubies, if someone needs to have my OSS to work on an EOL ruby I'm happy to do so, for compensation. |
Context at the time I had 2.7 still in the text matrix, I was round tripping rubyspec (on CI) that includes this kinds of symbols. |
So 2.7 does not compile on a bison symbol error, and I do not actually want to invest time into an EOL ruby. If someone can proof me 2.7 is indeed broken for the 0.6.12 releases, I'm happy to yank these gems and or put a warning into this repos readme. |
@prikha or are you saying its borken on 3.x? Can you give me something that produces an issue on |
Sorry Markus, it may sounded a bit misleading. There is no action point, I just wanted to pinpoint that older versions of #### ./bin/unparser -e ':"8 <="'
Success: (string)
|
Again I didn't mean that you have to do any changes or spend some extra time, you're doing great running this project already, cheers! 🍺 |
The only thing I would to is to update the required ruby version to |
Nah, I need |
Symbol#inspect
3.2.0
due to non-evaluatable Symbol#inspect
@mbj may I ask for a tip - there is a fix for 3.0, 3.1 ☝🏻 but |
@prikha Yeah so mutant needs ruby version based disable. What I'd do right now is to:
Ideally I get mutant to support version specific disables in the future. |
@prikha your PR drops support for non EOL rubies, not acceptable. This needs a ruby version specific branch to add the missing quotes, if any. |
@mbj ok closed the first one, and updated the second one. Mind taking a look 🙏🏻 |
@prikha Sorry travelling right now. I cannot offer my time deterministically ATM. |
@prikha Released as 0.6.13, ty! |
For
String
andSymbol
Unparser uses#inspect
for serialization back to Ruby-code. Which makes sense. But apparently#inspect
hasn't always worked the same way for Symbols across Ruby versions:This bug has been reported in Ruby itself and fixed in >3.2.0
https://bugs.ruby-lang.org/issues/18905
There is nothing to do about it, but might be of interest for those still running older Rubies.
The text was updated successfully, but these errors were encountered: