0.11.0 #984
konsoletyper
announced in
Announcements
0.11.0
#984
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
New WebAssembly backend
This release is mostly driven by development of new WebAssembly backend. Old WebAssembly backend exists for many years and works well, however, did not see any adoption. The main reason is that it does not add significant advantages (like performance improvements), but makes development experience much worse, i.e. does not allow to easily interact with browser JS APIs and produces large binary files (times as large as JS).
With introduction of new WebAssembly GC proposal these problems were solved. However, this is not just small addition to original WebAssembly spec, but a game changer, it was impossible just to improve existing backend to support new proposal. So the decision was made to create a brand new WebAssembly backend, which would co-exist with the old one. Perhaps, at some point old WebAssembly backend will be deprecated and fully removed, but for now they will co-exist. However, WebAssembly GC will be advertised as primary WebAssembly target and the documentation will be maintained for WebAssembly GC, not for old WebAssembly.
New WebAssembly GC is a bit limited compared to JS backend, but mostly provides all features available in old WebAssembly backend. Moreover, WebAssembly GC fully supports JSO, as Java-to-JS interaction API. Hopefully, the next release will cover remaining features and WebAssembly GC backend will be on par with JS backend and the "experimental" tag will be removed from WebAssembly support.
Java class library emulation
BitSet
implementationceilDiv
,ceilDivExact
,ceilMod
,floorDivExact
,absExact
toMath
class.Support for JS APIs
<input type="file">
, which includes classes likeFile
,Blob
,ReadableStream
and so on.HTMLElement.touch
andHTMLElement.input
events.Navigator.sendBeacon
Error.cause
Other stuff
Sponsorship
Worth mentioning that TeaVM evolved with the support from its sponsors. If you like this project, you can start donating.
Special thanks to @reportmill and @shannah, our permanent sponsors!
Contributors
Special thanks to @Ihromant, @lax1dude
and xpenatan, who were early adopters of WebAssembly GC backend
and helped to find some bugs there. Also, I want to highlight @lax1dude,
who not only enabled WebAssembly GC in his project, bug managed to identify, fix and successfully
sent his PR to main repository.
This discussion was created from the release 0.11.0.
Beta Was this translation helpful? Give feedback.
All reactions