@@ -5,7 +5,8 @@ Updated to Ruby 2.6.1.
5
5
Bug fixes:
6
6
7
7
* Implement ` rb_io_wait_writable ` (#1586 ).
8
- * Fixed error when using arrows keys first within ` irb ` or ` pry ` (#1478 , #1486 ).
8
+ * Fixed error when using arrows keys first within ` irb ` or ` pry `
9
+ (#1478 , #1486 ).
9
10
* Coerce the right hand side for all ` BigDecimal ` operations (#1598 ).
10
11
* Combining multiple ` ** ` arguments containing duplicate keys produced
11
12
an incorrect hash. This has now been fixed (#1469 ).
@@ -21,12 +22,14 @@ Changes:
21
22
22
23
* ` -Xoptions ` has been removed - use ` --help:languages ` instead.
23
24
* ` -Xlog= ` has been removed - use ` --log.level= ` instead.
24
- * ` -J ` has been removed - use ` --jvm. ` instead.
25
- * ` -J-cp lib.jar ` and so on have removed - use ` --jvm.cp=lib.jar ` or ` --jvm.classpath=lib.jar ` instead.
25
+ * ` -J ` has been removed - use ` --vm. ` instead.
26
+ * ` -J-cp lib.jar ` and so on have removed - use ` --vm.cp=lib.jar ` or
27
+ ` --vm.classpath=lib.jar ` instead.
28
+ * ` --jvm. ` and ` --native. ` have been deprecated, use ` --vm. ` instead to pass
29
+ VM options.
26
30
* ` -Xoption=value ` has been removed - use ` --option=value ` instead.
27
31
* The ` -X ` option now works as in MRI.
28
32
* ` --help:debug ` is now ` --help:internal ` .
29
- * ` --jvm. ` and ` --native. ` have been deprecated, use ` --vm. ` instead to pass VM options.
30
33
* ` ripper ` is still not implemented, but the module now exists and has some
31
34
methods that are implemented as no-ops.
32
35
@@ -41,22 +44,28 @@ New features:
41
44
42
45
Bug fixes:
43
46
44
- * Fixed Enumerator::Lazy which wrongly rescued StandardError (#1557 ).
47
+ * Fixed ` Enumerator::Lazy ` which wrongly rescued ` StandardError ` (#1557 ).
45
48
* Fixed several problems with ` Numeric#step ` related to default arguments,
46
49
infinite sequences, and bad argument types (#1520 ).
47
50
* Fixed incorrect raising of ` ArgumentError ` with ` Range#step ` when at
48
51
least one component of the ` Range ` is ` Float::INFINITY ` (#1503 ).
49
- * Fixed the wrong encoding being associated with certain forms of heredoc strings (#1563 ).
50
- * Call ` #coerce ` on right hand operator if ` BigDecimal ` is the left hand operator (#1533 ).
51
- * Fixed return type of division of ` Integer.MIN_VALUE ` and ` Long.MIN_VALUE ` by -1 (#1581 ).
52
+ * Fixed the wrong encoding being associated with certain forms of heredoc
53
+ strings (#1563 ).
54
+ * Call ` #coerce ` on right hand operator if ` BigDecimal ` is the left hand
55
+ operator (#1533 ).
56
+ * Fixed return type of division of ` Integer.MIN_VALUE ` and ` Long.MIN_VALUE `
57
+ by -1 (#1581 ).
52
58
* ` Exception#cause ` is now correctly set for internal exceptions (#1560 ).
53
- * ` rb_num2ull ` is now implemented as well as being declared in the ruby.h header (#1573 ).
59
+ * ` rb_num2ull ` is now implemented as well as being declared in the ` ruby.h `
60
+ header (#1573 ).
54
61
* ` rb_sym_to_s ` is now implemented (#1575 ).
55
- * ` R_TYPE_P ` now returns the type number for a wider set of Ruby objects #(1574).
62
+ * ` R_TYPE_P ` now returns the type number for a wider set of Ruby
63
+ objects (#1574 ).
56
64
* ` rb_fix2str ` has now been implemented.
57
65
* ` rb_protect ` will now work even if ` NilClass#== ` has been redefined.
58
66
* ` BigDecimal ` has been moved out of the ` Truffle ` module to match MRI.
59
- * ` StringIO#puts ` now correctly handles ` to_s ` methods which do not return strings (#1577 ).
67
+ * ` StringIO#puts ` now correctly handles ` to_s ` methods which do not return
68
+ strings (#1577 ).
60
69
* ` Array#each ` now behaves like MRI when the array is modified (#1580 ).
61
70
* Clarified that ` $SAFE ` can never be set to a non-zero value.
62
71
* Fix compatibility with RubyGems 3 (#1558 ).
@@ -70,28 +79,32 @@ Changes:
70
79
* Getting a substring of a string created by a C extension now uses
71
80
less memory as only the requested portion will be copied to a
72
81
managed string.
73
- * ` -Xoptions ` has been deprecated and will be removed - use ` --help:languages ` instead.
82
+ * ` -Xoptions ` has been deprecated and will be removed - use ` --help:languages `
83
+ instead.
74
84
* ` -Xlog= ` has been deprecated and will be removed - use ` --log.level= ` instead.
75
85
* ` -J ` has been deprecated and will be removed - use ` --jvm. ` instead.
76
86
* ` -J-cp lib.jar ` and so on have been deprecated and will be removed - use
77
87
` --jvm.cp=lib.jar ` or ` --jvm.classpath=lib.jar ` instead.
78
- * ` -J-cmd ` , ` --jvm.cmd ` , ` JAVA_HOME ` , ` JAVACMD ` , and ` JAVA_OPTS ` do not work in any released
88
+ * ` -J-cmd ` , ` --jvm.cmd ` , ` JAVA_HOME ` , ` JAVACMD ` , and ` JAVA_OPTS ` do not work
89
+ in any released
79
90
configuration of TruffleRuby, so have been removed.
80
- * ` -Xoption=value ` has been deprecated and will be removed - use ` --option=value ` instead.
91
+ * ` -Xoption=value ` has been deprecated and will be removed - use
92
+ ` --option=value ` instead.
81
93
* ` TracePoint ` now raises an ` ArgumentError ` for unsupported events.
82
94
* ` TracePoint.trace ` and ` TracePoint#inspect ` have been implemented.
83
95
84
96
Compatibility:
85
97
86
98
* Improved the exception when an ` -S ` file isn't found.
87
- * Removed the message from exceptions raised by bare ` raise ` to better match MRI (#1487 ).
99
+ * Removed the message from exceptions raised by bare ` raise ` to better match
100
+ MRI (#1487 ).
88
101
* ` TracePoint ` now handles the ` :class ` event.
89
102
90
103
Performance:
91
104
92
- * Sped up ` String ` handling in native extensions, quite substantially in some cases,
93
- by reducing conversions between native and managed strings and allowing for mutable
94
- metadata in native strings.
105
+ * Sped up ` String ` handling in native extensions, quite substantially in some
106
+ cases, by reducing conversions between native and managed strings and allowing
107
+ for mutable metadata in native strings.
95
108
96
109
# 1.0 RC 12, 4 Februrary 2019
97
110
@@ -120,7 +133,8 @@ New features:
120
133
* macOS clocks ` CLOCK_MONOTONIC_RAW ` , ` _MONOTONIC_RAW_APPROX ` , ` _UPTIME_RAW ` ,
121
134
` _UPTIME_RAW_APPROX ` , and ` _PROCESS_CPUTIME_ID ` have been implemented (#1480 ).
122
135
* TruffleRuby now automatically detects native access and threading permissions
123
- from the ` Context ` API, and can run code with no permissions given (` Context.create() ` ).
136
+ from the ` Context ` API, and can run code with no permissions
137
+ given (` Context.create() ` ).
124
138
125
139
Bug fixes:
126
140
@@ -130,7 +144,8 @@ Bug fixes:
130
144
* ` IO#reopen ` now properly resets the receiver to be close-on-exec.
131
145
* ` StringIO#set_encoding ` no longer raises an exception if the underlying
132
146
` String ` is frozen (#1473 ).
133
- * Fix handling of ` Symbol ` encodings in ` Marshal#dump ` and ` Marshal#load ` (#1530 ).
147
+ * Fix handling of ` Symbol ` encodings in ` Marshal#dump ` and
148
+ ` Marshal#load ` (#1530 ).
134
149
135
150
Compatibility:
136
151
@@ -257,15 +272,18 @@ Bug fixes:
257
272
* ` readline ` can now be interrupted by the interrupt signal (Ctrl+C). This fixes
258
273
Ctrl+C to work in IRB.
259
274
* Better compatibility with C extensions due to a new "managed struct" type.
260
- * Fixed compilation warnings which produced confusing messages for end users (#1422 ).
275
+ * Fixed compilation warnings which produced confusing messages for end
276
+ users (#1422 ).
261
277
* Improved compatibility with Truffle polyglot STDIO.
262
278
* Fixed version check preventing TruffleRuby from working with Bundler 2.0 and
263
279
later (#1413 ).
264
- * Fixed problem with ` Kernel.public_send ` not tracking its caller properly (#1425 ).
280
+ * Fixed problem with ` Kernel.public_send ` not tracking its caller
281
+ properly (#1425 ).
265
282
* ` rb_thread_call_without_gvl() ` no longer holds the C-extensions lock.
266
283
* Fixed ` caller_locations ` when called inside ` method_added ` .
267
284
* Fixed ` mon_initialize ` when called inside ` initialize_copy ` (#1428 ).
268
- * ` Mutex ` correctly raises a ` TypeError ` when trying to serialize with ` Marshal.dump ` .
285
+ * ` Mutex ` correctly raises a ` TypeError ` when trying to serialize
286
+ with ` Marshal.dump ` .
269
287
270
288
Performance:
271
289
@@ -614,7 +632,7 @@ Performance:
614
632
615
633
* Conversion of ASCII-only Ruby strings to Java strings is now faster.
616
634
* Several operations on multi-byte character strings are now faster.
617
- * Native I/O reads are ~ 22% faster.
635
+ * Native I/O reads are about 22% faster.
618
636
619
637
Bug fixes:
620
638
0 commit comments