GNU bug report logs -
#79257
31.0.50; flymake's ruby-backend test fails with ruby 3.4.5
Previous Next
Reported by: john muhl <jm <at> pub.pink>
Date: Sat, 16 Aug 2025 20:18:01 UTC
Severity: normal
Found in version 31.0.50
Done: Dmitry Gutov <dmitry <at> gutov.dev>
Full log
Message #37 received at 79257 <at> debbugs.gnu.org (full text, mbox):
Dmitry Gutov <dmitry <at> gutov.dev> writes:
> On 26/08/2025 17:08, john muhl wrote:
>> That output is from running ruby directly from the command line
>> not from ruby-flymake-simple. I had different ruby versions
>> installed to compare output and it was easier to do that from
>> outside Emacs and using the full path to the executable rather
>> than fiddling with PATH or messing with symlinks.
>> $ cat test/lisp/progmodes/flymake-resources/test.rb | ruby -w -c
>> -:3: warning: statement not reached
>> ruby: -:5: syntax errors found (SyntaxError)
>> $ cat test/lisp/progmodes/flymake-resources/test.rb |
>> /usr/bin/ruby -w -c
>> -:3: warning: statement not reached
>> /usr/bin/ruby: -:5: syntax errors found (SyntaxError)
>> r-f-s always does “ruby -w -c” like the first example so it
>> doesn’t get an absolute path in the output.
>
> Great! Thanks, I've shortened it.
(Oops. My test runners were offline and I mistook their silence
for success). I ran the tests on Fedora 42 and they’re still
broke. There I find:
$ which ruby
/usr/sbin/ruby
$ cat /usr/sbin/ruby
#!/usr/bin/bash
declare -A INTERPRETER_LIST
INTERPRETER_LIST=([_jruby_]=/usr/bin/jruby [_mri_]=/usr/bin/ruby-mri)
... many more lines
Which as you can see both turns “ruby” into an absolute path and
one that doesn’t actually end with “ruby” so the buffer r-f-s sees
is like this:
-:3: warning: statement not reached
/usr/bin/ruby-mri: -:5: syntax errors found (SyntaxError)
3 | print "not reached"
4 | something
5 | oops
| ^ unexpected end-of-input, assuming it is closing the parent top level context
6 |
| ^ expected an `end` to close the `def` statement
I guess the INTERPRETER_LIST thing means there is even some way to
turn “ruby” into “/usr/bin/jruby” in the r-f-s buffer.
This bug report was last modified 15 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.