[#98098] [Ruby master Feature#16824] Follow RubyGems naming conventions for the stdlib — shannonskipper@...

Issue #16824 has been reported by shan (Shannon Skipper).

14 messages 2020/05/01

[#98147] [Ruby master Feature#16832] Use #name rather than #inspect to build "uninitialized constant" error messages — jean.boussier@...

Issue #16832 has been reported by byroot (Jean Boussier).

20 messages 2020/05/06

[#98174] [Ruby master Bug#16837] Can we make Ruby 3.0 as fast as Ruby 2.7 with the new assertions? — takashikkbn@...

Issue #16837 has been reported by k0kubun (Takashi Kokubun).

10 messages 2020/05/07

[#98241] [Ruby master Bug#16845] Building Ruby with old existing system Ruby results in make error with ./tool/file2lastrev.rb — erik@...

Issue #16845 has been reported by ErikSwan (Erik Swan).

7 messages 2020/05/09

[#98256] [Ruby master Feature#16847] Cache instruction sequences by default — jean.boussier@...

Issue #16847 has been reported by byroot (Jean Boussier).

16 messages 2020/05/11

[#98257] [Ruby master Feature#16848] Allow callables in $LOAD_PATH — jean.boussier@...

Issue #16848 has been reported by byroot (Jean Boussier).

27 messages 2020/05/11

[#98318] [Ruby master Bug#16853] calling bla(hash, **kw) with a string-based hash passes the strings into **kw (worked < 2.7) — sylvain.joyeux@...4x.org

Issue #16853 has been reported by sylvain.joyeux (Sylvain Joyeux).

12 messages 2020/05/13

[#98355] [Ruby master Bug#16889] TracePoint.enable { ... } also activates the TracePoint for other threads, even outside the block — eregontp@...

Issue #16889 has been reported by Eregon (Benoit Daloze).

16 messages 2020/05/14

[#98363] [Ruby master Feature#16891] Restore Positional Argument to Keyword Conversion — merch-redmine@...

Issue #16891 has been reported by jeremyevans0 (Jeremy Evans).

23 messages 2020/05/14

[#98371] [Ruby master Feature#16894] Integer division for Ruby 3 — andrew@...

Issue #16894 has been reported by ankane (Andrew Kane).

18 messages 2020/05/15

[#98391] [Ruby master Bug#16896] MakeMakefile methods should be private — eregontp@...

Issue #16896 has been reported by Eregon (Benoit Daloze).

10 messages 2020/05/15

[#98396] [Ruby master Feature#16897] Can a Ruby 3.0 compatible general purpose memoizer be written in such a way that it matches Ruby 2 performance? — sam.saffron@...

Issue #16897 has been reported by sam.saffron (Sam Saffron).

25 messages 2020/05/16

[#98453] [Ruby master Bug#16904] rubygems: psych: superclass mismatch for class Mark (TypeError) — jaruga@...

Issue #16904 has been reported by jaruga (Jun Aruga).

18 messages 2020/05/20

[#98486] [Ruby master Bug#16908] Strange behaviour of Hash#shift when used with `default_proc`. — samuel@...

Issue #16908 has been reported by ioquatix (Samuel Williams).

14 messages 2020/05/23

[#98569] [Ruby master Bug#16921] s390x: ramdom test failures for timeout or segmentation fault — jaruga@...

Issue #16921 has been reported by jaruga (Jun Aruga).

9 messages 2020/05/29

[#98599] [Ruby master Bug#16926] Kernel#require does not load a feature twice when $LOAD_PATH has been modified spec fails only on 2.7 — eregontp@...

Issue #16926 has been reported by Eregon (Benoit Daloze).

12 messages 2020/05/31

[ruby-core:98242] [Ruby master Bug#16845] Building Ruby with system Ruby 1.8.7 results in make failing due to syntax error in ./tool/file2lastrev.rb

From: erik@...
Date: 2020-05-09 23:11:29 UTC
List: ruby-core #98242
Issue #16845 has been updated by ErikSwan (Erik Swan).


From looking through the ChangeLog, it seems there have been a few changes regarding whether `file2lastrev.rb` needs to be run with `BASERUBY` or not, and what version `BASERUBY` is expected to be:

```
doc/ChangeLog-2.3.0
34-Thu Dec 24 15:01:38 2015  sorah (Shota Fukumori)  <her@sorah.jp>
35-
36: * tool/file2lastrev.rb: Fix ArgumentError to work on Ruby 1.8.7.
37-

doc/ChangeLog-2.1.0
1400-Thu Nov 28 13:56:05 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1401-
1402:   * common.mk (Doxyfile): tool/file2lastrev.rb needs running with
1403-     BASERUBY since r43617.  [ruby-dev:47823] [Bug #9169]
1404-

doc/ChangeLog-1.9.3
16418-Thu Apr 15 21:54:39 2010  Tanaka Akira  <akr@fsij.org>
16419-
16420:  * tool/file2lastrev.rb: use backtick for ruby 1.8.
16421-
16422-Thu Apr 15 21:13:29 2010  NARUSE, Yui  <naruse@ruby-lang.org>
16423-
16424:  * tool/file2lastrev.rb: this should run with ruby 1.8.
16425-

ChangeLog
39876-commit 6b5e712361cca8559ed66d5c1106e888c5971d39
39877-  Author: Takashi Kokubun <takashikkbn@gmail.com>
39878-  Date:   2019-05-29 08:22:02 +0900
39879-
39880-    Make tool/vcs.rb compliant to BASERUBY
39881-
39882-    People seem to consider BASERUBY is either 1.8 or 1.9 now. Since this
39883:    file may be executed by BASERUBY from file2lastrev.rb, I think we should
39884-    not rely on Ruby 2.0 in this file for now.
39885-
39886-commit e1f62d7f0e33de81a194f26a2c57e14e38d9de52
39887-  Author: Takashi Kokubun <takashikkbn@gmail.com>
39888-  Date:   2019-05-29 07:46:44 +0900
39889-
39890:    Check the result of file2lastrev.rb if HAVE_BASERUBY
39891-
39892-    is yes.
39893-
39894:    We ignored the failure status of file2lastrev.rb on 73da429c36c, but it
39895-    was for an environment without BASERUBY. I think we should skip running
39896:    file2lastrev.rb on HAVE_BASERUBY=no, and run it and check the status on
39897-    HAVE_BASERUBY=yes.
39898-
39899:    Otherwise we may have an ignored arbitrary error of file2lastrev.rb on
39900-    HAVE_BASERUBY=yes environment.
39901-
```

----------------------------------------
Bug #16845: Building Ruby with system Ruby 1.8.7 results in make failing due to syntax error in ./tool/file2lastrev.rb
https://bugs.ruby-lang.org/issues/16845#change-85480

* Author: ErikSwan (Erik Swan)
* Status: Open
* Priority: Normal
* ruby -v: 2.7.1
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
Hello,

I am trying to build Ruby 2.7.1 from source on a RHEL 6.9 system, which has ruby 1.8.7 as the existing system Ruby. When I run `make`, I get an error about a syntax error in `./tool/file2lastrev.rb`. I am guessing this is because `file2lastrev.rb` uses Ruby syntax that was introduced in a newer Ruby version, and is not valid in 1.8.7, resulting in a runtime error.

Here is a snippet of the error:
```
./tool/file2lastrev.rb:10:in `require': /tmp/eswan/ruby-2.7.1/tool/lib/vcs.rb:471: syntax error, unexpected ',', expecting ']' (SyntaxError)
      last = cmd_read_at(srcdir, [[*gitcmd, 'rev-parse', ref]]).rstrip
                                           ^
/tmp/eswan/ruby-2.7.1/tool/lib/vcs.rb:471: syntax error, unexpected ',', expecting kEND
```

# Steps to reproduce:
1. Obtain a RHEL 6.8 or 6.9 system (this is also reproducible on 6.8, and might be reproducible on all 6.x)
2. Confirm `/usr/bin/ruby --version` reports Ruby 1.8.7.
3. Download and extract the Ruby 2.7.1 source archive.
4. Run `./configure`
5. Run `./make`

# Expected behavior:
`make` should run correctly without any errors.

# Actual behavior:
The Makefile errors out when trying to run `./tool/file2lastrev.rb` with the existing system Ruby.

A shell log showing steps to reproduce and the output of `configure` and `make` is attached.

---Files--------------------------------
ruby_build_error.log (573 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread