Opened 12 years ago

Closed 10 years ago

#569 closed task (wontfix)

please do not commit .jar files to git (closure-compiler)

Reported by: Thomas Koch Owned by:
Priority: trivial Milestone:
Component: programming Keywords:
Cc: ben@… Parent Tickets:

Description

Hi,

I found the closure-compiler jar in extlib/leaflet/lib/closure-compiler/compiler.jar. Is closure a hard dependency or could mediagoblin be built without it? closure is not packaged for Debian so it would make it even harder to get mediagoblin in Debian.

How do you plan to create a source only tarball if you commit .jar files to git? I'd propose to rely on closure-compiler being available and probably provide a two liner shell script to download and sha1sum the .jar file.

Regards, Thomas Koch

Change History (2)

comment:1 by Elrond, 12 years ago

Component: infrastructureprogramming

comment:2 by Ben Sturmfels, 10 years ago

Cc: ben@… added
Resolution: wontfix
Status: newclosed

I can understand the motivation to remove compiler.jar; it's 4.2MB and is only used for building the Leaflet library, not for using Leaflet or MediaGoblin.

Debian, for example, only packages the following files for Leaflet:

/usr/share/doc
/usr/share/doc/libjs-leaflet
/usr/share/doc/libjs-leaflet/changelog.Debian.gz
/usr/share/doc/libjs-leaflet/copyright
/usr/share/javascript
/usr/share/javascript/leaflet
/usr/share/javascript/leaflet/images
/usr/share/javascript/leaflet/images/marker-shadow.png
/usr/share/javascript/leaflet/images/marker.png
/usr/share/javascript/leaflet/images/popup-close.png
/usr/share/javascript/leaflet/images/zoom-in.png
/usr/share/javascript/leaflet/images/zoom-out.png

That said, the extlib/README is very clear about the policy of including unmodified upstream versions of the libraries:

DO NOT "FIX" CODE IN THIS DIRECTORY.

ONLY UPSTREAM VERSIONS OF SOFTWARE GO IN THIS DIRECTORY.

Licensing and creating source distributions of MediaGoblin aren't a problem, since compiler.jar is free software and the source is available elsewhere. Although compiler.jar a big file, in practise this probably isn't preventing anyone from downloading MediaGoblin.

Let me know if I've missed something, but otherwise I recommend sticking with MediaGoblin's policy of not modifying the upstream libraries.

The bigger picture problem is that including upstream libraries is a pain. Solutions to this problem include depending on operating system-level packages like the Debian package above or using a Javascript packaging tool like Bower.

Note: See TracTickets for help on using tickets.