Nobuyoshi Nakada
6dcd10ce56
compile.c: Mark cursor in debug list
2020-05-31 03:07:30 +09:00
Nobuyoshi Nakada
2c711273bb
compile.c: Removed wrong conversion
2020-05-31 03:05:10 +09:00
Nobuyoshi Nakada
e10798b3a3
[DOC] refined `Kernel#.require` and `Kernel#.load` [ci skip]
2020-05-30 22:04:49 +09:00
Nobuyoshi Nakada
57fd44d374
Adjusted an indent
2020-05-30 21:20:50 +09:00
Aaron Patterson
9b8825b6f9
Update NEWS / documentation with GC.start(compact:true)
2020-05-29 15:59:42 -07:00
Jeremy Evans
04b5203a03
Convert ip addresses to canonical form in Resolv::DNS::Requester::UnconnectedUDP#sender
...
Otherwise, if the IP address given is not in canonical form, it
won't match, and Resolv will ignore it.
Fixes [Bug #16439 ]
2020-05-29 15:59:27 -07:00
Aaron Patterson
02b216e5a7
Combine sweeping and moving
...
This commit combines the sweep step with moving objects. With this
commit, we can do:
```ruby
GC.start(compact: true)
```
This code will do the following 3 steps:
1. Fully mark the heap
2. Sweep + Move objects
3. Update references
By default, this will compact in order that heap pages are allocated.
In other words, objects will be packed towards older heap pages (as
opposed to heap pages with more pinned objects like `GC.compact` does).
2020-05-29 15:24:32 -07:00
Burdette Lamar
c1f6552b58
[ci skip] Enhanced Rdoc for Hash ( #3155 )
...
* Enhanced Rdoc for Hash
* Respond to review
2020-05-29 13:53:11 -05:00
Yusuke Endoh
e73e504e2f
spec: add wsl guard
...
WSL 2 is officially released. It uses Linux kernel, so almost all specs
for Linux work on WSL, except one: gethostbyaddr. I guess network
resolution in WSL is based on Windows, so the behavior seems a bit
different from normal Linux.
This change adds `platform_is_not :wsl` guard, and guards out the test
in question.
2020-05-30 01:52:38 +09:00
Nobuyoshi Nakada
0d1f0cd9cc
runnable.rb: ignore broken symlink error on Windows [ci skip]
2020-05-30 01:15:23 +09:00
Nobuyoshi Nakada
0d30f42813
[DOC] mentioned "explicit relative path" [ci skip]
...
`Kernel#.require` and `Kernel#.load` do not search also "explicit
relative path" files, not only absolute paths, in the load path.
2020-05-30 01:09:16 +09:00
git
2c8821c0d2
* 2020-05-30 [ci skip]
2020-05-30 00:17:02 +09:00
Yusuke Endoh
58bc97628c
test/ruby/test_process.rb: GID.from_name may raise Errno:ESRCH
...
getgrnam(3) says:
```
ERRORS
0 or ENOENT or ESRCH or EBADF or EPERM or ...
The given name or gid was not found.
```
Process::GID.from_name raises an ArgumentError for 0, but Errno::ESRCH
for ESRCH. Actually, WSL 2 raises Errno::ESRCH. This change accepts
all exceptions above.
2020-05-30 00:16:44 +09:00
Nobuyoshi Nakada
3ed79a97b0
doc/contributing.rdoc: Removed obsolete platforms [ci skip]
2020-05-29 23:49:15 +09:00
Jeremy Evans
2ecfb88ee5
Correctly remove temporary directory if path yielded is mutated
...
Another approach would be to freeze the string, but that could
cause backwards compatibility issues.
Fixes [Bug #16918 ]
2020-05-29 07:06:46 -07:00
Takashi Kokubun
0bd025ad69
Add a debug_counter for JIT cancel on leave
2020-05-28 22:45:35 -07:00
Koichi Sasada
d300a73441
RUBY_ASSERT_NOASSUME
...
If __builtin_assume() is enables and RUBY_DEBUG=0, RUBY_ASSERT(expr)
will be compiled to __builtin_assume(expr) and compiler can assume
expr is true and apply aggressive optimizations. However we observed
doubtful behavior because of compiler optimizations, we introduce
new macro RUBY_ASSERT_NOASSUME to disable __builtin_assume().
With this macro, we can try without __builtin_assume().
2020-05-29 13:50:58 +09:00
Koichi Sasada
03d7f3cdb2
add indent for debug disasm output
2020-05-29 11:25:45 +09:00
Koichi Sasada
6ba2d3e4c6
export debug utility functions
2020-05-29 11:25:45 +09:00
Nobuyoshi Nakada
d32e2bb02d
Allow references to $$ in Ripper DSL
2020-05-29 09:41:27 +09:00
Aaron Patterson
c7ceaa6d3c
Extract "free moved list" function
...
Extract a function to free the moved list. We'll use this function
later on to compact at the same time as sweep.
2020-05-28 15:01:10 -07:00
git
fd7849cedb
* 2020-05-29 [ci skip]
2020-05-29 02:45:11 +09:00
Nobuyoshi Nakada
b8fadf3a6b
Respect BIGNUM_DEBUG defined by command line option
...
And fixed typo in compilers.yml.
2020-05-29 02:43:30 +09:00
Jeremy Evans
07b2102a88
Remove Ruby <2.2 support from tool/lib/vcs.rb
...
BASERUBY now requires at least Ruby 2.2, so there is no point
trying to support older ruby versions here.
2020-05-28 07:57:29 -07:00
Jeremy Evans
9a3371be8f
Check that BASERUBY is at least Ruby 2.2 in configure
...
BASERUBY needs to be at least Ruby 2.2 since
46acd0075d
.
I think it's better to explicitly fail early as soon as BASERUBY
is used in this case, versus trying to debug later failures.
This modifies things to check both implicitly use of ruby in the
PATH as BASERUBY, and explicitly specified older versions of ruby
when using --with-baseruby.
Fixes [Bug #16668 ]
2020-05-28 07:57:29 -07:00
Burdette Lamar
28ce75821d
Enhanced Rdoc for Hash ( #3151 )
2020-05-28 06:21:48 -05:00
Hiroshi SHIBATA
7473b4c106
Explicitly loading with envutil.rb
2020-05-28 14:41:08 +09:00
Yusuke Endoh
f186f2d01d
Use Module#name instead of #inspect
...
Coverage measurement had failed since 7d5da30c9e
https://github.com/ruby/actions/runs/708557030?check_suite_focus=true
2020-05-28 14:39:53 +09:00
Jeremy Evans
fa380208fe
Improve documentation for Net::HTTPHeader#set_form [ci skip]
...
Fixes [Misc #16916 ]
2020-05-27 13:13:46 -07:00
git
9cfef5b494
* 2020-05-28 [ci skip]
2020-05-28 00:15:33 +09:00
Nobuyoshi Nakada
93ccb8e8a2
Remove platform directory when distclean or more [ci skip]
...
At the time of clean-platform, platform directory may not be empty
because of parallel build.
2020-05-28 00:13:11 +09:00
Nobuyoshi Nakada
6dbc3a2871
autoconf may not be available
2020-05-27 23:46:55 +09:00
Burdette Lamar
139839b805
[ci skip] Enhanced Rdoc for Hash ( #3143 )
...
* Enhanced Rdoc for Hash
* Respond to review
* Nudge CI testing.
Respond to review
2020-05-27 09:31:22 -05:00
Takashi Kokubun
083a17a82a
Carve out mjit_exec_slowpath
...
and mark it as COLDFUN on JIT, assuming enqueue usually happens on VM.
2020-05-27 01:41:04 -07:00
Masataka Pocke Kuwabara
a3f498e44c
Fix max, min, minmax documentation ( #3131 )
...
They only need that all objects implement <=>,
but the documentation said it needs Comparable.
2020-05-26 23:48:46 -07:00
Masataka Pocke Kuwabara
752041ca11
Update Enumerable::Yielder#to_proc document ( #3142 )
2020-05-26 23:46:42 -07:00
Masataka Pocke Kuwabara
64c5bf5721
Fix non-existent method reference in Enumerator.produce document ( #3141 )
2020-05-26 23:37:05 -07:00
Takashi Kokubun
9d71373c23
Mark vm_stackoverflow as NOINLINE COLDFUNC on JIT
...
to reduce code size and improve locality of hot code.
2020-05-26 23:24:58 -07:00
Takashi Kokubun
61b14bb32b
Eliminate a call instruction on JIT cancel path
...
by calling combined functions specialized for each cancel type.
I'm hoping to improve locality of hot code, but this patch's impact should
be insignificant.
2020-05-26 23:01:52 -07:00
Nobuyoshi Nakada
4cabd77e33
Removed a trailing space [ci skip]
2020-05-27 14:30:45 +09:00
Nobuyoshi Nakada
0f8b5819b3
Merged recipes for the same target
2020-05-27 13:13:12 +09:00
Nobuyoshi Nakada
51fa4c9f49
Removed obsolete forwarding DLL recipe
...
It has never been created by default, and no reason to keep binary
compatibility against extension libraries for ruby 1.8.
1. `LIBRUBY_SO` on Cygwin was named originally.
- 94089e82a12:: `$(RUBY_INSTALL_NAME)-cygwin.dll`
- f0ba57341ac:: `$(RUBY_INSTALL_NAME).cygwin.dll`
- c74a3b21f59:: `cygwin-$(RUBY_INSTALL_NAME)-$(MAJOR).$(MINOR).dll`
2. And then renamed to be net distribution compliant.
- 6f059f33ef1:: `cyg$(RUBY_SO_NAME)$(MAJOR)$(MINOR).dll`
3. Next at 430eabfe13
, forwarding DLL was added for binary
compatibility against extension libraries.
2020-05-27 12:40:18 +09:00
S-H-GAMELINKS
0fcb2dd51d
add static modifier for rb_str_ord func
2020-05-27 11:26:44 +09:00
Jeremy Evans
e0b40ef5d8
Don't convert bundler man pages from mdoc to man
...
These man pages are already in man format and assuming they are
mdoc format breaks things.
Fixes [Bug #16823 ]
2020-05-27 07:47:50 +09:00
Yusuke Endoh
962c302a1a
test/drb/test_drbssl.rb: skip LeakChecker as openssl keeps /dev/random
...
and /dev/urandom intentionally. OpenSSL::PKey::RSA.new opens the two
random generators and keeps the file descriptors.
93f99b681a/crypto/rand/rand_unix.c (L674)
They are detected by the LeakChecker as fd leak, but it is intentional.
http://rubyci.s3.amazonaws.com/graviton2/ruby-master/log/20200526T160005Z.log.html.gz
```
[ 597/20199] DRbTests::TestDRbSSLAry#test_01 = 0.29 s
Leaked file descriptor: DRbTests::TestDRbSSLAry#test_01: 8 #<File::Stat dev=0x6, ino=11, mode=020666, nlink=1, uid=0, gid=0, rdev=0x109, size=0, blksize=4096, blocks=0, atime=2020-05-23 14:45:13.751999995 +0000, mtime=2020-05-23 14:45:13.751999995 +0000, ctime=2020-05-23 14:45:13.751999995 +0000>
Leaked file descriptor: DRbTests::TestDRbSSLAry#test_01: 9 #<File::Stat dev=0x6, ino=10, mode=020666, nlink=1, uid=0, gid=0, rdev=0x108, size=0, blksize=4096, blocks=0, atime=2020-05-23 14:45:13.755999995 +0000, mtime=2020-05-23 14:45:13.755999995 +0000, ctime=2020-05-23 14:45:13.755999995 +0000>
```
2020-05-27 02:07:38 +09:00
Nobuyoshi Nakada
135c6a4b99
fiddle: need to update configure after updating config tools
2020-05-27 00:30:59 +09:00
git
f8e703e2b0
* 2020-05-27 [ci skip]
2020-05-27 00:28:32 +09:00
Yusuke Endoh
5429deb075
lib/open3.rb: make sure that pipes are closed
...
Attempting to invoke a non-existent command led to the leak of fds.
http://rubyci.s3.amazonaws.com/graviton2/ruby-master/log/20200526T140004Z.log.html.gz
```
[ 9101/20195] TestGemExtCmakeBuilder#test_self_build = 0.01 sLeaked file descriptor: TestGemExtCmakeBuilder#test_self_build: 7 : #<IO:fd 7>
Leaked file descriptor: TestGemExtCmakeBuilder#test_self_build: 10 : #<IO:fd 10>
Leaked file descriptor: TestGemExtCmakeBuilder#test_self_build: 11 : #<IO:fd 11>
Leaked file descriptor: TestGemExtCmakeBuilder#test_self_build: 12 : #<IO:fd 12>
```
2020-05-27 00:20:14 +09:00
Koichi Sasada
eb20d2f449
include debug option in slack notification
2020-05-26 23:20:36 +09:00
Koichi Sasada
a809caa4b3
remove duplication.
2020-05-26 23:10:35 +09:00