#539066 lintian: symbols-file-contains-debian-revision false positives when upstream version contains dash

#539066#5
Date:
2009-07-28 20:38:08 UTC
From:
To:
Hi Lintian maintainers,

Debian policy allows version numbers like 4.999.8beta-115-gadbad2d-1
(<http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Version>),
which makes the symbols-file-contains-debian-revision check tricky.
For example, lintian misdiagnoses the problem in the following symbols
file:

liblzma.so.0 liblzma0 #MINVER#
 lzma_alone_decoder@Base 4.999.8beta-111-g8f8ec94
 ...

Lintian reports symbols-file-contains-debian-revision. How could it
know otherwise? If no entry in debian/changelog has upstream version
4.999.8beta-111-g8f8ec94, for lack of better options Lintian assumes
the -g8f8ec94 is a Debian revision.

Unfortunately, at least to this naive user, the result suggests that
Lintian would not be happy with any version number with dashes in it.
And that's just not true.

Possible fixes:
 * Provide two separate warnings: one for unknown revisions in symbols
files and another for known Debian revisions in symbols files. Or
maybe even three: unknown but no dash, unknown with dash, and known
with dash (since unknown with no dash is usually not a mistake).
 * Treat revisions with two or more dashes differently from revisions
with only one dash? (This would handle the example just mentioned, but
generally it seems like a bad idea.)
 * Treat packages whose changelogs contain upstream revisions with a
dash differently? (This would handle the example just mentioned, but
generally it seems like an awful idea.)

Thoughts?

Regards,
Jonathan

#539066#10
Date:
2010-01-02 07:23:39 UTC
From:
To:
Hi Lintian maintainers,

Last year, I wrote:

But I have had a change of heart.  Although it would be friendlier to
handle such versions well, the version number in question was better
replaced with a less dash-heavy one, and I suspect that in practice
that will almost always be the case.  So please close this bug or mark
it wontfix, or set the submitter to yourself if you want it fixed. :)

Kind regards,
Jonathan

#539066#15
Date:
2010-01-02 07:52:41 UTC
From:
To:
submitter 539066 !
retitle 539066 [checks/shared-libs] symbols-file-contains-debian-revision false positives when upstream version contains dash
thanks

Jonathan Nieder <jrnieder@gmail.com> writes:

Thanks for letting us know!  I think that Lintian could still be somewhat
more intelligent than this (for instance, the version number that you
opened this bug report about is recognizably not ending in a Debian
revision), so I'll take ownership of it and leave it open.

#539066#24
Date:
2025-12-12 14:47:19 UTC
From:
To:
Re: Russ Allbery

I just hit that one in libpg-query. The upstream version is
17-6.2.0, so I need to put the full 17-6.2.0-1 into the symbols file.

I think lintian should just not bother to emit this tag at all if the
upstream version contains a dash. There is nothing to warn about in
this case.

Christoph