Project

General

Profile

Actions

Bug #19999

closed

Backport: .travis.yml and fixed commits

Added by jaruga (Jun Aruga) 6 months ago. Updated 3 months ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:115338]

Description

This is a backport suggestion to make Travis CI stable on the Ruby stable branches ruby_3_2 and etc.

Travis CI for Ruby master branch became stable recently with arm64, ppc64le, s390x and arm32 cases. All the CI cases are running without allow_failures option. And more importantly, I simplified the .travis.yml to maintain it easily without sacrificing performance. So, I think it may be a good time to backport the Travis CI configuration file .travis.yml without some commits to fix some issues.
https://app.travis-ci.com/github/ruby/ruby/builds/267166336

I can see ruby_3_2 and ruby_3_1 branches on the Travis CI page below. There are no ruby_3_0 and ruby_27 branches there. I am not sure how the branches are used.
https://app.travis-ci.com/github/ruby/ruby/branches

But it's beneficial to fix at least Travis CI for ruby_3_2 branch to save the Travis infra resource.

Seeing the ruby_3_2 log, the ppc64le is already timeout after running maximum 50 minutes.
https://app.travis-ci.com/github/ruby/ruby/builds/267156055
https://app.travis-ci.com/github/ruby/ruby/jobs/613043898#L2325

[1/2] TestFiberQueue#test_pop_with_timeout_and_value = 0.00 s
[2/2] TestFiberQueue#test_pop_with_timeout====[ 540 seconds still running ]====
====[ 1080 seconds still running ]====
====[ 1620 seconds still running ]====
====[ 2160 seconds still running ]====

First you can make the tests fail rather than stucking by the commit below.
https://github.com/ruby/ruby/commit/3eaae72855b23158e2148566bb8a7667bfb395cb

As this stucking issue happened with the combination of the optflags=-O1 on ppc64le, I think you avoid the issue by porting the .travis.yml from the master branch where the optflags=-O1 is not used in ppc64le. As there are many commits modifying .travis.yml on the master branch, maybe it's easy to copy the entire .travis.yml file into the backported branches.

Actions #1

Updated by jaruga (Jun Aruga) 6 months ago

  • Status changed from Open to Closed
Actions #2

Updated by jaruga (Jun Aruga) 6 months ago

  • Description updated (diff)

Updated by nagachika (Tomoyuki Chikanaga) 6 months ago

  • Backport changed from 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: REQUIRED to 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: DONE

ruby_3_2 4b16259d1d6f408a88ac2c8d04ed78e87bdeda9f merged revision(s) 9682275b5493439334fb3933ce2da3b95271eb1c.

Updated by nagachika (Tomoyuki Chikanaga) 6 months ago

Thank you for your suggestion. I copied the whole .travis.yml from current master branch at 4b16259d1d6f408a88ac2c8d04ed78e87bdeda9f.

Updated by nagachika (Tomoyuki Chikanaga) 6 months ago

Hmm, it comes into some timeout on pc64le-linux and arm32-linux.
I will revert it at this moment.

Actions #6

Updated by nagachika (Tomoyuki Chikanaga) 6 months ago

  • Backport changed from 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: DONE to 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: REQUIRED

Updated by jaruga (Jun Aruga) 6 months ago

nagachika (Tomoyuki Chikanaga) wrote in #note-5:

Hmm, it comes into some timeout on pc64le-linux and arm32-linux.
I will revert it at this moment.

I guess your failing build for ruby_3_2 is below.
https://app.travis-ci.com/github/ruby/ruby/builds/267334752

You can try Travis CI on your forced repository or by sending a PR to the ruby_3_2 branch to check if the Travis CI passes rather than pushing the branch directly.

ppc64le
https://app.travis-ci.com/github/ruby/ruby/jobs/613516155#L2031

  1) Failure:
TestRDocGeneratorJsonIndex#test_generate [/home/travis/build/ruby/ruby/test/rdoc/test_rdoc_generator_json_index.rb:108]:
.js files should be the same timestamp of original

This is a known issue https://github.com/ruby/rdoc/issues/1048. You can backport the commits (674db715f5a141891a66e67004ca138696d3b0ad and) 1f1b9b0942ec12dde1af8000f8cb84692904fccc on the master branch to fix (pend) it.

arm32
https://app.travis-ci.com/github/ruby/ruby/jobs/613516157#L2700

  1) Failure:
TestReadline#test_interrupt_in_other_thread [/home/travis/build/ruby/ruby/test/readline/test_readline.rb:587]:
Unknown failure with exit status #<Process::Status: pid 27602 exit 1>
Log: ** START **Readline::VERSION is 8.1.
#<Thread:0xf498ca34 /tmp/interrupt_in_other_thread20231118-19558-rymsoj:9 run> terminated with exception (report_on_exception is true):
/tmp/interrupt_in_other_thread20231118-19558-rymsoj:13:in `readline': stack level too deep (SystemStackError)
	from /tmp/interrupt_in_other_thread20231118-19558-rymsoj:13:in `block in <main>'
/tmp/interrupt_in_other_thread20231118-19558-rymsoj:13:in `readline': stack level too deep (SystemStackError)
	from /tmp/interrupt_in_other_thread20231118-19558-rymsoj:13:in `block in <main>'

It seems that the test/readline/test_readline.rb is gone with the commit 59fd67fc3d405e529e038172e769ff20a8fb5535 .

And the related issue ticket is https://bugs.ruby-lang.org/issues/18393 .

Updated by jaruga (Jun Aruga) 4 months ago

  • Backport changed from 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: REQUIRED to 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED

@nagachika (Tomoyuki Chikanaga) I sent the PR to the ruby_3_2 branch to pass Travis CI with the latest config file that exists on master and ruby_3_3 branches. You can do cherry-pick the commits or merge the PR.
https://github.com/ruby/ruby/pull/9410

I also want to see Travis to pass on ruby_3_1, ruby_3_0 branches too. I can assist by sending the PRs to the branches.

Updated by jaruga (Jun Aruga) 3 months ago

  • Backport changed from 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED to 3.0: REQUIRED, 3.1: REQUIRED, 3.2: DONE

jaruga (Jun Aruga) wrote in #note-8:

@nagachika (Tomoyuki Chikanaga) I sent the PR to the ruby_3_2 branch to pass Travis CI with the latest config file that exists on master and ruby_3_3 branches. You can do cherry-pick the commits or merge the PR.
https://github.com/ruby/ruby/pull/9410

The PR above to the ruby_3_2 branch was merged now.
Here is the Travis log on ruby_3_2 as a reference.
https://app.travis-ci.com/github/ruby/ruby/builds/268642167

So, I would change the backport status to DONE. Thank you!

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0