[pull] master from ruby:master - #1399
Merged
Merged
Conversation
…is given The C extension walks the given hash and writes only the keys present (generator.c:1860), and since #1076 the pure generator does the same. The Java one re-wrote every option with its class default, so any configure or merge silently reset max_nesting, allow_nan, ascii_only, script_safe, strict, buffer_initial_length, allow_duplicate_key, as_json and sort_keys. Re-enables the two tests #1076 marked pending on JRuby. ruby/json@bbc73fb69d
escape.c documents html_escape as converting with #to_s "only if it's not T_STRING", and the C extension implements that. The pure fallback converted unconditionally, so a String subclass overriding to_s escaped different bytes on JRuby than on CRuby. ruby/erb@0f8b6ce9ce
Other code size metrics such as `code_region_bytes` use the `_bytes` suffix and `side_exit_size` was the odd one out.
[Feature #22297] When generating code dynamically, you often need to check whether the method already exists, regardless of visibility. Currently it requires two method calls and two method lookups: ```ruby mod.method_defined?(name) || mod.private_method_defined?(name) ``` This is both inconvenient and wastefull in hotspots. You can now match all methods regardless of visibility with a single lookup: ```ruby mod.method_defined?(name, true, true) ```
In builds with RUBY_DEBUG on and we reach a crash like: ``` [BUG] buffer 0x00007b53c94d6548 freed with old_size=19, but was allocated with size=135599789796672 ``` Show the type info for the Ruby object we're currently freeing, if any. The new error message is like: ``` [BUG] buffer 0x00007b53c94d6548 freed with old_size=19, but was allocated with size=135599789796672 while freeing 0x00000001082b0040 T_DATA:VM/cc_refinement_set ``` This is very useful when debugging crashes like this.
This way it works on MMTk. The voodo tied to default GC details for promotions and write-barriers don't test effectively on any other GC but at least the test completes.
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 : )