jtransc v0.6.0 Release Notes
Release Date: 2017-05-20 // almost 7 years ago-
0.6.0
๐ New features
- @intrigus: C++ target with GC continuing the work on @dsp-omen that created the initial c++ target
- โ AS3 target (BigTest passes)
- โ Dart target (BigTest passes)
- Prevent generating runtime invisible annotations
- โ Added com.jtransc.io.async package to handle asynchronous I/O
- ๐ Improved com.jtransc.js.JsDynamic
๐ Changes
- ๐จ Some refactorings at CommonGenerator
- ๐
@JTranscNativeName
now supports a target field to have a class has different types on different targets
๐ Fixes
- ๐ @SergeyLabutin - Static initialization fixes
- @SergeyLabutin - Some thread work on Haxe/CPP
- ๐ Handle template references inside
@JTranscCallSiteBody
Implemented features
- @SergeyLabutin - Implemented Class.getGenericSuperclass
Optimizations
- ๐ Better output quality (less casts), still left
- Lightly improved compile time
- ๐ Improved StringBuilder runtime in all targets
- ๐ Improved slightly performance on all targets (simplifying Object construction)
- D put strings at compile-time since Object construction no longer require runtime
- C# implemented genStmSetArrayLiterals reducing output size and startup time
- ๐ Rework on Haxe arrays and casts specially in C++ for a major performance boost
- ๐ Implemented Haxe-C++ goto hack for even better performance on loops
๐ Deprecations
- ๐ Array casts are now deprecated and removed, because that requirement was slowing down some implementations. In the future we will explore other options. For now, please use Mem/FastMemory* classes.
- ๐ Deprecated {% FIELD %} and {% METHOD %} (replaces to
NAME
) in favour of {% IFIELD %} and {% IMETHOD %} (replaces to.NAME
or['NAME']
in JS just when required and works with minification) - ๐ Deprecated
@JTranscNativeClass
that was redundant due to@JTranscNativeName
.