All Versions
17
Latest Version
Avg Release Cycle
105 days
Latest Release
1298 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v0.7.0 Changes
October 06, 20200.7.0
-
v0.6.8 Changes
January 14, 2018๐ New features:
- ๐ ALL: Improved generated code (now new + constructor is joined), this also improves calling native code and fixes #134
- ๐ JS: String concatenation (new ArrayBuilder+append+toString chain) is now optimized (less code and better performance)
- ๐ HAXE-CPP: Support Haxe-Cpp synchronized blocks
- ๐ JS: Support Threads in JS using await/async (disabled by default because of performance impact)
- JS: Now targets to ES6 with classes since it is mainstream already
- Implement Object.wait/notify/notifyAll + Semaphore using Object facilities
- ALL: Added JTranscTargetClassImpl to remap a class depending on the target (similar to ServiceLoader approach but simpler)
๐ Fixes:
- ๐ Gradle: Fixed newer gradle versions that output different language classes in different directories.
- ๐ Fixed order of Side effects in several cases in D and C++ targets
๐ Improvements:
- Thread improvements in all targets
๐ Performance Improvements:
- @SergeyLabutin Reflection Cache
Misc:
- ๐ @SergeyLabutin Support lime.net.HTTPRequest
- โฑ @SergeyLabutin Missing ScheduledThreadPoolExecutor.submit
- โก๏ธ @SergeyLabutin Updated lime to 5.4.0
- โก๏ธ Updated Kotlin to 1.2.10
- โก๏ธ Updated Gradle to 4.4.1
- โก๏ธ Update plugin-publish-plugin to 0.9.9
-
v0.6.7 Changes
August 13, 2017๐ New features:
- @Intrigus Add almost complete jni implementation for cpp target
- ๐ @fxjshm: Added synchronized function support (except Haxe target for now)
- ๐ @fxjshm: Support mutex in C++ target
- โ Added support for
Runtime.addShutdownHook()
to JS target - โ Added
javax.sound.sampled
stub classes - โ Added tons of
java.nio
stub classes - โ Added
java.awt.Desktop
stub class - โ Added
java.util.Optional
- โ Added most
java.util.functional.*
interfaces - โ Added
java.net.ServerSocket
stub class - โ Added and implemented lots of
java.time
classes
๐ Improvements:
- @SergeyLabutin: Split reflection information in several methods
- @SergeyLabutin: Thread improvements
- ๐ Implemented
String.format("%.f")
support with Locale support - Honor
cond
inJTranscAddLibraries
,JTranscAddIncludes
,JTranscAddDefines
,JTranscAddImports
๐ Fixes:
- @intrigus: Compile Bdwgc lib statically instead of dynamically
- ๐ Fixed System.arraycopy undefined behaviour on overlapping
- ๐ Make more compatible
d2i
andf2i
opcodes for float and double to int conversions in NaN, -Inf and +Inf
Misc:
- ๐ Moved each language test to its own project. Added jtransc-gen-common-tests
- โ Added codecov + jacoco to test coverage
- ๐ฒ Make haxelib quiet to reduce log output in travis
- โก๏ธ Updated gradle to 4.0.2
- โ Disabled C# tests on travis for now
- โก๏ธ Updated travis to Ubuntu Trusty
- haxelib --always
- โก๏ธ @SergeyLabutin: Updated lime to 5.3.0
-
v0.6.6 Changes
July 23, 2017- @SergeyLabutin: Implemented Runtime.memory methods for Haxe+Cpp target
- @SergeyLabutin: Fix JTranscBits.read int64
- @SergeyLabutin: Fix DataInputStream.readUTF and DataOutputStream.writeUTF using modified utf-8
- Implemented array literals in all languages
- Split reflection getFieldAnnotations per class
- @fxjshm: Fix boolean literals on C#
- โ Added jtransc.optimize option to gradle and tests to disable optimizations
- Disabled variable inlining optimization for now since it caused some spurious bugs
- ๐ @fxjshm: Added AppVeyor CI support for testing on a Windows machine
-
v0.6.5 Changes
July 07, 2017๐ Improvements:
- ๐ [HAXE] [HAXE-CPP] Greatly improved performance of System.arraycopy and System.fill
- ๐ [HAXE-CPP] Improved performance of Object[] arrays
- ๐ [CPP] Improved performance of fill for 64-bit types (long and double) in 32-bit builds
๐ Fixes:
- ๐ [TEMPLATES] Fixed if+else minitemplates
Missing API:
- ๐ @fxjshm: Added UnsupportedClassVersionError
Misc:
- โ [HAXE-CPP] Enabled travis-ci automated testing for haxe-cpp target
- ๐ @SergeyLabutin Documentation for Android Target in readme
- โก๏ธ Updated Kotlin to 1.1.3-2
- โ Added JTRANSC_OS to templates
- โ Added
|image_info
minitemplate filter to get width and height from images from a byte array, File or String path
-
v0.6.4 Changes
July 01, 2017๐ New features:
- ๐ [ALL] Plugins are now able to process classes after applied features
- [ALL] @SergeyLabutin Added additional missing settings to CommonGenerator
๐ Fixes:
- ๐ [CPP] Fixed float REM opcode on C++
- [ALL] Fixed INVOKE_DYNAMIC_METHOD with additional expressions + optimizer (problems with inner lambdas)
- ๐ [GRADLE] Fixes gradle
appendVar
when no annotation was provided already
๐ Improvements:
- [JS] Now compiler strips .0 trailings on double literals to reduce output size
Cleanups:
- [ALL] Unified body features on all targets
- ๐ [CPP] Removed ClassLoader C++ specialized code. Since this is not going to work at least with the current reflection library.
Misc:
- โก๏ธ [HAXE] Updated lime to 0.5.1
- โก๏ธ [ALL] Updated to kotlin 1.1.3
-
v0.6.3 Changes
June 11, 2017๐ New features:
- โ [PHP] Requires PHP 7.1. PHP target now passes big tests though it is slower than other targets
- ๐ [GRADLE] Added appendVar support. Check: fdd58dbe26203703adfc64484c5a575f17dddb9f
๐ Fixes:
- [ALL] Class.getMethod and getDeclaredMethod correct behaviour
- [HAXE-CPP] @SergeyLabutin - Implemented Object.wait
- ๐ [CPP+C#] Fixed float NAN
- โ [CPP] @intrigus Consistency and warnings fixes in ++ target
- [HAXE] Missing keywords
๐ Improvements:
- [C#] Allow specify C# compiler. Check issue #156
- [ALL] Reduced output size combining several switch cases in one.
- ๐ [ALL] Support overlay methods in native methods
- [ALL] Simplify generating ClassInfo for reflection
- [HAXE] Improved integer array literal for small counts
Misc:
- Now snapshots versions are published by travis to bintray: https://dl.bintray.com/jtransc/jtransc/com/jtransc/
-
v0.6.2 Changes
May 31, 2017Optimizations:
- โก๏ธ [ALL] Optimized ByteBufferAs* in most targets with faster reading similar to JT's FastMemory
- [ALL] Proper behaviour of checkcast opcode
- [HAXE] JA_B and JA_Z now are backed by haxe.io.Bytes that will allow to do some optimizations
- โก๏ธ [HAXE] Should help with https://github.com/jtransc/gdx-backend-jtransc/issues/41 Update to 0.6.0 (dropped reinterpret arrays) and https://github.com/jtransc/gdx-backend-jtransc/pull/42 / https://github.com/jtransc/gdx-backend-jtransc/pull/43
- [CPP] @Intrigus: Use intrinsics for byte swappings
๐ Fixes:
- ๐ [ALL] Fixed a bug in treeshaking creating extra methods that broke
super
functionality and makes code bigger - ๐ [HAXE] Fixed indentation of the output classes
- ๐ [HAXE] Fixed haxe division + remainder (both integer and long, at least in C++ with edge cases)
- ๐ [HAXE] Fixed being able to execute c++ executables directly (at least in windows)
- ๐ [HAXE] Fixed com.jtransc.FastMemory in haxe-cpp
- ๐ [ALL] Some static init fixes + documentation about static initialization issues
- ๐ [HAXE-CPP] @SergeyLabutin Fixed StringBuilder with unicode characters in Haxe-C++
- โ [PHP] Some PHP issues. Still not passing big test and extremely slow due to lack of typed arrays
- [ALL] Fix static initialization problem with charsets (static initialization + ServiceLoader a bit tricky)
- [ALL] @SergeyLabutin
TimeUnit.convert
fix
๐ New features:
- [ALL] @SergeyLabutin: Implemented ThreadPoolExecutor
- โฑ [ALL] @SergeyLabutin: Implemented ScheduledThreadPoolExecutor
- [DART] Allow add extra imports externally
๐ Changes:
- [ALL] Passthru target compiler output
- [CPP] Allow setting GC roots manually by the GC implementation
- [CPP] Embed
bdwgc.zip
to ensure we have the library and the right format and version. - ๐ง [CPP] Configurable GC
- [ALL] Changed ZIP reader to be consistent between platforms/Java VMs
- ๐ [TIZEN] Remove from documentation since not supported by Lime anymore
Minor:
- โก๏ธ [JS] Do not use float to avoid issues with Closure Optimizer
- ๐จ [JS] Some refactorings
- [GITTER] Unified chat
slack/irc -> gitter
- [TRAVIS] Reduce mono dependencies
- [TRAVIS] Disabled travis cache
-
v0.6.1 Changes
May 21, 2017- โ Added
@JTranscAddIncludes
and@JTranscAddDefines
annotations - Honor
@JTranscAddLibraries
and@JTranscAddIncludes
annotations in C++ target - โ Added
@JTranscAddTemplateVars
annotation to add list variables to templates from code - ๐ CMAKE now supports list template variables
CMAKE
andCMAKE_PROJECT
for adding custom lines before and after project - โ Added
@JTranscAddMembers.cond
to conditionally add members - ๐ Initial support of class
@JTranscNativeName
types in C++. Implemented Int32x4 SIMD to check. Works even without ENABLE_TYPING enabled. - ๐ Fxied compilation in windows (b2.exe not executing)
- โ Added
-
v0.6.0 Changes
May 20, 20170.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
.