Opal v1.5.0 Release Notes
Release Date: 2022-04-13 // about 3 years ago-
โ Added
- ๐ Introduce timezone support for Time by @hmdne in https://github.com/opal/opal/pull/2394
- ๐จ DateTime and Date refactor by @hmdne in https://github.com/opal/opal/pull/2398
- Implement
Number#prev_float
/#next_float
by @takaram in https://github.com/opal/opal/pull/2404 - ๐ Support
binding.irb
anywhere in the code, for both browsers and node by @hmdne in https://github.com/opal/opal/pull/2392 and https://github.com/opal/opal/pull/2408 - Added
URI.decode_www_form
by @HoneyryderChuck in https://github.com/opal/opal/pull/2387
๐ Changed
- ๐ Move
Math
IE11-supporting polyfills to a separate file by @hmdne in https://github.com/opal/opal/pull/2395 String
methods always return Strings even when overloaded by @hmdne in https://github.com/opal/opal/pull/2413- Misc changes extracted from DCE work by @elia in https://github.com/opal/opal/pull/2414
alias
calls will not add the "old name" method to the list of stubs for method missing
- ๐ Optimize writer/setter methods (up to 4% performance gain!) by @hmdne in https://github.com/opal/opal/pull/2402
- Also fixed few edge cases of conditional calls combined with setters, e.g.
foo&.bar = 123
- Also fixed few edge cases of conditional calls combined with setters, e.g.
๐ Performance
- โ Runtime optimization by @hmdne in https://github.com/opal/opal/pull/2383
- Improve performance of argument coertion, fast-track
Integer
,String
, and calling the designed coertion method - Optimize
Array#[]=
by moving the implementation to JavaScript and inlining type checks - Optimize internal runtime passing of block-options
- Improve performance of argument coertion, fast-track
- Compile
case
statements asswitch
whenever possible by @hmdne in https://github.com/opal/opal/pull/2411 - ๐ Improve performance with optimized common method/iter implementation shortcuts by @hmdne in https://github.com/opal/opal/pull/2401
๐ Fixed
- ๐ Fix
Regexp.new
, replace\A
to^
and\z
to$
by @ysakasin in https://github.com/opal/opal/pull/2079 - ๐ Fix exception during
Hash#each
andHash#each_key
if keys get deleted during the loop by @janbiedermann in https://github.com/opal/opal/pull/2403 - ๐ Fix defining multiple methods with the same block by @elia in https://github.com/opal/opal/pull/2397
- Correct
String#to_proc
andmethod_missing
compatibility by @hmdne in https://github.com/opal/opal/pull/2418 - Exit REPL respecting the exit status number by @janbiedermann in https://github.com/opal/opal/pull/2396
Internal
- ๐จ Rewriters refactor, fix interaction between cache and inverted runner by @hmdne in https://github.com/opal/opal/pull/2400
- ๐ releasing.md: add a step to prepare for next release by @hmdne in https://github.com/opal/opal/pull/2407