On Sat, Aug 10, 2024 at 10:05:32PM GMT, Vladimir K wrote:
> Package: apt
> Version: 2.9.7
> Severity: normal
> 
> Dear Maintainer, the new solver tries to install packages that were not 
> requested
> and are not considered by the old solver.
> 
> A while ago it tried to install sq, gpgv-from-sq, gpgv-sq which break apt.
> I blacklisted them via pinning. Today a set of packages was suggested for 
> installation
> during routine upgrade:
> 
>      $ sudo apt full-upgrade --purge -V --fix-broken --auto-remove --solver 
> 3.0
>      Installing dependencies:        
>         gir1.2-evince-3.0 (46.3.1-1)
>         gir1.2-gtksource-4 (4.8.4-5+b2)
>         gir1.2-javascriptcoregtk-4.1 (2.44.2-1+b2)
>         gir1.2-soup-3.0 (3.5.2-1)
>         gir1.2-webkit2-4.1 (2.44.2-1+b2)
>         gjs (1.80.2-1)
>         gnome-sushi (46.0-1)
>         gstreamer1.0-gtk3 (1.24.6-1)
>         libcue2 (2.2.1-4.1+b1)
>         libexempi8 (2.6.5-1)
>         libgjs0g (1.80.2-1)
>         libgnome-autoar-0-0 (0.4.4-2+b2)
>         libgnome-desktop-4-2t64 (44.0-5)
>         libgtksourceview-4-0 (4.8.4-5+b2)
>         libgtksourceview-4-common (4.8.4-5)
>         libiptcdata0 (1.0.5-2.3)
>         libmozjs-115-0t64 (115.14.0-1)
>         libosinfo-1.0-0 (1.11.0-2+b1)
>         libosinfo-l10n (1.11.0-2)
>         libportal-gtk4-1 (0.7.1-5+b1)
>         libportal1 (0.7.1-5+b1)
>         libtotem-plparser-common (3.26.6-1)
>         libtotem-plparser18 (3.26.6-1+b2)
>         nautilus (46.2-3)
>         nautilus-data (46.2-3)
>         network-manager-strongswan (1.6.0-3+b1)
>         osinfo-db (0.20240701-1)
>         qt6-qpa-plugins (6.6.2+dfsg-11)
>         tracker (3.7.3-2)
>         tracker-extract (3.7.3-1)
>         tracker-miner-fs (3.7.3-1)
> 
>      Suggested packages:
>         eog (47~beta-1)
>         nautilus-extension-brasero
> 
> I do not have gnome or any complete DE installed, none of those packages make 
> sense.
> Blacklisting nautilus via pinning reduces the list down to 
> network-manager-strongswan
> and qt6-qpa-plugins, which is a useful suggestion, but why does it happen?


These are all dependencies of some installed package, that are currently
satisfied by another package which is considered obsolete. The
calculation for obsolete packages is broken if you have a "newer"
repository pinned between 100 and whatever the default repo is, like
you have experimental pinned at 200.

Basically if you have src:A producing AX and AY, AX is installed, then
AX will always be obsolete if there is a newer experimental version, as
AY/experimental will be considered the "source" candidate, and since
"source" candidate > binary candidate that is taken as "package is no
longer present in the latest upload.

Fixing this is quite complex, there are two possible avenues to
consider:

1. We can check if the binary actually still exists in the source
   candidate version.

2. We can calculate the source candidate to take into account the
   (highest) installed version, or rather when we can when looking
   at other binaries, check them against the binary we are trying
   to check is obsolete rather than figuring out the highest version.

Potentially it's also falsely promoting the nautilus Suggests:
gnome-sushi to Recommends, but I can't possibly comment on details
as you failed to include either a solver debug log or preferably an
EDSP dump to run the solver against.

Please note that I might miss any replies as Gmail spam filter kicked
out the bug report and I only saw it due to notifications on IRC
but we don't have them on comments.
-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer                              i speak de, en

Reply via email to