| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Asynchronous events such as signal trap, finalization timing,
thread switching and so on are managed by "interrupt_flag".
Ruby's threads check this flag periodically and if a thread
does not check this flag, above events doesn't happen.
This checking is CHECK_INTS() (related) macro and it is placed
at some places (laeve instruction and so on). However, at the end
of C methods, C blocks (IMEMO_IFUNC) etc there are no checking
and it can introduce uninterruptible thread.
To modify this situation, we decide to place CHECK_INTS() at
vm_pop_frame(). It increases interrupt checking points.
[Bug #16366]
This patch can introduce unexpected events...
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This removes the related tests, and puts the related specs behind
version guards. This affects all code in lib, including some
libraries that may want to support older versions of Ruby.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the security features added by $SAFE = 1, and warns for access
or modification of $SAFE from Ruby-level, as well as warning when calling
all public C functions related to $SAFE.
This modifies some internal functions that took a safe level argument
to no longer take the argument.
rb_require_safe now warns, rb_require_string has been added as a
version that takes a VALUE and does not warn.
One public C function that still takes a safe level argument and that
this doesn't warn for is rb_eval_cmd. We may want to consider
adding an alternative method that does not take a safe level argument,
and warn for rb_eval_cmd.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Features:
- Add caller information to some deprecation messages to make them easier to fix [#7361](https://github.com/bundler/bundler/pull/7361)
- Reconcile `bundle cache` vs `bundle package` everywhere. Now in docs, CLI help and everywhere else `bundle cache` is the preferred version and `bundle package` remains as an alias [#7389](https://github.com/bundler/bundler/pull/7389)
- Display some basic `bundler` documentation together with ruby's RDoc based documentation [#7394](https://github.com/bundler/bundler/pull/7394)
Bugfixes:
- Fix typos deprecation message and upgrading docs [#7374](https://github.com/bundler/bundler/pull/7374)
- Deprecation warnings about `taint` usage on ruby 2.7 [#7385](https://github.com/bundler/bundler/pull/7385)
- Fix `--help` flag not correctly delegating to `man` when used with command aliases [#7388](https://github.com/bundler/bundler/pull/7388)
- `bundle add` should cache newly added gems if an application cache exists [#7393](https://github.com/bundler/bundler/pull/7393)
- Stop using an insecure folder as a "fallback home" when user home is not defined [#7416](https://github.com/bundler/bundler/pull/7416)
- Fix `bundler/inline` warning about `Bundler.root` redefinition [#7417](https://github.com/bundler/bundler/pull/7417)
|
| |
|
|
|
|
| |
To make the temporary directory non-writable by group and others.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Not sure what is happening, but spec/ruby/security/cve_2018_6914_spec.rb
fails on macOS.
https://github.com/ruby/ruby/runs/294462511#step:10:134
I suspect that the state of a directory is weird immediately after it is
created (not writable or even world writable?). This change tries to
make sure that ENV["TMPDIR"] is actually used by Dir.tmpdir.
|
|
|
|
| |
* See https://bugs.ruby-lang.org/issues/16234#note-16
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The process group id (/proc/[pid]/stat 5th field) is 0
in the Travis arm64 environment.
This is a case where it is available.
$ cat /proc/4543/stat
4543 (ruby) S 4525 4525 1384 34818 4525 4194304 37443 1754841 0 0 366 105 2291 391 20 0 3 0 1381328 1428127744 11475 18446744073709551615 94195983785984 94195986670225 140728933833312 0 0 0 0 0 1107394127 0 0 0 17 2 0 0 1 0 0 94195987686512 94195987708942 94196017770496 140728933835483 140728933835595 140728933835595 140728933842904 0
This is a case where it is not available in Travis arm64 environment.
$ cat /proc/19179/stat
19179 (ruby) S 19160 0 0 0 -1 4194560 37618 1710547 313 163 770 665 5206 1439 20 0 2 0 17529566 1196347392 10319 18446744073709551615 187650811428864 187650815023116 281474602721280 0 0 0 0 4096 1107390031 0 0 0 17 22 0 0 0 0 0 187650815091456 187650815114064 187651414974464 281474602725080 281474602725211 281474602725211 281474602729420 0
See "man proc" for detail.
|
| |
|
|
|
|
|
| |
Make `MultiFormatter` a module and extend the formatter specified
by "-f" option.
|
|
|
|
|
| |
Rmoved optional parameter `printed_exceptions`, and clear
`exceptions` just after printing each exception, instead.
|
|
|
|
|
| |
Let the method of `DottedFormatter` subclasses have the same
arity.
|
|
|
|
| |
This reverts commit 6ffc045a817fbdf04a6945d3c260b55b0fa1fd1e.
|
| |
|
|
|
|
| |
https://github.com/ruby/ruby/pull/2637#discussion_r341812475
|
| |
|
|
|
|
| |
Follow up of 473882e01f7e55753733e2607ace633b5041f11f
|
| |
|
|
|
|
|
|
|
|
|
| |
Since the current working directory is not involved in `Tempfile`
and `Dir.mktmpdir` (except for the last resort), it is incorrect
to derive the traversal path from it. Also, since the rubyspec
temporary directory is created under the build directory, this is
not involved in the target method. Fixed sporadic errors in
test-spec.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Allow Date.new spec to run on 2.7.
Separate Date.valid_jd? specs, since 2.7 is now stricter and
requires numeric value for the first argument.
|
| |
|
|
|
|
|
|
| |
This reverts commit fa8ac91e957a076f6df1adaecad7896817138009.
Previous behavior is intentional.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fiber#transfer previously made it impossible to resume the fiber
if it was transferred to (no resuming the target of Fiber#transfer).
However, the documentation specifies that you cannot resume a fiber
that has transferred to another fiber (no resuming the source of
Fiber#transfer), unless control is transferred back.
Fix the code by setting the transferred flag on the current/source
fiber, and unsetting the transferred flag on the target fiber.
Fixes [Bug #9664]
Fixes [Bug #12555]
|
| |
|
|
|
|
| |
Fixes [Bug #10314]
|
|
|
|
|
| |
File.extname now returns a dot string at a name ending with a dot.
[Bug #15267]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* {String|Symbol}#match{?} with nil returns falsy
To improve consistency with Regexp#match{?}
* String#match(nil) returns `nil` instead of TypeError
* String#match?(nil) returns `false` instead of TypeError
* Symbol#match(nil) returns `nil` instead of TypeError
* Symbol#match?(nil) returns `false` instead of TypeError
* Prefer exception
* Follow empty ENV
* Drop outdated specs
* Write ruby/spec for above
https://github.com/ruby/ruby/pull/1506/files#r183242981
* Fix merge miss
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit a56d742e69aa8a3a1fe92fc515d93f6e51cf5fbc.
I was checking the CI result of the wrong revision. It actually worked
fine https://ci.appveyor.com/project/ruby/ruby/builds/27866303. Never
mind...
|
|
|
|
|
| |
For some reason the guard_not seems not working as expected
https://ci.appveyor.com/project/ruby/ruby/builds/27866153/job/v6wa6q6p7b7n7r37
|
|
|
|
|
| |
for mswin. This spec is not valid for mswin platform.
https://ci.appveyor.com/project/ruby/ruby/builds/27748774/job/85khngfpc806m5lj
|
|
|
|
|
|
| |
return directly in class/module is an error, so return in
proc in class/module should also be an error. I believe the
previous behavior was an unintentional oversight during the
addition of top-level return in 2.4.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Some warnings are because the @o.rb_scan_args call doesn't
include keyword arguments, but the first argument is passed to
rb_scan_args may have a last hash treated as keywords. Those
should be handled using rb_scan_args_kw on Ruby 2.7.
Other warnings are for the deprecated rb_scan_args behavior to
split option hashes or treat a nil argument as an option hash.
Those warnings should just be suppressed.
|