Please disable "debian-changelog-file-is-a-symlink" warning

Bug #329060 reported by Morten Kjeldgaard
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lintian (Debian)
Fix Released
Unknown
lintian (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: lintian

We are getting the debian-changelog-file-is-a-symlink warning on all multi-package packages in Ubuntu.

Since the changelog symlinks is enabled by Ubuntu, I propose that this Linitan warning be turned off as it is confusing to many, and some packagers even attempt to override it (which is a mistake).

Revision history for this message
Adrien Cunin (adri2000) wrote :

"Since the changelog symlinks is enabled by Ubuntu" - what do you mean exactly?

Is changelog being a symlink forbidden in Debian? Is it different in Ubuntu?
(I didn't find anything about this in the Debian policy)

Changed in lintian:
status: New → Incomplete
Revision history for this message
to be removed (liw) wrote :

Yes, Debian forbids the changelog from being a symlink, while Ubuntu doesn't. I removed the "invalid" status because of this. (What's the point of asking a question and immediately marking the bug as invalid, before anyone has had a chance to answer?)

Changed in lintian:
status: Incomplete → New
status: New → Confirmed
Revision history for this message
Adrien Cunin (adri2000) wrote :

Invalid? I marked the bug as incomplete, not invalid. And it's still incomplete.

My questions were implicitly asking for references. In which documents is it written that "Debian forbids the changelog from being a symlink, while Ubuntu doesn't" ?

Changed in lintian:
status: Confirmed → Incomplete
Revision history for this message
to be removed (liw) wrote :

Oh, my error: I misread, you did indeed use incomplete. My apologies.

To expand on my answer: it is not clearly documented in Debian, but lintian is correct in that symlinking the changelog file to another package is treated as a bug in Debian: a changelog is a required part of each package, and symlinking doesn't mean the file is in the package. It's possible to get into a situation where the symlink target isn't installed, and then the changelog isn't available at all for that package.

Ubuntu does not have a problem with this, and Ubuntu's build daemons replace identical copies of changelogs with symlinks to one.

Changed in lintian:
status: Incomplete → Confirmed
Revision history for this message
Morten Kjeldgaard (mok0) wrote :

Right. So people building packages on Ubuntu can't avoid this warning, and I've seen some that attempt to override it, which evidently is a packaging bug. That's why the tag should be disabled in Ubuntu's version of Lintian.

Revision history for this message
Yan Li (yanli) wrote :

This bug is supposed to be fixed in Debian's lintian 2.2.15. Please sync as I still see this issue in Karmic, which is using lintian 2.2.14.

Revision history for this message
Russ Allbery (rra-debian) wrote : Re: [Bug 329060] Re: Please disable "debian-changelog-file-is-a-symlink" warning

Yan Li <email address hidden> writes:

> This bug is supposed to be fixed in Debian's lintian 2.2.15. Please sync
> as I still see this issue in Karmic, which is using lintian 2.2.14.

Note that it's only fixed if the version number of the package contains
the string "ubuntu." For Ubuntu native packages, there unfortunately
isn't any way for Lintian to know that it's an Ubuntu package.

--
Russ Allbery (<email address hidden>) <http://www.eyrie.org/~eagle/>

Revision history for this message
Benjamin Drung (bdrung) wrote :

"lsb_release -si" should be used. I will reopen the Debian bug for this.

Revision history for this message
Benjamin Drung (bdrung) wrote :

I have added a fix for this bug to the merge request (bug #430658).

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (9.7 KiB)

This bug was fixed in the package lintian - 2.2.17ubuntu1

---------------
lintian (2.2.17ubuntu1) karmic; urgency=low

  * Don't warn about a symlinked changelog file in Ubuntu (LP: #329060).

lintian (2.2.17) unstable; urgency=medium

  * Urgency medium to beat libclass-accessor-perl into testing.

  * checks/control-file:
    + [RA] Correctly exclude lib*-dev dependencies on other lib*-dev
      packages that contain a version number. Thanks, Yves-Alexis Perez.
      (Closes: #547773)

  * debian/control:
    + [RA] Explicitly depend on libclass-accessor-perl, since we use it
      directly. (libparse-debianchangelog-perl was implicitly ensuring it
      was installed.)

lintian (2.2.16) unstable; urgency=low

  * Summary of tag changes:
    + Added:
      - dh_undocumented-is-obsolete
      - lib-recommends-documentation
      - weak-library-dev-dependency

  * checks/control-file{,.desc}:
    + [RA] Check that -dev packages depend on exactly the same version of
      the shared library package. (Closes: #537768)
  * checks/debhelper{,.desc}:
    + [RA] Check for use of the obsolete dh_undocumented debhelper
      program. Patch from Raphael Geissert. (Closes: #541977)
  * checks/fields{,.desc}:
    + [RA] Check for library packages that recommend documentation
      packages. Patch from Raphael Geissert. (Closes: #527363)
    + [RA] Fix regex for recognizing CVS repositories available via
      anonymous ssh. Thanks, Thorsten Glaser. (Closes: #546927)
  * checks/menus{,.desc}:
    + [RA] Exclude examples from documentation that may require doc-base
      registration. Thanks, Mikhail Gusarov. (Closes: #547345)
  * checks/scripts{,.desc}:
    + [RA] Add /usr/bin/ir as an interpreter provided by the ironruby
      package. Thanks, Matthias Klose. (Closes: #547555)
    + [ADB] Fix a typo in the description of example-script-uses-bin-env
      (pth -> path). Thanks, Jakub Wilk. (Closes: #547670)

  * lib/Lintian/Output.pm:
    + [ADB] Import Exporter before Class::Accessor to avoid accidentally
      calling Class::Accessor::import(). Thanks, Niko Tyni.
      (Closes: #547631)
  * lib/Spelling.pm:
    + [RA] Additional spelling corrections from Raphael Geissert.
    + [RA] Return the count of spelling errors and support suppressing the
      tag by passing undef for the tag name so that the spell checking
      functions can be used to test tag descriptions for spelling errors.
      (Closes: #546641)

  * reporting/html_reports:
    + [RA] Include all tag types in the qa-list.txt file instead of just
      errors and warnings. The new order of columns is errors, warnings,
      info tags, pedantic tags, experimental tags, and overridden tags.

lintian (2.2.15) unstable; urgency=low

  The "BTS cleanup" release.

  * Summary of tag changes:
    + Added:
      - build-depends-on-non-build-package
      - desktop-entry-limited-to-environments
      - example-interpreter-in-usr-local (pedantic)
      - example-interpreter-not-absolute
      - example-script-without-interpreter
      - example-script-uses-bin-env
      - example-shell-script-fails-syntax-check (pedantic)
      - example-wrong-path-for-interpreter
      - example...

Read more...

Changed in lintian (Ubuntu):
status: Confirmed → Fix Released
Changed in lintian (Debian):
status: Unknown → Won't Fix
Changed in lintian (Debian):
status: Won't Fix → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.