Bug#826537: pandoc: uninstallable in unstable due to non-binNMU-safe dependency
Simon McVittie
smcv at debian.org
Mon Jun 6 06:36:54 UTC 2016
Package: pandoc
Version: 1.17.0.3~dfsg-1
Severity: serious
Justification: uninstallable
pandoc in unstable currently has:
Package: pandoc
Version: 1.17.0.3~dfsg-1+b1
Depends: pandoc-data (= 1.17.0.3~dfsg-1+b1)
Package: pandoc-data
Version: 1.17.0.3~dfsg-1
This isn't going to work, because we don't binNMU Architecture: all
packages like pandoc-data. You would normally get a Lintian error for
<https://lintian.debian.org/tags/not-binnmuable-any-depends-all.html>,
but because you're using ${cdbs:Depends} in pandoc, Lintian can't see that
there is an issue here. I would recommend moving at least the "static"
dependencies from debian/rules to debian/control so that packaging tools
like Lintian can see what's going on.
It does not appear to be possible to solve this bug while still generating
dependencies from the dpkg package information like $(DEB_VERSION)
without making assumptions about the structure of binNMU versions,
because that package information is always based on the version that
is in debian/changelog at build time (equivalent to ${binary:Version}),
including any binNMU suffix.
The way to solve this that is recommended by the Lintian tag would be
to base the lockstep versioning on the source version:
Package: pandoc
Depends: pandoc-data (= ${source:Version})
If you believe we will get support for Architecture: all binNMUs in the
relatively near future and want to be future-proof against that,
another solution would be:
Package: pandoc
Depends: pandoc-data (>= ${source:Version})
Package: pandoc-data
Breaks: pandoc (<< ${source:Version})
or even
Package: pandoc
Depends:
pandoc-data (>= ${source:Version}),
pandoc-data (<< ${source:Version}.~),
Another possible solution would be to merge pandoc-data into pandoc.
pandoc is around 7M compressed, but pandoc-data is only 255K, so the
size cost of duplicating that data across 10 architectures would be
significantly smaller than adding another architecture.
Regards,
S
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.5.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages pandoc depends on:
ii libc6 2.22-10
ii libffi6 3.2.1-4
ii libgmp10 2:6.1.0+dfsg-2
ii liblua5.1-0 5.1.5-8
ii libluajit-5.1-2 2.0.4+dfsg-1
ii libpcre3 2:8.38-3.1
ii libyaml-0-2 0.1.6-3
ii pandoc-data 1.17.0.3~dfsg-1
ii zlib1g 1:1.2.8.dfsg-2+b1
pandoc recommends no packages.
Versions of packages pandoc suggests:
pn etoolbox <none>
pn pandoc-citeproc <none>
ii texlive-latex-recommended 2016.20160523-1
pn texlive-luatex <none>
pn texlive-xetex <none>
pn wkhtmltopdf <none>
-- no debconf information
More information about the Pkg-haskell-maintainers
mailing list