Hi,
Moving from debian-devel-games to debian-devel@ for opinions about if this
lintian warning is OK to override or not, or in general about what to do with
lintian warning about minified JS.
2014-04-24 00:33 Bas Wijnen:
lintian is right that the file does not have source, but we don't ship that file
in the binary -- we link to the canonical file (from jquery package, or
something like that), which has the source in clear code, and has other benefits
(like avoiding duplication, etc).
Yes, I understand that. But the Lintian maintainers know this, too.
And still they emit a warning about it. If you want to argue that this
is incorrect, that's not a problem, but you should be arguing to the
Lintian maintainers (or better, to the project) that they should remove
this warning for files not in a binary package. Overriding the warning
is equivalent to saying "I know the project thinks that I'm doing it
wrong, but they're all idiots".
As I wrote, the only time an override is appropriate is when Lintian is
mistaken and it is a false positive (and it shouldn't be fixed in
Lintian). That is not the case here. This is an intentional warning,
and the package rightfully triggers it.
I was only interested in this discussion because sdlgfx was mentioned, and I
wanted to say that it was not done carelessly or without consideration, and that
I don't share your view or your suggestions that we're violating the license or
creating any problem by doing this.
I don't think that the lintian check should be removed in the general case of
source-is-missing. I don't think that it should be an error for minified JS, or
that it should be the same error.
The rationaly for overriding this in sdlgfx, after depending on binary jquery
and using dh_link for the binary packages, is because I think the lintian
warning *in this case* is a kind of mistake part and thus can be overriden:
a) the minified .js is still source code, by definition. It's interpreted in
different implementations of an ISO-approved interpreted language, and it is
valid code. Even in obfuscated form, with minor transformations it's
probably easier to understand that some other proper source code out there.
So it can be argued that this lintian error is not correct, it is source code
even if obfuscated, and open to interpretation in any case. Saying that
source code is missing for a file that is actually proper source code is a
special case and should be treated differently.
b) The first lines of the unminified file clearly states the software projects,
version, and URLs to get the non-minified versions, so if users want to
modify the code, they can go there or take the version from their Debian
system.
This is vastly different to the normal idea of binaries without sources
(blobs of firmware, .swf files, proprietary binaries without source at all).
While it's technically obfuscated, it doesn't have all of the disadvantages
that other source-less files have.
So the lintian error is in fact equating "source-is-missing" with that this
actually a practical problem, presumably because it affects user freedom.
b) There's value in the warning, in the sense that if one wants to modify the
code, one would prefer to use the unminified version -- the source of the
source file, and we provide that in the binary packages, which is the main
added value of Debian (not the redistribution of the source -- again, as long
as it's legal).
d) Thus, saying that the source of the file is missing is technically true in
the sense that it was generated by another file, in part not true because
it's correct and valid source code, saying that it's not the preferred form
of modification is true, but then again it points to the unminified version,
so it's not trying to hide the source code away from users or hindering
freedom in any way.
Consequently, the freedom of the user is not diminished in any way, which is
(I think) the only reason why free software licenses insist that the source
code is present and mentions the bit about "preferred form of modification".
So the presence of the file in the source tarball is not diminishing the
freedom of users, and the actions proposed by lintian don't enhance user
freedom, from my point of view. And as far as I can see, there are no other
problematic issues (neither practical nor theoretical) with having the file
there.
For all of the above, it is my opinion that the whole discussion about it is
rather theoretical and pointless; and the dance of repackaging the upstream
tarballs in this case, and probably for all uses of jquery, is a waste of time,
and Debian users would see more benefits if contributors spent time elsewhere.
We will probably do something to fix this lintian error in another way in future
uploads, if only to not spend time discussing this.
So, the problem is actually solved, the source-less file that lintian complains
about is not used in any way (neither build nor run time), and thus the lintian
error is misleading in a way, thus overriden.
No, the Lintian error means "with this source package and/or these
binary packages, we will be distributing a file without source". That
is completely correct, and we shouldn't be doing it. It's acceptable to
say "I have different priorities so I'm not going to fix this", but that
is not a reason to override the warning. The bug is still there, and if
somebody is looking for fixing issues like this one, they should find
this package. The override makes that harder. In other words, it hides
problems.
I don't think that overriding hides the problem... in fact, they overrides are
also shown in the page of lintian errors for the package. At least, I see it as
"we know and we did something about it (linking to the canonical file in jquery
binary package".
There are conflicting goals in the Social Contract, so waving hands and pointing
to it every time that this topic arises on the grounds that everything that we
offer is free, is not very helpful in my opinion.
There are some very vaque points in it, where each of us has to use
their own judgement of what to do. But "Debian will remain 100% free"
is not one of those. It doesn't get more exact, I would think.
See above. I don't share your view that the proposed solutions make Debian more
free or enhances user freedom in any way.
And I'm not arguing that it's in the social contract and therefore has
to be the top priority. I'm arguing that it's in the social contract,
so any violation is a real bug and not a false positive. Therefore it
should not be overridden.
Since I don't think that it's real a problem and that the "source-is-missing" is
not an accurate description of minified JS files, I don't think that overriding
it's a problem.
Actually, I would ignore the error rather than override it and fix it later in
some way, but it was not my decision. But I sponsored the package and I don't
think that it's wrong.
Cheers.
--
Manuel
--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20140424194847.ga3...@lugh.itsari.org