| Age | Commit message (Collapse) | Author |
|
https://github.com/ruby/rubygems/commit/2142e405b0
|
|
I'm trying to speed up the bundler tests. The tests shell out a lot in
order to build gems. We can build gems without creating a sub-process.
This change reduced the test suite time from ~24 minutes, to about ~21
minutes on my machine. Once we have more of these "asset generation"
routines done in the same process, I think we can start caching the
outputs for further improvements
https://github.com/ruby/rubygems/commit/ebf27056c6
|
|
These refer to "OptimizedMethodType" which is a subcategory of "MethodType::Optimized"
so name them after the latter to avoid "not_optimized_optimized".
|
|
Co-authored-by: Randy Stauner <randy@r4s6.net>
|
|
The crash was fixed by a4dff09be79b52288a47658964d25e5aa84fc960 ("Fix
resolving refined module-defined method"). I had a patch for this around
for a few months but never merged it. Oops!
|
|
|
|
This reverts commit 2998c8d6b99ec49925ebea42198b29c3e27b34a7.
We need to find a better way to fix this bug. Even with this refcount
change, errors were still being seen in CI. For now we need to remove
this failing test.
|
|
Mention that it is asynchronous and that the killed thread can still run
a small amount of ruby code before exiting.
|
|
This race condition was found when calling `Thread#join` with a timeout
inside a ractor. The race is between the polling thread waking up the
thread and the `ubf` getting called (`ubf_event_waiting`). The error was
that the ubf or polling thread would set the thread as ready, but then
the other function would do the same.
Fixes [Bug #21614]
|
|
|
|
|
|
allocation_info_tracer_compact_update_object_table_i deletes entries where
the key is no longer in the GC heap but did not free the allocation_info
causing the memory to be leaked.
|
|
|
|
|
|
Make it more obvious that this hasn't been handled and could be
broken down more.
|
|
We don't decrement the super and module subclasses count for iclasses that
are having their classext replaced. This causes the reference count to be
incorrect and leak memory.
The following script demonstrates the memory leak:
module Foo
refine(Object) do
define_method(:<=) {}
end
end
class Bar
include Comparable
end
With RUBY_FREE_AT_EXIT and ASAN, we can see many memory leaks, including:
Direct leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x599f715adca2 in calloc (miniruby+0x64ca2)
#1 0x599f716bd779 in calloc1 gc/default/default.c:1495:12
#2 0x599f716d1370 in rb_gc_impl_calloc gc/default/default.c:8216:5
#3 0x599f716b8ab1 in ruby_xcalloc_body gc.c:5221:12
#4 0x599f716b269c in ruby_xcalloc gc.c:5215:34
#5 0x599f715eab23 in class_alloc0 class.c:790:22
#6 0x599f715e4bec in class_alloc class.c:836:12
#7 0x599f715e60c9 in module_new class.c:1693:17
#8 0x599f715e60a2 in rb_module_new class.c:1701:12
#9 0x599f715e6303 in rb_define_module class.c:1733:14
#10 0x599f715ebc5f in Init_Comparable compar.c:315:22
#11 0x599f716e35f5 in rb_call_inits inits.c:32:5
#12 0x599f7169cbfd in ruby_setup eval.c:88:9
#13 0x599f7169cdac in ruby_init eval.c:100:17
#14 0x599f715b0fa9 in rb_main main.c:41:5
#15 0x599f715b0f59 in main main.c:62:12
#16 0x739b2f02a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#17 0x739b2f02a28a in __libc_start_main csu/../csu/libc-start.c:360:3
#18 0x599f7157c424 in _start (miniruby+0x33424)
|
|
|
|
The --help output suggests this should work
as ZJIT is labeled as the default if YJIT isn't enabled.
|
|
Seems like an oversight
|
|
|
|
This is roughly net-neutral for the number of instructions created but
at least cenetralizes where the Snapshot is made.
Previously, we might have multiple Snapshot per YARV instruction
depending on if it had event flags, if the body of the instruction also
needed a Snapshot, etc.
|
|
|
|
|
|
It is also useful to distribution changes to each upstream repository.
|
|
https://github.com/ruby/zlib/commit/25355bc1dc
|
|
https://github.com/ruby/yaml/commit/388cd27291
|
|
https://github.com/ruby/weakref/commit/cccde64080
|
|
https://github.com/ruby/tempfile/commit/475d719e4d
|
|
Suppress documentation for internals
https://github.com/ruby/singleton/commit/4ac0cc497d
|
|
https://github.com/ruby/rubygems/commit/9b169c700f
|
|
https://github.com/ruby/prettyprint/commit/3a43a4bbf6
|
|
https://github.com/ruby/pp/commit/e1f39cb39c
|
|
https://github.com/ruby/open3/commit/e6d09a6aa8
|
|
https://github.com/ruby/open-uri/commit/1ccc576e9a
|
|
https://github.com/ruby/forwardable/commit/909986fee9
|
|
https://github.com/ruby/find/commit/01232ad51a
|
|
https://github.com/ruby/erb/commit/332e200060
|
|
https://github.com/ruby/delegate/commit/020a6cfe4b
|
|
https://github.com/ruby/digest/commit/16b598d6f2
|
|
Failed build in #70.
Pre-3.0 versions of Ruby didn't support pattern matching, and power_assert warned.
https://github.com/ruby/timeout/commit/983cbf636a
|
|
I would like to start making some of the methods in Gem::Package
private so that we can refactor them better. Right now we have many
methods that are public, and since they are public we can't refactor
them. Historically, I think "private" methods have just been tagged
with :nodoc:, but I would like to be more strict about our APIs
https://github.com/ruby/rubygems/commit/fb352e9176
|
|
Use `<tt>` instead of `+` that cannot enclose punctuations.
https://github.com/ruby/rubygems/commit/f84035c0b6
|
|
It was bound to `module Gem`, instead of `module Deprecate`.
https://github.com/ruby/rubygems/commit/da29f74ba1
|
|
https://github.com/ruby/stringio/commit/cf58a203eb
|
|
https://github.com/ruby/cgi/commit/ebd04d1eb1
|
|
https://github.com/ruby/rubygems/commit/2078f3d351
|
|
https://github.com/ruby/stringio/commit/27b2fb2fce
|
|
https://github.com/ruby/net-http/commit/b7c586985a
|
|
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
|
|
For open_timeout support detection, the previous implementation relied
on an ArgumentError being raised and then rescued. In Ruby, rescue is a
rather expensive operation and should be avoided when possible.
This patch reduces the number of begin-rescues by remembering if the
TCPSocket implementation supports open_timeout.
https://github.com/ruby/net-http/commit/06d982f3a1
|