| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
The latter is same as the former, removed the duplicate function.
|
|
|
|
|
|
|
| |
Similar to the check used for String#gsub. Can fix possible
segfault.
Fixes [Bug #15941]
|
|
|
|
|
|
|
|
|
| |
rb_fstring behavior in this case is to freeze the receiver. I'm
not sure if that should be changed, so this takes the conservative
approach of duping the receiver in String#-@ before passing
to rb_fstring.
Fixes [Bug #15926]
|
|
|
|
|
|
|
|
| |
Replace it with a section on commit message formatting. Also,
move the section on rebasing to the bottom, since that only
applies to committers and not most contributors.
Fixes [Bug #14886]
|
| |
|
|
|
|
|
|
|
|
|
| |
Array#minmax was previous not implemented, so calling #minmax on
array was actually calling Enumerable#minmax. This is a simple
implementation of #minmax by just calling rb_ary_min and
rb_ary_max, which improves performance significantly.
Fixes [Bug #15929]
|
|
|
|
|
|
| |
This is a retry of 181b966e7553ac53d034266a7cdc18664d080814.
"Revert "Add a missing tests for Logger::Period module"" is also
reverted.
|
|
|
|
| |
This reverts commit 181b966e7553ac53d034266a7cdc18664d080814.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
setlocal relies on cfp->ep, and frame-omitted method inlining introduced
in Ruby 2.7 kept it wrong.
This change might slow down frame-omitted method inlining for cfp->ep
manipulation, and it obviously complicates the implementaion more. By
introducing an optimization that changes Ruby's local variable to C
local variable, we could optimize it and simplify the cfp->ep
manipulation later.
[Bug #15971]
|
|
|
|
| |
Closes: https://github.com/ruby/ruby/pull/2266
|
|
|
|
|
| |
birthtime may not be supported on some filesystems, and
NotImplementedError can be raised. [Bug #15972]
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously @hsbt disabled https git clone from git.ruby-lang.org.
Using git.ruby-lang.org for non-commit purposes is discouraged. GitHub
mirror is actually recommended because it's reliable than single-hosted
git.ruby-lang.org, the mirror is almost always well-maintained, and its
latency is very small (usually about 10s).
So we should just use GitHub here.
[Bug #15969]
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
They are moved under the tool directory now.
|
| |
|
|
|
|
| |
ref. c3c0e3f5c9444c197779cb242de46dfffda79dec
|
|
|
|
| |
direcotry.
|
| |
|
|
|
|
|
|
| |
CI shows it does work on Solaris 11, but does not work on Solaris
10. However, until I figure out a good way to differentiate
between Solaris 10 and 11, this should get CI passing on both.
|
|
|
|
|
|
|
| |
Previously, you could call ENV.freeze, but it would not have
the desired effect, as you could still modify ENV.
Fixes [Bug #15920]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This approach is simpler than the previous approach which tries to
emulate realpath(3). It also performs much better on both Linux and
OpenBSD on the included benchmarks.
By using realpath(3), we can better integrate with system security
features such as OpenBSD's unveil(2) system call.
This does not use realpath(3) on Windows even if it exists, as the
approach for checking for absolute paths does not work for drive
letters. This can be fixed without too much difficultly, though until
Windows defines realpath(3), there is no need to do so.
For File.realdirpath, where the last element of the path is not
required to exist, fallback to the previous approach, as realpath(3)
on most operating systems requires the whole path be valid (per POSIX),
and the operating systems where this isn't true either plan to conform
to POSIX or may change to conform to POSIX in the future.
glibc realpath(3) does not handle /path/to/file.rb/../other_file.rb
paths, returning ENOTDIR in that case. Fallback to the previous code
if realpath(3) returns ENOTDIR.
glibc doesn't like realpath(3) usage for paths like /dev/fd/5,
returning ENOENT even though the path may appear to exist in the
filesystem. If ENOENT is returned and the path exists, then fall
back to the default approach.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* marshal.c (w_ivar_each): ensure that no instance variable was
removed while dumping other instance variables. [Bug #15968]
|
| |
|