** Changed in: apt (Ubuntu Mantic) Status: Triaged => In Progress
** Changed in: apt (Ubuntu Jammy) Status: Triaged => In Progress ** Description changed: - The awesome apt has a some wonderful tips on their EXAMPLES section - (printed below). The choice of name to "garbage" might not have been the - best but the function is extremely useful. + [Impact] + The '?garbage' pattern doesn't work with install/remove commands which is confusing, and the fix for it is trivial. + + [Test plan] + Successful autopkgtest. The comprehensive test suite run as an autopkgtest has been updated in test/integration/test-apt-get-autoremove to test for the correct behavior of '?garbage' with install and remove. + + [Where problems could occur] + You can see we had to tweak the test suite in a bunch of places because it relies on exact debug output format and because we now call "markandsweep" there's additional mark flags in the debug output. It's unlikely that this is a problem for others. + + We have not seen regressions in noble in the past 2 weeks. + + [Original bug report] + The awesome apt has a some wonderful tips on their EXAMPLES section (printed below). The choice of name to "garbage" might not have been the best but the function is extremely useful. $ man apt-patterns | sed '/EXAMPLES/,/^[^ ]/!d;/^[^ ]/d' - apt remove ?garbage - Remove all packages that are automatically installed and no longer needed - - same as apt autoremove + apt remove ?garbage + Remove all packages that are automatically installed and no longer needed - + same as apt autoremove - apt purge ?config-files - Purge all packages that only have configuration files left + apt purge ?config-files + Purge all packages that only have configuration files left - apt list '~i !~M (~slibs|~sperl|~spython)' - List all manually-installed packages in sections matching libs, perl, or - python. + apt list '~i !~M (~slibs|~sperl|~spython)' + List all manually-installed packages in sections matching libs, perl, or + python. Lets mark a package as automatically installed, and use the examples. $ sudo apt-mark auto shotwell shotwell set to automatically installed. $ sudo apt remove ?garbage Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: - libraw20 shotwell shotwell-common + libraw20 shotwell shotwell-common Use 'sudo apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. - $ sudo apt autoremove + $ sudo apt autoremove Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages will be REMOVED: - libraw20 shotwell shotwell-common + libraw20 shotwell shotwell-common 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. After this operation, 9.806 kB disk space will be freed. Do you want to continue? [Y/n] N Abort. Apt-patterns works as it should everywhere else, as far as I can see, it works wonders with ie `apt list '~g|~c'` and many other applications. I used `apt purge '~g|~c'` successfully in Ubuntu 20.04 for years, so I feel this is a regression. ProblemType: Bug DistroRelease: Ubuntu 22.04 Package: apt 2.4.8 ProcVersionSignature: Ubuntu 5.15.0-52.58-generic 5.15.60 Uname: Linux 5.15.0-52-generic x86_64 NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair ApportVersion: 2.20.11-0ubuntu82.1 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME Date: Sun Nov 6 10:57:52 2022 SourcePackage: apt UpgradeStatus: Upgraded to jammy on 2022-03-26 (224 days ago) ** Description changed: [Impact] The '?garbage' pattern doesn't work with install/remove commands which is confusing, and the fix for it is trivial. [Test plan] Successful autopkgtest. The comprehensive test suite run as an autopkgtest has been updated in test/integration/test-apt-get-autoremove to test for the correct behavior of '?garbage' with install and remove. [Where problems could occur] You can see we had to tweak the test suite in a bunch of places because it relies on exact debug output format and because we now call "markandsweep" there's additional mark flags in the debug output. It's unlikely that this is a problem for others. - We have not seen regressions in noble in the past 2 weeks. + We have not seen regressions in noble in the past 2 weeks or noble- + proposed since 2023-11-23 (it was stuck for other reasons there), hence + other places the code change may affect have been thoroughly exercised + in the builders and autopkgtest runners. [Original bug report] The awesome apt has a some wonderful tips on their EXAMPLES section (printed below). The choice of name to "garbage" might not have been the best but the function is extremely useful. $ man apt-patterns | sed '/EXAMPLES/,/^[^ ]/!d;/^[^ ]/d' apt remove ?garbage Remove all packages that are automatically installed and no longer needed - same as apt autoremove apt purge ?config-files Purge all packages that only have configuration files left apt list '~i !~M (~slibs|~sperl|~spython)' List all manually-installed packages in sections matching libs, perl, or python. Lets mark a package as automatically installed, and use the examples. $ sudo apt-mark auto shotwell shotwell set to automatically installed. $ sudo apt remove ?garbage Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: libraw20 shotwell shotwell-common Use 'sudo apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. $ sudo apt autoremove Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages will be REMOVED: libraw20 shotwell shotwell-common 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. After this operation, 9.806 kB disk space will be freed. Do you want to continue? [Y/n] N Abort. Apt-patterns works as it should everywhere else, as far as I can see, it works wonders with ie `apt list '~g|~c'` and many other applications. I used `apt purge '~g|~c'` successfully in Ubuntu 20.04 for years, so I feel this is a regression. ProblemType: Bug DistroRelease: Ubuntu 22.04 Package: apt 2.4.8 ProcVersionSignature: Ubuntu 5.15.0-52.58-generic 5.15.60 Uname: Linux 5.15.0-52-generic x86_64 NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair ApportVersion: 2.20.11-0ubuntu82.1 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME Date: Sun Nov 6 10:57:52 2022 SourcePackage: apt UpgradeStatus: Upgraded to jammy on 2022-03-26 (224 days ago) -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to apt in Ubuntu. https://bugs.launchpad.net/bugs/1995790 Title: regression: ?garbage does not work correctly in install commands Status in apt package in Ubuntu: Fix Released Status in apt source package in Jammy: In Progress Status in apt source package in Lunar: Won't Fix Status in apt source package in Mantic: In Progress Status in apt source package in Noble: Fix Released Bug description: [Impact] The '?garbage' pattern doesn't work with install/remove commands which is confusing, and the fix for it is trivial. [Test plan] Successful autopkgtest. The comprehensive test suite run as an autopkgtest has been updated in test/integration/test-apt-get-autoremove to test for the correct behavior of '?garbage' with install and remove. [Where problems could occur] You can see we had to tweak the test suite in a bunch of places because it relies on exact debug output format and because we now call "markandsweep" there's additional mark flags in the debug output. It's unlikely that this is a problem for others. We have not seen regressions in noble in the past 2 weeks or noble- proposed since 2023-11-23 (it was stuck for other reasons there), hence other places the code change may affect have been thoroughly exercised in the builders and autopkgtest runners. [Original bug report] The awesome apt has a some wonderful tips on their EXAMPLES section (printed below). The choice of name to "garbage" might not have been the best but the function is extremely useful. $ man apt-patterns | sed '/EXAMPLES/,/^[^ ]/!d;/^[^ ]/d' apt remove ?garbage Remove all packages that are automatically installed and no longer needed - same as apt autoremove apt purge ?config-files Purge all packages that only have configuration files left apt list '~i !~M (~slibs|~sperl|~spython)' List all manually-installed packages in sections matching libs, perl, or python. Lets mark a package as automatically installed, and use the examples. $ sudo apt-mark auto shotwell shotwell set to automatically installed. $ sudo apt remove ?garbage Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: libraw20 shotwell shotwell-common Use 'sudo apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. $ sudo apt autoremove Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages will be REMOVED: libraw20 shotwell shotwell-common 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. After this operation, 9.806 kB disk space will be freed. Do you want to continue? [Y/n] N Abort. Apt-patterns works as it should everywhere else, as far as I can see, it works wonders with ie `apt list '~g|~c'` and many other applications. I used `apt purge '~g|~c'` successfully in Ubuntu 20.04 for years, so I feel this is a regression. ProblemType: Bug DistroRelease: Ubuntu 22.04 Package: apt 2.4.8 ProcVersionSignature: Ubuntu 5.15.0-52.58-generic 5.15.60 Uname: Linux 5.15.0-52-generic x86_64 NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair ApportVersion: 2.20.11-0ubuntu82.1 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME Date: Sun Nov 6 10:57:52 2022 SourcePackage: apt UpgradeStatus: Upgraded to jammy on 2022-03-26 (224 days ago) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1995790/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp