davidB / yuicompressor-maven-plugin

maven's plugin to compress (Minify / Ofuscate / Aggregate) Javascript files and CSS files using YUI Compressor
http://davidb.github.io/yuicompressor-maven-plugin/
GNU Lesser General Public License v2.1
122 stars 48 forks source link

jslint.js license #63

Open puntogil opened 11 years ago

puntogil commented 11 years ago

hi please, can specify the jslint.js license include as resource? the original Douglas Crockford jslint is under a non-free license "The Software shall be used for Good, not Evil" and if that were true it is not possible to use in fedora regards

davidB commented 11 years ago

As wrote in the js file included in resources.it's the rhino edition and (c) Douglas Crockford, without other I suppose it's the same version as jlint. You can contact Douglas for details.

gmazza commented 11 years ago

I'm not sure why it's not possible to use in Fedora (perhaps you can't distribute it with Fedora, but you can use non-free software on it, assuming the clause actually makes it non-free.)

puntogil commented 11 years ago

hi see http://wiki.debian.org/qa.debian.org/jsonevil and the same for other linux distributions now i removed all the source code which use jslint.js src/main/java/net_alchim31_maven_yuicompressor/JSLintChecker.java src/main/java/net_alchim31_maven_yuicompressor/JSLintMojo.java i contacted Douglas, he say "It is not possible for you to use it. " regards

puntogil commented 11 years ago

or better see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=692616

gmazza commented 11 years ago

Why do we care whether yuicompressor-maven-plugin is free or not? Microsoft Office doesn't need to cripple itself just because it can't be freely distributed on every OS, I'm not sure why you feel yuicompressor-maven-plugin does. Who wants to distribute a Maven plugin with a Linux distribution anyway? Further, as jslint is on GitHub (and GitHub has no problem with it from a licensing perspective), I'm not sure again why jslint would need to be removed from this plugin. Anyway, I stopped using this plugin for jslint and switched to the jslint-maven-plugin.

puntogil commented 11 years ago

hi i apologized but i've never talked about yuicompressor-maven-plugin license. regards

gmazza commented 11 years ago

Please, you know what I mean...why does it matter for yuicompressor-maven-plugin whether or not a constituent part (that is, jslint) is "free" for the purposes of distribution on Linux operating system? Who cares and why?

puntogil commented 11 years ago

For e.g. fedoraproject.org https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing see JSON License @ https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Bad_Licenses The clause "The Software shall be used for Good, not Evil." is impossible to parse or comply with. we can't import or think about using any software that places "restrictions" in its license. for us this means that the software does not have an open source license

gmazza commented 11 years ago

OK, I think I see -- this plugin's license is GPL which requires all its constituent parts to have a similar open source license. I first read the pom.xml which claimed the plugin is public domain (which probably would allow it to include jslint). It would be good to update the pom.xml with the correct license as described in the license.txt.

davidB commented 11 years ago

wrong copy/paste when I update the pom.xml (my new project / or fully owned follow unlicense). The current version of the plugin is LGPL. The license only cover the plugin itselft not isn't dependencies (jar or components like jslint.js)

artob commented 11 years ago

@gmazza @davidB FYI, the FSF recognize that public domain dedications such as CC0 or the Unlicense are fully compatible with the GPL and LGPL:

So, there's absolutely no need to relicense any public domain code to be under the GPL just because it happens to be used in a GPL project.

davidB commented 11 years ago

Should I :

  1. remove it (and user will have to use jslint-maven-plugin or other wro4j, jshint-mojo, ... ) ?
  2. replace it by jshint (MIT License) ?

WDYT ?

gmazza commented 11 years ago

So far we have two open-source plugins happily using JSLint: JSHint and jslint-maven-plugin, what do they know that we don't? I don't think JSHint is going to help you because if you scroll down to the bottom here: https://github.com/jshint/jshint it admits that the jslint.js is under the "modified MIT license" (can't use for evil), so you'll end up having the same legal concerns. (Although as I hear JSHint is a nicer product anyway.)

If I understand correctly, if you include jslint.js then this plugin can never be distributed with a Linux distribution. But this plugin is never going to be distributed anyway with any linux distro (Maven plugins never are) so what does it matter? Have yet to get an answer on that...

But leaving aside the licensing, there is already another plugin (jslint-maven-plugin) to take care of this need so I don't see a need to reinvent the wheel, I think it would be OK to remove this functionality and just do yuicompression. Alternatively, maybe you can put the jslint.js in a separate dependency and let those worried about it (and only planning on doing yuicompression anyway) to put a dependency exclusion in their plugin definition (http://maven.40175.n5.nabble.com/exclude-plugin-dependencies-td4590474.html) so they won't ever be downloading it.

Personally, I would be inclined to remove it, Crockford seems to be doing this primarily for attention, and we shouldn't be encouraging him by discussing this anymore. Hopefully in the future a replacement not using his work will become available.