2021-02-24 09:12:40 |
Julian Andres Klode |
bug |
|
|
added bug |
2021-02-24 09:13:17 |
Julian Andres Klode |
description |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
[Test plan]
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction.
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place. |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
[Test plan]
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction (this only applies to releases with Protected support in dpkg, Important is not affected, it's always been "normal" for dpkg).
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place. |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
nominated for series |
|
Ubuntu Focal |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
bug task added |
|
apt (Ubuntu Focal) |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
nominated for series |
|
Ubuntu Hirsute |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
bug task added |
|
apt (Ubuntu Hirsute) |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
nominated for series |
|
Ubuntu Groovy |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
bug task added |
|
apt (Ubuntu Groovy) |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
nominated for series |
|
Ubuntu Bionic |
|
2021-02-24 09:13:26 |
Julian Andres Klode |
bug task added |
|
apt (Ubuntu Bionic) |
|
2021-02-24 09:14:35 |
Julian Andres Klode |
apt (Ubuntu Hirsute): status |
New |
Triaged |
|
2021-02-24 09:14:38 |
Julian Andres Klode |
apt (Ubuntu Groovy): status |
New |
Incomplete |
|
2021-02-24 09:14:40 |
Julian Andres Klode |
apt (Ubuntu Groovy): status |
Incomplete |
Triaged |
|
2021-02-24 09:14:42 |
Julian Andres Klode |
apt (Ubuntu Focal): status |
New |
Triaged |
|
2021-02-24 09:14:45 |
Julian Andres Klode |
apt (Ubuntu Bionic): status |
New |
Triaged |
|
2021-02-24 09:15:27 |
Julian Andres Klode |
description |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
[Test plan]
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction (this only applies to releases with Protected support in dpkg, Important is not affected, it's always been "normal" for dpkg).
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place. |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
[Test plan]
Run the integration test suite (the autopkgtest) :)
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction (this only applies to releases with Protected support in dpkg, Important is not affected, it's always been "normal" for dpkg).
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place. |
|
2021-03-05 18:59:28 |
Julian Andres Klode |
apt (Ubuntu Groovy): status |
Triaged |
In Progress |
|
2021-03-05 18:59:40 |
Julian Andres Klode |
apt (Ubuntu Hirsute): status |
Triaged |
Fix Released |
|
2021-03-10 12:47:32 |
Julian Andres Klode |
description |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
[Test plan]
Run the integration test suite (the autopkgtest) :)
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction (this only applies to releases with Protected support in dpkg, Important is not affected, it's always been "normal" for dpkg).
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place. |
[Impact]
If a package that is Protected: yes (or Important: yes), or one of it's dependencies, is involved in a dependency loop with Breaks, APT requires APT::Force-LoopBreak instead of resolving the situation directly.
On focal, we also introduce the actual support for protected packages to enable upgrading to later releases more easily (in case a protected package needs to be removed during the upgrade), and to make the backport more similar to main.
[Test plan]
Run the integration test suite (the autopkgtest) :)
Our test suite covers the tests for both Breaks and Conflicts.
Breaks:
protected-sysvinit (= 1) without dependencies is installed
protected-sysvinit (= 2) Pre-Depends protected-systemd-sysv
protected-systemd-sysv (= 2) Breaks: protected-sysvinit (<< 2)
Test: Install protected-sysvinit (= 2)
Expected result: Unpacking protected-sysvinit (= 2) deconfigures protected-sysvinit (= 1), and then we unpack and configure protected-sysvinit (= 2) and end up with a working system.
Conflicts: As for Breaks, but the Conflicts will remove the package temporarily, requiring the use of APT::Force-LoopBreak option.
For focal, we also do have a test to check that the Protected field is being used.
[Where problems could occur]
We now allow dpkg to automatically deconfigure protected packages. This should just make them behave like normal packages to APT's eye, but bugs I guess could occur somewhere in the APT/dpkg interaction (this only applies to releases with Protected support in dpkg, Important is not affected, it's always been "normal" for dpkg).
During development, we accidentally simplified the patch so much that Conflicts did not require Force-LoopBreak for temporary removal. We fixed that, but it points out that there is a place where the loop break check happens that is a potential regression place.
On focal, we pass additional flags to dpkg that focal's dpkg does not understand, however, we only do that if dpkg asserts it does that, so in practice, this should all work fine and the code path will only be taken with >=groovy dpkg. |
|
2021-03-24 22:35:20 |
Brian Murray |
apt (Ubuntu Groovy): status |
In Progress |
Fix Committed |
|
2021-03-24 22:35:22 |
Brian Murray |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2021-03-24 22:35:25 |
Brian Murray |
bug |
|
|
added subscriber SRU Verification |
2021-03-24 22:35:29 |
Brian Murray |
tags |
|
verification-needed verification-needed-groovy |
|
2021-03-25 13:35:33 |
Łukasz Zemczak |
apt (Ubuntu Focal): status |
Triaged |
Fix Committed |
|
2021-03-25 13:35:38 |
Łukasz Zemczak |
tags |
verification-needed verification-needed-groovy |
verification-needed verification-needed-focal verification-needed-groovy |
|
2021-03-25 13:42:52 |
Łukasz Zemczak |
apt (Ubuntu Bionic): status |
Triaged |
Fix Committed |
|
2021-03-25 13:42:58 |
Łukasz Zemczak |
tags |
verification-needed verification-needed-focal verification-needed-groovy |
verification-needed verification-needed-bionic verification-needed-focal verification-needed-groovy |
|
2021-03-30 09:32:28 |
Julian Andres Klode |
tags |
verification-needed verification-needed-bionic verification-needed-focal verification-needed-groovy |
verification-done verification-done-bionic verification-done-groovy verification-donefocal |
|
2021-03-30 14:49:22 |
Julian Andres Klode |
tags |
verification-done verification-done-bionic verification-done-groovy verification-donefocal |
verification-done verification-done-bionic verification-done-focal verification-done-groovy |
|
2021-04-06 18:04:32 |
Launchpad Janitor |
apt (Ubuntu Groovy): status |
Fix Committed |
Fix Released |
|
2021-04-06 18:05:07 |
Brian Murray |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2021-04-07 02:17:59 |
Launchpad Janitor |
apt (Ubuntu Bionic): status |
Fix Committed |
Fix Released |
|
2021-04-07 02:21:00 |
Launchpad Janitor |
apt (Ubuntu Focal): status |
Fix Committed |
Fix Released |
|