group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #16291
[Bug 1694697] Re: build-depends keeps OR flag if end of or group is ignored
This bug was fixed in the package apt - 1.4.6~17.04.1
---------------
apt (1.4.6~17.04.1) zesty; urgency=medium
* apt.systemd.daily: Do not pass -d to unattended-upgrade for the download
job. This actually enables debugging. Instead check if unattended-upgrade
supports an option --download-only (which is yet to be implemented) and use
that (Closes: #863859)
apt (1.4.5) unstable; urgency=medium
* Fix parsing of or groups in build-deps with ignored packages (LP:
#1694697)
apt (1.4.4) unstable; urgency=medium
[ Alan Jenkins ]
* apt.systemd.daily: fix error from locking code (Closes: #862567)
apt (1.4.3) unstable; urgency=medium
[ Julian Andres Klode ]
* Do not try to (re)start timers outside 'apt' package (Closes: #862001)
[ Miroslav Kure ]
* Updated Czech translation of apt (Closes: #861943)
apt (1.4.2) unstable; urgency=medium
[ Julian Andres Klode ]
* Run unattended-upgrade -d in download part
* apt.systemd.daily: Add locking
* Split apt-daily timer into two (LP: #1686470)
[ Matt Kraai ]
* bash-completion: Fix spelling of autoclean (Closes: #861846)
apt (1.4.1) unstable; urgency=medium
[ Julian Andres Klode ]
* systemd: Rework timing and add After=network-online (LP: #1615482)
* debian/rules: Actually invoke dh_clean in override_dh_clean
[ Unit 193 ]
* apt-ftparchive: Support '.ddeb' dbgsym packages
-- Julian Andres Klode <jak@xxxxxxxxxx> Thu, 01 Jun 2017 10:50:26
+0200
** Changed in: apt (Ubuntu Zesty)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1694697
Title:
build-depends keeps OR flag if end of or group is ignored
Status in apt package in Ubuntu:
Fix Released
Status in apt source package in Trusty:
New
Status in apt source package in Xenial:
Fix Released
Status in apt source package in Yakkety:
Won't Fix
Status in apt source package in Zesty:
Fix Released
Bug description:
[Impact]
If the last alternative(s) of an Or group is ignored, because it does
not match an architecture list, we would end up keeping the or flag,
effectively making the next AND an OR.
For example, when parsing (on amd64):
debhelper (>= 9), libnacl-dev [amd64] | libnacl-dev [i386]
=> debhelper (>= 9), libnacl-dev |
Which can cause python-apt and apt-get build-dep to crash.
Even worse:
debhelper (>= 9), libnacl-dev [amd64] | libnacl-dev [i386], foobar
=> debhelper (>= 9), libnacl-dev [amd64] | foobar
[Test case]
On amd64:
cat > segv.dsc << EOF
Format: 3.0 (native)
Source: foobar
Binary: foobar
Architecture: all
Version: 1
Maintainer: Joe Sixpack <joe@xxxxxxxxxxx>
Build-Depends: build-essential [amd64] | build-essential [fancy]
Standards-Version: 3.9.8
EOF
cat > failure.dsc << EOF
Format: 3.0 (native)
Source: foobar
Binary: foobar
Architecture: all
Version: 1
Maintainer: Joe Sixpack <joe@xxxxxxxxxxx>
Build-Depends: build-essential [amd64] | build-essential [fancy], a-non-existing-package
Standards-Version: 3.9.8
EOF
(1) apt-get build-dep -s ./segv.dsc should succeed instead of crash
(2) apt-get build-dep -s ./failure.dsc should complain about "Depends: a-non-existing-package but it is not installable" instead of succeeding.
This is the same test as run by CI and autopkgtests, so if they pass
the tests passed. You can also run apt-get build-dep -s dq for a real
life example that should not segfault.
[Regression Potential]
apt-get build-dep and friends can now fail where they succeeded previously for packages that employ architecture-limited alternatives in their build depends, as in the second example given above, because now additional packages need to be installed (which is correct, though).
[Other info]
By setting the previous alternatives Or flag to the current Or flag
if the current alternative is ignored, we solve the issue.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1694697/+subscriptions