[SCM] Debian package checker branch, master, updated. 2.1.2-9-gd5a241e
The following commit has been merged in the master branch: commit d5a241efa43d36cda2c234f0946978e7a04c078f Author: Russ Allbery r...@debian.org Date: Sat Dec 27 00:50:40 2008 -0800 Check specifically for shlibs with unversioned SONAMEs * checks/shared-libs{,.desc}: + [RA] Remove special shlibs exception for NSS modules. libc6 now includes shlibs entries for them. + [RA] Report a more specialized tag for shared libraries with SONAMEs that have no version and exclude them from the shlibs and symbols file tests since they cannot be represented there. Reported by Raphael Hertzog. (Closes: #506673) diff --git a/checks/shared-libs b/checks/shared-libs index f8e4a9e..2b3033d 100644 --- a/checks/shared-libs +++ b/checks/shared-libs @@ -244,7 +244,21 @@ $provides = Dep::parse($provides); my %shlibs_control; my %symbols_control; -...@shlibs = grep { !m,^lib/libnss_[^.]+\.so(\.[0-9]+)$, } keys %SONAME; +# Libraries with no version information can't be represented by the shlibs and +# symbols format and are on their own, but we can warn about that if they +# appear in public directories. If they're in private directories, assume +# they're plugins and ignore them. +my %unversioned_shlibs; +for (keys %SONAME) { +my $soname = $SONAME{$_}; +if ($soname !~ /\.so\.[0-9]+/ and $soname !~ /.+-\w[\w\.]*\.so$/) { + $unversioned_shlibs{$_} = 1; + tag 'shlib-without-versioned-soname', $_, $soname + if $ldconfig_dirs-known(dirname($_)); +} +} +...@shlibs = grep { !$unversioned_shlibs{$_} } keys %SONAME; + if ($#shlibs == -1) { # no shared libraries included in package, thus shlibs control file should # not be present diff --git a/checks/shared-libs.desc b/checks/shared-libs.desc index f42075a..8217c97 100644 --- a/checks/shared-libs.desc +++ b/checks/shared-libs.desc @@ -33,6 +33,26 @@ Info: The listed shared libraries contain object code that was compiled case, follow the procedure outlined in Policy and then please document the exception by adding a lintian override to this package. +Tag: shlib-without-versioned-soname +Severity: normal +Certainty: possible +Ref: policy 10.2, policy 8.6 +Info: The listed shared library in a public library directory has an + SONAME that does not contain any versioning information, either after the + tt.so/tt or before it and set off by a hyphen. It cannot therefore + be represented in the shlibs system, and if linked by binaries its + interface cannot safely change. There is no backward-compatible way to + migrate programs linked against it to a new ABI. + . + Normally, this means the shared library is a private library for a + particular application and is not meant for general use. Policy + recommends that such libraries be installed in a subdirectory of + tt/usr/lib/tt rather than in a public shared library directory. + . + There are some special stub libraries or special-purpose shared objects + for which an ABI version is not meaningful. If this is one of those + cases, please add an override. + Tag: ldconfig-symlink-missing-for-shlib Severity: important Certainty: certain diff --git a/debian/changelog b/debian/changelog index 2fb12b5..a7e6f7d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,7 @@ lintian (2.1.3) UNRELEASED; urgency=low - debian-watch-file-specifies-wrong-upstream-version - debian-watch-file-specifies-old-upstream-version - extended-description-is-probably-too-short + - shlib-without-versioned-soname * checks/description{,.desc}: + [RA] Check for extended descriptions shorter than three lines; they @@ -28,6 +29,13 @@ lintian (2.1.3) UNRELEASED; urgency=low - Detect watch files specifying an upstream version for an older changelog entry when the current changelog entry has a newer upstream version. + * checks/shared-libs{,.desc}: ++ [RA] Remove special shlibs exception for NSS modules. libc6 now + includes shlibs entries for them. ++ [RA] Report a more specialized tag for shared libraries with SONAMEs + that have no version and exclude them from the shlibs and symbols + file tests since they cannot be represented there. Reported by + Raphael Hertzog. (Closes: #506673) * checks/version-substvars: + [RA] Skip version substvar checks when the dependency is on a package whose name is formed by expanding substvars at build time. diff --git a/testset/libbaz/Makefile b/testset/libbaz/Makefile index b388b8c..1025aaf 100644 --- a/testset/libbaz/Makefile +++ b/testset/libbaz/Makefile @@ -11,7 +11,8 @@ ifneq ($(DEB_HOST_ARCH),i386) NOPICOBJS = $(SHOBJS) endif -all: libbaz1.a libbaz2.a libbaz1.so.1.0.3b libbaz2.so libbaz3.so.1.0.3b +all: libbaz1.a libbaz2.a libbaz1.so.1.0.3b libbaz2.so libbaz3.so.1.0.3b \ + libbaz.so libbaz2.so: libbaz2.so.1.0 ln -sf $^ $@ @@ -29,6 +30,10 @@ libbaz2.so.1.0.3b: $(SHOBJS)
Processed: setting package to lintian, tagging 506673
Processing commands for cont...@bugs.debian.org: # Automatically generated email from bts, devscripts version 2.10.35 # via tagpending # # lintian (2.1.3) UNRELEASED; urgency=low # # * checks/shared-libs{,.desc}: #+ [RA] Remove special shlibs exception for NSS modules. libc6 now # includes shlibs entries for them. #+ [RA] Report a more specialized tag for shared libraries with SONAMEs # that have no version and exclude them from the shlibs and symbols # file tests since they cannot be represented there. Reported by # Raphael Hertzog. (Closes: #506673) # package lintian Ignoring bugs not assigned to: lintian tags 506673 + pending Bug#506673: lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions There were no tags set. Tags added: pending End of message, stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#506673: lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions
Raphael Hertzog hert...@debian.org writes: On libc6 in experimental I see: E: libc6: shlib-missing-in-control-file libpcprofile.so for lib/libpcprofile.so E: libc6: symbols-declared-but-not-shlib libpcprofile.so But since libpcprofile.so has no version in its soname it simply isn't representable in the shlib system… so it shouldn't be an error. I looked at this in some detail today. This particular situation (libraries with no meaningful version information) are the majority of those tags issued across the archive, and I agree that they're not the right tags since those files can't be represented in the shlibs system at all. It does look like they can be represented in the symbols system because the symbols system doesn't have the separate version field and instead shows the complete SONAME. Is that correct? Incidentally, we currently have no complete documentation about how the version field in shlibs actually works, so far as I can tell. All the documentation we do have says that the version listed in shlibs is the part after .so. in the SONAME, but library SONAMEs of the form libfoo-version.so apparently also work fine. It's not intuitively obvious, once you've realized that, that other things couldn't also work, so it would be nice to have a more accurate description of exactly what is happening somewhere. I've seen several different regexes used to try to extract versions from libfoo-version.so library names and they all disagree subtly. What I'm committing for the next release is a patch that will look in public library directories (ones searched by ldconfig), warn about those shared libraries with SONAMEs that contain no version information, and then exclude them from shlibs checks. I'm using the most generous regex for matching libfoo-version.so style SONAMEs, so basically anything with a hyphen in it will pass, which means we'll still issue the wrong tag for a lot of misplaced plugins and private libraries. Libraries without version information in the SONAME will get a tag saying that private libraries should be moved to a subdirectory and special cases (such as the glibc ones) should get an override. I think it's reasonable to ask libc6 to carry an override for weird special cases like libpcprofile.so and libSegFault.so, since in general we don't want people packaging shared libraries that can't be represented in shlibs. Currently, due to how Lintian works internally, this also excludes all such files from symbols checks as well. If that's not correct, please let me know. -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#506673: setting package to lintian, tagging 506673
# Automatically generated email from bts, devscripts version 2.10.35 # via tagpending # # lintian (2.1.3) UNRELEASED; urgency=low # # * checks/shared-libs{,.desc}: #+ [RA] Remove special shlibs exception for NSS modules. libc6 now # includes shlibs entries for them. #+ [RA] Report a more specialized tag for shared libraries with SONAMEs # that have no version and exclude them from the shlibs and symbols # file tests since they cannot be represented there. Reported by # Raphael Hertzog. (Closes: #506673) # package lintian tags 506673 + pending -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#506673: lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions
On Sat, 27 Dec 2008, Russ Allbery wrote: It does look like they can be represented in the symbols system because the symbols system doesn't have the separate version field and instead shows the complete SONAME. Is that correct? Right. happening somewhere. I've seen several different regexes used to try to extract versions from libfoo-version.so library names and they all disagree subtly. Right. You should use the one used by dpkg-shlibdeps imo: $soname =~ /^(.*)-(\d.*)\.so$/ glibc ones) should get an override. I think it's reasonable to ask libc6 to carry an override for weird special cases like libpcprofile.so and libSegFault.so, since in general we don't want people packaging shared libraries that can't be represented in shlibs. Makes sense. Currently, due to how Lintian works internally, this also excludes all such files from symbols checks as well. If that's not correct, please let me know. What symbols checks ? If they are in a public dir, they can be used with symbols files and as such the corresponding symbols files should be checked IMO. Cheers, -- Raphaël Hertzog Le best-seller français mis à jour pour Debian Etch : http://www.ouaza.com/livre/admin-debian/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-10-g5a7f430
The following commit has been merged in the master branch: commit 5a7f43072c1576ca63190bb82af3378976f1f02b Author: Adam D. Barratt a...@adam-barratt.org.uk Date: Sat Dec 27 19:22:47 2008 + Redirect the output of unpack/list-*pkg to the main process's stdout. * lib/Lab.pm: + Ensure that the output of unpack/list-*pkg is correctly captured so that the reporting harness can use the information to decide which packages to process in an incremental run. diff --git a/debian/changelog b/debian/changelog index a7e6f7d..d70f1fc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -49,6 +49,11 @@ lintian (2.1.3) UNRELEASED; urgency=low check them against the correct set of distributions. Based on a patch by Adrien Cunin. (Closes: #507740) + * lib/Lab.pm: ++ [ADB] Ensure that the output of unpack/list-*pkg is correctly captured + so that the reporting harness can use the information to decide which + packages to process in an incremental run. + * lib/Lintian/Data.pm: + [RA] New all() method that returns all valid keywords. diff --git a/lib/Lab.pm b/lib/Lab.pm index c522782..8678f00 100644 --- a/lib/Lab.pm +++ b/lib/Lab.pm @@ -141,14 +141,14 @@ sub populate_with_dist { debug_msg(2, spawning list-binpkg, list-udebpkg and list-srcpkg since LINTIAN_DIST=$dist); my $v = $Lintian::Output::GLOBAL-verbose ? '-v' : ''; - -spawn(undef, [$LINTIAN_ROOT/unpack/list-binpkg, +my %opts = ( out = $Lintian::Output::GLOBAL-stdout ); +spawn(\%opts, [$LINTIAN_ROOT/unpack/list-binpkg, $self-{dir}/info/binary-packages, $v]) or fail(cannot create binary package list); -spawn(undef, [$LINTIAN_ROOT/unpack/list-srcpkg, +spawn(\%opts, [$LINTIAN_ROOT/unpack/list-srcpkg, $self-{dir}/info/source-packages, $v]) or fail(cannot create source package list); -spawn(undef, [$LINTIAN_ROOT/unpack/list-udebpkg, +spawn(\%opts, [$LINTIAN_ROOT/unpack/list-udebpkg, $self-{dir}/info/udeb-packages, $v]) or fail(cannot create udeb package list); -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Re: lintian.d.o back up and running
On Fri, 2008-12-26 at 12:57 -0800, Russ Allbery wrote: Adam D. Barratt a...@adam-barratt.org.uk writes: On Mon, December 22, 2008 22:28, Russ Allbery wrote: The full archive run completed, I ran another incremental, and I've now reactivated the cron job. lintian.d.o should now be back to normal. Unfortunately incremental runs are currently broken, as changed-packages.list is always empty. [...] I've attached a patch which resolves this for me in local testing and plan on committing it over the weekend once I return home. Please do -- this looks obviously correct to me. Once you do, I'll release 2.1.3 and, since I think the effect of this will require another complete rebuild anyway, do the upgrade at the same time. Committed; apologies for the delay (I haven't had any 'net access since sending the mail yesterday). Adam -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Re: lintian.d.o back up and running
Adam D. Barratt a...@adam-barratt.org.uk writes: On Fri, 2008-12-26 at 12:57 -0800, Russ Allbery wrote: Please do -- this looks obviously correct to me. Once you do, I'll release 2.1.3 and, since I think the effect of this will require another complete rebuild anyway, do the upgrade at the same time. Committed; apologies for the delay (I haven't had any 'net access since sending the mail yesterday). It's not a problem at all. I wanted to get a few more bug fixes into the next release anyway, and I think I've finally gotten to the bottom of this unversioned shared library thing (and untangled how to write a test suite for it). -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-12-g35e601e
The following commit has been merged in the master branch: commit 8a6354f7dd0cd7fe1deed27fdf6243259ab76358 Author: Russ Allbery r...@debian.org Date: Sat Dec 27 11:20:24 2008 -0800 Fix ${shlibs:Depends} substvar in the test template diff --git a/t/templates/skel/debian/changelog b/t/templates/skel/debian/changelog index 03e23fa..fbc262a 100644 --- a/t/templates/skel/debian/changelog +++ b/t/templates/skel/debian/changelog @@ -1,3 +1,9 @@ +skel (1.2) unstable; urgency=low + + * ${shlibs:Depends}, not ${shlib:Depends}, in the control template. + + -- Russ Allbery r...@debian.org Sat, 27 Dec 2008 11:19:20 -0800 + skel (1.1) unstable; urgency=low * Expand the default long description to three lines to not trigger diff --git a/t/templates/skel/debian/control.in b/t/templates/skel/debian/control.in index 36ee720..440343b 100644 --- a/t/templates/skel/debian/control.in +++ b/t/templates/skel/debian/control.in @@ -7,7 +7,7 @@ Build-Depends: debhelper (= 7) Package: {$srcpkg} Architecture: {$architecture} -Depends: $\{shlib:Depends\}, $\{misc:Depends\} +Depends: $\{shlibs:Depends\}, $\{misc:Depends\} Description: {$description} This is a test package designed to exercise some feature or tag of Lintian. It is part of the Lintian test suite and may do very odd -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-12-g35e601e
The following commit has been merged in the master branch: commit 35e601ecf8cd41bfff371539217ec19ca44ebf7a Author: Russ Allbery r...@debian.org Date: Sat Dec 27 11:33:11 2008 -0800 Improve handling of unversioned shared libraries * checks/shared-libs{,.desc}: + [RA] Use the same regexes as dpkg-shlibdeps when parsing version information from SONAMEs. Also re-add unversioned shared libraries for the symbols file checks, since they can be represented there, and update comments. Add a new-style test suite for handling of unversioned shared libraries. diff --git a/checks/shared-libs b/checks/shared-libs index 2b3033d..4e2b3ae 100644 --- a/checks/shared-libs +++ b/checks/shared-libs @@ -244,14 +244,14 @@ $provides = Dep::parse($provides); my %shlibs_control; my %symbols_control; -# Libraries with no version information can't be represented by the shlibs and -# symbols format and are on their own, but we can warn about that if they -# appear in public directories. If they're in private directories, assume -# they're plugins and ignore them. +# Libraries with no version information can't be represented by the shlibs +# format (but can be represented by symbols). We want to warn about them if +# they appear in public directories. If they're in private directories, +# assume they're plugins or private libraries and are safe. my %unversioned_shlibs; for (keys %SONAME) { -my $soname = $SONAME{$_}; -if ($soname !~ /\.so\.[0-9]+/ and $soname !~ /.+-\w[\w\.]*\.so$/) { +my $soname = format_soname($SONAME{$_}); +if ($soname !~ / /) { $unversioned_shlibs{$_} = 1; tag 'shlib-without-versioned-soname', $_, $soname if $ldconfig_dirs-known(dirname($_)); @@ -335,8 +335,9 @@ if ($#shlibs == -1) { } } -# 5th step: check symbols control file -if ($#shlibs == -1) { +# 5th step: check symbols control file. Add back in the unversioned shared +# libraries, since they can still have symbols files. +if ($#shlibs == -1 and not %unversioned_shlibs) { # no shared libraries included in package, thus symbols control file should # not be present if (-f $symbols_control_file) { @@ -344,7 +345,7 @@ if ($#shlibs == -1) { } } elsif (not -f $symbols_control_file) { if ($type ne 'udeb') { - for my $shlib (@shlibs) { + for my $shlib (@shlibs, keys %unversioned_shlibs) { # skip it if it's not a public shared library next unless $ldconfig_dirs-known(dirname($shlib)); tag no-symbols-control-file, $shlib; @@ -450,7 +451,7 @@ if ($#shlibs == -1) { on symbol $debian_revision_sym$others; } my $shlib_name; -for my $shlib (@shlibs) { +for my $shlib (@shlibs, keys %unversioned_shlibs) { $shlib_name = $SONAME{$shlib}; $shlib_name = format_soname($shlib_name); $symbols_control_used{$shlib_name} = 1; @@ -482,10 +483,12 @@ if ($#shlibs == -1) { } } -# Compare the contents of the shlibs and symbols control files +# Compare the contents of the shlibs and symbols control files, but exclude +# from this check shared libraries whose SONAMEs has no version. Those can +# only be represented in symbols files and aren't expected in shlibs files. if (keys %shlibs_control and keys %symbols_control) { for my $key (keys %symbols_control) { - unless (exists $shlibs_control{$key}) { + unless (exists $shlibs_control{$key} or $key !~ / /) { tag symbols-declared-but-not-shlib, $key; } } @@ -563,14 +566,17 @@ sub abs_path { return $path; } +# Extract the library name and the version from an SONAME and return them +# separated by a space. This code should match the split_soname function in +# dpkg-shlibdeps. sub format_soname { my $soname = shift; # libfoo.so.X.X -if ($soname =~ m/(.+)\.so\.(.*)$/) { +if ($soname =~ /^(.*)\.so\.(.*)$/) { $soname = $1 $2; # libfoo-X.X.so -} elsif ($soname =~ m/(.+)\-(\w[\w\.]*)\.so$/) { +} elsif ($soname =~ /^(.*)-(\d.*)\.so$/) { $soname = $1 $2; } diff --git a/debian/changelog b/debian/changelog index d70f1fc..1af715b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -33,9 +33,11 @@ lintian (2.1.3) UNRELEASED; urgency=low + [RA] Remove special shlibs exception for NSS modules. libc6 now includes shlibs entries for them. + [RA] Report a more specialized tag for shared libraries with SONAMEs - that have no version and exclude them from the shlibs and symbols - file tests since they cannot be represented there. Reported by - Raphael Hertzog. (Closes: #506673) + that have no version and exclude them from the shlibs file tests + since they cannot be represented there. Reported by Raphael + Hertzog. (Closes: #506673) ++ [RA] Use the same regexes as dpkg-shlibdeps when parsing version + information from SONAMEs. *
[SCM] Debian package checker branch, master, updated. 2.1.2-14-gacd7417
The following commit has been merged in the master branch: commit c257fad259c1f89d336337d9c292748019ba7be9 Author: Jordà Polo jo...@ettin.org Date: Tue Dec 16 17:35:35 2008 +0100 Add source version to binary and udeb info files * lib/Read_pkglists.pm: + [JP] Add a new source version field to binary and udeb info files. Bump binary and udeb format version to 3 and 2 respectively. * unpack/list-{bin,udeb}pkg: + [JP] Extract source package version from source field. diff --git a/debian/changelog b/debian/changelog index 1af715b..fb98e5d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -59,6 +59,10 @@ lintian (2.1.3) UNRELEASED; urgency=low * lib/Lintian/Data.pm: + [RA] New all() method that returns all valid keywords. + * lib/Read_pkglists.pm: ++ [JP] Add a new source version field to binary and udeb info files. + Bump binary and udeb format version to 3 and 2 respectively. + * reporting/templates/maintainer.tmpl: + [ADB] Print tags affecting udeb packages under a heading for that package, rather than merging them in to whichever binary package @@ -68,6 +72,9 @@ lintian (2.1.3) UNRELEASED; urgency=low package with the same name when the binary is the first package produced from the source for which there are issues. + * unpack/list-{bin,udeb}pkg: ++ [JP] Extract source package version from source field. + -- Adam D. Barratt a...@adam-barratt.org.uk Sun, 14 Dec 2008 17:20:38 + lintian (2.1.2) unstable; urgency=low diff --git a/lib/Read_pkglists.pm b/lib/Read_pkglists.pm index f0f982f..81c3589 100644 --- a/lib/Read_pkglists.pm +++ b/lib/Read_pkglists.pm @@ -28,9 +28,9 @@ use vars qw($BINLIST_FORMAT $SRCLIST_FORMAT $UDEBLIST_FORMAT %source_info %binar # these banner lines have to be changed with every incompatible change of the # binary and source list file formats -$BINLIST_FORMAT = Lintian's list of binary packages in the archive--V2; +$BINLIST_FORMAT = Lintian's list of binary packages in the archive--V3; $SRCLIST_FORMAT = Lintian's list of source packages in the archive--V3; -$UDEBLIST_FORMAT = Lintian's list of udeb packages in the archive--V1; +$UDEBLIST_FORMAT = Lintian's list of udeb packages in the archive--V2; %source_info = (); %binary_info = (); @@ -115,7 +115,7 @@ sub read_bin_list { chop; next if /^\s*$/o; -my ($bin,$ver,$source,$file,$timestamp) = split(/\;/o,$_); +my ($bin,$ver,$source,$source_ver,$file,$timestamp) = split(/\;/o,$_); my $bin_struct; %$bin_struct = @@ -123,6 +123,7 @@ sub read_bin_list { 'package' = $bin, 'version' = $ver, 'source' = $source, + 'source-version' = $source_ver, 'file' = $file, 'timestamp' = $timestamp, ); @@ -161,7 +162,7 @@ sub read_udeb_list { chop; next if /^\s*$/o; -my ($udeb,$ver,$source,$file,$timestamp) = split(/\;/o,$_); +my ($udeb,$ver,$source,$source_ver,$file,$timestamp) = split(/\;/o,$_); my $udeb_struct; %$udeb_struct = @@ -169,6 +170,7 @@ sub read_udeb_list { 'package' = $udeb, 'version' = $ver, 'source' = $source, + 'source-version' = $source_ver, 'file' = $file, 'timestamp' = $timestamp, ); diff --git a/unpack/list-binpkg b/unpack/list-binpkg index 37e6447..7f519b6 100755 --- a/unpack/list-binpkg +++ b/unpack/list-binpkg @@ -155,11 +155,18 @@ while (!eof(IN)) { next; } +my $source_version = $data-{'version'}; +if ($data-{'source'} =~ /^([-+\.\w]+)\s+\((.+)\)$/) { + $data-{'source'} = $1; + $source_version = $2; +} + # write entry to output file print OUT join(';', $pkg, $data-{'version'}, $data-{'source'}, + $source_version, $deb_file, $timestamp, ),\n; diff --git a/unpack/list-udebpkg b/unpack/list-udebpkg index c8c8659..e183271 100755 --- a/unpack/list-udebpkg +++ b/unpack/list-udebpkg @@ -156,11 +156,18 @@ while (!eof(IN)) { next; } +my $source_version = $data-{'version'}; +if ($data-{'source'} =~ /^([-+\.\w]+)\s+\((.+)\)$/) { + $data-{'source'} = $1; + $source_version = $2; +} + # write entry to output file print OUT join(';', $pkg, $data-{'version'}, $data-{'source'}, + $source_version, $deb_file, $timestamp, ),\n; -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-14-gacd7417
The following commit has been merged in the master branch: commit acd7417f19f7c23860bb63f17e75bea2bd65f5c8 Author: Jordà Polo jo...@ettin.org Date: Tue Dec 16 17:43:56 2008 +0100 Group packages by source version on maintainer reports * reporting/html_reports: + [JP] Group packages by source version instead of binary version. (Closes: #507849) * reporting/templates/maintainer.tmpl: + [JP] Include binary package version in subtitles when it isn't the same as the source version. diff --git a/debian/changelog b/debian/changelog index fb98e5d..5b34723 100644 --- a/debian/changelog +++ b/debian/changelog @@ -63,6 +63,10 @@ lintian (2.1.3) UNRELEASED; urgency=low + [JP] Add a new source version field to binary and udeb info files. Bump binary and udeb format version to 3 and 2 respectively. + * reporting/html_reports: ++ [JP] Group packages by source version instead of binary version. + (Closes: #507849) + * reporting/templates/maintainer.tmpl: + [ADB] Print tags affecting udeb packages under a heading for that package, rather than merging them in to whichever binary package @@ -71,6 +75,8 @@ lintian (2.1.3) UNRELEASED; urgency=low + [ADB] Separate tags affecting a binary package from those of a source package with the same name when the binary is the first package produced from the source for which there are issues. ++ [JP] Include binary package version in subtitles when it isn't the same + as the source version. * unpack/list-{bin,udeb}pkg: + [JP] Extract source package version from source field. diff --git a/reporting/html_reports b/reporting/html_reports index f3f3f0e..743261c 100755 --- a/reporting/html_reports +++ b/reporting/html_reports @@ -219,7 +219,7 @@ while () { # to be no source package in the archive. Determine the maintainer and # version. Work around a missing source package by pulling information # from a binary package or udeb of the same name if there is any. -my ($source, $version, $maintainer, $uploaders); +my ($source, $version, $source_version, $maintainer, $uploaders); if ($type eq 'source') { $source = $package; if (exists $source_info{$source}) { @@ -245,12 +245,15 @@ while () { } if ($type eq 'binary') { $version = $binary_info{$package}-{version}; +$source_version = $binary_info{$package}-{'source-version'}; } elsif ($type eq 'udeb') { $version = $udeb_info{$package}-{version}; +$source_version = $udeb_info{$package}-{'source-version'}; } } $maintainer ||= '(unknown)'; $version ||= 'unknown'; +$source_version ||= $version; # Check if we've seen the URL for this maintainer before and, if so, map # them to the same person as the previous one. @@ -270,6 +273,7 @@ while () { my $info = { code = html_quote ($code), package = html_quote ($package), +version = html_quote ($version), type = html_quote ($type), tag = html_quote ($tag), severity = html_quote ($tag_extra{$tag}{severity}), @@ -277,8 +281,8 @@ while () { extra = html_quote ($extra), xref = maintainer_url ($maintainer) . #$source }; -$by_maint{$maintainer}{$source}{$version} ||= []; -push(@{ $by_maint{$maintainer}{$source}{$version} }, $info); +$by_maint{$maintainer}{$source}{$source_version} ||= []; +push(@{ $by_maint{$maintainer}{$source}{$source_version} }, $info); $by_tag{$tag} ||= []; push(@{ $by_tag{$tag} }, $info); @@ -290,8 +294,8 @@ while () { my $uploader = map_maintainer ($_); next if $uploader eq $maintainer; $saw_maintainer{$uploader} = 1; -$by_uploader{$uploader}{$source}{$version} ||= []; -push(@{ $by_uploader{$uploader}{$source}{$version} }, $info); +$by_uploader{$uploader}{$source}{$source_version} ||= []; +push(@{ $by_uploader{$uploader}{$source}{$source_version} }, $info); } } } diff --git a/reporting/templates/maintainer.tmpl b/reporting/templates/maintainer.tmpl index f7f0353..c0c218f 100644 --- a/reporting/templates/maintainer.tmpl +++ b/reporting/templates/maintainer.tmpl @@ -94,9 +94,12 @@ $OUT .= qq( ul class=report\n) unless $is_binary; } +my $bin_version = ; +$bin_version = ($info-{version}) if $info-{version} ne $version; + if ($new_binary) { $OUT .= /ul\n/li\n /ul\n unless $first; -$OUT .= qq( h3$info-{package}/h3\n); +$OUT .= qq( h3$info-{package}$bin_version/h3\n); $OUT .= qq( ul class=report\n); } -- Debian package checker -- To UNSUBSCRIBE, email to
Bug#506673: lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions
Raphael Hertzog hert...@debian.org writes: On Sat, 27 Dec 2008, Russ Allbery wrote: I've seen several different regexes used to try to extract versions from libfoo-version.so library names and they all disagree subtly. Right. You should use the one used by dpkg-shlibdeps imo: $soname =~ /^(.*)-(\d.*)\.so$/ I've modified Lintian to match nad have filed a bug against debhelper (#509931) suggesting dh_makeshlibs also match and against Policy (#509932) suggesting that we standardize this method of versioning as well. Currently, due to how Lintian works internally, this also excludes all such files from symbols checks as well. If that's not correct, please let me know. What symbols checks ? If they are in a public dir, they can be used with symbols files and as such the corresponding symbols files should be checked IMO. Okay, I've redone my changes from last night accordingly and now unversioned shared libraries in public directories get a separate tag and are only excluded from shlibs checks. The recommendation that a symbols file be added is still present. Thank you for your explanations! -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#485705: lintian: doesn't properly detect comma in control file email address quoted strings
Hi Adam, I wanted to update you on the status of this bug. I just opened Bug#509935 against Policy to decide what we want the format of Uploaders to be, and I blocked this bug with that one. We'll implement in Lintian whatever the results of the Policy discussion are. -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Processed: block 485705 with 509935
Processing commands for cont...@bugs.debian.org: # Automatically generated email from bts, devscripts version 2.10.35 block 485705 with 509935 Bug#509935: decide whether Uploaders is parsed per RFC 5322 Bug#485705: lintian: doesn't properly detect comma in control file email address quoted strings Was not blocked by any bugs. Blocking bugs of 485705 added: 509935 End of message, stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-17-gb0dc93d
The following commit has been merged in the master branch: commit 0095c9937314f915c5e74762cf3e7160ac8dfc0d Author: Russ Allbery r...@debian.org Date: Sat Dec 27 13:28:06 2008 -0800 Fix ordering of debian/changelog diff --git a/debian/changelog b/debian/changelog index b738e8b..416d14e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -16,19 +16,6 @@ lintian (2.1.3) UNRELEASED; urgency=low + [RA] Recognize Ubuntu native packages by the target distribution and suppress NMU tags for them. Based on a patch by Adrien Cunin. (Closes: #507740) - * checks/watch-file{,.desc}: -+ [RA] Merge a set of changes by Raphael Geissert: - - Correctly parse multiple line continuations. - - Don't attempt any detailed checks on version one watch files. - - Recognize versionmangle in addition to [du]versionmangle. - - Add line information to some of the tags. - - Detect watch files that specify SourceForge download servers -directly and suggest use of the QA sf.net redirector instead. - - Detect watch files specifying an upstream version that matches a -non-native Debian package version in debian/changelog. - - Detect watch files specifying an upstream version for an older -changelog entry when the current changelog entry has a newer -upstream version. * checks/shared-libs{,.desc}: + [RA] Remove special shlibs exception for NSS modules. libc6 now includes shlibs entries for them. @@ -42,6 +29,19 @@ lintian (2.1.3) UNRELEASED; urgency=low + [RA] Skip version substvar checks when the dependency is on a package whose name is formed by expanding substvars at build time. Thanks, Bastian Blank. (Closes: #507763) + * checks/watch-file{,.desc}: ++ [RA] Merge a set of changes by Raphael Geissert: + - Correctly parse multiple line continuations. + - Don't attempt any detailed checks on version one watch files. + - Recognize versionmangle in addition to [du]versionmangle. + - Add line information to some of the tags. + - Detect watch files that specify SourceForge download servers +directly and suggest use of the QA sf.net redirector instead. + - Detect watch files specifying an upstream version that matches a +non-native Debian package version in debian/changelog. + - Detect watch files specifying an upstream version for an older +changelog entry when the current changelog entry has a newer +upstream version. * data/changelog-file/ubuntu-dists: + [RA] New shared list of Ubuntu distributions. -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-17-gb0dc93d
The following commit has been merged in the master branch: commit b1b26eccd5e6d9aa48ac3479fa5e356446183985 Author: Russ Allbery r...@debian.org Date: Sat Dec 27 13:24:51 2008 -0800 Parameterize the section of test suite packages and clean up changelogs Allow the section of a package generated by the test suite to be set in the *.desc file. This makes it easier to write tests for checks on some packages without introducing spurious tags. Remove extra whitespace in debian/changelog to group by root directory. Collapse the changelog for the test suite skel package to only increment the version once since the previous Lintian release. diff --git a/debian/changelog b/debian/changelog index 5b34723..b738e8b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -55,10 +55,8 @@ lintian (2.1.3) UNRELEASED; urgency=low + [ADB] Ensure that the output of unpack/list-*pkg is correctly captured so that the reporting harness can use the information to decide which packages to process in an incremental run. - * lib/Lintian/Data.pm: + [RA] New all() method that returns all valid keywords. - * lib/Read_pkglists.pm: + [JP] Add a new source version field to binary and udeb info files. Bump binary and udeb format version to 3 and 2 respectively. @@ -66,7 +64,6 @@ lintian (2.1.3) UNRELEASED; urgency=low * reporting/html_reports: + [JP] Group packages by source version instead of binary version. (Closes: #507849) - * reporting/templates/maintainer.tmpl: + [ADB] Print tags affecting udeb packages under a heading for that package, rather than merging them in to whichever binary package @@ -78,6 +75,9 @@ lintian (2.1.3) UNRELEASED; urgency=low + [JP] Include binary package version in subtitles when it isn't the same as the source version. + * t/runtests: ++ [RA] Parameterize the package section in the skeleton. + * unpack/list-{bin,udeb}pkg: + [JP] Extract source package version from source field. diff --git a/t/runtests b/t/runtests index 426558b..46f9bb9 100755 --- a/t/runtests +++ b/t/runtests @@ -283,6 +283,7 @@ sub check_test_is_sane { $data-{description} ||= 'No Description Available'; $data-{author} ||= 'Debian Lintian Maintainers lintian-ma...@debian.org'; $data-{architecture} ||= 'all'; +$data-{section} ||= 'devel'; if ($debug) { print check_test_is_sane = .Dumper($data); diff --git a/t/templates/skel/debian/changelog b/t/templates/skel/debian/changelog index fbc262a..583eae2 100644 --- a/t/templates/skel/debian/changelog +++ b/t/templates/skel/debian/changelog @@ -1,16 +1,13 @@ -skel (1.2) unstable; urgency=low - - * ${shlibs:Depends}, not ${shlib:Depends}, in the control template. - - -- Russ Allbery r...@debian.org Sat, 27 Dec 2008 11:19:20 -0800 - skel (1.1) unstable; urgency=low + * Parameterize the package section to make it easier to avoid spurious +tags for section mismatches when testing some types of packages. + * ${shlibs:Depends}, not ${shlib:Depends}, in the control template. * Expand the default long description to three lines to not trigger extended-description-is-probably-too-short. Tell anyone looking at a test package that it shouldn't be installed like a normal package. - -- Russ Allbery r...@debian.org Fri, 26 Dec 2008 22:12:23 -0800 + -- Russ Allbery r...@debian.org Sat, 27 Dec 2008 13:16:40 -0800 skel (1.0) unstable; urgency=low diff --git a/t/templates/skel/debian/control.in b/t/templates/skel/debian/control.in index 440343b..f8f5c04 100644 --- a/t/templates/skel/debian/control.in +++ b/t/templates/skel/debian/control.in @@ -1,6 +1,6 @@ Source: {$srcpkg} Priority: extra -Section: devel +Section: {$section} Maintainer: {$author} Standards-Version: 3.8.0 Build-Depends: debhelper (= 7) -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-17-gb0dc93d
The following commit has been merged in the master branch: commit b0dc93d000b7eea32c96d79f41e61ce5d22379a5 Author: Russ Allbery r...@debian.org Date: Sat Dec 27 13:29:44 2008 -0800 Improve zero-byte-file-in-doc-directory tag * checks/files{,.desc}: + [RA] Exclude __init__.py files and Doxygen-generated *.map files from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are appropriate. Lower the certainty to possible. (Closes: #507273) diff --git a/checks/files b/checks/files index 5015fdc..7ffbccf 100644 --- a/checks/files +++ b/checks/files @@ -206,8 +206,12 @@ foreach my $file (sort keys %{$info-index}) { # zero byte file in /usr/share/doc/ if ($index_info-{size} == 0 and $index_info-{type} =~ m,^-,) { - # exception: examples may contain empty files for various reasons - unless ($file =~ m,^usr/share/doc/([^/]+/)?examples/,) { + # Exceptions: examples may contain empty files for various + # reasons, Doxygen generates empty *.map files, and Python + # uses __init__.py to mark module directories. + unless ($file =~ m,^usr/share/doc/([^/]+/)?examples/, + or $file =~ m,^usr/share/doc/(.+/)?html/.*\.map$, + or $file =~ m,^usr/share/doc/(.+/)?__init__\.py$,) { tag zero-byte-file-in-doc-directory, $file; } } diff --git a/checks/files.desc b/checks/files.desc index 60f5f0f..225757b 100644 --- a/checks/files.desc +++ b/checks/files.desc @@ -627,8 +627,15 @@ Ref: perl-policy 4.1 Tag: zero-byte-file-in-doc-directory Severity: normal -Certainty: certain -Info: Package contains a file which is empty. +Certainty: possible +Info: The documentation directory for this package contains an empty + file. This is often due to installing an upstream NEWS or README file + without realizing it's empty and hence not useful. + . + Files in the examples subdirectory are excluded from this check, but + there are some cases where empty files are legitimate parts of the + documentation without being examples. In those cases, please add an + override. Tag: override-file-in-wrong-location Severity: important diff --git a/debian/changelog b/debian/changelog index 416d14e..80643e0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,11 @@ lintian (2.1.3) UNRELEASED; urgency=low + [RA] Check for extended descriptions shorter than three lines; they probably don't contain enough information. Patch from Raphael Geissert. + * checks/files{,.desc}: ++ [RA] Exclude __init__.py files and Doxygen-generated *.map files + from zero-byte-file-in-doc-directory. Improve the tag description + to add a rationale and a suggestion for when overrides are + appropriate. Lower the certainty to possible. (Closes: #507273) * checks/nmu: + [RA] Recognize Ubuntu native packages by the target distribution and suppress NMU tags for them. Based on a patch by Adrien Cunin. diff --git a/t/tests/6000_files-zero-byte-doc.desc b/t/tests/6000_files-zero-byte-doc.desc new file mode 100644 index 000..96c4cfe --- /dev/null +++ b/t/tests/6000_files-zero-byte-doc.desc @@ -0,0 +1,6 @@ +Testname: files-zero-byte-doc +Version: 1.0 +Section: doc +Description: Check detection of zero-byte files in doc directories +Test-For: zero-byte-file-in-doc-directory +References: Debian Bug#507273 diff --git a/t/tests/files-zero-byte-doc/debian/Makefile b/t/tests/files-zero-byte-doc/debian/Makefile new file mode 100644 index 000..f9336ee --- /dev/null +++ b/t/tests/files-zero-byte-doc/debian/Makefile @@ -0,0 +1,29 @@ +ROOT = $(DESTDIR)/usr/share/doc/files-zero-byte-doc + +default: + : + +install: + mkdir -p $(ROOT) + # Should be ignored. + mkdir -p $(ROOT)/examples + touch $(ROOT)/examples/empty + touch $(ROOT)/__init__.py + mkdir -p $(ROOT)/python/foo + touch $(ROOT)/python/foo/__init__.py + mkdir -p $(ROOT)/html + touch $(ROOT)/html/blah.map + mkdir -p $(ROOT)/manual/1/html/foo + touch $(ROOT)/manual/1/html/foo/blah.map + # Should be diagnosed. + touch $(ROOT)/NEWS + touch $(ROOT)/foo__init__.py + touch $(ROOT)/html.map + touch $(ROOT)/htmlfoo.map + mkdir -p $(ROOT)/manual + touch $(ROOT)/manual/foo.map + gzip -9 $(ROOT)/manual/foo.map + touch $(ROOT)/some-really-long-file-name-to-make-the-gzip-file-larger + gzip -9 $(ROOT)/some-really-long-file-name-to-make-the-gzip-file-larger + +.PHONY: clean distclean realclean install check test diff --git a/t/tests/files-zero-byte-doc/tags b/t/tests/files-zero-byte-doc/tags new file mode 100644 index 000..5604c35 --- /dev/null +++
Bug#507273: setting package to lintian, tagging 507273
# Automatically generated email from bts, devscripts version 2.10.35 # via tagpending # # lintian (2.1.3) UNRELEASED; urgency=low # # * checks/files{,.desc}: #+ [RA] Exclude __init__.py files and Doxygen-generated *.map files # from zero-byte-file-in-doc-directory. Improve the tag description # to add a rationale and a suggestion for when overrides are # appropriate. Lower the certainty to possible. (Closes: #507273) # package lintian tags 507273 + pending -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Processed: setting package to lintian, tagging 507273
Processing commands for cont...@bugs.debian.org: # Automatically generated email from bts, devscripts version 2.10.35 # via tagpending # # lintian (2.1.3) UNRELEASED; urgency=low # # * checks/files{,.desc}: #+ [RA] Exclude __init__.py files and Doxygen-generated *.map files # from zero-byte-file-in-doc-directory. Improve the tag description # to add a rationale and a suggestion for when overrides are # appropriate. Lower the certainty to possible. (Closes: #507273) # package lintian Ignoring bugs not assigned to: lintian tags 507273 + pending Bug#507273: lintian: please skip __init__.py from zero-byte-file-in-doc-directory check There were no tags set. Tags added: pending End of message, stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker branch, master, updated. 2.1.2-18-g3fe9fb0
The following commit has been merged in the master branch: commit 3fe9fb02a4470136255aac4962e675881e3ba3c3 Author: Russ Allbery r...@debian.org Date: Sat Dec 27 14:15:45 2008 -0800 Fix override-file-in-wrong-location * checks/files{,.desc}: + [RA] Move the check for override files in the wrong location so that the check for subdirectories of /usr/share/lintian/overrides works and improve the tag description. diff --git a/checks/files b/checks/files index 7ffbccf..e536df6 100644 --- a/checks/files +++ b/checks/files @@ -223,15 +223,8 @@ foreach my $file (sort keys %{$info-index}) { } } - # override files have moved - my $tmp = quotemeta($pkg); - if ($file =~ m,^usr/share/doc/$tmp/override\.[lL]intian(\.gz)?$,) { - tag override-file-in-wrong-location, $file; - } elsif ($file =~ m,^usr/share/lintian/overrides/$tmp/.*,) { - tag override-file-in-wrong-location, $file; - } - # contains an INSTALL file? + my $tmp = quotemeta($pkg); if ($file =~ m,^usr/share/doc/$tmp/INSTALL(?:\..+)*$,) { tag package-contains-upstream-install-documentation, $file; } @@ -572,6 +565,13 @@ foreach my $file (sort keys %{$info-index}) { tag file-name-ends-in-whitespace, $file; } +# misplaced lintian overrides +my $tmp = quotemeta($pkg); +if ($file =~ m,^usr/share/doc/$tmp/override\.[lL]intian(\.gz)?$, or + $file =~ m,^usr/share/lintian/overrides/$tmp/.+,) { + tag override-file-in-wrong-location, $file; +} + # plain files if ($index_info-{type} =~ m/^[-h]/) { my $wanted_operm; diff --git a/checks/files.desc b/checks/files.desc index 225757b..c44c6ad 100644 --- a/checks/files.desc +++ b/checks/files.desc @@ -640,9 +640,11 @@ Info: The documentation directory for this package contains an empty Tag: override-file-in-wrong-location Severity: important Certainty: certain -Info: Location of per package overrides the file - /usr/share/lintian/overrides/package. See the lintian documentation for more - info on proper naming and format. +Info: Lintian overrides should be put in a regular file named + /usr/share/lintian/overrides/ttpackage/tt, not in a subdirectory + named for the package or in the obsolete location under /usr/share/doc. + See the Lintian documentation for more information on proper naming and + format. Ref: lintian 2.4 Tag: package-contains-upstream-install-documentation diff --git a/debian/changelog b/debian/changelog index 80643e0..6bd54b7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -17,6 +17,9 @@ lintian (2.1.3) UNRELEASED; urgency=low from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are appropriate. Lower the certainty to possible. (Closes: #507273) ++ [RA] Move the check for override files in the wrong location so that + the check for subdirectories of /usr/share/lintian/overrides works + and improve the tag description. * checks/nmu: + [RA] Recognize Ubuntu native packages by the target distribution and suppress NMU tags for them. Based on a patch by Adrien Cunin. diff --git a/t/tests/6000_files-override-misplaced.desc b/t/tests/6000_files-override-misplaced.desc new file mode 100644 index 000..d8bb58b --- /dev/null +++ b/t/tests/6000_files-override-misplaced.desc @@ -0,0 +1,4 @@ +Testname: files-override-misplaced +Version: 1.0 +Description: Check for misplaced override file detection +Test-For: override-file-in-wrong-location diff --git a/t/tests/files-override-misplaced/debian/Makefile b/t/tests/files-override-misplaced/debian/Makefile new file mode 100644 index 000..cd6a7ca --- /dev/null +++ b/t/tests/files-override-misplaced/debian/Makefile @@ -0,0 +1,16 @@ +ROOT = $(DESTDIR)/usr/share/doc/files-override-misplaced + +default: + : + +install: + mkdir -p $(DESTDIR)/usr/share/doc/files-override-misplaced + echo 'files-override-misplaced: some-override' \ +$(DESTDIR)/usr/share/doc/files-override-misplaced/override.lintian + echo 'files-override-misplaced: some-override' \ +$(DESTDIR)/usr/share/doc/files-override-misplaced/override.Lintian + gzip -9 $(DESTDIR)/usr/share/doc/files-override-misplaced/override.Lintian + mkdir -p $(DESTDIR)/usr/share/lintian/overrides/files-override-misplaced + touch $(DESTDIR)/usr/share/lintian/overrides/files-override-misplaced/some-override + +.PHONY: clean distclean realclean install check test diff --git a/t/tests/files-override-misplaced/tags b/t/tests/files-override-misplaced/tags new file mode 100644 index 000..1b1442d --- /dev/null +++ b/t/tests/files-override-misplaced/tags @@ -0,0 +1,3 @@ +E:
[SCM] Debian package checker branch, master, updated. 2.1.2-19-g67fd86f
The following commit has been merged in the master branch: commit 67fd86fb7aba5eaf39ef26d152180aa510dcc70d Author: Russ Allbery r...@debian.org Date: Sat Dec 27 14:18:40 2008 -0800 Finalize changes for 2.1.3 diff --git a/debian/changelog b/debian/changelog index 6bd54b7..137372c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -lintian (2.1.3) UNRELEASED; urgency=low +lintian (2.1.3) unstable; urgency=low * Summary of tag changes: + Added @@ -89,7 +89,7 @@ lintian (2.1.3) UNRELEASED; urgency=low * unpack/list-{bin,udeb}pkg: + [JP] Extract source package version from source field. - -- Adam D. Barratt a...@adam-barratt.org.uk Sun, 14 Dec 2008 17:20:38 + + -- Russ Allbery r...@debian.org Sat, 27 Dec 2008 14:17:18 -0800 lintian (2.1.2) unstable; urgency=low -- Debian package checker -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
[SCM] Debian package checker annotated tag, 2.1.3, created. 2.1.3
The annotated tag, 2.1.3 has been created at 263a484343d41334968589d16bdb75918b807e7c (tag) tagging 67fd86fb7aba5eaf39ef26d152180aa510dcc70d (commit) replaces 2.1.2 tagged by Russ Allbery on Sat Dec 27 14:31:41 2008 -0800 - Shortlog Release 2.1.3 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian (2.1.3) unstable; urgency=low . * Summary of tag changes: + Added - debian-watch-file-should-use-sf-redirector - debian-watch-file-specifies-wrong-upstream-version - debian-watch-file-specifies-old-upstream-version - extended-description-is-probably-too-short - shlib-without-versioned-soname . * checks/description{,.desc}: + [RA] Check for extended descriptions shorter than three lines; they probably don't contain enough information. Patch from Raphael Geissert. * checks/files{,.desc}: + [RA] Exclude __init__.py files and Doxygen-generated *.map files from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are appropriate. Lower the certainty to possible. (Closes: #507273) + [RA] Move the check for override files in the wrong location so that the check for subdirectories of /usr/share/lintian/overrides works and improve the tag description. * checks/nmu: + [RA] Recognize Ubuntu native packages by the target distribution and suppress NMU tags for them. Based on a patch by Adrien Cunin. (Closes: #507740) * checks/shared-libs{,.desc}: + [RA] Remove special shlibs exception for NSS modules. libc6 now includes shlibs entries for them. + [RA] Report a more specialized tag for shared libraries with SONAMEs that have no version and exclude them from the shlibs file tests since they cannot be represented there. Reported by Raphael Hertzog. (Closes: #506673) + [RA] Use the same regexes as dpkg-shlibdeps when parsing version information from SONAMEs. * checks/version-substvars: + [RA] Skip version substvar checks when the dependency is on a package whose name is formed by expanding substvars at build time. Thanks, Bastian Blank. (Closes: #507763) * checks/watch-file{,.desc}: + [RA] Merge a set of changes by Raphael Geissert: - Correctly parse multiple line continuations. - Don't attempt any detailed checks on version one watch files. - Recognize versionmangle in addition to [du]versionmangle. - Add line information to some of the tags. - Detect watch files that specify SourceForge download servers directly and suggest use of the QA sf.net redirector instead. - Detect watch files specifying an upstream version that matches a non-native Debian package version in debian/changelog. - Detect watch files specifying an upstream version for an older changelog entry when the current changelog entry has a newer upstream version. . * data/changelog-file/ubuntu-dists: + [RA] New shared list of Ubuntu distributions. . * frontend/lintian: + [RA] Recognize Ubuntu native packages by the target distribution and check them against the correct set of distributions. Based on a patch by Adrien Cunin. (Closes: #507740) . * lib/Lab.pm: + [ADB] Ensure that the output of unpack/list-*pkg is correctly captured so that the reporting harness can use the information to decide which packages to process in an incremental run. * lib/Lintian/Data.pm: + [RA] New all() method that returns all valid keywords. * lib/Read_pkglists.pm: + [JP] Add a new source version field to binary and udeb info files. Bump binary and udeb format version to 3 and 2 respectively. . * reporting/html_reports: + [JP] Group packages by source version instead of binary version. (Closes: #507849) * reporting/templates/maintainer.tmpl: + [ADB] Print tags affecting udeb packages under a heading for that package, rather than merging them in to whichever binary package was last displayed (or the source package if the udeb is first alphabetically). + [ADB] Separate tags affecting a binary package from those of a source package with the same name when the binary is the first package produced from the source for which there are issues. + [JP] Include binary package version in subtitles when it isn't the same as the source version. . * t/runtests:
Processing of lintian_2.1.3_i386.changes
lintian_2.1.3_i386.changes uploaded successfully to localhost along with the files: lintian_2.1.3.dsc lintian_2.1.3.tar.gz lintian_2.1.3_all.deb Greetings, Your Debian queue daemon -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Started new lintian.debian.org archive run
I've started a fresh lintian.d.o archive run with 2.1.3. Thanks, Jordà, for that commit! I would have asked about it, but for some reason I thought it was already done. That's great to get into this rebuild. -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
lintian_2.1.3_i386.changes ACCEPTED
Accepted: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb Override entries for your package: lintian_2.1.3.dsc - source devel lintian_2.1.3_all.deb - optional devel Announcing to debian-devel-chan...@lists.debian.org Closing bugs: 506673 507273 507740 507763 507849 Thank you for your contribution to Debian. -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#507849: marked as done (lintian.d.o: group packages by source version)
Your message dated Sat, 27 Dec 2008 22:47:09 + with message-id e1lghw5-uj...@ries.debian.org and subject line Bug#507849: fixed in lintian 2.1.3 has caused the Debian Bug report #507849, regarding lintian.d.o: group packages by source version to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 507849: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507849 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: lintian Version: 2.1.0 Severity: minor This is a bug report corresponding to Bastian Blank's recent mail to the mailing list. Currently, lintian.d.o groups packages by source package name and binary package version, which is not correct for packages where the binary package version may be unrelated to the source package version. linux-modules-extra-2.6 has this problem. The packages should instead be grouped by source package and version. To do this, we'll need to change the format of the binary package list to add an additional field, source package version. In unpack/list-binpkg, we'll need to parse the Source field out of the Packages file. If it's not present, we can assume it matches the binary package, including in version. If it doesn't contain a version, we can assume the version matches. Otherwise, we'll need to parse it for the version of the source package. Then, the reporting harness will need to be updated to use the new source version field for package display. -- System Information: Debian Release: lenny/sid APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages lintian depends on: ii binutils2.18.1~cvs20080103-7 The GNU assembler, linker and bina ii diffstat1.45-2 produces graph of changes introduc ii dpkg-dev1.14.23 Debian package development tools ii file4.26-1 Determines file type using magic ii gettext 0.17-4 GNU Internationalization utilities ii intltool-debian 0.35.0+20060710.1Help i18n of RFC822 compliant conf ii libdigest-sha-perl 5.47-1 Perl extension for SHA-1/224/256/3 ii libipc-run-perl 0.80-2 Perl module for running processes ii libparse-debianchan 1.1.1-2 parse Debian changelogs and output ii libtimedate-perl1.1600-9 Time and date functions for Perl ii liburi-perl 1.35.dfsg.1-1Manipulates and accesses URI strin ii man-db 2.5.2-3 on-line manual pager ii perl [libdigest-sha 5.10.0-18Larry Wall's Practical Extraction lintian recommends no packages. Versions of packages lintian suggests: pn binutils-multiarchnone (no description available) ii libtext-template-perl 1.44-1.2 Text::Template perl module ii man-db2.5.2-3on-line manual pager -- no debconf information ---End Message--- ---BeginMessage--- Source: lintian Source-Version: 2.1.3 We believe that the bug you reported is fixed in the latest version of lintian, which is due to be installed in the Debian FTP archive: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 507...@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Russ Allbery r...@debian.org (supplier of updated lintian package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmas...@debian.org) -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian (2.1.3) unstable; urgency=low . * Summary
Bug#506673: marked as done (lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions)
Your message dated Sat, 27 Dec 2008 22:47:09 + with message-id e1lghw5-ub...@ries.debian.org and subject line Bug#506673: fixed in lintian 2.1.3 has caused the Debian Bug report #506673, regarding lintian: shlib-missing-in-control-file and symbols-declared-but-not-shlib wrong for libraries without versions to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 506673: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=506673 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: lintian Version: 2.0.0 Severity: normal On libc6 in experimental I see: E: libc6: shlib-missing-in-control-file libpcprofile.so for lib/libpcprofile.so E: libc6: symbols-declared-but-not-shlib libpcprofile.so But since libpcprofile.so has no version in its soname it simply isn't representable in the shlib system… so it shouldn't be an error. -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages lintian depends on: ii binutils2.18.1~cvs20080103-7 The GNU assembler, linker and bina ii diffstat1.46-1 produces graph of changes introduc ii dpkg-dev1.15.0 Debian package development tools ii file4.26-1 Determines file type using magic ii gettext 0.17-4 GNU Internationalization utilities ii intltool-debian 0.35.0+20060710.1Help i18n of RFC822 compliant conf ii libparse-debianchan 1.1.1-2 parse Debian changelogs and output ii libtimedate-perl1.1600-9 Time and date functions for Perl ii liburi-perl 1.35.dfsg.1-1Manipulates and accesses URI strin ii man-db 2.5.2-3 on-line manual pager ii perl [libdigest-sha 5.10.0-17Larry Wall's Practical Extraction lintian recommends no packages. Versions of packages lintian suggests: pn binutils-multiarchnone (no description available) ii libtext-template-perl 1.44-1.2 Text::Template perl module ii man-db2.5.2-3on-line manual pager -- no debconf information ---End Message--- ---BeginMessage--- Source: lintian Source-Version: 2.1.3 We believe that the bug you reported is fixed in the latest version of lintian, which is due to be installed in the Debian FTP archive: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 506...@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Russ Allbery r...@debian.org (supplier of updated lintian package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmas...@debian.org) -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian (2.1.3) unstable; urgency=low . * Summary of tag changes: + Added - debian-watch-file-should-use-sf-redirector - debian-watch-file-specifies-wrong-upstream-version - debian-watch-file-specifies-old-upstream-version - extended-description-is-probably-too-short - shlib-without-versioned-soname . * checks/description{,.desc}: + [RA] Check for extended descriptions shorter than three lines; they probably don't contain enough information. Patch from Raphael Geissert. * checks/files{,.desc}: + [RA] Exclude __init__.py files and Doxygen-generated *.map files from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are
Bug#507273: marked as done (lintian: please skip __init__.py from zero-byte-file-in-doc-directory check)
Your message dated Sat, 27 Dec 2008 22:47:09 + with message-id e1lghw5-ud...@ries.debian.org and subject line Bug#507273: fixed in lintian 2.1.3 has caused the Debian Bug report #507273, regarding lintian: please skip __init__.py from zero-byte-file-in-doc-directory check to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 507273: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507273 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: lintian Version: 2.0.0 Severity: minor Hello, __init__.py could be zero-sized, just to mark a directory as a python module, and sometimes such dir are installed in doc/ of the package, so please skip that file from the zero-byte-file-in-doc-directory check. Thanks in advance (and for your huge work), Sandro -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages lintian depends on: ii binutils2.18.1~cvs20080103-7 The GNU assembler, linker and bina ii diffstat1.46-1 produces graph of changes introduc ii dpkg-dev1.14.22 Debian package development tools ii file4.26-1 Determines file type using magic ii gettext 0.17-4 GNU Internationalization utilities ii intltool-debian 0.35.0+20060710.1Help i18n of RFC822 compliant conf ii libparse-debianchan 1.1.1-2 parse Debian changelogs and output ii libtimedate-perl1.1600-9 Time and date functions for Perl ii liburi-perl 1.35.dfsg.1-1Manipulates and accesses URI strin ii man-db 2.5.2-3 on-line manual pager ii perl [libdigest-sha 5.10.0-17Larry Wall's Practical Extraction lintian recommends no packages. Versions of packages lintian suggests: pn binutils-multiarchnone (no description available) pn libtext-template-perl none (no description available) ii man-db2.5.2-3on-line manual pager -- no debconf information ---End Message--- ---BeginMessage--- Source: lintian Source-Version: 2.1.3 We believe that the bug you reported is fixed in the latest version of lintian, which is due to be installed in the Debian FTP archive: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 507...@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Russ Allbery r...@debian.org (supplier of updated lintian package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmas...@debian.org) -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian (2.1.3) unstable; urgency=low . * Summary of tag changes: + Added - debian-watch-file-should-use-sf-redirector - debian-watch-file-specifies-wrong-upstream-version - debian-watch-file-specifies-old-upstream-version - extended-description-is-probably-too-short - shlib-without-versioned-soname . * checks/description{,.desc}: + [RA] Check for extended descriptions shorter than three lines; they probably don't contain enough information. Patch from Raphael Geissert. * checks/files{,.desc}: + [RA] Exclude __init__.py files and Doxygen-generated *.map files from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are appropriate. Lower the certainty to possible. (Closes: #507273) + [RA] Move the check for
Bug#507763: marked as done (lintian - version-substvar-for-external-package false positive: variable package names)
Your message dated Sat, 27 Dec 2008 22:47:09 + with message-id e1lghw5-uh...@ries.debian.org and subject line Bug#507763: fixed in lintian 2.1.3 has caused the Debian Bug report #507763, regarding lintian - version-substvar-for-external-package false positive: variable package names to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 507763: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507763 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: lintian Version: 2.1.0 Severity: important lintian reports version-substvar-for-external-package for linux-2.6: linux-headers-2.6.26-1-all - linux-headers-2.6.26-1-all-${kernel:Arch} The dependency includes a variable which is expanded to the correct package during the package build. To be exact, all reported variants on lintian.d.o have this form. Bastian -- Our way is peace. -- Septimus, the Son Worshiper, Bread and Circuses, stardate 4040.7. ---End Message--- ---BeginMessage--- Source: lintian Source-Version: 2.1.3 We believe that the bug you reported is fixed in the latest version of lintian, which is due to be installed in the Debian FTP archive: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 507...@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Russ Allbery r...@debian.org (supplier of updated lintian package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmas...@debian.org) -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian (2.1.3) unstable; urgency=low . * Summary of tag changes: + Added - debian-watch-file-should-use-sf-redirector - debian-watch-file-specifies-wrong-upstream-version - debian-watch-file-specifies-old-upstream-version - extended-description-is-probably-too-short - shlib-without-versioned-soname . * checks/description{,.desc}: + [RA] Check for extended descriptions shorter than three lines; they probably don't contain enough information. Patch from Raphael Geissert. * checks/files{,.desc}: + [RA] Exclude __init__.py files and Doxygen-generated *.map files from zero-byte-file-in-doc-directory. Improve the tag description to add a rationale and a suggestion for when overrides are appropriate. Lower the certainty to possible. (Closes: #507273) + [RA] Move the check for override files in the wrong location so that the check for subdirectories of /usr/share/lintian/overrides works and improve the tag description. * checks/nmu: + [RA] Recognize Ubuntu native packages by the target distribution and suppress NMU tags for them. Based on a patch by Adrien Cunin. (Closes: #507740) * checks/shared-libs{,.desc}: + [RA] Remove special shlibs exception for NSS modules. libc6 now includes shlibs entries for them. + [RA] Report a more specialized tag for shared libraries with SONAMEs that have no version and exclude them from the shlibs file tests since they cannot be represented there. Reported by Raphael Hertzog. (Closes: #506673) + [RA] Use the same regexes as dpkg-shlibdeps when parsing version information from SONAMEs. * checks/version-substvars: + [RA] Skip version substvar checks when the dependency is on a package whose name is formed by expanding substvars at build time. Thanks, Bastian Blank. (Closes: #507763) * checks/watch-file{,.desc}: + [RA] Merge a set of changes by Raphael Geissert: - Correctly parse multiple line continuations. - Don't attempt any detailed checks on version one watch files. - Recognize versionmangle
Bug#507740: marked as done (Doesn't recognize Ubuntu native packages as Ubuntu packages)
Your message dated Sat, 27 Dec 2008 22:47:09 + with message-id e1lghw5-uf...@ries.debian.org and subject line Bug#507740: fixed in lintian 2.1.3 has caused the Debian Bug report #507740, regarding Doesn't recognize Ubuntu native packages as Ubuntu packages to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact ow...@bugs.debian.org immediately.) -- 507740: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507740 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems ---BeginMessage--- Package: lintian Version: 2.1.0 Severity: normal Tags: patch Basically, Ubuntu native packages (like ubuntu-dev-tools) aren't properly recognized as Ubuntu packages, which triggers false positives: W: ubuntu-dev-tools source: changelog-should-mention-nmu W: ubuntu-dev-tools source: source-nmu-has-incorrect-version-number 0.45 E: ubuntu-dev-tools_0.45_source.changes: bad-distribution-in-changes-file intrepid This was reported and fixed in Ubuntu, see LP bug #273997 [1]. You can find attached the patch against current git head, with the following changelog: * Recognize Ubuntu native packages as Ubuntu packages - Use distribution (and not only version) to decide whether a package is an Ubuntu package [1] https://launchpad.net/bugs/273997 -- Adrien Cunin aka Adri2000 diff --git a/checks/nmu b/checks/nmu index 8581966..6fc679b 100644 --- a/checks/nmu +++ b/checks/nmu @@ -28,6 +28,7 @@ sub run { my $pkg = shift; my $type = shift; my $info = shift; +my $distribution = undef; my $changelog_mentions_nmu = 0; my $changelog_mentions_qa = 0; my $uploader = undef; @@ -43,7 +44,7 @@ if (-l debfiles/changelog) { open (CHANGELOG, '', debfiles/changelog) or fail(Failed opening changelog); -CHANGELOG; +$distribution = $1 if (CHANGELOG =~ /^.* \(.*\) (.*); .*$/); my $firstline = 1; while (CHANGELOG) { if ($firstline) { @@ -82,7 +83,9 @@ if (defined $uploaders) { } # No such thing as NMUs in Ubuntu-land. -if ($version =~ /ubuntu/) { +my $ubuntu_dists = join('|', qw(jaunty intrepid hardy gutsy dapper)); +if ($version =~ /ubuntu|$ubuntu_dists/ +or $distribution =~ /^$ubuntu_dists/) { $upload_is_nmu = 0; $version_nmuness = 0; } diff --git a/frontend/lintian b/frontend/lintian index fe9a823..5653e30 100755 --- a/frontend/lintian +++ b/frontend/lintian @@ -820,12 +820,12 @@ while (my $arg = shift) { # check distribution field if (defined $data-{distribution}) { + my $ubuntu_dists = join('|', qw(jaunty intrepid hardy gutsy dapper)); if ($data-{distribution} eq 'UNRELEASED') { # ignore - } elsif ($data-{'version'} =~ /ubuntu|jaunty|intrepid|hardy|gutsy|dapper/) { - my @ubuntu_dists = qw(jaunty intrepid hardy gutsy dapper); - my $regex = '^(' . join ('|', @ubuntu_dists) . ')'; - if ($data-{distribution} !~ /^$regex(-(proposed|updates|backports|security))?$/ ) { + } elsif ($data-{'version'} =~ /ubuntu|$ubuntu_dists/ + or $data-{distribution} =~ /^$ubuntu_dists/) { + if ($data-{distribution} !~ /^($ubuntu_dists)(-(proposed|updates|backports|security))?$/) { tag(bad-ubuntu-distribution-in-changes-file, $data-{distribution}); } signature.asc Description: Digital signature ---End Message--- ---BeginMessage--- Source: lintian Source-Version: 2.1.3 We believe that the bug you reported is fixed in the latest version of lintian, which is due to be installed in the Debian FTP archive: lintian_2.1.3.dsc to pool/main/l/lintian/lintian_2.1.3.dsc lintian_2.1.3.tar.gz to pool/main/l/lintian/lintian_2.1.3.tar.gz lintian_2.1.3_all.deb to pool/main/l/lintian/lintian_2.1.3_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 507...@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Russ Allbery r...@debian.org (supplier of updated lintian package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmas...@debian.org) -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Format: 1.8 Date: Sat, 27 Dec 2008 14:17:18 -0800 Source: lintian Binary: lintian Architecture: source all Version: 2.1.3 Distribution: unstable Urgency: low Maintainer: Debian Lintian Maintainers lintian-ma...@debian.org Changed-By: Russ Allbery r...@debian.org Description: lintian- Debian package checker Closes: 506673 507273 507740 507740 507763 507849 Changes: lintian
Re: Started new lintian.debian.org archive run
Jordà Polo jo...@ettin.org writes: I should have committed it before, but I was still waiting for a reply to the LAB_FORMAT bump question. (I had a commit ready to be pushed, but I was too lazy to look into the code and confirm it was actually needed.) Oh, sorry, I was going to look at that and then completely forgot about it. Unfortunately, I never recorded my intention anywhere, which means that things get lost too easily. At a glance, it looks like increasing it would have been a good idea since info/*-packages aren't regenerated. Fortunately, it shouldn't be a problem with a fresh run, but I suppose it should be fixed even it if is in the next version. Sorry about that. Looking it over, no, I think it's fine. As near as I can tell, the lab format is only about the files created in the laboratory directories per package, not about the package lists. The package list format is handled entirely via the bits you did change. Since this change didn't affect any of the collect scripts or anything that was written out to the laboratory directories, I don't think there's a reason to increase that format. -- Russ Allbery (r...@debian.org) http://www.eyrie.org/~eagle/ -- To UNSUBSCRIBE, email to debian-lint-maint-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org