0.4.17 (2024-01-19)¶
We’re happy to announce the release of Scala Native 0.4.17, which is the next maintance release. The new version introduces support for the Scala 3.4.0 and fixes some of found bugs.
Compatibility notes¶
Due to the limitations of versions 0.4.x the Scala 3 Standard Library NIR outputs are based on Scala 3.3.0. Any runtime usage of methods introduced to Scala 3 standard library after 3.3.0 would not work and would result in linking error. Compile time only methods like macros or mirrors would still work. This issue would be handled in Scala Native 0.5.x by using a different publishing strategy.
Scala standard library used by this release is based on the following versions:
Scala binary version | Scala release |
2.12 | 2.12.18 |
2.13 | 2.13.12 |
3 | 3.3.0 |
Commits since last release | 37 |
Merged PRs | 24 |
Contributors | 6 |
Contributors¶
Big thanks to everybody who contributed to this release or reported an issue!
$ git shortlog -sn --no-merges v0.4.16..v0.4.17
27 Wojciech Mazur
4 LeeTibbert
2 João Costa
2 Michel Davit
1 Alex Dupre
1 Paul Thordarson
Merged PRs¶
v0.4.17 (2024-01-19)¶
Merged pull requests:
Java Standard Library¶
Simplifiy
java.io.FileDescriptor.valid()
test, invalidate file descriptor on close. #3578 (WojciechMazur)Respect
java.lang.Clonable
trait and throw exception on clone when it’s missing #3579 (WojciechMazur)Skip addr memcmp if getifaddrs returns a null ifa_addr pointer #3626 (RustedBones)
Mutate socket localAddr only on successful bind #3627 (RustedBones)
improvement: Make
ArrayIndexOutBoundsExceptions
compliant with JVM 8+ - #3638 (WojciechMazur)Fix #3631: Regex now handles OR alternatives with more than two clauses #3642 (LeeTibbert)
javalib: Format IPv4-mapped IPv6 addresses as IPv6 #3654 (LeeTibbert)
Scala Native compiler plugin¶
When generating top-level extern methods check its annotations for
link
/define
#3604 (WojciechMazur)improvement: In NIR codegen always use
nir.Type.Unit
for if return type if one of branches is unit type #3644 (WojciechMazur)Support Scala 3.4.0-RC1 #3628 (WojciechMazur)
fix: Fix handling of erased extern calls with variadic arguments #3691 (WojciechMazur)
fix: Allow to define multi-level exports referring finally to extern method #3665 (WojciechMazur)
POSIX bindings¶
Fix typo on VEOL @name annotation in termios module #3606 (kapunga)
Fix #3655: provide posixlib syslog method #3656 (LeeTibbert)
JUnit runtime¶
Exlcude internal part of stacktraces from JUnit error reports #3617 (WojciechMazur)
Test runners¶
feature: Setup debug signal handlers in the TestMain only when requested #3660 (WojciechMazur)
Toolchain¶
fix: Make a list of linked libraries distinct sequence #3694 (WojciechMazur)