Граф коммитов

361 Коммитов

Автор SHA1 Сообщение Дата
Takashi Kokubun e3b613a669
Include travis osx timeout
for failures like https://travis-ci.org/ruby/ruby/jobs/564351066
2019-07-27 21:34:35 +09:00
Nobuyoshi Nakada 957a29fc6e
Bump osx_image on Travis CI to xcode11
Also Homebrew is up-to-date and "Updating Homebrew" takes less
than one minute.
2019-07-26 09:21:04 +09:00
Nobuyoshi Nakada 538ba984c8
Split ls line 2019-07-24 21:07:12 +09:00
Nobuyoshi Nakada 96b0d7cd6f
GNU ls -T has different meaning 2019-07-24 21:03:01 +09:00
Takashi Kokubun 65a9d4b0f7
Fix typo [ci skip] 2019-07-24 20:51:29 +09:00
Takashi Kokubun 7b1893c771
Resurrect timestamp debug log
because it failed again https://travis-ci.org/ruby/ruby/jobs/563026412
even after 676df311d9.
2019-07-24 20:50:51 +09:00
Nobuyoshi Nakada 676df311d9
Reset mtime of all files on osx
Often checked out files are in the future on OSX image.
2019-07-23 22:46:03 +09:00
Nobuyoshi Nakada e8d4f0cbc7
Show seconds and in the modified time order
[ci skip]
2019-07-23 17:59:43 +09:00
Nobuyoshi Nakada 0338c44bde
Retry to update Unicode timestamp 2019-07-23 17:39:03 +09:00
Samuel Williams c584dd8460
Move travis coroutine check to cron only. 2019-07-20 19:44:49 +12:00
Takashi Kokubun e7b5b9144a
--debug was not functional either
Even after 19d592dc82, the retry seems not
functional. Let's just add --debug from the beginning because an output
of each step is collapsed and we don't see `make up` output so often.
2019-07-20 15:45:34 +09:00
Samuel Williams b8242bce23
Add `ucontext` and `copy` coroutine implementations to test matrix. 2019-07-18 20:54:54 +12:00
Nobuyoshi Nakada 19d592dc82
Somehow `if` didn't work 2019-07-16 18:41:11 +09:00
Nobuyoshi Nakada 76c6cf2cbc
Print debugging information when updating failed 2019-07-16 17:23:43 +09:00
Takashi Kokubun d1e2650aca
Force-fetch unicode update only when it's needed
nobu said that we could be banned if we aggressively downloaded unicode
file from Travis.
2019-07-15 13:49:15 +09:00
Takashi Kokubun 73346823e1
Try to prevent random build failure on Travis osx 2019-07-15 11:04:16 +09:00
Nobuyoshi Nakada ac2866005b
Add empty depend file if extconf.rb only exists 2019-07-14 03:04:23 +09:00
Nobuyoshi Nakada d0ef5c21fb
Check dependencies on Travis-CI 2019-07-09 23:13:43 +09:00
Kazuhiro NISHIYAMA 07e9a1d998
Debugging failures on x86_64-darwin17 of travis-ci
https://travis-ci.org/ruby/ruby/jobs/553346285
2019-07-03 10:23:01 +09:00
Takashi Kokubun 35cf3e8904
The default branch is changed to master
and now Travis should run on master, instead of trunk.

(this is testing git push to master branch)
2019-07-01 00:14:12 +09:00
Takashi Kokubun 310a42e89c
Explain rubyspec Travis job in job name
Eregon did not want 7b9dd379bf
because people only see Travis job name and don't see .travis.yml.

I believe the new job name is simple and informative enough to explain
why it exists.
2019-06-27 22:32:28 +09:00
Benoit Daloze 2c02d5714e Add a comment explaining what to do if specs fail on Ruby 2.4 2019-06-27 11:57:23 +02:00
Takashi Kokubun 148f50fc78
Update homebrew on Travis
because Travis is crashing like "Error: Your Homebrew is outdated.
Please run `brew update`."
https://travis-ci.org/ruby/ruby/jobs/547485832
2019-06-19 10:09:37 +09:00
Kazuhiro NISHIYAMA 42ac8890ef
Fail test if load ~/.irbrc 2019-06-11 12:33:34 +09:00
Nobuyoshi Nakada c7477c3e1f
Moved Makefile.in under template 2019-06-07 09:09:58 +09:00
Nobuyoshi Nakada 200c840b95
Revert "Moved Makefile.in under template"
This reverts commits:
* 6f9d5fafe0
* bb3c89b643

And remove the dependency of Makefile on Makefile.in
transitionally.
2019-06-07 09:03:25 +09:00
Nobuyoshi Nakada bb3c89b643
Makefile.in moved under template 2019-06-07 08:58:53 +09:00
Takashi Kokubun 468b475e61
.travis.yml: Minor reorder for shortening 2019-05-29 16:09:07 +09:00
Takashi Kokubun 3e54ff67e6
Test BASERUBY: Ruby 1.9.3 on Travis
We have no clear assertion or check of BASERUBY requirement.
I want to make the current situation more explicit.

I'm NOT saying we should support Ruby 1.9.3 here,
but I'm just checking the situation as per 05bc14d81a.

FYI, at this moment Ruby 1.8.7 did not work with this Travis config, like:
https://travis-ci.org/k0kubun/ruby/builds/538459100
2019-05-29 06:45:33 +09:00
Takashi Kokubun d070523e7b
Drop unused Travis config: universal-darwin17
This has been unused since b7f5c573ef.
2019-05-29 05:27:55 +09:00
Takashi Kokubun cf904d9f9f
Avoid doubly building Travis and AppVeyor
but on "master" branch.

For Pull Request, I changed the approach from
d9b338a53f and
277e68825a.
2019-05-28 10:02:31 +09:00
Takashi Kokubun be851692ce
Build trunk branch too to trigger Travis on PR 2019-05-25 07:24:59 -07:00
Kazuhiro NISHIYAMA 2541578096
Add leaked-globals to .travis.yml 2019-05-24 14:32:29 +09:00
Urabe, Shyouhei 8fce83339b disable _FORTIFY_SOURCE
Sanitizers and fortifications do not interface, and there is currently
no plan for them to work together.

See also https://github.com/google/sanitizers/issues/247
2019-05-23 17:24:53 +09:00
Nobuyoshi Nakada 1ccc2eeba0
Pretend to update all Unicode files 2019-05-23 14:18:26 +09:00
Takashi Kokubun 277e68825a
.travis.yml: Test master branch instead of trunk 2019-05-22 08:33:44 -07:00
Nobuyoshi Nakada af1502175b
Touch the timestamp file for Unicode files 2019-05-19 05:45:30 +09:00
Kazuhiro NISHIYAMA e8e415b534
Add workaround for `Permission denied` of `cp`
see r67347
recent log: https://travis-ci.org/ruby/ruby/jobs/529640417
2019-05-08 16:46:18 +09:00
Takashi Kokubun 229e5053a1
Drop -fs from rubyspec to see test results easily
Recently `ruby/spec on Ruby 2.4` seems stable.
2019-05-08 14:59:21 +09:00
Urabe, Shyouhei a116f04cca suppress some UBSAN sanitizers
They are not "undefined".  UBSAN reports them because it thinks
they are "often unintentional".  We see the report rather annoying.
2019-04-29 21:52:44 +09:00
Kazuhiro NISHIYAMA 69cad44fac
Reduce debug output
because I found machine clock problem
see r67347
https://travis-ci.org/ruby/ruby/jobs/525784924
https://travis-ci.community/t/mtime-of-source-codes-are-sometimes-newer-than-build-time-clock-skew/3215
2019-04-29 12:21:50 +09:00
Kazuhiro NISHIYAMA f0776e3203
Add more debug print for random CI failure on osx Travis
and remove `git status` with noisy rvm trace log

see r67347
2019-04-29 01:23:20 +09:00
Takashi Kokubun f40458e9dd
Specify VM_CHECK_MODE explicitly
In my understanding, `VM_CHECK_MODE` should be Integer and I'm not sure
how `-DVM_CHECK_MODE` would behave. To make the matters simple, let me
pass the mode explicitly.
2019-04-28 14:10:09 +09:00
Takashi Kokubun 766293fc49
Ruby 2.3 is EOL 2019-04-28 14:04:48 +09:00
Kazuhiro NISHIYAMA 1cef6a0c0c
Add more debug print for random CI failure on osx Travis
see r67347
2019-04-26 17:47:23 +09:00
Urabe, Shyouhei 0523b02f48 yaml cannot deep-merge arrays
The configuration cannot but be written here and there....
2019-04-26 15:59:40 +09:00
Urabe, Shyouhei 267ac0624d make test needs no gems 2019-04-26 15:59:40 +09:00
Urabe, Shyouhei d700a8a0eb update travis clang
Seems clang-7 has false-positives around memory sanitizer.

This line should not be reported because the memory region is
correctly unpoisoned beforehand:
https://travis-ci.org/ruby/ruby/jobs/524766381

Clang 8 seems to fix it.
2019-04-26 15:59:40 +09:00
Urabe, Shyouhei 3175c54cb6 new travis setting to enable assertions 2019-04-26 15:59:40 +09:00
Urabe, Shyouhei 2a49a47956 sanitizer compiler flag update 2019-04-26 15:59:40 +09:00
Kazuhiro NISHIYAMA c9715eb494
Add more debug print for random CI failure on osx Travis
see r67347
2019-04-25 20:02:49 +09:00
Kazuhiro NISHIYAMA 2642f22050
Add more debug print for random CI failure on osx Travis
see r67347
2019-04-24 18:19:44 +09:00
Takashi Kokubun 82ef172a8c
The step should not fail when isolated tests
do not exist
2019-04-24 01:10:14 +09:00
Takashi Kokubun bc8e54911d
Isolate test_gc_compact for osx Travis
After `GC.compact`, test/shell/test_command_processor.rb seems to be made
unstable on osx Travis like https://travis-ci.org/ruby/ruby/jobs/523487997.

For investigating whether it's impacting that or not, let me try isolating
that for osx Travis for now.
2019-04-24 00:41:24 +09:00
Kazuhiro NISHIYAMA 6013e41a7b Support of Ruby 2.3 has ended
https://www.ruby-lang.org/en/news/2019/03/31/support-of-ruby-2-3-has-ended/
2019-04-22 11:39:08 +09:00
kazu 57f9a700d7 Add more debug print for random CI failure on osx Travis
see r67347

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-14 06:52:37 +00:00
k0kubun d636809c05 Revert "Try to set false explicitly"
This reverts commit a1b5d20068.

Revert "Revert "Skip recompiling tests on i686 Linux""

This reverts commit 7b88a9207b.

Revert "Simplify matrix for debugging"

This reverts commit e85d6c5c5e.

Sorry, these 3 commits were under debugging in
https://github.com/ruby/ruby/pull/2129 but accidentally merged by using
`git svn dcommit` instead of `git push` to the topic branch 🙇

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-14 05:52:14 +00:00
k0kubun e85d6c5c5e Simplify matrix for debugging
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-14 05:48:38 +00:00
k0kubun 9254e1c740 Debug make install instead of make
Actually what has randomly failed was `make install`:
https://travis-ci.org/ruby/ruby/jobs/512988177

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-29 12:55:07 +00:00
k0kubun 1c5fd2bff0 Add debug print for random CI failure on osx Travis
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-27 13:15:02 +00:00
k0kubun f9e5b8d09c Revert "Try disabling Travis cache on darwin"
This reverts commit 6b136a0442.

This does not seem to work:
https://travis-ci.org/ruby/ruby/jobs/507646193#L2478

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-18 12:07:21 +00:00
k0kubun 6b136a0442 Try disabling Travis cache on darwin
to check if it resolves "Permission denied" problem.
https://travis-ci.org/ruby/ruby/jobs/507381339
https://travis-ci.org/ruby/ruby/jobs/507392198

TBH I'm not exactly sure why it happens, but I don't have infinite time
to understand this. It would be appreciated to identify the root cause
and remove `DISABLE_CACHE` again if you're sure your patch fixes the problem.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-17 06:20:01 +00:00
kazu fdc42bf88d Remove deprecated `sudo: false` in .travis.yml
- https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration
- https://docs.travis-ci.com/user/reference/overview/#deprecated-virtualization-environments

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-03-06 03:04:36 +00:00
k0kubun dfdd0e1d08 .travis.yml: allow C99 on pedanticism buid
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-10 07:59:18 +00:00
k0kubun d0045da598 .travis.yml: propagate -w properly
r66692's `export RUBYOPT="-w"` does not seem to work.
Passing `RUBYOPT="-w"` to `make test-all`'s argument works.

Let's try having this for all environments.

(see r66690 for motivation)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-03 06:27:35 +00:00
k0kubun 3bc28f4933 .travis.yml: enforce -w in invoke_ruby as well
actually current test-all does not fail with RUN_OPTS="-w".

and chkbuild seems to use RUBYOPT="-w"
bad4681c30/chkbuild/ruby.rb (L605)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-03 05:15:54 +00:00
k0kubun 5743c9e858 .travis.yml: add a test matrix with -w
currently Travis and AppVeyor does not run tests with test-all,
but RubyCI uses -w and currently all RubyCIs are failing.

It might be better to fail at least one CI in Travis to notice it
earlier.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-03 05:08:43 +00:00
k0kubun 1317fefe53 .travis.yml: increase timeout for test-all
we reached 30min timeout on osx build
https://travis-ci.org/ruby/ruby/jobs/473019623

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-28 15:19:11 +00:00
nobu e23a166995 .travis.yml: ignore non-existent files
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-28 04:28:16 +00:00
nobu 971e1aaf63 .travis.yml: rbconfig.rb is not needed to setup sources
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-28 04:23:39 +00:00
shyouhei bc64df876e delete emacs mode lines [ci skip]
These settings are now covered by .dir-locals.el.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-27 06:12:09 +00:00
naruse 5300cdc0c0 Add ruby_2_6 branch to .travis.yml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-24 23:12:07 +00:00
k0kubun 9cc1120424 .travis.yml: refine explanation of no -j3 on osx [ci skip]
With travis_wait, we may not need -j3 for test-all anymore, but still we
need to avoid hanging on building Ruby somehow.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-23 01:58:33 +00:00
k0kubun 350809c7f2 .travis.yml: wrap setarch with travis_wait
because travis_wait is not found via setarch

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-23 01:35:14 +00:00
k0kubun f432fd6ea5 .travis.yml: try travis_wait instead of -v
Using -v somehow makes test-all on osx stable. Let me check if travis_wait
solves the issue or not.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-23 01:10:06 +00:00
k0kubun a934b66437 .travis.yml: use -v for osx to find a blocking test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-21 16:36:37 +00:00
k0kubun 4e42ebf018 .travis.yml: give up parallel build for osx
Even building ruby seems to hang for unknown reasons.
https://travis-ci.org/ruby/ruby/jobs/471021727

Travis's osx environment is too fragile. Avoid anything dangerous.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-21 16:07:41 +00:00
k0kubun 8af3bd4594 .travis.yml: avoid using -j3 for osx
osx build has failed too often. we don't know why.

To know which test hangs forever, we might want to have hard timeout for
all test case (like 9min, slightly less than no-output timeout) in test-all.
But it's a little hard to implement and I would workaround an unknown
cause somehow.

It's known that -j is harmful for some tests in test-all. Let's try to
remove it first, and if it doesn't work, I'll resurrect -v option to
easily know which test is the culprit.

Slow correctness is much better than fast false-positive.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-21 15:07:18 +00:00
k0kubun f984a40e23 .travis.yml: config_2nd may not exist in ~/
https://travis-ci.org/ruby/ruby/jobs/463317607

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-04 13:15:24 +00:00
shyouhei 493955c692 .travis.yml: cache unicode.org files
Before this changeset (since r58071) we did not download files
from unicode.org but just touch some files.  This is a kind of
hack that people normally don't do at home.

We are caching other files between builds now.  Why not also save
those files downloaded from elsewhere.  This covers more
realistic workload, I guess.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-29 05:26:05 +00:00
shyouhei 2be1cf45c1 .travis.yml: fix YAML parse error
`[` is a meta character in YAML.  `- [` starts an array,
so it should end with `]`; but it was not.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-29 02:47:36 +00:00
nobu 2d0833e101 Try with TZInfo and Timezone gems
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-28 14:08:34 +00:00
shyouhei 7cb0965822 .travis.yaml: unquote
It was probably me, 7 years ago, in r33844, who started overly
quoting YAML strings.  But now, this file grown up 50+ times from
6 lines to more than 300.  It is more annoying than convenient to
quote everything to add backslashes here and there.

Just use quotes only when necessary.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-28 00:49:24 +00:00
nobu 186ff0eb3e .travis.yml: avoid bashism
GCC_FLAGS is not an array and CC is finally passed to configure as
single string.  Pass CC via the environment variable, so it does
not need to be quoted anymore.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 08:39:40 +00:00
nobu b6854df429 .travis.yml: discard config.cache if CC changed
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 08:39:39 +00:00
nobu b6f73c9034 .travis.yml: split commands
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-27 08:39:38 +00:00
shyouhei bf5c84a41d .travis.yml: avoid bashism
We can set environment variables to avoid before_script.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-26 02:46:50 +00:00
shyouhei 213fbd8126 .travis.yml: update MSAN setups [ci skip]
Exclude OpenSSL because we don't plan to debug libssl,
also track origins of uninitialized bits.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-26 02:21:25 +00:00
nobu d13724306e .travis.yml: do not pass unnecessary warnflags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19 09:42:10 +00:00
nobu 4863a93d58 .travis.yml: use dedicated flags
* .travis.yml: use dedicated flags, cflags and others, not to
  override optflags, warnflags and debugflags.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19 06:52:54 +00:00
shyouhei 1a5b274ee2 .travis.yml: -Wno-unknown-warning-option is needed, too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19 05:04:02 +00:00
shyouhei 9f6c0270ca .travis.yml: extra CFLAGS to suppress warnings
When CFLAGS is passed on travis, warnflags seems not working.
Let's add them directly to prevent clang form messing up the logs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-19 03:08:32 +00:00
shyouhei b7f5c573ef .travis.yml: give up mac universal binary [ci skip]
OK, nobody is actively willing to maintain this configuration.  Just
stop annoying people by build failures.  See:
https://travis-ci.org/ruby/ruby/jobs/455377387


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-15 08:33:38 +00:00
shyouhei abf728103f .travis.yml: -j3 [ci skip]
Now that ccache is enabled.  Compilations are made IO heavy, not CPU
bound.  This means parallel jobs beyond CPU count could gain more
speed.  From my experiment, I can conclude the good old "number of
cores plus one" tactics works the best.

The experiment: https://travis-ci.org/shyouhei/ruby/builds/454891855



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-15 07:37:05 +00:00
kazu 42d797d8e9 Revert "Use CC without ccache as MJIT_CC"
because CI failed: https://travis-ci.org/ruby/ruby/builds/455313917

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-15 03:45:34 +00:00
kazu ae68030395 Use CC without ccache as MJIT_CC
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-15 03:01:20 +00:00
shyouhei 7855c23ae8 .travis.yml: enable ccache
Travis has `cache: ccache` feature so let us enable it.  Also, because
`config.cache` is generated during the compilation why not cache that
file for a later use.  [fix GH-2013]

Caveats:

- When something went wrong, cache entries can be deleted from
  https://travis-ci.org/ruby/ruby/caches (requires login).

- See `ccache(1)` manual page for the new environment variables.

- `ccache` thinks two compilations are not identical if they produce
  different diagnostics.  The -fno-diagnostics-color option is to
  prevent such cache missihts only because TTY is present / absent at
  the compilation time.

- In this changeset two "ccache --show-stats" invocations are inserted
  before and after the compilation to measure cache hit rates etc.
  Will revisit their outputs once the cache is warmed up.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-15 02:25:25 +00:00
shyouhei c2ef40d26a .travis.yml: specify git -q
We are not interested in git(1) output.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 04:50:59 +00:00
shyouhei eea3536e67 .travis.yml: add empty lines for readability [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 00:43:45 +00:00
k0kubun 3bd8eb6849 test/excludes/../TestWEBrickUtils.rb: exclude unstable test
for now. This seems to get unstable after r65691.

test/excludes/_travis/osx: renamed from test/excludes/_travis because
it's only for osx builds.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 23:06:49 +00:00
k0kubun 1ec3039a16 .travis.yml: stop allowing osx failure
it seems to be more stable than the timing we upgraded travis image.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 21:36:58 +00:00
shyouhei 59f1a69aab .travis.tml: reintroduce exclusions for osx
Sorry, seen the failures again.  Was a wrong idea to delete
the --exclude.

See https://travis-ci.org/ruby/ruby/jobs/454329443#L2233


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 07:19:12 +00:00
shyouhei b5b19a7c47 .travis.yml: eliminate remaining --color=never [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 07:17:02 +00:00
shyouhei 3b257773a5 .travis.yml: specify --tty=no
To reduce the amount of output, prefer --tty=no instead of
--color=never.  This option not only disables color output but also
kill some tty-related features, like spinners.  Travis limits its
output by the physical size of the log, not by the number of lines.
This change should make more room for new logs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:55:43 +00:00
shyouhei 598a4bfb0c .travis.yml: delete test-all options for osx
While we are experiencing build failures, no hangs had been
seen for a while.  Also it seems the excluded tests now pass.
I think it's time to delete this line.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:33:10 +00:00
shyouhei bad98efefe .travis.yml: allow osx failures [experimental]
Tests are failing due to network timeouts.  Temporary allow failrues for them.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 02:58:41 +00:00
shyouhei 48fe401253 .travis.yml: update VM images
xeinal for Linux and xcode 10.1 for osx.  Also deleted few outdated
lines that are no longer necessary.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 02:03:33 +00:00
shyouhei 2dae9b36f9 .travis.yml: resurrect -j on mac
The "osx build randomly fails with `-j`" happens on make -j test-all.
Should be safe to do make -j all.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 08:18:35 +00:00
k0kubun 7b9dd379bf .travis.yml: simplify travis matrix description
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-08 05:34:36 +00:00
shyouhei 391811c1ce .travis.yml: UNALIGNED_WORD_ACCESS=0 for UBSAN
Unaligned word access warnings generated by UBSAN are often
treated well already, depending on this macro.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-07 05:26:11 +00:00
shyouhei 1a83433f3d .travis.yml: FIBER_USE_NATIVE=0
I remember this configuration unveiled several bugs before.
Better check it occasionally.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-06 03:06:33 +00:00
shyouhei ee7af44257 .travis.yml: allow UBSAN to fail
Forgot this line, sorry! 


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-06 01:45:09 +00:00
shyouhei 19adb8082a .travis.yml: add cron-only builds
Inspired by [GH-1984], let us add some tests that run only
once a day.  These configurations are either slow to compile
or slow to run.  But I think they are worth done occasionally.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-06 01:36:20 +00:00
shyouhei 9bc48f1d05 .travis.yml: mandate -ansi check
Seems it is failing to compile right now; make it mandatory
so that other devs can be aware of it.

Will revert this change once the source code gets stable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-31 00:53:43 +00:00
eregon cb9f2066b5 Run specs on latest Ruby 2.3, which includes taint fixes
* The 2.3 alias in RVM seems to resolve to 2.3.7.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 11:42:21 +00:00
k0kubun 970410c63c .travis.yml: investigate silent death of mspec
It looks like mspec worker may immediately die on Linux as well.
https://travis-ci.org/ruby/ruby/jobs/447018758

Dropping -j and add -fs to know which test dies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-27 09:57:30 +00:00
k0kubun 3675920c1e .travis.yml: run the slowest jobs first
to shorten time taken for finishing overall builds.

appveyor.yml: comment the same intention in AppVeyor as well

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-23 14:10:12 +00:00
k0kubun c258b5cf53 .travis.yml: let osx build print verbose output
because it may hang with no output like this:
https://travis-ci.org/ruby/ruby/jobs/445101860

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-23 13:58:01 +00:00
shyouhei 7fbf01348b .travis.yml: give up -O0
This configuration timed out.
https://travis-ci.org/ruby/ruby/jobs/444523912

Try speed things up.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-22 03:59:48 +00:00
nobu a87e4d9208 `--excludes` option must be in TEST_ALL_TESTOPTS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 03:52:20 +00:00
nobu 741066fc2a Quote `$(TESTSDIR)`
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 03:42:46 +00:00
nobu bf26f847fa Exclude CI platform specific failures by --excludes option
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 03:38:52 +00:00
k0kubun 7fe170442b .travis.yml: mspec -j is unstable
https://travis-ci.org/ruby/ruby/jobs/444232677

Instead of that, add -fs to know problematic test case when failed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 01:27:43 +00:00
k0kubun fd8275d083 .travis.yml: use --job-status=replace
-v is too long, and "--color=never --job-status=normal" is too verbose.
Trying --job-status=replace to make Travis log easier to read.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 01:25:20 +00:00
k0kubun 90369a8325 .travis.yml: debug problematic test case on osx
osx build is stucking somewhere. We want to debug that.
https://travis-ci.org/ruby/ruby/jobs/444059226

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-21 00:18:32 +00:00
nobu 07ae480dc4 .travis.yml: separate apt addons for i686-linux
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 15:24:42 +00:00
k0kubun 2baf760cc2 test/lib/jit_support.rb: fire test_jit everywhere
That was a workaround to make rubyci green for a short term after the
MJIT merge. As we've done many portability fixes for MJIT, let's try
running test_jit on all rubyci platforms.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 14:03:37 +00:00
k0kubun 5fa4df0e74 .travis.yml: try promoting osx to non-allow_failures
somehow it gets stable there days...

Later, we may be able to add wrapper to apply timeout appropriately
and dump threads, in case that it stucks. It's not super easy to write
it, so this commit just tries to enable osx for now.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 11:30:32 +00:00
shyouhei 0acb7ce1a8 .travis.yml: delete duplicated --disable-install-doc [ci skip]
The flag was already specified inside of before_script



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 07:36:31 +00:00
shyouhei f98d3ce0f2 .travis.yml: name each builds [ci-skip]
Just cosmetic update.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 07:32:28 +00:00
shyouhei 03e0c10a81 .travis.yml: add i686-linux tests
This is a better-than-nothing compilation check that compiles
32bit binary on a 64bit VM.

Commented out are universal.i386-darwin17 biulds, which I think
are in very low priority.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-19 07:26:48 +00:00
shyouhei 8183cd2f1d .travis.yml: add -pedantic build (2nd try)
Now that we have allow_failures, why not add configurations
that are prone to fail.  The first thing I want to add is
$CC -ansi -pedantic, which spots lots of bugs on my local
machine.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 08:58:18 +00:00
shyouhei a3fd252e32 revert r65151, because the other tests were broken.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 08:39:15 +00:00
shyouhei 907ef23925 .travis.yml: add -pedantic build
Now that we have allow_failures, why not add configurations
that are prone to fail.  The first thing I want to add is
$CC -ansi -pedantic, which spots lots of bugs on my local
machine.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 08:33:52 +00:00
nobu 27fe4b6fa1 .travis.yml: no additional apt packages for spec/ruby [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 02:32:25 +00:00
shyouhei b0dd7902b8 .travis.yml: should escape spaces
workarounds for https://github.com/travis-ci/travis-ci/issues/1444


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 02:22:26 +00:00
shyouhei 8b2f7b82a8 .travis.yml: just use env
You don't have to use `before_install` to introduce
new environment variables; that is to be done using
`env` command.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 01:56:30 +00:00
nobu 9950fff2fa .travis.yml: no PR in spec/ruby [ci skip]
* .travis.yml (before_script): spec/ruby has been incorporated
  already, no pull-requests to merge.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 01:52:50 +00:00
shyouhei e5299989f3 .travis.yml: fix typo in configure arguments
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 01:34:45 +00:00
nobu c3982a1aa6 .travis.yml: split before_install into the matrix
* .travis.yml (before_install): split shell commands into the
  matrix per OSs, so that the commands will appear in the logs
  separately.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-18 01:10:56 +00:00
k0kubun 7943c0e5e6 .travis.yml: revert r65131 too
because it succeeded https://travis-ci.org/ruby/ruby/jobs/442733840.

It looks that it randomly succeeds. Let's just leave it and see how
stable it is, starting from `allow_failures` because it hasn't hanged
only once so far.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-17 15:42:34 +00:00
k0kubun 7b916dd4de revert r65124 and try non-parallel test-all on osx
OpenSSL error was fixed but r65124 hanged too
https://travis-ci.org/ruby/ruby/jobs/442727035.

So it seems to be an independent issue.
Let me try removing -j.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-17 15:13:36 +00:00
k0kubun 9304c0522d .travis.yml: try openssl stable version
macOS build is handing on OpenSSL::SSL::SSLError https://travis-ci.org/ruby/ruby/jobs/442706479
Now 1.0.2p is stable version https://formulae.brew.sh/formula/openssl,
so let me try that version to make CI green

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-17 14:50:35 +00:00
shyouhei 8340078cc8 .travis.yml: enhance build matrix
add OS=osx compiler=clang build matrix so that we can make sure
things are built smoothly on that platform.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-17 14:09:24 +00:00
k0kubun 274cd92782 .travis.yml: try `addons.apt.config.retries: true` as well
This is suggested by Travis
https://github.com/travis-ci/travis-ci/issues/9112#issuecomment-376305909

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-15 10:03:57 +00:00
k0kubun 63cebc4da6 .travis.yml: try `addons.apt.update: true` for gcc-8
because gcc-8 setup is super unstable like this
https://travis-ci.org/ruby/ruby/jobs/441528813

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-15 09:51:32 +00:00
kazu 4baf0757e4 ruby_2_2 branch has ended
https://www.ruby-lang.org/en/news/2018/06/20/support-of-ruby-2-2-has-ended/
[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-19 12:39:44 +00:00
nobu db4c91be27 .travis.yml: run ruby/spec version guards check in parallel
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-12 12:14:45 +00:00
nobu f677ba8871 deduce versioned tools from CC
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-12 07:01:59 +00:00
nobu 7785f57974 .travis.yml: separate ruby/spec on old version
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64668 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-09-09 15:46:51 +00:00