On 2/9/07, subtleGradient / Thomas Aylott oblivious@subtlegradient.com wrote:
Has Andrew given permission for them to be added?
I emailed Andrew some days ago, and he is ok with this.
He told me that JSmin (the tool used for cleanup) is released under the MIT license, so no problems with it. JSL (the tool used for syntax and error validation) is released under the Mozilla license.
As for the command themselves, I'll let someone that knows something about javascript respond. ;)
The commands are so cool they made some of my fellow coworkers drool (and they code quite a lot of Javascript :)
I wouldn't call a 4MB bundle small ;). I agree though that 5 js code cleanup commands do not qualify for a bundle of their own, but perhaps we would consider adding some of them to the javascript bundle.
My intentions when commiting the tools as a separated bundle were:
* Make the tools available to everyone that want to play with them, without "polluting" the JS bundle for those that don't need them * Get the commands out there for everyone to play with and improve, and * Decide later which (if any) commands could be included in the Javascript bundle
This bundle seems to contain jsl binaries for intel and mac separately, so to begin with I would like to see a universal binary there.
I had already modified the binaries and did some code cleanup. There is a single universal binary now, it is stripped (so it is 1.6Mb), and I'm in the process of adding the corresponding license files with each binary.
Second of all, I am not entirely sure that we can include the jsl binaries at all, we would need to check the licenses first. It might make more sense perhaps for the commands to expect the system to have jsl installed, and to prompt their user to appropriate links where they can get jsl.
JSL, as far as I can tell from what's included in the source, is released under the GPL/LGPL/Mozilla license (MPL). We could look into making it a requirement for the command, and ask the user to install it. It saves us the trouble of keeping up with new versions, but we also lose some control of it, thus inducing potential problems. Nothing to worry too much about, but not to forget about either.
Not being a js expert and not having read in detail what each of the commands does, I can't really comment on it. Perhaps some of our js experts can comment on the tools in this bundle.
That was part of the idea :)
There also seems to be a hefty custom_rhino.jar file, which I don't know much about.
That would be the Rhino Javascript parser, used by the "Compress" command. It is also released under the MPL license.
So to summarize, this bundle has first of all perhaps too many commands, so I'd like to first know whether they are all needed before cluttering the bundle menus further, or whether we can think about the use cases and decide which of there are really the most useful ones or something like that. I would expect the "code cleanup" command to be a single command for each language.
Actually, the two commands *may* be replaced by one. "Compress" and "Minimize" use two different approaches. Compress uses Rhino, while Minimize is a Ruby script that (hopefully) does the same thing. The truth is "Compress" is better at reducing filesize (and may be more bulletproof), but it may not be worth the extra size (Rhino is 700Kb)
In some of these files, I even had a hard time finding the licensing information.
Yep, it was hard, but contacts have been made and agreements have been reached :)
I understand the worries you're voicing (specially considering past "horrors" in the repository), but I'd like to think Allan does not give SVN access to the repo to anybody that just asks and can't tell their GPLs from their MS-RLs :)
Maybe we could create an Experimental JavaScript bundle? That way we play with can play with the tools and include them in the "official" bundle once they are considered worthy of it...
-- Ale Muñoz http://sofanaranja.com http://bomberstudios.com