ProjectMeshnet/nodeatlas

Minify CSS and JS

lukevers opened this issue · 7 comments

Minify CSS and JS

This would be good, but should be done with the static compilation.

That's what I was hoping! I wasn't sure if you were planning on adding that
though, so I thought opening it as an issue here might give you an idea
about it.

On Fri, Jan 10, 2014 at 10:57 AM, Alexander Bauer
notifications@github.comwrote:

This would be good, but should be done with the static compilation.


Reply to this email directly or view it on GitHubhttps://github.com//issues/188#issuecomment-32039076
.

I'm actually just about to push a new commit making use of
staticdir, so we can implement our own CopyFunc (specified at
http://godoc.org/github.com/SashaCrofter/staticdir), but we'll have to
figure out how to minify JS and CSS. Do you have a package in mind?

On Fri, Jan 10, 2014 at 08:04:29AM -0800, Luke Evers wrote:

That's what I was hoping! I wasn't sure if you were planning on adding that
though, so I thought opening it as an issue here might give you an idea
about it.

On Fri, Jan 10, 2014 at 10:57 AM, Alexander Bauer
notifications@github.comwrote:

This would be good, but should be done with the static compilation.


Reply to this email directly or view it on GitHubhttps://github.com//issues/188#issuecomment-32039076
.


Reply to this email directly or view it on GitHub:
#188 (comment)

I've found this golang package cssminify, but I haven't tested it out yet. I'm still looking for a golang JS minify package.

Here are some good-looking results, particularly @dchest's JS, CSS, and HTML minifiers. The major problem with them is that they don't make use of io.Readers or io.Writers, so they require a buffer.

Edit: Turns out we already use @dchest's CAPTCHA package!

Hi! @SashaCrofter note that jsmin is a direct port of Crockford's jsmin and thus covered by its "do no evil" license, which I think is incompatible with GPL. Also, since it's a direct [read: no-thinking] port, the code is crap, just like the original.

I use my ports of jsmin and cssmin in production, and they work, but if someone finds better packages, written with Go in mind, I'd really suggest using them instead (and let me know about them :-).

I did a bit of digging, and it does look like the "do no evil" license is, indeed, incompatible with GPL, or at least Debian licensing terms.

I don't like software licensing.
Not my division.