Control: tag 911620 pending Hi!
Bug #911620 in package dpkg reported by you has been fixed in the dpkg/dpkg.git Git repository. You can see the changelog below, and you can check the diff of the fix at: https://git.dpkg.org/cgit/dpkg/dpkg.git/diff/?id=7f43bf5f9 --- commit 7f43bf5f93c857bdb419892abfc014a5e9c3c273 Author: Guillem Jover <guil...@debian.org> Date: Tue Nov 6 03:06:33 2018 +0100 dpkg: Introduce a new dependency try level for trigger processing The introduction of dependency satisfiability for trigger processing, which was in the original spec but not the implementation, there has been countless problems with bogus detection of trigger cycles. The problem is that whenever we try to process triggers for a package, we might not be able to due to dependency unsatisfiaiblity, which means we have to put the package back into the queue. If we add the state into the cycle detection tracker, then multiple visits to these packages will hit the cycle detection for artificially generated cycles. But we cannot avoid performing the checks because that will miss dynamic cycles coming from maintainer scripts, for example. To avoid most of these problems (while possibly not fixing all potential ones), we should delay trigger processsing entirely until we have emptied the processing queue as much as possible. We do that by introducing a new dependency try level, after the dependency cycle breaking one. We will also make the trigger cycle detection unconditional of the dependency try, because for the trigproc try-queued it will not matter anymore as we will only ented on higher dependency tries, and for the other trigproc types we should not care about any queue-specific dependency try level. Closes: #810724, #854478, #911620 diff --git a/debian/changelog b/debian/changelog index f0d38635f..6b223549f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -42,6 +42,11 @@ dpkg (1.19.3) UNRELEASED; urgency=medium only reset the cycle detection in case we are not bailing out from the processing with an error, otherwise we could come back to this package and detect an artificial trigger cycle. + * dpkg: Introduce a new dependency try level for trigger processing. This + completely defers trigger processing until after the dependency cycle + breaking level, so to avoid generating artificial trigger cycles, when we + end up trying to process triggers with yet unsatisifiable dependencies. + Closes: #810724, #854478, #911620 * Perl modules: - Dpkg::Changelog::Debian: Preserve modelines at EOF. Closes: #916056 Thanks to Chris Lamb <la...@debian.org> for initial test cases.