| Age | Commit message (Collapse) | Author |
|
This changeset reduces the generated binary of rb_equal_opt from 129 bytes
to 17 bytes on my machine, according to nm(1).
Notes:
Merged: https://github.com/ruby/ruby/pull/3179
|
|
CIs are created on-the-fly, which increases GC pressure. However they
include no references to other objects, and those on-the-fly CIs tend to
be short lived. Why not skip allocation of them. In doing so we need
to add a flag denotes the CI object does not reside inside of objspace.
Notes:
Merged: https://github.com/ruby/ruby/pull/3179
|
|
This is such a hot path that it's worth eliminating a function call. Use
the static variable directly instead.
Notes:
Merged: https://github.com/ruby/ruby/pull/3179
|
|
For debug. Must not change generated binary unless VM_ASSERT is on.
Notes:
Merged: https://github.com/ruby/ruby/pull/3179
|
|
|
|
These crashes are due to alignment issues, casting ADJUST to INSN
and then accessing after the end of the ADJUST. These patches
come from Stefan Sperling <stsp@apache.org>, who reported the
issue.
Notes:
Merged: https://github.com/ruby/ruby/pull/2961
|
|
|
|
This leads to double requiring "ext/psych/lib/psych/versions.rb" and
".ext/common/psych/versions.rb", which produces doxens of warnings
during `make test-all`.
http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200608T123004Z.log.html.gz
```
[15092/20234]
TestRDocOptions#test_init_with_encoding/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/ext/psych/lib/psych.rb:233: warning: already initialized constant Psych::LIBYAML_VERSION
/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/.ext/common/psych.rb:233: warning: previous definition of LIBYAML_VERSION was here
/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/ext/psych/lib/psych.rb:235: warning: already initialized constant Psych::NOT_GIVEN
/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/.ext/common/psych.rb:235: warning: previous definition of NOT_GIVEN was here
/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/ext/psych/lib/psych.rb:271: warning: method redefined; discarding old load
/home/chkbuild/chkbuild/tmp/build/20200608T123004Z/ruby/.ext/common/psych.rb:271: warning: previous definition of load was here
...
```
The same issue happened in fiddle.gemspec, and this change applies the
same fix as [fiddle](https://github.com/ruby/fiddle/issues/34).
|
|
`programs` has depended on the "fake" script, which is used by
`test-spec` and etc.
|
|
All tests of `test-all` or more require not only the `main` but
also extension libraries.
|
|
|
|
|
|
|
|
Methods:
#<=
#<
#>=
#>
#to_proc
Also, a small amount of housekeeping: Adding backslash to some class name to prevent linking.
Notes:
Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>
|
|
|
|
`make benchmark ARGS=../benchmark/erb_render.yml` does not work.
```
% make benchmark ARGS=../benchmark/erb_render.yml
/Users/kamipo/.rbenv/shims/ruby --disable=gems -rrubygems -I./benchmark/lib ./benchmark/benchmark-driver/exe/benchmark-driver \
--executables="compare-ruby::/Users/kamipo/.rbenv/shims/ruby --disable=gems -I.ext/common --disable-gem" \
--executables="built-ruby::./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems --disable-gem" \
../benchmark/erb_render.yml
Traceback (most recent call last):
6: from ./benchmark/benchmark-driver/exe/benchmark-driver:112:in `<main>'
5: from ./benchmark/benchmark-driver/exe/benchmark-driver:112:in `flat_map'
4: from ./benchmark/benchmark-driver/exe/benchmark-driver:112:in `each'
3: from ./benchmark/benchmark-driver/exe/benchmark-driver:122:in `block in <main>'
2: from /Users/kamipo/.rbenv/versions/2.6.6/lib/ruby/2.6.0/psych.rb:577:in `load_file'
1: from /Users/kamipo/.rbenv/versions/2.6.6/lib/ruby/2.6.0/psych.rb:577:in `open'
/Users/kamipo/.rbenv/versions/2.6.6/lib/ruby/2.6.0/psych.rb:577:in `initialize': No such file or directory @ rb_sysopen - ../benchmark/erb_render.yml (Errno::ENOENT)
make: *** [benchmark] Error 1
% make benchmark ARGS=benchmark/erb_render.yml
/Users/kamipo/.rbenv/shims/ruby --disable=gems -rrubygems -I./benchmark/lib ./benchmark/benchmark-driver/exe/benchmark-driver \
--executables="compare-ruby::/Users/kamipo/.rbenv/shims/ruby --disable=gems -I.ext/common --disable-gem" \
--executables="built-ruby::./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems --disable-gem" \
benchmark/erb_render.yml
Calculating -------------------------------------
compare-ruby built-ruby
erb_render 825.454k 783.664k i/s - 1.500M times in 1.817181s 1.914086s
Comparison:
erb_render
compare-ruby: 825454.4 i/s
built-ruby: 783663.8 i/s - 1.05x slower
```
Notes:
Merged: https://github.com/ruby/ruby/pull/3191
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3183
|
|
The idFWD_KWREST sections may be wrong. However, the existing
idFWD_KWREST sections for ... without leading arguments are already
broken.
Implements [Feature #16378]
Notes:
Merged: https://github.com/ruby/ruby/pull/3190
|
|
Original pull request: https://github.com/ruby/did_you_mean/pull/147
|
|
This test should not depend on the bahaviour of the did_you_mean gem.
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3135
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3135
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3189
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3189
|
|
* Do not chdir in the runner process, to access miniruby. Chdir
in worker processes instead.
* GNU make does not export newly added environment variables by
default, set PARALLEL_TESTS_EXECUTABLE in the runner.
Notes:
Merged: https://github.com/ruby/ruby/pull/3189
|
|
|
|
|
|
The main issue is that commas aren't allowed in local tags. libyaml
was updated to follow the spec, and our tests were out of date.
See: https://github.com/yaml/libyaml/issues/196
https://github.com/ruby/psych/commit/3f5e520fd3
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
https://github.com/ruby/psych/commit/02919596fa
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
Removing it triggers the following warnings when running `bundle` under
jruby from the root of the `psych` repo prints the following warnings:
```
/path/to/jruby-9.2.9.0/lib/ruby/gems/shared/gems/psych-3.1.0-java/lib/psych/versions.rb:7: warning: already initialized constant VERSION
/path/to//jruby-9.2.9.0/lib/ruby/gems/shared/gems/psych-3.1.0-java/lib/psych/versions.rb:10: warning: already initialized constant DEFAULT_SNAKEYAML_VERSION
```
This is because bundler loads the versions file relatively from the
local gemspec, and then internally loads the psych gem, causing the
redefinition warnings.
Instead, we modify the $LOAD_PATH so that when working locally on the
`psych` repo, the local version of `psych` gets used.
https://github.com/ruby/psych/commit/a3fc8191a7
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
number strings.
https://github.com/ruby/psych/commit/ac2d2c9b1b
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
Current version is not installable because the gemspec is invalid, since
it includes a `.travis.yml` file that no longer exists, so `rake
install` fails like this:
```
$ rake install
rake aborted!
WARNING: See https://guides.rubygems.org/specification-reference/ for help
ERROR: While executing gem ... (Gem::InvalidSpecificationException)
[".travis.yml"] are not files
```
https://github.com/ruby/psych/commit/32b18ca7ca
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
https://github.com/ruby/psych/commit/7dae24894d
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
https://github.com/ruby/psych/commit/04f97f7a56
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
https://github.com/ruby/psych/commit/3e472ab2d7
Notes:
Merged: https://github.com/ruby/ruby/pull/3188
|
|
https://rubyci.org/logs/rubyci.s3.amazonaws.com/wsl2/ruby-master/log/20200605T020004Z.fail.html.gz
```
[ 984/20282] IMAPTest#test_connection_closed_without_greeting#<Thread:0x000055b6e9589d28 /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:133 run> terminated with exception (report_on_exception is true):
/home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/.ext/common/socket.rb:252:in `local_address': closed stream (IOError)
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/.ext/common/socket.rb:252:in `connect_address'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `block (2 levels) in test_connection_closed_without_greeting'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `each_object'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `each'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `map'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `block in test_connection_closed_without_greeting'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:134:in `block in start_server'
```
|
|
debug print does not include `in_tcp_socket_2`,
so I think other socket connected to server socket.
Add sockets to debug print, and check other socket is in same process or not.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris11-gcc/ruby-master/log/20200604T160009Z.fail.html.gz
```
1) Failure:
IMAPTest#test_connection_closed_without_greeting [/export/home/chkbuild/chkbuild-gcc/tmp/build/20200604T160009Z/ruby/test/net/imap/test_imap.rb:523]:
[Net::IMAP::Error] exception expected, not #<RuntimeError: {:server=>#<TCPServer:(closed)>,
:port=>35490,
:server_created=>
{:server=>"#<TCPServer:fd 10, AF_INET6, ::1, 35490>", :t=>45917010.30510591},
:in_start_server_before_accept=>{:t=>45917010.305154555},
:in_tcp_socket=>
{:host=>"::1",
:port=>35490,
:server=>"#<TCPServer:fd 10, AF_INET6, ::1, 35490>",
:t=>45917010.40560127},
:in_start_server=>
{:sock_addr=>["AF_INET6", 35490, "::1", "::1"],
:sock_peeraddr=>["AF_INET6", 51584, "::1", "::1"],
:t=>45917010.40767231},
:in_start_server_sock_closed=>{:t=>45917010.40770047},
:in_rescue=>
{:e=>#<Errno::EINVAL: Invalid argument - connect(2) for [::1]:35490>,
:server_addr=>"::1",
:t=>45917010.40867455}}
>.
```
|
|
|
|
|
|
...to reflect that Net::HTTP.start accepts keep_alive_timeout as an option.
Notes:
Merged: https://github.com/ruby/ruby/pull/3185
|
|
linked list.
See <https://bugs.ruby-lang.org/issues/16814> for more details.
Notes:
Merged: https://github.com/ruby/ruby/pull/3182
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3184
|
|
'require'
https://github.com/rubygems/rubygems/commit/5995394ec4
Notes:
Merged: https://github.com/ruby/ruby/pull/3184
|
|
https://github.com/rubygems/rubygems/commit/d490309d75
Notes:
Merged: https://github.com/ruby/ruby/pull/3184
|
|
Since `rake package` started printing to stdout by default, we get these
warnings printed when running rubygems tests:
```
$ rake
Run options: --seed 6097
# Running:
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................mkdir -p pkg
mkdir -p pkg/pkgr-1.2.3
rm -f pkg/pkgr-1.2.3/x
ln x pkg/pkgr-1.2.3/x
rm -f pkg/pkgr-1.2.3/y
ln y pkg/pkgr-1.2.3/y
cd pkg/pkgr-1.2.3
cd -
....
Finished in 50.578889s, 43.0812 runs/s, 134.8191 assertions/s.
2179 runs, 6819 assertions, 0 failures, 0 errors, 0 skips
Coverage report generated for Unit Tests to /home/deivid/Code/rubygems/coverage. 8080 / 8978 LOC (90.0%) covered.
```
The reason is that, although these tests wrap the
`Rake.application["package"].invoke` with a `capture_io` block, the rake
application initialization happens outside of this block, and a copy of
`$stdout` is saved in there, and that's where the task prints. So the
`capture_io` `$stdout` and `$stderr` dance is not effective.
To fix, we move the `Rake` application initialization inside the
`capture_io` block.
https://github.com/rubygems/rubygems/commit/7f6e2398a5
Notes:
Merged: https://github.com/ruby/ruby/pull/3184
|