| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6698
|
|
A patch from katsu (Katsuhiro Ueno)
[Bug #19110]
Notes:
Merged: https://github.com/ruby/ruby/pull/6689
|
|
|
|
|
|
We switch to a new page when we detect dropped_bytes flipping from false
to true. Previously, when we patch code for invalidation during code gc,
we start with the flag being set to true, so we failed to apply patches
that straddle pages. We would write out jumps half way and then stop,
which left the code corrupted.
Reset the flag before patching so we patch across pages properly.
Notes:
Merged: https://github.com/ruby/ruby/pull/6686
|
|
Preivously we didn't have a "checking ...." line for this check and when
rustc was too old, we would dump the error message to the console like:
checking for rustc... rustc
error: there is no argument named `x`
--> <anon>:1:33
|
1 | fn main() { let x = 1; format!("{x}"); }
| ^^^
error: aborting due to previous error
`configure` checks usually don't do this and this might be confusing.
With this commit it now says something like:
checking whether rustc is new enough for YJIT... no
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
This dispatches to a c func for doing the dynamic lookup. I experimented with chain on the proc but wasn't able to detect which call sites would be monomorphic vs polymorphic. There is definitely room for optimization here, but it does reduce exits.
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6692
|
|
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
code
(https://github.com/ruby/irb/pull/436)
https://github.com/ruby/irb/commit/1595337149
|
|
gems
https://github.com/rubygems/rubygems/commit/11229b16c3
|
|
gem selection
https://github.com/rubygems/rubygems/commit/dd0c94f16a
|
|
* YJIT: improve/fix code to automatically build YJIT when available
* Set YJIT_SUPPORT=no
* Fix rustc => $RUSTC
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
[Bug #19105]
If no fiber scheduler is registered and the fiber that
owns the lock and the one that try to acquire it
both belong to the same thread, we're in a deadlock case.
Co-authored-by: Jean Boussier <byroot@ruby-lang.org>
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
https://github.com/ruby/error_highlight/commit/59c291cce1
|
|
GCC [Bug 99578] seems triggered by calling `rb_reg_last_match` before
`match_check(match)`, probably by `NIL_P(match)` in `rb_reg_nth_match`.
[Bug 99578]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
Notes:
Merged: https://github.com/ruby/ruby/pull/6690
|
|
`throw TAG_BREAK` instruction makes a jump only if the continuation of
catch of TAG_BREAK exactly matches the instruction immediately following
the "send" instruction that is currently being executed. Otherwise, it
seems to determine break from proc-closure.
Branch coverage may insert some recording instructions after "send"
instruction, which broke the conditions for TAG_BREAK to work properly.
This change forces to set the continuation of catch of TAG_BREAK
immediately after "send" (or "invokesuper") instruction.
[Bug #18991]
Notes:
Merged: https://github.com/ruby/ruby/pull/6688
|
|
Before:
```
Reducing stack by rule 639 (line 5062):
$1 = token "integer literal" (1.0-1.1: 1)
-> $$ = nterm simple_numeric (1.0-1.1: )
```
After:
```
Reducing stack by rule 641 (line 5078):
$1 = token "integer literal" (1.0-1.1: 1)
-> $$ = nterm simple_numeric (1.0-1.1: NODE_LIT)
```
`"<*>"` is supported by Bison 2.3b (2008-05-27) or later.
https://git.savannah.gnu.org/cgit/bison.git/commit/?id=12e3584054c16ab255672c07af0ffc7bb220e8bc
Therefore developers need to install Bison 2.3b+ to build ruby from
source codes if their Bison is older.
Minimum version requirement for Bison is changed to 3.0.
See: https://bugs.ruby-lang.org/issues/19068 [Feature #19068]
Notes:
Merged: https://github.com/ruby/ruby/pull/6579
|
|
|
|
|
|
|
|
|
|
|
|
(https://github.com/ruby/irb/pull/430)
* Support non-string input in show_source
* Test show_source as a method
|
|
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
There are a few downsides of the current approach:
1. Because gem specs are lazily retrieved, this computation happens in
every irb completion test case, which is not necessary. (In tests we
don't cache the result of `retrieve_files_to_require_from_load_path`)
2. Gem::Specification.latest_specs is sensible to the content of
LOAD_PATH. And when combined with 1, tests fail "randomly" if they
try to mutate LOAD_PATH, even though the test subject it's something
else.
So by pre-computing and storing the gem paths in a constant, it guarantees
that the computation only happens once and it doesn't get affected by test
cases.
One argument could be made against the change is that, it'll store
unnecessary data for users that disable autocompletion. But the
counter-arguments are:
1. Since autocompletion is enabled by default, this should not be the
case for most users.
2. For users with autocompletion enabled, IRB already caches the
result of `retrieve_files_to_require_from_load_path` in memory, which
should have a similar size of GEM_SPECS. And we currently haven't
received any report about problems caused by such memory consumption.
https://github.com/ruby/irb/commit/c671d39020
|
|
when force is true"
This reverts commit https://github.com/ruby/fileutils/commit/fa65d676ece9.
This caused some incompatibility problems in real-world cases.
https://bugs.ruby-lang.org/issues/18784#change-98927
https://bugs.ruby-lang.org/issues/18784#change-98967
https://github.com/ruby/fileutils/commit/42983c2553
|
|
https://github.com/rubygems/rubygems/commit/cc12e68637
|
|
The IRIX OS is no longer maintained with the last release being 16 years
ago.
https://github.com/rubygems/rubygems/commit/5381c6a871
|
|
The bitrig OS is no longer maintained with the last release being 7
years ago.
https://github.com/rubygems/rubygems/commit/85ed90ddd0
|
|
Support for HP-UX was dropped in Ruby in ruby/ruby#5457.
https://github.com/rubygems/rubygems/commit/a3a8df3582
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Even if `rustc` is available, it should not be an error unless
`--enable-yjit` is explicitly given.
Notes:
Merged: https://github.com/ruby/ruby/pull/6681
|
|
As the target-list of `rustc` is different from `config.guess` and
`config.sub`, `$target` cannot be used directly.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6677
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/6677
|
|
fiber machine stack is placed outside of C stack allocated by wasm-ld,
so highest stack address recorded by `rb_wasm_record_stack_base` is
invalid when running on non-main fiber.
Therefore, we should scan `stack_{start,end}` which always point a valid
stack range in any context.
Notes:
Merged: https://github.com/ruby/ruby/pull/6679
|
|
https://github.com/tric/trick2018/pull/5
|