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

53312 Коммитов

Автор SHA1 Сообщение Дата
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
svn ebdf9f0758 * 2018-11-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 21:04:59 +00:00
k0kubun 8945eeda8f Fix syntax on Binding.irb documentation [ci skip]
There was incorrect backticks (`) instead of plus signs to denote method
references, and a typo.

[Fix GH-2016]

From: Olivier Lacan <hi@olivierlacan.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 21:04:57 +00:00
nobu ed778c2a89 rational.c (nurat_div): use the dedicated function nurat_to_f
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 14:12:30 +00:00
svn 33758ded08 * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 09:53:13 +00:00
shyouhei a6e887153e numeric.c: avoid division by zero
same as r65642.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 09:53:11 +00:00
k0kubun ed42b0102d test_ftp.rb: loosen another timeout requirement
for Travis osx.
https://travis-ci.org/ruby/ruby/jobs/454864155

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 08:21:05 +00:00
k0kubun 2a477e0e44 test_ftp.rb: loosen timeout for Travis osx
https://travis-ci.org/ruby/ruby/jobs/454798071

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 07:44:30 +00:00
k0kubun 158562dabb test_gem_stream_ui.rb: loosen timeout for --jit-wait
https://app.wercker.com/ruby/ruby/runs/mjit-test2/5beba9be183106002852f8a6?step=5bebc1a087436a0006f94a22

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 07:38:05 +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
nobu f34e8ff672 Add RbConfig.fire_update!
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 04:42:14 +00:00
svn 7a823be8d0 * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 03:52:31 +00:00
normal cc07dc7cf2 thread.c (rb_thread_fd_select): favor rb_thread_* when no FDs
select() is a crap API for even sleeping on sigwait_fd, so favor
the native_sleep-based functions when there are no FDs, instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 03:52:28 +00:00
nobu cb592b3713 defs/known_errors.def: update on macOS Mojave Xcode 10.1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 02:27:17 +00:00
nobu 2c989a6ff4 Makefile.in: update-known-errors
* Makefile.in (update-known-errors): update defs/known_errors.def
  by using errno(1).

* defs/known_errors.def: sort alphabetically for merger.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-14 02:27:16 +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
svn 6716bca67b * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 23:06:51 +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
svn 6876140d37 * 2018-11-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 21:36:59 +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
nobu 27f4058f92 Makefile.in: `$` for shell needs to be escaped in Makefile
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 14:56:49 +00:00
kazu b93023f8ff Remove duplicated assignment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 14:35:19 +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
marcandre dde0e30c2d Pathname: Have #relative_path_from accept String argument.
[Fix GH-1975]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 06:20:06 +00:00
k0kubun 5ad8e42bef test_function.rb: loosen delta boundary
On osx build https://travis-ci.org/ruby/ruby/jobs/454309945,

```
1) Failure:
Fiddle::TestFunction#test_nogvl_poll [/Users/travis/build/ruby/ruby/test/fiddle/test_function.rb:95]:
slept amount of time.
Expected |200 - 322| (122) to be <= 100.
```

but it succeeds on my macOS machine as is. So it seems that the boundary is
just too strict and prone to random failure by overload.

To make osx Travis build usable, let me loosen the delta requirement.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 06:17:57 +00:00
nobu c878cf5030 Moved REVISION_FORCE before uncommon.mk
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 06:16:56 +00:00
k0kubun 5f376ce0a7 appveyor.yml: run memory-exchausting test separately
r65690 had no impact
https://ci.appveyor.com/project/ruby/ruby/builds/20253561/job/p5u235m8xx85t9o5.
Gave up to solve the issue inside the test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 05:46:41 +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
nobu 3d5be5f86a date_core.c: use static ID variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:51:46 +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
nobu 93f91eb68f date_core.c: obey to the allocation framework
* ext/date/date_core.c (date_initialize): separate from
  date_s_civil and obey the allocation framework.

* ext/date/date_core.c (datetime_initialize): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:29:32 +00:00
nobu 0fa71d44d5 date_core.c: respect COMPLEX_DAT bit
* ext/date/date_core.c (d_lite_marshal_load): respect COMPLEX_DAT
  bit in the pre-allocated structure.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:29:31 +00:00
nobu 8655d0735f date_core.c: keep COMPLEX_DAT bit
* ext/date/date_core.c (d_lite_initialize_copy): do not change
  COMPLEX_DAT bit, as the structure does not change.  initialize
  member-wise instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:29:30 +00:00
nobu 53ad55e4ca date_core.c: set/reset COMPLEX_DAT
* ext/date/date_core.c (set_to_simple, set_to_complex): always
  set/reset COMPLEX_DAT bit, which is very tightly bound to the
  structure.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 04:29:29 +00:00
nobu 45295303ac gmake.mk: force updating revision.h
Since `.revision.time` recipe needs `$(BASERUBY)`, it should not
try to get updated unconditionally, or tarballs fail to build on
environments where BASERUBY is not available.

All developers who build frequently use GNU make anyway, don't
you?

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 03:24:18 +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 9d9e1a4d65 addr2line.c: more on suppressing warnings
See also: https://travis-ci.org/ruby/ruby/jobs/454269559#L1898


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 02:19:49 +00:00
k0kubun ceab9f363c common.mk: force updating revision.h on each commit
by making .revision.time PHONY. Prior to this commit, RUBY_DESCRIPTION
has been updated only when version.h (or tool/file2lastrev.rb) is updated.

.revision.time (REVISION_H) target internally has IFCHANGE to update
revision.h. So it doesn't touch revision.h when it's not updated,
and thus it's safe to run every time.

defs/gmake.mk: drop obsoleted reference to REVISION_FORCE

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 02:06:51 +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
k0kubun 601f4b6f67 test_array.rb: try to avoid NoMemoryError on AppVeyor
We somehow hit NoMemoryError twice on that place.
https://ci.appveyor.com/project/ruby/ruby/builds/20224556/job/hlgt963e0cgjbj3c
https://ci.appveyor.com/project/ruby/ruby/builds/20250696/job/gm559bu2jbd6youm

Let me try firing GC here.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 01:35:09 +00:00
svn 2a70978df8 * 2018-11-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 00:40:57 +00:00
shyouhei 7f6691ae77 suppress integer overflow warnings
* random.c: annotate rb_hash_start with NO_SANITIZE (seed.key.hash + h
  overflows and that seems intentional)
* bignum.c: avoid (size_t)--
* cont.c: ditto
* util.c: ditto
* vm_insnhelper.c: ditto



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-13 00:40:52 +00:00
nobu 803dcea481 Revert r65681 which had a race condition issue
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 10:19:04 +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
shyouhei 3208db7fb3 vm_insnhelper.c: avoid nevative sp
space_size can be zero here, under the following script.  We would
better bail out before bptr calculation.

% ./miniruby --dump=i -e '* = nil'
== disasm: #<ISeq:<main>@-e:1 (1,0)-(1,7)> (catch: FALSE)
0000 putnil                                                           (   1)[Li]
0001 dup
0002 expandarray                  0, 0
0005 leave


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 08:14:09 +00:00
k0kubun 5a10e835ae erb/new_spec.rb: fix spec failure by other specs
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 07:58:29 +00:00
nobu 8ad336b5c5 Adopt [Misc #15294]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12 07:32:21 +00:00