Right, nice catch! Given that these fields are based on what might
appear on build dependencies, I think it does make sense to consider
them an overlay on top of those. So I'll make them allow anything that
is allowed for build dependencies.
On Wed, 2023-10-25 at 20:44:26 -0400, James McCoy wrote:
diff --git i/scripts/Dpkg/Deps/Simple.pm w/scripts/Dpkg/Deps/Simple.pm index 431c93bb9..da7aedbd8 100644
--- i/scripts/Dpkg/Deps/Simple.pm
+++ w/scripts/Dpkg/Deps/Simple.pm
@@ -194,7 +194,6 @@ sub parse_string {
\s*$ # trailing spaces at end
}x;
if (defined $2) {
- return if $2 eq 'native' and not $self->{build_dep};
$self->{archqual} = $2;
}
$self->{package} = $1;
…this would remove the check for run-time dependencies. What I had in
mind was something like the attached patch, which I'll queue once I've updated the test suite to cope or to add unit tests.
On Thu, Oct 05, 2023 at 07:11:32AM +0200, Guillem Jover wrote:
Right, nice catch! Given that these fields are based on what might
appear on build dependencies, I think it does make sense to consider
them an overlay on top of those. So I'll make them allow anything that
is allowed for build dependencies.
Would that just be the below patch?
diff --git i/scripts/Dpkg/Deps/Simple.pm w/scripts/Dpkg/Deps/Simple.pm
index 431c93bb9..da7aedbd8 100644
--- i/scripts/Dpkg/Deps/Simple.pm
+++ w/scripts/Dpkg/Deps/Simple.pm
@@ -194,7 +194,6 @@ sub parse_string {
\s*$ # trailing spaces at end
}x;
if (defined $2) {
- return if $2 eq 'native' and not $self->{build_dep};
$self->{archqual} = $2;
}
$self->{package} = $1;
Package: libdpkg-perl
Version: 1.18.8
Severity: normal
Control: affects -1 src:zsh src:poppler src:libjodycode src:doxygen src:jemalloc src:jdupes src:libsdl2 src:iproute2
Any test stanza in a debian/tests/control file which contains a
foo:native Depends will not have its dependencies translated into Testsuite-Triggers.
This is due to an explicit check in Dpkg::Deps::Simple->parse_string()
which only allows native qualified dependencies for build dependencies.
As an example, running “dpkg-source -b .” for jdupes shows
Three warnings, one for each of the tests. Since it does have a test
without a native qualified dependency, Testsuite-Triggers is generated.
% grep Depends debian/tests/control
Depends: @, tree:native
Depends: @, tree:native
Depends: @, tree:native
Depends: @, forensics-samples-files
% grep Testsuite ../jdupes_1.27.3-2.dsc
Testsuite: autopkgtest
Testsuite-Triggers: forensics-samples-files
As far as I can tell, this has been a problem since dpkg-source gained support for generating Testsuite-Triggers.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (3 / 13) |
Uptime: | 148:35:45 |
Calls: | 10,383 |
Calls today: | 8 |
Files: | 14,054 |
D/L today: |
2 files (1,861K bytes) |
Messages: | 6,417,747 |