Skip to content

2.0

Compare
Choose a tag to compare
@tomball tomball released this 09 May 18:55
· 2263 commits to master since this release

A new release of J2ObjC is available, 2.0. This release uses the javac compiler as its front end, which improves the translator's Java compatibility while improving performance. If the new front end causes any problems with your project, please file a bug and then switch to the old front end using the -Xuse-jdt flag (please do so promptly, as that flag will be removed in a future release once issues requiring have been fixed).

The http://j2objc.org website has joined the Google Developers site at https://developers.google.com/j2objc/. This gives our project better support and will make it easier to keep up to date. In particular, our API Reference is enhanced and easier to use. We'll be redirecting http://j2objc.org to this new site soon.

This release continues the migration to the OpenJDK-based JRE source code in Android's 7.0 Nougat libcore library. Although there are some classes that still need to be migrated, we believe that all classes with Java 8 additions are now ported (please file a bug if you find otherwise).

Other changes include:

  • Updated java.security classes using the Apache Harmony Fortress classes to instead use sun.security packages.
  • Updated date and number formatters to OpenJDK.
  • Updated date, calendar, and timezone support to OpenJDK.
  • Updated character conversion to use the iconv library in iOS.
  • Added protocol buffers oneof support.
  • Integrated several IosHttpURLConnection contributions and bug fixes.
  • j2objc performance improvements:
    • reduced size of several AST node classes,
    • skipped unnecessary validation.

Thanks for all the bug reports, especially those with tests and/or patches -- we're a small team, and appreciate the help!