| Age | Commit message (Collapse) | Author |
|
|
|
It's the most likely control character so it's worth
giving a better error message for it.
https://github.com/ruby/json/commit/1da3fd9233
|
|
Make it embedded and compaction aware.
|
|
That call is surprisingly expensive, so trying doing it once
in `#synchronize` and then passing the fiber to enter and exit
saves quite a few cycles.
|
|
|
|
https://github.com/ruby/forwardable/commit/0257b590c2
|
|
Fix: https://github.com/ruby/forwardable/issues/35
[Bug #21708]
Trying to compile code to check if a method can use the delegation
fastpath is a bit wasteful and cause `RUPYOPT=-d` to be full of
misleading errors.
It's simpler and faster to use a simple regexp to do the same check.
https://github.com/ruby/forwardable/commit/de1fbd182e
|
|
|
|
This removes all allocations from the find_or_insert loop, which
requires us to start the search over after calling the provided create
function.
In exchange that allows us to assume that all concurrent threads insert
will get the same view of the GC state, and so should all be attempting
to clear and reuse a slot containing a garbage object.
|
|
This refactors the concurrent set to examine and reserve a slot via CAS
with the hash, before then doing the same with the key.
This allows us to use an extra bit from the hash as a "continuation bit"
which marks whether we have ever probed past this key while inserting.
When that bit isn't set on deletion we can clear the field instead of
placing a tombstone.
|
|
|
|
https://github.com/ruby/optparse/commit/f2e31e81a5
|
|
|
|
https://github.com/ruby/win32-registry/commit/2a6ab00f67
|
|
(https://github.com/ruby/stringio/pull/171)
https://github.com/ruby/stringio/commit/95a111017a
|
|
(https://github.com/ruby/stringio/pull/165)
Adds to "Position": pos inside a character.
Makes a couple of minor corrections.
---------
https://github.com/ruby/stringio/commit/ff332abafa
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
|
|
(https://github.com/ruby/stringio/pull/190)
https://github.com/ruby/stringio/commit/77209fac20
|
|
(https://github.com/ruby/stringio/pull/188)
https://github.com/ruby/stringio/commit/66360ee5f1
|
|
https://github.com/ruby/stringio/commit/e2d24ae8d7
|
|
(https://github.com/ruby/stringio/pull/189)
https://github.com/ruby/stringio/commit/e3d16d30ed
|
|
Pathname is now embedded class of Ruby
|
|
|
|
https://github.com/ruby/date/commit/1d0aadc295
|
|
|
|
https://github.com/ruby/ipaddr/commit/93ef50bc04
|
|
|
|
|
|
https://github.com/ruby/resolv/commit/a0e89bbe48
|
|
|
|
https://github.com/ruby/psych/commit/d8053b0d16
|
|
These macros have been defined here and there, so collect them.
|
|
even if `USE_RUBY_DEBUG_LOG=0`.
It becomes `fprintf(stderr, ...)`.
|
|
As the markers for spec/mspec/tool/remove_old_guards.rb.
|
|
Fix typo in thread_pthread.c: threre -> there
|
|
* ZJIT: Add dump to file for --zjit-stats
* ZJIT: Rename --zjit-stats=quiet to --zjit-stats-quiet
|
|
This provides information on the class of the frozen object. It also
results in a much simpler implementation.
Fixes [Bug #21374]
|
|
With the following code:
```ruby
object = []
object.singleton_class
object.freeze
object.instance_variable_set(:@a, 42)
```
The previous error message was:
```
can't modify frozen #<Class:#<Array:0x00000631d1308f78>>: []
```
With this change, the error message is:
```
can't modify frozen Array: []
```
Since we show the inspect value of the affected object, I think
including the singleton class instead of the actual class if it
exists makes the error message harder to understand.
|
|
Previously, this didn't work correctly, resulting in a
SystemStackError. This fixes the issue by finding the related
superclass method entry, and updating the orig_me in the
refinement method to point to the superclass method.
Fixes [Bug #21446]
|
|
Previously, if an argument splat and keywords are provided by
the caller, it did not check whether the method/proc accepted
keywords before avoiding the allocation. This is incorrect,
because if the method/proc does not accept keywords, the
keywords passed by the caller are added as a positional
argument, so there must be an allocation to avoid mutating
the positional splat argument.
Add a check that if the caller passes keywords, the
method/proc must accept keywords in order to optimize.
If the caller passes a keyword splat, either the
method/proc must accept keywords, or the keyword splat must
be empty in order to optimize.
If keywords are explicitly disallowed via `**nil`, the
optimization should be skipped, because the array is mutated
before the ArgumentError exception is raised.
In addition to a test for the correct behavior, add an
allocation test for a method that accepts an anonymous splat
without keywords.
Fixes [Bug #21757]
|
|
This adds comments to the hir dump output like this:
v13:BasicObject = SendWithoutBlock v6, :test, v11 # SendFallbackReason: Complex argument passing
|
|
[Bug #21771]
It may raise so it's incorrect and can lead to the compiler
optimizing the call out.
|
|
|
|
|
|
|
|
'NV Domain' does not change results of `powershell -command Get-DnsClientGlobalSetting`.
'Domain' do this.
https://github.com/ruby/resolv/commit/d49e3d5b84
|
|
|
|
It is impossible to delete DLLs being loaded on Windows. I guess that
unnamed (no accessible path on the filesystem) files are not allowed
essentially. The only way is to relax the condition, such as no files
are left after the process terminated, probably.
|
|
|
|
|
|
|