| Age | Commit message (Collapse) | Author |
|
* Add opt_duparray_send insn to skip the allocation on `#include?`
If the method isn't going to modify the array we don't need to copy it.
This avoids the allocation / array copy for things like `[:a, :b].include?(x)`.
This adds a BOP for include? and tracks redefinition for it on Array.
Co-authored-by: Andrew Novoselac <andrew.novoselac@shopify.com>
* YJIT: Implement opt_duparray_send include_p
Co-authored-by: Andrew Novoselac <andrew.novoselac@shopify.com>
* Update opt_newarray_send to support simple forms of include?(arg)
Similar to opt_duparray_send but for non-static arrays.
* YJIT: Implement opt_newarray_send include_p
---------
Co-authored-by: Andrew Novoselac <andrew.novoselac@shopify.com>
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
(https://github.com/ruby/reline/pull/713)
https://github.com/ruby/reline/commit/5a8da85f2b
|
|
(https://github.com/ruby/irb/pull/1038)
Fixes indent calculation of this input
```
if false
p `ls`
end
```
https://github.com/ruby/irb/commit/4217a46f5d
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12173
|
|
[Feature #19236]
Ref: https://github.com/ruby/ruby/pull/10357
Notes:
Merged: https://github.com/ruby/ruby/pull/12171
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12165
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12172
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12166
|
|
Since mkmf.rb is for extension libraries after installation, it cannot
work alone in build directory and needs to run from extmk.rb.
Notes:
Merged: https://github.com/ruby/ruby/pull/12166
|
|
- Add flags to appropriate variables.
- Use `append_cflags` to append a flag safely, instead of appending
blindly.
Notes:
Merged: https://github.com/ruby/ruby/pull/12166
|
|
As common.mk is used by nmake.exe, the commands there need to be
accepted also by cmd.exe.
Notes:
Merged: https://github.com/ruby/ruby/pull/12166
|
|
(https://github.com/ruby/uri/pull/140)
A follow-up to https://github.com/ruby/uri/commit/bd2e4be9d0fa
Also, leave a comment that the use of `URI::REGEXP` is intentional
https://github.com/ruby/uri/commit/bdf765e44a
|
|
```
NoMethodError: undefined method 'flush' for an instance of JsonWrite
```
|
|
https://github.com/rubygems/rubygems/commit/9ea1539b08
|
|
When converging locked specifications to select the ones that should be
preserved while resolving, we can avoid having to do a second pass to
ignore the ones that have been explicitly unlocked.
https://github.com/rubygems/rubygems/commit/411742703e
|
|
As long as some spec in the materialization is complete.
https://github.com/rubygems/rubygems/commit/9a673b0bbb
|
|
https://github.com/rubygems/rubygems/commit/3041b3d784
|
|
This gives more flexibility to allow further improvements.
https://github.com/rubygems/rubygems/commit/f11a890f5e
|
|
most_specific_locked_platform
So there's no need to pass it around in so many places.
https://github.com/rubygems/rubygems/commit/784ab7481b
|
|
https://github.com/rubygems/rubygems/commit/0c3a65871a
|
|
https://github.com/rubygems/rubygems/commit/d8d68cc00e
|
|
to be conservative
When converging specification to pass the set of versions that should be
preserved from the lockfile during resolution, we should make sure all
top level gems are considered, and only exclude those gems themselves
(and not their dependencies) if their locked versions happen to not be
satisfied by an edited Gemfile.
https://github.com/rubygems/rubygems/commit/ed2f1b7b88
|
|
https://github.com/rubygems/rubygems/commit/d0f789970f
|
|
For consistency with other specs.
https://github.com/rubygems/rubygems/commit/a5b2449896
|
|
https://github.com/rubygems/rubygems/commit/c519830d4d
|
|
sometimes
When used with `LazySpecification` objects, `SpecSet#for` was
incorrectly considering development dependencies. This did not cause any
issues because all usages of this method with `LazySpecification`'s are
not strict, meaning the pass `check = false` and ignore incomplete
specifications. But it was still doing more work than necessary because
development dependencies were still added to the `deps` array for
processing and then ignored because of not being found in the spec set.
Same when converging path specifications and replacing their dependencies.
https://github.com/rubygems/rubygems/commit/6afca8a95f
|
|
https://github.com/rubygems/rubygems/commit/a2bb68a29b
|
|
https://github.com/rubygems/rubygems/commit/6dc64f9851
|
|
https://github.com/rubygems/rubygems/commit/e1caeecdf8
|
|
https://github.com/rubygems/rubygems/commit/6a6041d073
|
|
https://github.com/rubygems/rubygems/commit/df2c9eb52f
|
|
https://github.com/rubygems/rubygems/commit/c382b606bd
|
|
Fix: https://github.com/ruby/json/issues/710
Makes it easier to debug why a given tree of objects can't
be dumped as JSON.
Co-Authored-By: Étienne Barrié <etienne.barrie@gmail.com>
|
|
It's using `rb_gc_mark_maybe` under the hood, which isn't what
we need.
https://github.com/ruby/json/commit/e10d0bffcd
|
|
Ref: https://github.com/ruby/json/issues/524
Rather than to buffer everything in memory.
Unfortunately Ruby doesn't provide an API to write into
and IO without first allocating a string, which is a bit
wasteful.
https://github.com/ruby/json/commit/f017af6c0a
|
|
|
|
|
|
EnvUtil.suppress_warning.
https://github.com/ruby/uri/commit/bd2e4be9d0
|
|
(https://github.com/ruby/uri/pull/138)"
This reverts commit https://github.com/ruby/uri/commit/c00726a20a00.
https://github.com/ruby/uri/commit/22f5a7a790
|
|
|
|
https://bugs.ruby-lang.org/issues/20108
https://bugs.ruby-lang.org/issues/20564
https://bugs.ruby-lang.org/issues/20705
https://bugs.ruby-lang.org/issues/20782
https://bugs.ruby-lang.org/issues/20811
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12169
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12169
|
|
https://github.com/ruby/resolv/actions/runs/12021339854/job/33511655994?pr=64
```
=> 705: with_udp_and_tcp('127.0.0.1', 0) do |u1, t1|
706: with_udp_and_tcp('127.0.0.1', 0) do |u2,t2|
707: u2.close # XXX: u2 UDP socket is not used, but using #with_udp_and_tcp to enable Windows EACCES workaround
708: _, server1_port, _, server1_address = u1.addr
Error: Errno::EACCES: Permission denied - bind(2) for "127.0.0.1" port 55685
```
https://github.com/ruby/ruby/actions/runs/12005069051/job/33461068529?pr=12161
```
1) Error:
TestResolvDNS#test_multiple_servers_with_timeout_and_truncated_tcp_fallback:
Errno::EACCES: Permission denied - bind(2) for "127.0.0.1" port 50676
D:/a/ruby/ruby/src/test/resolv/test_dns.rb:78:in 'TCPServer#initialize'
D:/a/ruby/ruby/src/test/resolv/test_dns.rb:78:in 'TCPServer.new'
D:/a/ruby/ruby/src/test/resolv/test_dns.rb:78:in 'TestResolvDNS#with_udp_and_tcp'
D:/a/ruby/ruby/src/test/resolv/test_dns.rb:705:in 'TestResolvDNS#test_multiple_servers_with_timeout_and_truncated_tcp_fallback'
```
https://github.com/ruby/resolv/commit/05765df178
|
|
|
|
Co-authored-by: John Hawthorn <john@hawthorn.email>
Notes:
Merged: https://github.com/ruby/ruby/pull/12168
|
|
https://github.com/ruby/resolv/commit/83f18e2a49
|
|
https://github.com/ruby/logger/commit/1a64cb552f
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/12157
|