@@ -11,44 +11,44 @@ Bug fixes:
11
11
* Dump and load instance variables in subclasses of ` Exception ` (#1766 , @rafaelfranca ).
12
12
* Fix ` Date._iso8601 ` and ` Date._rfc3339 ` when the string is an invalid date (#1773 , @rafaelfranca ).
13
13
* Fail earlier for bad handle unwrapping (#1777 , @chrisseaton ).
14
- * Match out of range ArgumentError message with MRI (#1774 , @rafaelfranca )
15
- * Raise Encoding::CompatibilityError with incompatible encodings on regexp (#1775 , @rafaelfranca ).
16
- * Fixed interactions between attributes and instance variables in structs (#1776 , @chrisseaton ).
14
+ * Match out of range ` ArgumentError ` message with MRI (#1774 , @rafaelfranca )
15
+ * Raise ` Encoding::CompatibilityError ` with incompatible encodings on ` Regexp ` (#1775 , @rafaelfranca ).
16
+ * Fixed interactions between attributes and instance variables in ` Struct ` (#1776 , @chrisseaton ).
17
17
* Coercion fixes for ` TCPServer.new ` (#1780 , @XrXr )
18
18
* Fix ` Float#<=> ` not calling ` coerce ` when ` other ` argument responds to it (#1783 , @XrXr ).
19
19
* Do not warn / crash when requiring a file that sets and trigger autoload on itself (#1779 , @XrXr ).
20
- * Strip trailing whitespaces when BigDecimal gets a string (#1796 , @XrXr ).
21
- * Default ` close_others ` in ` Process.exec ` to false like Ruby 2.6 (#1798 , @XrXr ).
20
+ * Strip trailing whitespaces when creating a ` BigDecimal ` with a ` String ` (#1796 , @XrXr ).
21
+ * Default ` close_others ` in ` Process.exec ` to ` false ` like Ruby 2.6 (#1798 , @XrXr ).
22
22
* Don't clone methods when setting method to the same visibility (#1794 , @XrXr ).
23
- * BigDecimal() deal with large rationals precisely (#1797 , @XrXr ).
23
+ * ` BigDecimal() ` deal with large rationals precisely (#1797 , @XrXr ).
24
24
* Make it possible to call ` instance_exec ` with ` rb_block_call ` (#1802 , @XrXr ).
25
- * Struct.new: check for duplicate members (#1803 , @XrXr ).
25
+ * Check for duplicate members in ` Struct.new ` (#1803 , @XrXr ).
26
26
* ` Process::Status#to_i ` return raw ` waitpid(2) ` status (#1800 , @XrXr ).
27
- * Process#exec: set close-on-exec to false for fd redirection (#1805 , @XrXr , @rafaelfranca ).
27
+ * ` Process#exec ` : set close-on-exec to false for fd redirection (#1805 , @XrXr , @rafaelfranca ).
28
28
* Building C extensions should now work with frozen string literals (#1786 ).
29
29
* Keep the Truffle working directory in sync with the native working directory.
30
- * Rename ` to_native ` to ` polyglot_to_native ` to match ` polyglot_pointer? ` and ` polyglot_address ` methods.
30
+ * Rename ` to_native ` to ` polyglot_to_native ` to match ` polyglot_pointer? ` and ` polyglot_address ` methods.
31
31
* Fixed missing partial evaluation boundary in ` Array#{sort,sort!} ` (#1727 ).
32
32
* Fixed the class of ` self ` and the wrapping ` Module ` for ` Kernel#load(path, wrap=true) ` (#1739 ).
33
33
* Fixed missing polyglot type declaration for ` RSTRING_PTR ` to help with native/managed interop.
34
34
* Fixed ` Module#to_s ` and ` Module#inspect ` to not return an extra ` #<Class: ` for singleton classes.
35
35
* Arrays backed by native storage now allocate the correct amount of memory (#1828 ).
36
36
* Fixed issue in ` ConditionVariable#wait ` that could lose a ` ConditionVariable#signal ` .
37
- * Do not leak TruffleRuby specific method Array#swap (#1816 )
37
+ * Do not expose TruffleRuby- specific method ` Array#swap ` (#1816 )
38
38
* Fixed ` #inspect ` on broken UTF-8 sequences (#1842 , @chrisseaton ).
39
- * ` Truffle::Interop.keys ` should report methods of String and Symbol (#1817 )
39
+ * ` Truffle::Interop.keys ` should report methods of ` String ` and ` Symbol ` (#1817 )
40
40
* ` Kernel#sprintf ` encoding validity has been fixed (#1852 , @XrXr ).
41
- * Fixed File.fnmatch causes ArrayIndexOutOfBoundsException (#1845 ).
41
+ * Fixed ` ArrayIndexOutOfBoundsException ` in ` File.fnmatch ` (#1845 ).
42
42
* Make ` String#concat ` work with no or multiple arguments (#1519 ).
43
43
* Make ` Array#concat ` work with no or multiple arguments (#1519 ).
44
- * Fixed BigDecimal coerce initial argument using ` to_str ` (#1826 ).
45
- * Fixed ` NameError ` , ` NoMethodError ` , and ` SystemCallError ` dup with internal field data .
44
+ * Coerce ` BigDecimal(arg) ` using ` to_str ` (#1826 ).
45
+ * Fixed ` NameError#dup ` , ` NoMethodError#dup ` , and ` SystemCallError#dup ` to copy internal fields .
46
46
* Make ` Enumerable#chunk ` work without a block (#1518 ).
47
- * Fixed issue with ` SystemCallError.new ` setting a backtrace.
47
+ * Fixed issue with ` SystemCallError.new ` setting a backtrace too early .
48
48
* Fixed ` BigDecimal#to_s ` formatting issue (#1711 ).
49
49
* Run ` END ` keyword block only once at exit.
50
- * Implement Numeric#clone method to return self.
51
- * Fixed ` Symbol#to_proc ` to create proc with nil ` source_location ` (#1663 ).
50
+ * Implement ` Numeric#clone ` to return ` self ` .
51
+ * Fixed ` Symbol#to_proc ` to create a ` Proc ` with ` nil ` ` source_location ` (#1663 ).
52
52
* Make ` GC.start ` work with keyword arguments.
53
53
* Fixed ` Kernel#clone ` for ` nil ` , ` true ` , ` false ` , ` Integer ` , and ` Symbol ` .
54
54
* Make top-level methods available in ` Context#getBindings() ` (#1838 ).
@@ -62,7 +62,7 @@ Compatibility:
62
62
* Implemented the ` unit ` argument of ` Time.at ` (#1791 , @XrXr ).
63
63
* Implemented ` keyword_init: true ` for ` Struct.new ` (#1789 , @XrXr ).
64
64
* Implemented ` MatchData#dup ` (#1792 , @XrXr ).
65
- * Implemented a native storage strategy for arrays to allow better C extension compatibility.
65
+ * Implemented a native storage strategy for ` Array ` to allow better C extension compatibility.
66
66
* Implemented ` rb_check_symbol_cstr ` (#1814 ).
67
67
* Implemented ` rb_hash_start ` (#1841 , @XrXr ).
68
68
* JCodings has been updated from 1.0.42 to 1.0.45.
@@ -80,8 +80,8 @@ Compatibility:
80
80
Performance:
81
81
82
82
* Use a smaller limit for identity-based inline caches to improve warmup by avoiding too many deoptimizations.
83
- * Long array strategies now correctly declare that they accept Integers , reducing deoptimisations and proomotions to Object arrays .
84
- * Enable inline caching of symbol conversion for ` rb_iv_get ` and ` rb_iv_set ` .
83
+ * ` long[] ` array storage now correctly declare that they accept ` int ` values , reducing deoptimisations and promotions to ` Object[] ` storage .
84
+ * Enable inline caching of ` Symbol ` conversion for ` rb_iv_get ` and ` rb_iv_set ` .
85
85
* ` rb_type ` information is now cached on classes as a hidden variable to improve performance.
86
86
* Change to using thread local buffers for socket calls to reduce allocations.
87
87
* Refactor ` IO.select ` to reduce copying and optimisation boundaries.
0 commit comments