Releases: google/j2objc
1.1
A new release of J2ObjC is available, 1.1.
This release updates 1.0.2 with several bug fixes, including:
iOS:
- Added tvOS support.
Annotations:
- Added RetainedWith, allowing some object pairs to form a reference cycle without leaking.
Translator:
- Revised lambda and method reference translation for better performance.
- Various method reference translation bugs resolved.
- Declares narrower return types for type variables with bounds.
- Beginning of migration to javax.lang.model symbol types from JDT bindings.
Runtime:
- Volatile fields: spinlocks replaced with pthread_mutex to avoid priority inversion deadlock.
- Improve DST support with NSTimeZone-backed TimeZone
- Various reflection fixes, removed best effort support. (most reflection now requires metadata)
- Reflection metadata is cleaned up to reduce effect on binary size.
- java.lang.Thread implementation switched to use pthread instead of NSThread.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!
1.0.2
A new release of J2ObjC is available, 1.0.2.
This release updates 1.0.1 with several bug fixes, including:
iOS:
- Added WatchOS support (contributed by Harri Hohteri).
Translator:
- Implemented Java 8 default method support, including default methods in lambdas.
- Correctly produce capturing lambdas.
- Fixed memory leak when a retaining constructor throws an exception.
- Fixed leaky annotation types by adding a dealloc method.
- Added -source flag to cycle_finder.
Runtime:
- Currency formatting fixed for BigDecimal and BigInteger values.
- Updated java.lang.annotation to Java 8, fixing type annotations.
Libraries:
- Guava library updated to version 19.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!
1.0.1
A new release of J2ObjC is available, 1.0.1.
This release updates 1.0.0 with several bug fixes, including:
Translator:
- Java enums use a shared alloc. (non-ARC only)
Runtime:
- java.lang.Throwable now maps to NSException. JavaLangThrowable is still supported with a @compatibility_alias, but this will be removed in the next version.
- IosHttpURLConnection implements java.net.CookieHandler support.
Libraries:
- Symlinks are preserved in zipped release, reducing its size.
- Guava library is build directly from unaltered Guava sources. Forked sources have been removed.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!
1.0.0
A new release of J2ObjC is available, 1.0.0. This release removes the "beta" tag from the project, as it is now used by many iOS apps.
In addition to numerous bug fixes and performance improvements, this release includes:
Translator:
- Simplified Java enum translation.
- A --swift-friendly flag, which enables flags that make importing J2ObjC header files into Swift easier. We'll continue to improve Swift inter-operability in the future.
- Added translation support for Java nullability annotations.
- Added OCNI header blocks.
Runtime:
- Split libjre_emul.a into sub-libraries, to support developers needing smaller apps.
- Support iOS bitcode.
- Rewrote runtime support for volatile fields.
- Added java.security Signature provider.
Libraries
- Distributed libraries can now be added to projects using static frameworks.
- Apache Xalan library added to support the javax.xml.transform package.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!
0.9.8.2.1
0.9.8.2
Note: the release build for 0.9.8.2 failed, as it did not contain the Guava libraries. Use the 0.9.8.2.1 build instead.
This release updates 0.9.8.1 with:
Xcode 7/iOS 9 Support
- #611: Added x86_64 simulator arch.
- Mac OS X libraries moved to dist/lib/macosx.
- #613: Added bitcode marker support.
- Fixed doc-comment generation to display correctly in Xcode Quick Help.
Improvements
java.util.jar
added to JRE.- #574: added javac's
-processor
and-processorpath
flags to j2objc. - A
-version
flag was added to j2objc and cycle_finder. - Added
java.beans.PropertyDescriptor
. - Added
jre_emul-src.jar
to distribution. - Added Zip64 support.
Bug Fixes
- Fixed type casting on inferred wildcard types.
- Fixed issues with
java.lang.ref
implementation. - Fixed
java.util.zip.ZipFile
expansion of deflated zip entries. - #591 Implement
JreAssert
with macro so that msg is conditionally evaluated, contributed by @lukhnos. - #595 JavaMetadata leak fixes, contributed by @lukhnos.
- #596: Fixed try-with-resources to match JLS spec.
- #600: Improved dead code elimination, contributed by @lukhnos.
- #602: Fixed
java.lang.Throwable
leaks, contributed by @lukhnos. - #604: Fixed
java.nio
leaks, contributed by @lukhnos. - #606: Mutex leak fixes, contributed by @lukhnos.
- #607: Fixed runtime lookup of classes mapped with wildcard prefixes.
0.9.8.1
This release updates 0.9.8 with several bug fixes, including:
- 573: added third-party license directory to distribution
- 584: Passing address of non-local object to __autoreleasing parameter for write-back
- 585: Lambdas not compilable with Objective C++
- 587: Fix operator invocations for local variables in ARC
- 588: Rename static accessor methods that are reserved names
Support for package-prefix wildcards added; for example: "--prefix 'foo.bar.*=FB'".
0.9.8
A new release of J2ObjC is available, 0.9.8.
In addition to numerous bug fixes changes include:
Translator:
- Support for Java 8 lambda expressions and method references.
- Implemented Java volatile field support.
- New annotation support:
- Generate JNI function calls for native methods without OCNI code.
Runtime:
- Fully revised java.util.concurrent.atomic implementations using c11.
- Basic JNI support added.
- Added java.security Signature provider.
Protobufs
- Added protocol string list support.
Libraries
- Google Guava
- Updated to version 18.0
- J2ObjC fork merged.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!
0.9.7
A new release of J2ObjC is available, 0.9.7.
In addition to numerous bug fixes changes include:
Support Tools:
- Added Protocol Buffer support.
Performance:
- Constructors are “functionized”.
Translator:
- Declarations of private inner types are moved to the implementation file.
- Improved reflection on generic types.
- Improved @ObjectiveCName support for methods.
- Improved runtime annotation support.
Runtime:
- Added reflection support for generic signatures.
Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!