| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
* time.c (time_to_r): get rid canonicalize and uncanonicalize
one-denominator rational, by rb_time_unmagnify_to_rational.
|
| |
|
| |
|
|
|
|
|
|
| |
Inspired by 346aa557b31fe96760e505d30da26eb7a846bac9
Closes: https://github.com/ruby/ruby/pull/2321
|
|
|
|
| |
This reverts commit 1ee88c51b3c319b74b69540e111e4a1c24833cad.
|
| |
|
|
|
|
|
|
|
|
| |
RUBY_PLATFORM on JRuby is always "java", so it will not reflect
the host operating system. This regex appears to be the consensus
way to detect Windows based on a search of Ruby code on Github:
https://github.com/search?q=%2Fmswin%7Cmsys%7Cmingw%7Ccygwin%7Cbccwin%7Cwince%7Cemc%2F&type=Code
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Closes: https://github.com/ruby/ruby/pull/1790
|
|
|
|
| |
Closes: https://github.com/ruby/ruby/pull/1425
|
|
|
|
|
|
| |
version dependent
Fixes [Bug #6785]
|
|
|
|
| |
Fixes [Bug #6726]
|
|
|
|
|
|
|
|
| |
The last time we committed this, we were asking the VM to write to the
ep. But VM assertions check if the ENV data is the correct type, which
if it's a T_MOVED pointer it's not the correct type. So the vm
assertions would fail. This time we just directly write to it from the
GC and that bypasses the vm assertion checks.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
as it failed https://travis-ci.org/ruby/ruby/jobs/567942969, unlike my
fork CI.
This just rollbacks a minor change in
798474deaf10dbea70c02724b5acf4487bbed660.
|
|
|
|
|
|
|
|
|
|
| |
They have been too unstable.
Revert "Extend sleep before sending USR1 in TestProcess"
This reverts commit aaf69a8ba866193863a7eafe5c6044844bd71bc3.
Revert "Extend sleep before sending USR1 in TestProcess"
This reverts commit 076f3fcf11a061394d3d5f8c671512df1e983023.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
because Travis team does not do it for us:
https://github.com/travis-ci/travis-build/pull/1712
The retried part has failed often even in one day:
https://travis-ci.org/ruby/ruby/jobs/567802384
https://travis-ci.org/ruby/ruby/jobs/567802388
https://travis-ci.org/ruby/ruby/jobs/567695879
https://travis-ci.org/ruby/ruby/jobs/567666931
For doing it easily, this also changes major aliases to
compiler-specific ones, because partially updating `before_install`
logic using `env` key was too hard and we needed to directly write
`before_install` for each package set. As a bonus of it, it may also
skip installing unnecessary packages when just `os: linux` is needed.
I'll revert this if this patch does not contribute to stabilize CI.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
JRUBY_VERSION
* RUBY_ENGINE and RUBY_ENGINE_VERSION are defined on every modern Ruby.
* There is no such constant as TRUFFLERUBY_VERSION or RBX_VERSION.
https://github.com/rubygems/rubygems/commit/431d0aefdd
|
|
|
|
|
|
|
| |
* If settings constants fail, show that exception instead of getting
another one due to variables being unset and hiding the real cause.
https://github.com/rubygems/rubygems/commit/f38cd67874
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sometimes it happens to me that my local tests start failing because I
pull some file removals or renames into my local copy, and those are
still present on my last copy of pkg/. In those cases, the test about
`rake package` will fail with something like the following:
````
Failure:
TestRakePackage#test_builds_ok [/home/deivid/Code/rubygems/test/rubygems/test_rake_package.rb:13]:
Expected `rake package` to work, but got errors:
```
cd pkg/rubygems-update-3.1.0.pre1
WARNING: See http://guides.rubygems.org/specification-reference/ for help
rake aborted!
Gem::InvalidSpecificationException: ["test/rubygems/test_rake_package.rb"] are not files
Tasks: TOP => package => gem => pkg/rubygems-update-3.1.0.pre1.gem
(See full trace by running task with --trace)
```
If you have added or removed files, make sure you run `rake update_manifest` to update the `Manifest.txt` accordingly.
Expected: true
Actual: false
````
So, make sure, package is always built from scratch.
https://github.com/rubygems/rubygems/commit/4e2cc9eb26
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/83eced0b39
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/5c3158d975
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/b0588a87b1
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/5a1d3d618d
|
|
|
|
|
| |
instead of casting a pointer to int.
Follow up of 39622232c7542d062f79277a11f6b8b6b6cfd994.
|
|
|
|
| |
Sometimes causes timeout error on mswin CI
|
| |
|
| |
|
|
|
|
| |
The regexp should be expected to match the error message.
|
| |
|
|
|
|
| |
So EnvUtil does not depends on test/unit.
|
|
|
|
|
| |
leaf is true by default. Other insns are not specifying it explicitly.
Also the comment describing why it was not leaf is outdated.
|
|
|
|
|
|
| |
Python's range stop right before n, which means factL never returns the correct result.
Closes: https://github.com/ruby/ruby/pull/1982
|
| |
|
|
|
|
|
|
|
| |
It caused a significant benchmark fall. Some assertions seem to
use expressions with side-effects which cannot be inlined.
This reverts commit b452c03a14f943ae25338547bd680fce67399d85.
|
|
|
|
|
|
|
| |
just like 076f3fcf11a061394d3d5f8c671512df1e983023.
This test also hanged on Travis osx
https://travis-ci.org/ruby/ruby/jobs/567547060
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 7a75baa6e294473f02da512c99f7ef1f76b2d83c.
Revert "Defer skip to avoid errors on ensure"
This reverts commit adfc8d6dbadbccef27d6ec78022650840c7604cc.
because 76e2370f132f83c16c9de39a0a9356579f364527 is hoped to fix the
problem.
|
| |
|
|
|
|
|
|
| |
* load.c (rb_require_internal): make sure in advance that the path
to be loaded shares a fstring, to get rid of dangling path name.
Fixed up 5931857281ce45c1c277aa86d1588119ab00a955. [Bug #16041]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
# Benchmark zero?
```
require 'benchmark/ips'
Numeric.class_eval do
def ruby_zero?
self == 0
end
end
Benchmark.ips do |x|
x.report('0.zero?') { 0.ruby_zero? }
x.report('1.zero?') { 1.ruby_zero? }
x.compare!
end
```
## VM
No significant impact for VM.
### before
ruby 2.7.0dev (2019-08-04T02:56:02Z master 2d8c037e97) [x86_64-linux]
0.zero?: 21855445.5 i/s
1.zero?: 21770817.3 i/s - same-ish: difference falls within error
### after
ruby 2.7.0dev (2019-08-04T11:17:10Z opt-eq-leaf 6404bebd6a) [x86_64-linux]
1.zero?: 21958912.3 i/s
0.zero?: 21881625.9 i/s - same-ish: difference falls within error
## JIT
The performance improves about 1.23x.
### before
ruby 2.7.0dev (2019-08-04T02:56:02Z master 2d8c037e97) +JIT [x86_64-linux]
0.zero?: 36343111.6 i/s
1.zero?: 36295153.3 i/s - same-ish: difference falls within error
### after
ruby 2.7.0dev (2019-08-04T11:17:10Z opt-eq-leaf 6404bebd6a) +JIT [x86_64-linux]
0.zero?: 44740467.2 i/s
1.zero?: 44363616.1 i/s - same-ish: difference falls within error
# Benchmark str == str / str != str
```
# frozen_string_literal: true
require 'benchmark/ips'
Benchmark.ips do |x|
x.report('a == a') { 'a' == 'a' }
x.report('a == b') { 'a' == 'b' }
x.report('a != a') { 'a' != 'a' }
x.report('a != b') { 'a' != 'b' }
x.compare!
end
```
## VM
No significant impact for VM.
### before
ruby 2.7.0dev (2019-08-04T02:56:02Z master 2d8c037e97) [x86_64-linux]
a == a: 27286219.0 i/s
a != a: 24892389.5 i/s - 1.10x slower
a == b: 23623635.8 i/s - 1.16x slower
a != b: 21800958.0 i/s - 1.25x slower
### after
ruby 2.7.0dev (2019-08-04T11:17:10Z opt-eq-leaf 6404bebd6a) [x86_64-linux]
a == a: 27224016.2 i/s
a != a: 24490109.5 i/s - 1.11x slower
a == b: 23391052.4 i/s - 1.16x slower
a != b: 21811321.7 i/s - 1.25x slower
## JIT
The performance improves on JIT a little.
### before
ruby 2.7.0dev (2019-08-04T02:56:02Z master 2d8c037e97) +JIT [x86_64-linux]
a == a: 42010674.7 i/s
a != a: 38920311.2 i/s - same-ish: difference falls within error
a == b: 32574262.2 i/s - 1.29x slower
a != b: 32099790.3 i/s - 1.31x slower
### after
ruby 2.7.0dev (2019-08-04T11:17:10Z opt-eq-leaf 6404bebd6a) +JIT [x86_64-linux]
a == a: 46902738.8 i/s
a != a: 43097258.6 i/s - 1.09x slower
a == b: 35822018.4 i/s - 1.31x slower
a != b: 33377257.8 i/s - 1.41x slower
This is needed towards Bug#15589.
Closes: https://github.com/ruby/ruby/pull/2318
|
| |
|
|
|
|
| |
https://github.com/ruby/rexml/commit/404bd99a7c
|
|
|
|
|
|
|
|
|
|
| |
relational expressions
GitHub: fix #18
Reported by Mirko Budszuhn. Thanks!!!
https://github.com/ruby/rexml/commit/0dca2a2ba0
|