[pull] master from ruby:master - #1291
Merged
Merged
Conversation
RubyVM::InstructionSequence#to_binary raises "should not compile with coverage" while coverage measurement is enabled. The test added by 6e65742 (Proc#syntax_tree) calls to_binary directly, which has made `make check COVERAGE=true` (the ruby/actions coverage workflow) fail on every run since it went green after 3dc6bdf. Guard the call with the same rescue/omit idiom used in test_iseq.rb and test_iseq_load.rb. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
gc_start_global never set up a profile record, so once a process has a second objspace and GC.start runs a global collection, GC::Profiler records nothing: raw_data comes back empty and raw_data.last is nil. TestGc#test_profiler_raw_data_includes_wall_time fails that way whenever a test-all worker has already run something that makes a Ractor, which is why it shows up as a flake -- it depends on how the suite is split across workers. What a collection records about itself before it runs was written out in gc_start_body; extract it as gc_start_record and let both paths use it, so a field added later reaches the global collection too. It covers the record itself, what triggered the collection (latest_gc_info, which had been left reporting the previous local one), the heap figures the record is built from at the end, and gc_reset_malloc_info -- which fills the record's malloc figures and resets the malloc trigger, since a global collection is a collection and what accumulated before it must not count towards the next one. A global collection's record now matches what a local one produces. The added test fails without the fix and does not depend on test ordering. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Of the four figures a collection snapshots about itself, three are read only by gc_prof_set_heap_info inside #if GC_PROFILE_MORE_DETAIL, and one of those -- heap_total_slots_at_gc_start -- has no reader at all. A default build walks every heap twice per collection to fill fields it will never look at. Put the two the detailed profiler wants behind the same #if, and drop the third. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Preserve native console input event data for Windows consumers. ruby/io-console@c898eda906
`IO#console_input_events` preserves records that the old size change helper discards. ruby/io-console@cea11642b3
Add cross-platform cursor visibility operations so console users can hide the cursor while redrawing without platform-specific code. ruby/io-console@9db579fcf1
Expose virtual terminal processing and line wrapping flags so console users can configure output without calling Win32 APIs directly. ruby/io-console@dbfb2b0f8d
Add `IO#input_pending?` so console users can detect queued input without consuming it or relying on platform-specific APIs. ruby/io-console@9c7cb6de0f
Add a `timeout` option to `IO#console_input_events` so callers can wait for input while remaining responsive to Ruby interrupts. ruby/io-console@7801e85118
Expose Windows input constants for console event consumers. ruby/io-console@e712668ca2
Let JRuby use Reline's native Windows path without Fiddle. ruby/io-console@2b41f0f257
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )