The future of gradle-retrolamba
As you may know, version 3.0.0 of AGP (the android gradle plugin) includes a “desugar” of java 8 language features. You may be wondering what’s gradle-retrolambda’s future as this is now built in to the official tooling.
In short, AGP 3.0.0 will be the last version that gradle-retrolambda will support. To ease this transition, you should be able to use either gradle-retrolamba or the desugar on AGP 3.0.0 stable and any bugs against it will be fixed. However, I’d advise you to update soon.
What about plain java projects?
You may know that gradle-retrolamba works on plain java projects as well as android ones. The reason for this is because it will only run on your module’s code and not on any of your dependencies. If you wanted to have a plain java module in your project or ship a jar that’s supported on android you’d have to apply gradle-retrolambda to your java module. The desugar works a little bit differently. It will run on your module code and it’s dependencies. This means you are free to compile and ship java modules with java 8.
However, there may still be uses for running retrolambda for java projects outside android. For this, I’d like the help of the community. I am an android developer so I don’t really come across any of those use cases. From my (admittedly anecdotal) evidence, I don’t think gradle-retrolamba is really used much outside the android community. The future support will depend on how interested others are in continuing support for those use cases. If anyone is interested, feel free to submit a pull request or open an issue.
