aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Refine time_to_rNobuyoshi Nakada2019-08-061-5/+16
| | | | | * time.c (time_to_r): get rid canonicalize and uncanonicalize one-denominator rational, by rb_time_unmagnify_to_rational.
* Extracted wmap_live_pNobuyoshi Nakada2019-08-061-7/+14
|
* * expand tabs.git2019-08-061-1/+1
|
* leafify opt_plus卜部昌平2019-08-064-4/+34
| | | | | | Inspired by 346aa557b31fe96760e505d30da26eb7a846bac9 Closes: https://github.com/ruby/ruby/pull/2321
* Revert "Don't echo results of assignment expressions"aycabta2019-08-065-189/+1
| | | | This reverts commit 1ee88c51b3c319b74b69540e111e4a1c24833cad.
* Don't echo results of assignment expressionsSteven Willis2019-08-065-1/+189
|
* Use host_os from RbConfig to detect host OS.Charles Oliver Nutter2019-08-061-1/+1
| | | | | | | | 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
* Remove obsolete TODO commentaycabta2019-08-061-1/+1
|
* Update Unicode URL to 12.1.0aycabta2019-08-061-1/+1
|
* The value of rb_scan_args_verify is never usedNobuyoshi Nakada2019-08-061-5/+5
|
* Distinguish bad scan format from no argument variablesNobuyoshi Nakada2019-08-061-2/+2
|
* Removing duplicated assertions on test_array.rb - MINUS methodEspartaco Palma2019-08-061-4/+0
| | | | Closes: https://github.com/ruby/ruby/pull/1790
* Improve same directory detection in FileUtilsJustin Collins2019-08-062-2/+15
| | | | Closes: https://github.com/ruby/ruby/pull/1425
* Document that RubyVM::InstructionSequence methods are implementation and ↵Jeremy Evans2019-08-051-1/+3
| | | | | | version dependent Fixes [Bug #6785]
* Remove documentation of %m in SyslogJeremy Evans2019-08-051-4/+0
| | | | Fixes [Bug #6726]
* Let prev EP move againAaron Patterson2019-08-051-2/+2
| | | | | | | | 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.
* * expand tabs.git2019-08-061-1/+1
|
* add compaction support to weak mapsAaron Patterson2019-08-051-12/+6
|
* Use gcc-8 for BASERUBY testTakashi Kokubun2019-08-061-0/+1
| | | | | | | | as it failed https://travis-ci.org/ruby/ruby/jobs/567942969, unlike my fork CI. This just rollbacks a minor change in 798474deaf10dbea70c02724b5acf4487bbed660.
* Give up stabilizing TestProcess on Travis osxTakashi Kokubun2019-08-062-2/+9
| | | | | | | | | | 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.
* * 2019-08-06git2019-08-061-1/+1
|
* Control Travis apt retries on our ownTakashi Kokubun2019-08-061-94/+120
| | | | | | | | | | | | | | | | | | | 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.
* Use negative-sized array instead of zero-divisionNobuyoshi Nakada2019-08-051-21/+7
|
* Unused macro argument `varc`Nobuyoshi Nakada2019-08-051-23/+23
|
* [rubygems/rubygems] Use the standard RUBY_ENGINE_VERSION instead of ↵Benoit Daloze2019-08-056-52/+30
| | | | | | | | | 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
* [rubygems/rubygems] Fix error handling of #with_engine_versionBenoit Daloze2019-08-051-12/+13
| | | | | | | * 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
* [rubygems/rubygems] Cleanup after testing `rake package`David Rodríguez2019-08-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* [rubygems/rubygems] Use gsub with HashKazuhiro NISHIYAMA2019-08-051-2/+2
| | | | https://github.com/rubygems/rubygems/commit/83eced0b39
* [rubygems/rubygems] Revert cadb66037d9b58c80fc795f39384d533229a1f73bronzdoc2019-08-053-0/+29
| | | | https://github.com/rubygems/rubygems/commit/5c3158d975
* [rubygems/rubygems] Fixed to warn with shadowing outer local variable.Hiroshi SHIBATA2019-08-051-4/+4
| | | | https://github.com/rubygems/rubygems/commit/b0588a87b1
* [rubygems/rubygems] Remove FIXME commentbronzdoc2019-08-051-2/+0
| | | | https://github.com/rubygems/rubygems/commit/5a1d3d618d
* ext/psych/yaml/loader.c: Cast the difference of pointers to intYusuke Endoh2019-08-051-3/+3
| | | | | instead of casting a pointer to int. Follow up of 39622232c7542d062f79277a11f6b8b6b6cfd994.
* Expand the timeout of `test_pstore_files_are_accessed_as_binary_files`NAKAMURA Usaku2019-08-051-1/+1
| | | | Sometimes causes timeout error on mswin CI
* Check if signaledNobuyoshi Nakada2019-08-051-2/+4
|
* Refined assertion messagesNobuyoshi Nakada2019-08-051-11/+9
|
* Fixed assertionNobuyoshi Nakada2019-08-051-1/+1
| | | | The regexp should be expected to match the error message.
* Do not expect RSTRING_PTR valid after rb_fstringNobuyoshi Nakada2019-08-051-2/+2
|
* Moved FailDesc to EnvUtil.failure_descriptionNobuyoshi Nakada2019-08-052-31/+35
| | | | So EnvUtil does not depends on test/unit.
* Drop default leaf definition and obsoleted commentsTakashi Kokubun2019-08-051-6/+0
| | | | | leaf is true by default. Other insns are not specifying it explicitly. Also the comment describing why it was not leaf is outdated.
* n+1 to include n in rangeYaw Boakye2019-08-051-1/+1
| | | | | | Python's range stop right before n, which means factL never returns the correct result. Closes: https://github.com/ruby/ruby/pull/1982
* * 2019-08-05git2019-08-051-1/+1
|
* Revert "Always evaluate the expression RUBY_ASSERT_MESG_WHEN just once"Nobuyoshi Nakada2019-08-051-1/+1
| | | | | | | It caused a significant benchmark fall. Some assertions seem to use expressions with side-effects which cannot be inlined. This reverts commit b452c03a14f943ae25338547bd680fce67399d85.
* Extend sleep before sending USR1 in TestProcessTakashi Kokubun2019-08-041-1/+1
| | | | | | | just like 076f3fcf11a061394d3d5f8c671512df1e983023. This test also hanged on Travis osx https://travis-ci.org/ruby/ruby/jobs/567547060
* Revert "Skip test_race_exception on MJIT for now"Takashi Kokubun2019-08-041-1/+0
| | | | | | | | | | | This reverts commit 7a75baa6e294473f02da512c99f7ef1f76b2d83c. Revert "Defer skip to avoid errors on ensure" This reverts commit adfc8d6dbadbccef27d6ec78022650840c7604cc. because 76e2370f132f83c16c9de39a0a9356579f364527 is hoped to fix the problem.
* * expand tabs.git2019-08-041-1/+1
|
* Fix dangling path name from fstringNobuyoshi Nakada2019-08-041-1/+1
| | | | | | * 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]
* Make opt_eq and opt_neq insns leafTakashi Kokubun2019-08-044-24/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # 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
* Suppress warnings of bundled libyaml.Hiroshi SHIBATA2019-08-042-4/+4
|
* [ruby/rexml] gemspec: updateSutou Kouhei2019-08-041-1/+0
| | | | https://github.com/ruby/rexml/commit/404bd99a7c
* [ruby/rexml] xpath: add missing value conversions for equality and ↵Kouhei Sutou2019-08-043-104/+295
| | | | | | | | | | relational expressions GitHub: fix #18 Reported by Mirko Budszuhn. Thanks!!! https://github.com/ruby/rexml/commit/0dca2a2ba0