| Age | Commit message (Collapse) | Author |
|
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
|
|
because it's much slower on M1 https://github.com/ruby/erb/pull/29.
It'd be too complicated to switch the implementation based on known
optimized platforms / versions.
Besides, short strings are the most common usages of this method and
SIMD doesn't really help that case. All in all, I can't justify the
existence of this code.
https://github.com/ruby/erb/commit/30691c8995
|
|
https://github.com/ruby/erb/commit/12058c3784
|
|
This is the same trick used by https://github.com/k0kubun/hescape to
choose the best strategy for different scenarios.
https://github.com/ruby/erb/commit/af26da2858
|
|
(https://github.com/ruby/erb/pull/29)
Typically, strpbrk(3) is optimized pretty well with SIMD instructions.
Just using it makes this as fast as a SIMD-based implementation for the
no-escape case.
Not utilizing this for escaped cases because memory allocation would be
a more significant bottleneck for many strings anyway. Also, there'll be
some overhead in calling a C function (strpbrk) many times because we're
not using SIMD instructions directly. So using strpbrk all the time
might not necessarily be faster.
|
|
|
|
* Auto-enable YJIT build when rustc >= 1.58.0 present
* Try different incantation to have rustc output to stdout only
* Add comment, remove whitespace
* Try to detect if we are on a platform on which YJIT is supported
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
Bundler's backups changes environment variables starting with
BUNDLER_ORIG_. This causes a lot of noise in tests as the leakchecker
reports them as changed.
|
|
https://github.com/ruby/irb/commit/27e4274b3c
|
|
(https://github.com/ruby/erb/pull/28)
`prepend` is prioritized more than ActiveSupport's monkey-patch, but the
monkey-patch needs to work.
https://github.com/ruby/erb/commit/611de5a865
|
|
|
|
We were previously incrementing the max_iv_count on a class in gc
freeing. By the time we free an object though, we're not guaranteed its
class is still valid. Instead, we can do this when marking and we're
guaranteed the object still knows its class.
Notes:
Merged: https://github.com/ruby/ruby/pull/6673
|
|
|
|
rb_obj_is_kind_of returns a Ruby Qtrue or Qfalse. We should use RTEST
rather than assuming that Qfalse is 0.
|
|
Co-authored-by: Michael Herold <michael.herold@shopify.com>
Notes:
Merged: https://github.com/ruby/ruby/pull/6670
|
|
https://github.com/ruby/irb/commit/ee068d039b
|
|
|
|
Xcode no longer links the system include files directory to `/usr`.
Extract the actual header file path from cpp output.
|
|
|
|
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
[Feature #19102]https://github.com/ruby/erb/commit/ecebf8075c
|
|
[Feature #19102]https://github.com/ruby/erb/commit/38c6e182fb
|
|
https://github.com/ruby/erb/commit/ac9b219fa9
|
|
Since the regexp had expected an empty line before `Co-Authored-By:`
trailer lines, it failed to match when the body has the trailer only.
|
|
|
|
https://github.com/benchmark-driver/benchmark-driver/pull/75 is useful
for quickly benchmarking a single method in CRuby.
|
|
conveniently
(https://github.com/ruby/irb/pull/429)
* Create a base TestIRB::TestCase class
* Save/restore encodings for tests that initializes InputMethod classes
Because `RelineInputMethod#initializes` calls `set_encoding`, which
changes stdio/out/err and Encoding's default encoding values, we need to
make sure any test that directly or indirectly (e.g. through Context)
initializes `RelineInputMethod` restores encodings.
`ReadlineInputMethod` also changes encodings but currently no tests
cover it.
* Remove unnecessary TestHelper module
Since we now have a base TestCase, without_rdoc can just live there.
https://github.com/ruby/irb/commit/c2874ec121
|
|
(https://github.com/ruby/irb/pull/426)
* Allow non-identifier aliases
* Move the configuration to IRB.conf
* Avoid abusing method lookup for symbol aliases
* Add more alias tests
* A small optimization
* Assume non-nil Context
* Load IRB.conf earlier
https://github.com/ruby/irb/commit/e23db5132e
|
|
Readers didn't realize that you can use --prefix with
--disable-install-doc.
|
|
Before this change, rdoc shows empty in 'slice' method section
Notes:
Merged: https://github.com/ruby/ruby/pull/6668
|
|
`Gem` is not undefined on test-all
https://github.com/ruby/irb/commit/08ac803d61
|