jsmin.php uses non-free license
jsmin.php as included in typo3 core uses a non free license.
This causes the packages for typo3 in debian to be patched to
not include jsmin.php. Also fedora does not allow jsmin.php
into its archives.
For more information look here:
A replacement could be
[BUGFIX] replace non-free jsmin.php with hook
jsmin.php has a non free license. See referenced bug report for
details. This patch replaces jsmin.php with a hook to provide a
way for extensions to implement own compression algorithms.
Reviewed-by: Marcus Schwemer
Tested-by: Marcus Schwemer
Reviewed-by: Stefan Neufeind
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
#1 Updated by Steffen Gebert over 6 years ago
Thanks for your report, Christian!
Interesting fact.. it's something we should definitely deal with. We disabled JSmin already for the backend, as it's damn slow. Maybe we could totally get rid of it. However, I see a problem with already released versions.
#3 Updated by Christian Welzel over 6 years ago
All versions of typo3 in debian are shipped without jsmin.php since 4.3.
There was never a bug report regarding this change. So from the technical
view there are no problems. But i'm not an laywer so i cannot say what
this issue implies for the typo3 packages. But getting rid of jsmin.php
sooner than later would be better imho.
I provided a patch which replaces jsmin.php by the above linked packer port.
(just in case, its not removed completely).
#4 Updated by Oliver Hader over 6 years ago
Hm, the line is "shall be used for good, not evil" which is not a problem with the regular TYPO3 packages since we do not intend to do something evil with it and thus it's not a violation of the license on our side. But since we forward this restriction to others (which might not know about) we better should get rid of the JSMIN package and use the suggested replacements.
In one of the mentioned resources there's something about qtobject - however I did not get what's the problem there.
#5 Updated by Christian Welzel over 6 years ago
The problem is not, what you think about good and evil (btw from which point of view, is js compression for a porn site good or evil?). The problem is that this license puts restrictions on the usage of the program, which make it non-free (for requirements for OS-licenses see http://www.opensource.org/docs/osd, Point 6). As such jsmin.php is not compatible with the GPL anymore under which typo3 is licensed, so there are two options: remove jsmin.php or add the "for good, not evil" to the license of typo3 (which makes typo3 non-free).
qtobject was licensed by a home brewn license which did not allow modification. It has been relicensed by the auhtor to MIT license, so there is no problem anymore.
#14 Updated by Marcus Schwemer almost 6 years ago
what do you think about just deprecating the function, leave it as is and remove in after 2 releases?Why?
- Time should not be a problem, since we use it several years with "non free" code and get rid of it anyway. Fedora and Debian users had to add it until now.
- For frontend optimization we have "config.minifyJS" and "config.compressJS" (since 4.6). So there is no need for an extension dev to optimize JS code. This is done by the integrators while setting up a website.