Re: [PATCH 7/7] docs: syntax highlight code blocks using SHJS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/31/2013 02:47 AM, Claudio Bley wrote:

> 
> IMO, these files are "object files", as far as the GPL v3 is
> concerned.
> 
> ,----[ GPL v3 1. Source Code ]
> | The "source code" for a work means the preferred form of the work
> | for making modifications to it.  "Object code" means any non-source
> | form of a work.
> `----

That sets off alarm bells in my head.  Doesn't GPL require that if we
distribute binary files, then WE are responsible for shipping the source
used to produce those binaries?  That is, we can't offload our
obligation onto a third-party project - if we are going to ship binary
css and js pages, then the libvirt-1.x.x.tar.gz tarball must include the
source code that produces those binaries.  And if the source code is
more legible, and the formula for generating the minimal size binary is
simple enough, then libvirt.git should just store the source files and
the creation rules, not the binary files.

> 
>> Also, since you are copying from somewhere else, a comment about the
>> original source would be appropriate.
> 
> Fair enough, where should I put it?

Again, if we copy the original source files, rather than a compiled
minimal generated version, then the attribution would go as a comment in
the copied source file.  And if the generated compiled version is not
shipped in the tarball, then not having a copyright disclaimer/license
in the .js file _might_ be okay.  Then again, it might not be: the FSF
LibreJS project exists to reject execution of any javascript files that
do not contain a clear license.

https://www.gnu.org/software/librejs/
https://www.gnu.org/software/librejs/free-your-javascript.html

> 
>>> diff --git a/docs/sh_main.min.js b/docs/sh_main.min.js
>>> new file mode 100644
>>> index 0000000..31d1ba0
>>> --- /dev/null
>>> +++ b/docs/sh_main.min.js
>>> @@ -0,0 +1,4 @@
>>> +/* Copyright (C) 2007, 2008 gnombat@xxxxxxxxxxxxxxxxxxxxx */
>>> +/* License: http://shjs.sourceforge.net/doc/gplv3.html */
>>
>> This has a copyright, but the license is incomplete - the FSF states
>> that it is insufficient to point to a URL when using the GPLv3 (and a
>> non-canonical URL at that); while a URL is helpful, any package shipping
>> a GPLv3 file must also ship the full GPLv3 text as part of the
>> package.
> 
> OK, I'll add a GPLv3 license file.

The more you explain what this commit is trying to add, the more I'm
worried that we are getting ourselves into legal hot water.  People
downloading libvirt.git and seeing GPLv3 COPYING might be worried that
we have changed the license of overall libvirt (although our goal is to
avoid that, and leave most things at LGPLv2+, and some of the built
executables at GPLv2 or GPLv3 depending on libraries that they were
linked with).  Is source code highlighting on the web page documentation
really worth the hassles?

>> What does upstream have against whitespace?
> 
> It is a compressed version of the original code. Intended to cut down
> on download time, snappier page loading.

I'm not sure whether to believe their claim, though.  sh_emacs.min.css
already weighs about 1800 bytes, so it already transmits as 2 packets
with an MTU of 1500.  Upstream is arguing that shaving 30 or so
strategic newlines would cause a noticeable speedup?  I would have been
more impressed if the compression cut a file from 2 TCP packets down to 1.

Unless someone else can chime in and defend the wisdom of this patch,
I'm inclined to NACK this portion of the series.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]