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

192 Коммитов

Автор SHA1 Сообщение Дата
Nobuyoshi Nakada 2b3d84d584
Use rev-parse
Use simpler rev-parse to check if pull request was fetched.
2019-08-12 14:11:41 +09:00
Nobuyoshi Nakada 9fe7e042f5
Note the reference to the pull request [ci skip] 2019-08-11 16:20:11 +09:00
Nobuyoshi Nakada 51d9d0f888
Use already fetched pull request [ci skip] 2019-08-11 15:47:39 +09:00
Nobuyoshi Nakada 46df7fe91f
prereq.status deals with removal of nmake VPATH notations [ci skip] 2019-08-11 00:44:13 +09:00
Nobuyoshi Nakada a206738762
Remove temporary directory [ci skip] 2019-08-08 22:40:20 +09:00
Nobuyoshi Nakada 4ea5c5610a
Predefine some IDs 2019-08-03 10:18:39 +09:00
Yusuke Endoh 086ffe72c7 Revert "Revert "Add a specialized instruction for `.nil?` calls""
This reverts commit a0980f2446.

Retry for macOS Mojave.
2019-08-02 23:25:38 +09:00
Yusuke Endoh a0980f2446 Revert "Add a specialized instruction for `.nil?` calls"
This reverts commit 9faef3113f.

It seemed to cause a failure on macOS Mojave, though I'm unsure how.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/osx1014/ruby-master/log/20190802T034503Z.fail.html.gz

This tentative revert is to check if the issue is actually caused by the
change or not.
2019-08-02 15:03:34 +09:00
Aaron Patterson 9faef3113f
Add a specialized instruction for `.nil?` calls
This commit adds a specialized instruction for called to `.nil?`.  It is
about 27% faster than master in the case where the object is nil or not
nil.  In the case where an object implements `nil?`, I think it may be
slightly slower.  Here is a benchmark:

```ruby
require "benchmark/ips"

class Niller
  def nil?; true; end
end

not_nil = Object.new
xnil = nil
niller = Niller.new

Benchmark.ips do |x|
  x.report("nil?")    { xnil.nil? }
  x.report("not nil") { not_nil.nil? }
  x.report("niller")   { niller.nil? }
end
```

On Ruby master:

```
[aaron@TC ~/g/ruby (master)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   429.195k i/100ms
             not nil   437.889k i/100ms
              niller   437.935k i/100ms
Calculating -------------------------------------
                nil?     20.166M (± 8.1%) i/s -    100.002M in   5.002794s
             not nil     20.046M (± 7.6%) i/s -     99.839M in   5.020086s
              niller     22.467M (± 6.1%) i/s -    112.111M in   5.013817s
[aaron@TC ~/g/ruby (master)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   449.660k i/100ms
             not nil   433.836k i/100ms
              niller   443.073k i/100ms
Calculating -------------------------------------
                nil?     19.997M (± 8.8%) i/s -     99.375M in   5.020458s
             not nil     20.529M (± 7.0%) i/s -    102.385M in   5.020689s
              niller     21.796M (± 8.0%) i/s -    108.110M in   5.002300s
[aaron@TC ~/g/ruby (master)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   402.119k i/100ms
             not nil   438.968k i/100ms
              niller   398.226k i/100ms
Calculating -------------------------------------
                nil?     20.050M (±12.2%) i/s -     98.519M in   5.008817s
             not nil     20.614M (± 8.0%) i/s -    102.280M in   5.004531s
              niller     22.223M (± 8.8%) i/s -    110.309M in   5.013106s

```

On this branch:

```
[aaron@TC ~/g/ruby (specialized-nilp)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   468.371k i/100ms
             not nil   456.517k i/100ms
              niller   454.981k i/100ms
Calculating -------------------------------------
                nil?     27.849M (± 7.8%) i/s -    138.169M in   5.001730s
             not nil     26.417M (± 8.7%) i/s -    131.020M in   5.011674s
              niller     21.561M (± 7.5%) i/s -    107.376M in   5.018113s
[aaron@TC ~/g/ruby (specialized-nilp)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   477.259k i/100ms
             not nil   428.712k i/100ms
              niller   446.109k i/100ms
Calculating -------------------------------------
                nil?     28.071M (± 7.3%) i/s -    139.837M in   5.016590s
             not nil     25.789M (±12.9%) i/s -    126.470M in   5.011144s
              niller     20.002M (±12.2%) i/s -     98.144M in   5.001737s
[aaron@TC ~/g/ruby (specialized-nilp)]$ ./ruby compil.rb
Warming up --------------------------------------
                nil?   467.676k i/100ms
             not nil   445.791k i/100ms
              niller   415.024k i/100ms
Calculating -------------------------------------
                nil?     26.907M (± 8.0%) i/s -    133.755M in   5.013915s
             not nil     25.319M (± 7.9%) i/s -    125.713M in   5.007758s
              niller     19.569M (±11.8%) i/s -     96.286M in   5.008533s
```

Co-Authored-By: Ashe Connor <kivikakk@github.com>
2019-07-31 16:21:25 -07:00
Nobuyoshi Nakada c94cc6d968
run single spec [ci skip] 2019-07-31 20:46:01 +09:00
Nobuyoshi Nakada 8e53d18e67
Separated tool/test/runner.rb and test/runner.rb
As `make test-tool` does not use gems, and no Rubygems stuffs is
needed, so moved such things to test/runner.rb.  Also no longer
nees `--test-target-dir` option.
2019-07-25 16:57:38 +09:00
Nobuyoshi Nakada 3a227b99e7
Adjusted test runner 2019-07-24 12:25:02 +09:00
Nobuyoshi Nakada 28ae30b6ac
Run test-tool in the order of the tests 2019-07-22 10:10:28 +09:00
Nobuyoshi Nakada 0b826418af
Update before commit 2019-07-19 07:51:48 +09:00
Nobuyoshi Nakada af07e07ac9
Separate pull-github from merge-github [ci skip] 2019-07-17 11:57:09 +09:00
Nobuyoshi Nakada 71d5b4c32e
Fixed the library path for tools 2019-07-16 08:25:39 +09:00
Nobuyoshi Nakada c781b1b7a3
update-deps for dependencies 2019-07-15 17:06:35 +09:00
Hiroshi SHIBATA eed9db39e5
Followed up e8ddbc0239. 2019-07-15 10:11:07 +09:00
Nobuyoshi Nakada 8a831e5cb6
Do not make Unicode tables timestamp phony 2019-07-09 13:15:51 +09:00
Nobuyoshi Nakada dcedf0a008
Fix order of tests
`check` includes `test-testframework`, `test-short` and its
preceeding tests, but `test-all` does not.
2019-07-03 14:28:25 +09:00
Nobuyoshi Nakada efde19ce44
Revert expansion of test-all 2019-07-03 04:05:07 +09:00
Nobuyoshi Nakada 4d6c35d33a
Fix test-all substitution 2019-07-02 15:22:22 +09:00
Nobuyoshi Nakada c6a131da64
Removed test-almost from TEST_TARGETS 2019-07-02 09:49:57 +09:00
Nobuyoshi Nakada 580b7600c7
Substitute autoconf variables by prereq.status 2019-07-02 09:44:37 +09:00
Nobuyoshi Nakada f169043d81
Add pipeline operator [Feature #15799] 2019-06-13 18:44:32 +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 6f9d5fafe0
Moved Makefile.in under template 2019-06-07 08:44:37 +09:00
Nobuyoshi Nakada 8fd3b9fc5f
Force update all RDoc at install
RDoc needs to parse all files at once for the cross-reference.
2019-05-25 17:16:07 +09:00
Nobuyoshi Nakada 29fcb37a83
Fixed a typo 2019-05-08 17:00:12 +09:00
Nobuyoshi Nakada fdcd640507
Makefiles need to be indented by tabs 2019-04-28 11:36:03 +09:00
Takashi Kokubun 3581a64239
BSD's mktemp does not have `-p` 2019-04-25 19:42:10 +09:00
Takashi Kokubun 57225dc07a
Show `make checkout-github/merge-github` in help 2019-04-25 19:25:03 +09:00
Takashi Kokubun b2e92bfd9f
Resurrect `make xxx-github PR=1234` interface
`call xxx, yyy` seems to pass " yyy" instead of "yyy".
2019-04-25 18:54:44 +09:00
Nobuyoshi Nakada 70adfdcd8d
Added pr-%
May merge multiple github pull requests at once. e.g.,

    $ make pr-123456789 pr-987654321
2019-04-25 18:29:58 +09:00
Nobuyoshi Nakada 44bb429bb1
Cache git config values 2019-04-25 18:27:16 +09:00
Takashi Kokubun 6de9128fe9
Add `make checkout-github` too
You can use this like `make checkout-github PR=1234`
2019-04-25 18:05:52 +09:00
Nobuyoshi Nakada 116f91ab50
Make working tree under the source directory 2019-04-25 15:33:05 +09:00
Nobuyoshi Nakada 09ce223b0b
Rebase the pull request in a worktree
A pull request based on an old commit may rewind too many files,
even if unnecessary.  As rewinding some files, e.g., common header
files, configure.ac, will result in full-rebuild, rebase in a
separate directory to get rid of such rewind.
2019-04-25 15:03:54 +09:00
Takashi Kokubun 6061aa0ac1
Automatically gpg-sign rebase when commit.gpgsign
is true

Closes: https://github.com/ruby/ruby/pull/2148
2019-04-25 00:12:13 +09:00
Takashi Kokubun daff4cbd6c Add `make fetch-github` and `make merge-github`
Closes: https://github.com/ruby/ruby/pull/2147
2019-04-24 22:48:21 +09:00
Koichi Sasada 2ef6673708 force 10 chars SHA1 display.
`make update-src` shows latest commit hash for convinience.
However, `rev-parse --short` option shows different length
(maybe) between git versions. This fix force 10 chars
with `--short=10`.
2019-04-24 09:30:07 +09:00
nobu 0db89a38f2 Show the latest commit hash after update
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-21 03:30:38 +00:00
ktsj 9738f96fcf Introduce pattern matching [EXPERIMENTAL]
[ruby-core:87945] [Feature #14912]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-17 06:48:03 +00:00
nobu 54b93ef1ac compile.c: name a hidden local variable as a predefined ID
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-10 12:43:34 +00:00
kazu 25c1fd3b90 Reverting all commits from r67479 to r67496 because of CI failures
Because hard to specify commits related to r67479 only.
So please commit again.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-10 09:15:21 +00:00
nobu 91db3b6c6b compile.c: name a hidden local variable as a predefined ID
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-10 07:18:25 +00:00
nobu 59a37c0283 gmake.mk: get rid of unicode normalization table timestamp
* common.mk, defs/gmake.mk: rid of unicode normalization tables
  timestamp.  update the target tables file only when only it
  exists.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-04 12:11:53 +00:00
nobu 6faf266893 gmake.mk: update normalization table
* defs/gmake.mk: try to update Unicode normalization tables file
  if Unicode data files exist.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-04 05:10:26 +00:00
mame 95f7992b89 Introduce beginless range [Feature#14799]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-03 08:11:41 +00:00