#1029471 Conflict: unknown-field Go-Import-Path x missing-xs-go-import-path-for-golang-package

Package:
lintian
Source:
lintian
Submitter:
Joao Eriberto Mota Filho
Date:
2026-08-04 05:21:02 UTC
Severity:
normal
#1029471#5
Date:
2022-07-13 17:48:53 UTC
From:
To:
Dear Maintainer,

When doing a QA revision over the package "gox", I received the warning:

  W: gox source: unknown-field Go-Import-Path

However, the right field name is XS-Go-Import-Path, not Go-Import-Path. The
field is present in debian/control on gox:

  XS-Go-Import-Path: github.com/mitchellh/gox

If the XS-Go-Import-Path filed is removed, the following message is shown:

  I: gox source: missing-xs-go-import-path-for-golang-package

The Debian bug #984719 explains how much the XS-Go-Import-Path field is needed.

Regards,

Eriberto

#1029471#10
Date:
2023-01-18 19:55:24 UTC
From:
To:
Hi,

I can confirm this issue for lintian 2.116.0 against src:piuparts
as it is in git or unstable.

#1029471#15
Date:
2023-01-23 00:52:18 UTC
From:
To:
Hi,

Holger Levsen wrote:

I can confirm as well. Unfortunately this is not as trivial to fix
properly as it seems:

A) Lintian currently doesn't seem to make a difference between the
   fields in the .dsc file and those in the debian/control file. But
   especially these XS-* fields exactly need that differentiation.

B) If I add Autobuild, Go-Import-Path, and Ruby-Versions to
   data/common/source-fields, the test suite shows that then these
   lintian tags would fire although they shouldn't (according to the
   test suite):

   adopted-extended-field (in section for source) XS-Go-Import-Path
   adopted-extended-field (in section for source) XS-Autobuild

So for now I have no idea except for hardcoding these three inside the
source function in lib/Lintian/Check/Fields/Unknown.pm. But this feels
wrong.

This though might lead to false negatives if someone uses e.g.
Go-Import-Path without the "XS-" prefix in debian/control.

What would be worse: The current false positives or the potential
false negatives?

I assume that any potential false negative on these
three fields will cause package breakage at build time (wrong Ruby
versions, some Go stuff not working, non-free packages not
autobuilding, etc.), so that we can cope with them.

Cloning this bug report to document that we need a rewrite of
Lintian::Check::Fields::Unknown and module dependencies to distinguish
between .dsc fields and debian/control fields with a common subset.
And maybe with the one set being calculated from the other set by
stripping the XS- prefix.

		Regards, Axel

#1029471#22
Date:
2023-01-23 00:52:18 UTC
From:
To:
Hi,

Holger Levsen wrote:

I can confirm as well. Unfortunately this is not as trivial to fix
properly as it seems:

A) Lintian currently doesn't seem to make a difference between the
   fields in the .dsc file and those in the debian/control file. But
   especially these XS-* fields exactly need that differentiation.

B) If I add Autobuild, Go-Import-Path, and Ruby-Versions to
   data/common/source-fields, the test suite shows that then these
   lintian tags would fire although they shouldn't (according to the
   test suite):

   adopted-extended-field (in section for source) XS-Go-Import-Path
   adopted-extended-field (in section for source) XS-Autobuild

So for now I have no idea except for hardcoding these three inside the
source function in lib/Lintian/Check/Fields/Unknown.pm. But this feels
wrong.

This though might lead to false negatives if someone uses e.g.
Go-Import-Path without the "XS-" prefix in debian/control.

What would be worse: The current false positives or the potential
false negatives?

I assume that any potential false negative on these
three fields will cause package breakage at build time (wrong Ruby
versions, some Go stuff not working, non-free packages not
autobuilding, etc.), so that we can cope with them.

Cloning this bug report to document that we need a rewrite of
Lintian::Check::Fields::Unknown and module dependencies to distinguish
between .dsc fields and debian/control fields with a common subset.
And maybe with the one set being calculated from the other set by
stripping the XS- prefix.

		Regards, Axel

#1029471#27
Date:
2026-07-28 20:36:38 UTC
From:
To:
Hello,

Bug #1029471 in lintian reported by you has been fixed in the
Git repository and is awaiting an upload. You can see the commit
message below and you can check the diff of the fix at:

https://salsa.debian.org/lintian/lintian/-/commit/97b9e042c06487b27b383a5ee010fb1788e77731

(this message was generated automatically)
-- 
Greetings

https://bugs.debian.org/1029471

#1029471#32
Date:
2026-08-04 05:19:53 UTC
From:
To:
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.

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 1029471@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Louis-Philippe Véronneau <pollo@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 ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Tue, 04 Aug 2026 00:29:41 -0400
Source: lintian
Architecture: source
Version: 2.139.0
Distribution: unstable
Urgency: medium
Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
Changed-By: Louis-Philippe Véronneau <pollo@debian.org>
Closes: 1013414 1029471 1140147 1140893 1141065 1141228 1141908 1142332 1142627 1142809
Changes:
 lintian (2.139.0) unstable; urgency=medium
 .
   [ Nilesh Patra ]
   * d/control: Drop ${misc:Depends} from Depends
   * Move d/lintian-overrides -> d/lintian.lintian-overrides
   * New tag: binary-contains-insecure-defaultgodebug-settings
     (Closes: #1141908)
   * tests(use-godebug): Add test to test against
     `binary-contains-defaultgodebug-options`
   * Add golang-go as a test-dep both for build and autopkgtest
   * New tag: xs-go-import-path-differs-from-module-path
   * tests(differing-golang-xs-go-import-path): Add test to test against
     `xs-go-import-path-differs-from-module-path`
   * Golang::ImportPath - consider first path in case of multiple
     `XS-Go-Import-Path`
   * tests(golang-xs-go-import-path-multiple): Add test to check
     `xs-go-import-path-differs-from-module-path` against multiple go import
     paths
   * tests(differing-golang-xs-go-import-path): Drop bogus Go-Import-Path in
     d/control.in
   * Bump severity of `xs-go-import-path-differs-from-module-path` to `info`
   * Rename `sub all` to `sub all_entries` in lib sources
   * Replace `->all` calls with `->all_entries` in Checks, docs and tests
   * Update `single_binary` to be provided by sequencers and debhelper itself
     (Closes: #1140893)
   * Update phpcomposer to be provided by dh-sequence-phpcomposer
     (Closes: #1142809)
   * Update phppear to be provided by dh-sequence-phppear
   * tests(appstream-metadata-license-hang): Add test to check against hang due
     to missing `expand_entities` set to `0` (test against: #1142332)
   * Lintian::Check::Fields::Maintainer::Team - Update team email address for
     go team
   * Lintian::Check::Fields::Maintainer - Improve check for
     `no-human-maintainers` to instead parse email and check hosts instead of
     checking raw maintainer strings
   * Add new tag wrong-package-mail-alias to flag instances of packages using
     wrong packages.debian.org alias (Closes: #1142627)
   * tests(fields-wrong-package-email-alias): Add test for tag
     wrong-package-mail-alias
   * Lintian::Check::Fields::Unknown - Drop prefix starting with X (XS-*,
     XSBC-* etc) as the fields in `.dsc` strips them off
     (Closes: #1029471, #1013414)
   * tests(fields-unknown-autobuild-unrel): Add test to ensure XS-Autobuild
     does not spawn unknown-field (to test against #1013414)
   * source-fields: Update downstream fields with full prefix
     (Closes: #1141065)
   * Check for `__fentry__` for profiling options as well
   * tests(binaries-general): Also add a test to compile with `-mno-fentry` on
     amd64 to continue testing against `mcount`
 .
   [ Simon McVittie ]
   * t: Make a test package more realistic
   * Remove gobject-introspection-package-missing-depends-on-gir-depends tag
   * Avoid typelib-missing-gir-depends with debhelper compat level 14
     (Closes: #1140147)
   * Add tests for #1140147
 .
   [ Benjamin Drung ]
   * Disable unnecessary-team-upload and nmu-in-changelog tags in ubuntu/main
     profile
   * Use distro-info-data in changes-file/known-dists (Closes: #1141228)
     (LP: #1012459)
 .
   [ Nicholas Guriev ]
   * Do not fail at version guessing when Git binary is unavailable
   * Do not fail spellintian on empty stdin
   * Implement dpkg-build-api-level and debian-rules-defines-dpkg-build-api
     tags
 .
   [ Nikolas Nyby ]
   * Fix typos in CONTRIBUTING.md
   * XML parser: Disable external entity expansion. (Closes: #1142332)
 .
   [ Louis-Philippe Véronneau ]
   * d/control: debputy is a transitionnal package, use dh-debputy instead
   * new tag 'puppet-module-but-not-dh-puppet'
Checksums-Sha1:
 3aa3c75f043d957592e130a82e1fbb0f7b987bbc 3637 lintian_2.139.0.dsc
 e71e1f8b674b1be60fcff962fdf5982d9f053c43 2088624 lintian_2.139.0.tar.xz
 42ef4514c348118a6d6aa229208ed5a0657d3424 21582 lintian_2.139.0_amd64.buildinfo
Checksums-Sha256:
 a82dfdee3721dc9989293e8e48a45c2352a31a4e58b148583053e28d0677ac09 3637 lintian_2.139.0.dsc
 b2de9368c71f1da3298a145f0256a81cec9c11a33695b5f469ec3029ff28110d 2088624 lintian_2.139.0.tar.xz
 3d805a1c554dc7e2195947d4a2e6cca6d8a9fcbfc0b259644705b5767f05cd19 21582 lintian_2.139.0_amd64.buildinfo
Files:
 1da0a8d5cebaf714a1311fc97a1d9058 3637 devel optional lintian_2.139.0.dsc
 64613c18818b062379072a324bd5212f 2088624 devel optional lintian_2.139.0.tar.xz
 b2955b494dc88b36f4c4f931bd865f8b 21582 devel optional lintian_2.139.0_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQTKp0AHB6gWsCAvw830JXpQshz6hQUCanFw4wAKCRD0JXpQshz6
hft6AP9xhWR6Bc8Dkv8EyKbJE0vAXu78coIiVbDkFpBEFNV84QD+PHk5Rg0n6ooA
FMkO2YV44DE3HAuP1+iahTHFAPZVBg4=
=gIDt
-----END PGP SIGNATURE-----