Commit 0dcbd933 authored by Ariadne Conill's avatar Ariadne Conill 🐰
Browse files

solver: allow names with only one provider to be autoselected regardless of priority

parent fa762cd4
......@@ -671,11 +671,12 @@ static void select_package(struct apk_solver_state *ss, struct apk_name *name)
(!p->pkg->ss.iif_triggered ||
!p->pkg->ss.tag_ok))
continue;
/* Virtual packages without provider_priority cannot be autoselected */
/* Virtual packages without provider_priority cannot be autoselected,
* unless there is only one provider */
if (p->version == &apk_null_blob &&
p->pkg->name->auto_select_virtual == 0 &&
p->pkg->name->ss.requirers == 0 &&
p->pkg->provider_priority == 0)
(p->pkg->provider_priority == 0 && name->providers->num > 1))
continue;
if (compare_providers(ss, p, &chosen) > 0)
chosen = *p;
......
......@@ -82,7 +82,7 @@ P:conflicted-provider-b
V:0.1
S:1
I:1
p:conflicted-provider
p:conflicted-provider conflicted-provider-2
C:Q1EyN5AdpAOBJWKMR89ppC66ccccj=
P:conflicted-dep
......@@ -104,3 +104,10 @@ V:0.1
S:1
I:1
p:self-provide
C:Q1EyN5AdpAOBJWKMR89ppC66eeeej=
P:conflicted-dep-2
V:0.1
S:1
I:1
D:conflicted-provider-2
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