January Update : JNAerator, BridJ, JavaCL, ScalaCL and... Scalaxy !
Happy New Year !
First, I’d like to thank all the users of JNAerator, BridJ, JavaCL and ScalaCL for their continued support and help.
The progress over this year wouldn’t have been possible without the contributions of Rémi Émonet (biggest patcher), Kazó Csaba (who even created javaclpp) and Atsushi Eno (Android support).
I’d also like to give a special thank to some of the most prolific and friendliest bug-reporters of this year : Andrei Sochirca, Raphael Cohn, Andrea Aime (but there are so many others !).
Now here are some news about the projects, for those who don’t follow the commits on github 🙂
Maven Central
I’m in the process of getting all NativeLibs4Java artifacts on the Maven Central repository (using Sonatype OSS). What this means is that you won’t need to add repository and/or pluginRepository tags to your Maven project files to get the releases, and that the snapshots will now be available from Sonatype’s OSS Snapshots Repository (see updated usage instructions).
There are still a few blocking points (like, deploying Android’s dex tool to Maven Central), but I’m optimistic about finishing this task in the next few weeks.
In the meanwhile, should you want to build from sources or even just depend on a snapshot version, you might need to install dx to your local repository manually using the script BridJ/admin/android-dx-package.
BridJ
I’ll be releasing version 0.6.1 of BridJ with tons of fixes as soon as the Maven Central work is completed.
Please note that passing or returning structs by value will still not be supported in that release, although some experimental work has been shoved in (for very large structs on select platforms).
For more details please see BridJ’s CHANGELOG.
JNAerator
This year I’ve been criminally lazy with JNAerator release notes : I haven’t announced versions 0.9.8 and 0.9.9 publicly… maybe because I wasn’t that proud of the stability of these two versions :-S
Anyway, 2012 should be much better since the upcoming version 0.9.10 is bound to become the best version of JNAerator ever, with a few quantum leaps in features and stability (will release it in within a few weeks).
For more details please see JNAerator’s CHANGELOG.
Oh, and please note a big change here : JNAerator artifact’s groupId was changed to com.nativelibs4java (was previously com.jnaerator), and snapshots are available on Sonatype’s OSS Snapshots Repository.
JavaCL
Version 1.0-RC2 of JavaCL will ship soon, with quite a few bug fixes.
For more details please see JavaCL’s CHANGELOG.
Oh, and last but not least : JavaCL is now covered in the chapter of OpenCL in Action (clearly the best OpenCL reference and hands-on guide out there, packed with amazing real-world examples !)
ScalaCL vs. Scalaxy
Since last summer’s Scalathon, progress on ScalaCL hasn’t been very visible because it’s been a bit slow : the new stream rewrite pipeline broke all the tests (especially those that compare the compiled bytecode to some reference hand-rewritten version), so it’s become hard and unrewarding to work on the project. But now the tests are almost back to normal, and it’s time to split the project in two parts :
- Scalaxy Compiler Plugin for generalistic loop rewrites, performance warnings and compile-time coding guidelines enforcement
- ScalaCL Collections & Compiler Plugin for GPGPU computation (the plugin obviously depends on Scalaxy since it needs to rewrite loops found in Scala functions converted to OpenCL kernels)
If you have any idea of a better name for Scalaxy, please contribute it on the list or on twitter : previous codename was FaSca (for Faster Scala), but I’m not sure I like the new one much more :-S
It’s hard to say when a release will be ready for either ScalaCL or Scalaxy, since the latter still requires quite a bit of stabilization, but snapshots should already be usable right now.
That’s it for today, happy hacking to everyone !