Commit 7167bc9e authored by Timo Teräs's avatar Timo Teräs
Browse files

solver: don't consider requirer count for preference

The original intent was to choose packages to which there is most
dependencies. However, since the code has evolved this is has been
mostly obsolete. And in fact now interferes with the provides and
provides priority mechanism. Remove this as obsolete.

Fixes #10742
parent f7143c17
Pipeline #82266 passed with stage
in 1 minute and 49 seconds
......@@ -493,17 +493,6 @@ static void reconsider_name(struct apk_solver_state *ss, struct apk_name *name)
name->name, name->ss.has_options, name->ss.reverse_deps_done);
}
static int count_requirers(const struct apk_package *pkg)
{
int cnt = pkg->name->ss.requirers;
struct apk_dependency *p;
foreach_array_item(p, pkg->provides)
cnt += p->name->ss.requirers;
return cnt;
}
static int compare_providers(struct apk_solver_state *ss,
struct apk_provider *pA, struct apk_provider *pB)
{
......@@ -597,13 +586,6 @@ static int compare_providers(struct apk_solver_state *ss,
return r;
}
/* Prefer highest requirer count. */
r = count_requirers(pkgA) - count_requirers(pkgB);
if (r) {
dbg_printf(" prefer highest requirer count\n");
return r;
}
/* Prefer installed */
if (!(solver_flags & APK_SOLVERF_UPGRADE)) {
r = (pkgA->ipkg != NULL) - (pkgB->ipkg != NULL);
......
......@@ -111,3 +111,25 @@ V:0.1
S:1
I:1
D:conflicted-provider-2
C:Q1inqy40xXhjHaXUlG+qIshN+TIvA=
P:pulseaudio-alsa
V:1
S:1
I:1
k:10
c:a79b3f751d72fd4bdb6729139660d0b4f5b87a33
P:pulseaudio
V:1
S:1
I:1
k:10
C:Q1FAFBeAhWPV1XXEdoW+TSjrUghxU=
P:pipewire-pulse
V:1
S:1
I:1
k:1
p:pulseaudio=1 pulseaudio-alsa=1
@ARGS
--test-repo provides.repo
add pulseaudio pulseaudio-alsa
@EXPECT
(1/2) Installing pulseaudio (1)
(2/2) Installing pulseaudio-alsa (1)
OK: 0 MiB in 0 packages
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment