| Age | Commit message (Collapse) | Author |
|
This previously raised a TypeError. Wrap the Enumerator::Chain in
an Enumerator to work around the problem.
Fixes [Bug #17216]
Notes:
Merged: https://github.com/ruby/ruby/pull/3811
|
|
This reverts commit a9920e7782f225b97e173a88640fe9e116b9964f.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4227
|
|
It seems this breaks tests on Solaris, so I'm reverting it until we
figure out the right fix.
http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210224T210007Z.fail.html.gz
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4221
|
|
It's important to only make the origin when the prepend goes
through, as the precense of the origin informs whether to do an
origin backfill.
This plus 2d877327e fix [Bug #17590].
Notes:
Merged: https://github.com/ruby/ruby/pull/4181
|
|
With this patch, TracePoint receives a `:fiber_switch` event for
_almost_ every fiber switch. Previously, it would not be sent when an
exception was going to be raised. Now the event should only be blockable
by an interrupt (including `Thread#raise`) or a fatal error.
Additionally, interrupts will now be checked on the return fiber
_before_ re-raising the terminating unhandled exception. And a fiber
that terminates with an unhandled exception no longer creates a pending
interrupt on its thread. The exception will be raised in the return
fiber the same way as `Fiber#raise`: using `cont.value` with `cont.argc
== -1`
I moved `rb_exc_raise` from `fiber_store` to the end of `fiber_switch`
after _all_ of the other cleanup code: `fiber_stack_release`,
`th->blocking` increment, `RUBY_VM_CHECK_INTS`, and `EXEC_EVENT_HOOK`.
It seems to me that skipping those other cleanup steps may have also
resulted in other bugs.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
The documentation already specifies that they strip whitespace
and defines whitespace to include null.
This wraps the new behavior in the appropriate guards in the specs,
but does not specify behavior for previous versions, because this
is a bug that could be backported.
Fixes [Bug #17467]
Notes:
Merged: https://github.com/ruby/ruby/pull/4164
|
|
Previously, frames with iseq but no pc were skipped (even before
the refactoring in 3b24b7914c16930bfadc89d6aff6326a51c54295).
Because the entire backtrace was procesed before the refactoring,
this was handled by using later frames instead. However, after
the refactoring, we need to handle those frames or they get
lost.
Keep two iteration counters when iterating, one for the desired
backtrace size (so we generate the desired number of frames), and
one for the actual backtrace size (so we don't process off the end
of the stack). When skipping over an iseq frame with no pc,
decrement the counter for the desired backtrace, so it will
continue to process the expected number of backtrace frames.
Fixes [Bug #17581]
Notes:
Merged: https://github.com/ruby/ruby/pull/4120
|
|
negative cache on a class which does not have subclasses was not
invalidated, but it should be invalidated because other classes
can cache this negative cache.
[Bug #17553]
Notes:
Merged: https://github.com/ruby/ruby/pull/4201
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4075
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4075
|
|
In RFC 3339, -00:00 is used for the time in UTC is known, but the
offset to local time is unknown. Support that representation by
`-` flag for `z`.
Notes:
Merged: https://github.com/ruby/ruby/pull/4075
|
|
http://ci.rvm.jp/results/trunk-test@ruby-sky1/3359644
```
: 1)
: TestEncoding#test_nonascii_library_path [/tmp/ruby/v3/src/trunk-test/test/ruby/test_encoding.rb:157]:
: Exception(LoadError) with message matches to /\[Bug #16382\]/.
```
|
|
I think it's more friendly and easier to work with to return `nil` when
the feature is not found in the $LOAD_PATH.
Notes:
Merged: https://github.com/ruby/ruby/pull/2317
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4187
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4187
|
|
Should use the given codepage argument.
Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>
|
|
Enumerable implements #to_a but not #to_array.
|
|
Check for cyclic prepend before making any changes. This requires
scanning the module ancestor chain twice, but in general modules
do not have large numbers of ancestors.
Notes:
Merged: https://github.com/ruby/ruby/pull/4165
|
|
|
|
|
|
String#casecmp? also normalize upper case characters in legacy encodings.
|
|
[Bug #17575]
|
|
|
|
Co-authored-by: ryannevell (Ryan Nevell) <ryan.nevell@gmail.com>
Notes:
Merged: https://github.com/ruby/ruby/pull/4101
|
|
After setting ruby2_keywords for bmethod, the rest of arguments
had been ignored. [Bug #17558]
Notes:
Merged: https://github.com/ruby/ruby/pull/4096
|
|
|
|
http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20210119T033003Z.log.html.gz
```
/home/chkbuild/chkbuild/tmp/build/20210119T033003Z/ruby/test/ruby/test_jit.rb:781:
warning: -e:5: warning: possibly useless use of -@ in void context
```
|
|
http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20210119T033003Z.log.html.gz
```
/home/chkbuild/chkbuild/tmp/build/20210119T033003Z/ruby/test/ruby/test_pattern_matching.rb:798:
warning: assigned but unused variable - x
```
|
|
Peephole optimization doesn't play well with find pattern at
least. The only case when a pattern matching could have
unreachable patterns is when we have lasgn/dasgn node, which
shouldn't happen in real-life.
Fixes https://bugs.ruby-lang.org/issues/17534
|
|
forgotten in https://github.com/ruby/ruby/pull/4018
|
|
|
|
* Warn Struct#initialize with only keyword args
A part of [Feature #16806]
* Do not warn if `keyword_init: false`
is explicitly specified
* Add a NEWS entry
* s/in/from/
* Make sure all fields are initialized
Notes:
Merged-By: k0kubun <takashikkbn@gmail.com>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4061
|
|
in receiver
Previously, if a class included a module and then prepended the
same module, the prepend had no effect. This changes the behavior
so that the prepend has an effect unless the module is already
prepended the receiver.
While here, rename the origin_seen variable in include_modules_at,
since it is misleading. The variable tracks whether c has been seen,
not whether the origin of klass has been.
Fixes [Bug #17423]
Notes:
Merged: https://github.com/ruby/ruby/pull/4072
|
|
because the name "MJIT" is an internal code name, it's inconsistent with
--jit while they are related to each other, and I want to discourage future
JIT implementation-specific (e.g. MJIT-specific) APIs by this rename.
[Feature #17490]
|
|
Callinfo was being written in to an array and the GC would not see the
reference on the stack. `new_insn_send` creates a new callinfo object,
then it calls `new_insn_core`. `new_insn_core` allocates a new INSN
linked list item, which can end up calling `xmalloc` which will trigger
a GC:
https://github.com/ruby/ruby/blob/70cd351c7c71c48ee18d7c01e851a89614086f8f/compile.c#L968-L969
Since the callinfo object isn't on the stack, the GC won't see it, and
it can get collected. This patch just refactors `new_insn_send` to keep
the object on the stack
Co-authored-by: John Hawthorn <john@hawthorn.email>
Notes:
Merged: https://github.com/ruby/ruby/pull/4066
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4059
|
|
[Feature #17485]
Notes:
Merged: https://github.com/ruby/ruby/pull/4010
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4010
|
|
They should be affected, as well as `$VERBOSE`, by `-w`/`-W`
options, not only in the main script but in scripts loaded by `-r`
option too.
Notes:
Merged: https://github.com/ruby/ruby/pull/4042
|
|
This reverts commit fac2498e0299f13dffe4f09a7dd7657fb49bf643 for
now, due to [Bug #17509], the breakage in the case `super` is
called in `respond_to?`.
Notes:
Merged: https://github.com/ruby/ruby/pull/4057
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4020
|
|
Co-authored-by: Jeremy Evans <code@jeremyevans.net>
Notes:
Merged: https://github.com/ruby/ruby/pull/4052
|
|
https://bugs.ruby-lang.org/issues/17485#change-89871
|
|
|
|
|
|
Not to interfere in other tests.
Notes:
Merged: https://github.com/ruby/ruby/pull/4043
|
|
e7fc353f04 reverted vm_ic_hit_p's signature change made in 53babf35ef,
which broke JIT compilation of getinlinecache.
To make sure it doesn't happen again, I separated vm_inlined_ic_hit_p to
make the intention clear.
|