Closed treeno closed 11 years ago
The plugin only supports the versions of coffeescript that it has embedded in it, I'll update this to include 1.6.3 and do another release.
I have noticed that while I changed the README.md. Did you think about an option that allow the user to bind a local already installed Coffee-compiler instead of an embedded one? That would make it easier for you to keep the tool up to date. Maybe I could provide another pullrequest for that, as soon as I find some time.
Version 1.4.8 of the plugin has been released with support ( and defaulting to coffee-script 1.6.3 ).
Regarding supporting a locally installed coffee compiler, there's an old open pull request which attempted to add support for this, but unfortunatey did so in a way that was somewhat linux specific, and also didn't cover supporting/checking for versions of coffee-script, or at least failing the build if you used a combination of native and a version property.
One of the main issues I didn't like about this approach was that it requires a developer to not only have maven installed, but also node, and THEN also coffeescript installed.
The other issue is that without being able to specify, and mandate a locked down version of coffeescript, the build cannot be reasoned with as the version of coffeescript may change between developers machines ( and I've been burnt by that exact that, one developers machine using a newer version of coffee than the person who ultimately did the release, which combined with the lack of test coverage on that project, led to stupid production bugs leaking out ).
One idea I was thinking of on the weekend, and plan to do so regardless of any native compiler additions, is to extract the bundled coffeescript versions from the actual compiler plugin to their own artifact which can be released independently of the plugin itself.
I agree with your points. The solution with the CoffeeScript-Compiler as an own artifact sounds very good to me. The problem, that you would always have to deliver new releases everytime when a new coffee compiler is released could be reduced by that way. How would you release coffee as an artifact? Via maven-central?
When I try to transpile with the newer version 1.6.3 of CoffeeScript I receive the error:
[ERROR] Failed to execute goal com.theoryinpractise:coffee-maven-plugin:1.4.7:coffee (coffee) on project timer: Unsupported version of coffee-script specified (1.6.3) - supported versions: 1.2.0, 1.3.1, 1.3.3, 1.4.0, 1.5.0, 1.6.1 -> [Help 1]