mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 13:29:49 +00:00
libdnf: Backport bugfix for upgrade calc
Mark goal.upgrade with sltr as targeted This allows a bugfix in dnf to work (From OE-Core rev: f17edb6854985ffb1a43b8288253f9618334fc3f) Signed-off-by: Jate Sujjavanich <jatedev@gmail.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
652e053d0c
commit
fc34eadb56
+58
@@ -0,0 +1,58 @@
|
|||||||
|
From b4c5a3312287f31a2075a235db846ff611586d2c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jaroslav Mracek <jmracek@redhat.com>
|
||||||
|
Date: Tue, 3 Sep 2019 11:01:23 +0200
|
||||||
|
Subject: [PATCH] Mark job goal.upgrade with sltr as targeted
|
||||||
|
|
||||||
|
It allows to keep installed packages in upgrade set.
|
||||||
|
|
||||||
|
It also prevents from reinstalling of modified packages with same NEVRA.
|
||||||
|
|
||||||
|
|
||||||
|
Backport commit b4c5a3312287f31a2075a235db846ff611586d2c from
|
||||||
|
https://github.com/rpm-software-management/libdnf
|
||||||
|
|
||||||
|
This bug is present in oe-core's dnf
|
||||||
|
|
||||||
|
Remove changes to spec file from upstream
|
||||||
|
|
||||||
|
Upstream-Status: Backport
|
||||||
|
Signed-off-by: Jate Sujjavanich <jatedev@gmail.com>
|
||||||
|
---
|
||||||
|
libdnf.spec | 4 ++--
|
||||||
|
libdnf/goal/Goal.cpp | 2 +-
|
||||||
|
libdnf/goal/Goal.hpp | 6 ++++--
|
||||||
|
3 files changed, 7 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/libdnf/goal/Goal.cpp b/libdnf/goal/Goal.cpp
|
||||||
|
index b69be19..a38cbb4 100644
|
||||||
|
--- a/libdnf/goal/Goal.cpp
|
||||||
|
+++ b/libdnf/goal/Goal.cpp
|
||||||
|
@@ -767,7 +767,7 @@ void
|
||||||
|
Goal::upgrade(HySelector sltr)
|
||||||
|
{
|
||||||
|
pImpl->actions = static_cast<DnfGoalActions>(pImpl->actions | DNF_UPGRADE);
|
||||||
|
- sltrToJob(sltr, &pImpl->staging, SOLVER_UPDATE);
|
||||||
|
+ sltrToJob(sltr, &pImpl->staging, SOLVER_UPDATE|SOLVER_TARGETED);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
diff --git a/libdnf/goal/Goal.hpp b/libdnf/goal/Goal.hpp
|
||||||
|
index f33dfa2..d701317 100644
|
||||||
|
--- a/libdnf/goal/Goal.hpp
|
||||||
|
+++ b/libdnf/goal/Goal.hpp
|
||||||
|
@@ -86,8 +86,10 @@ public:
|
||||||
|
/**
|
||||||
|
* @brief If selector ill formed, it rises std::runtime_error()
|
||||||
|
*
|
||||||
|
- * @param sltr p_sltr: It should contain only upgrades with obsoletes otherwise it can try to
|
||||||
|
- * reinstall installonly packages.
|
||||||
|
+ * @param sltr p_sltr: It contains upgrade-to packages and obsoletes. The presence of installed
|
||||||
|
+ * packages prevents reinstalling packages with the same NEVRA but changed contant. To honor repo
|
||||||
|
+ * priority all relevant packages must be present. To upgrade package foo from priority repo, all
|
||||||
|
+ * installed and available packages of the foo must be in selector plus obsoletes of foo.
|
||||||
|
*/
|
||||||
|
void upgrade(HySelector sltr);
|
||||||
|
void userInstalled(DnfPackage *pkg);
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
||||||
@@ -11,6 +11,7 @@ SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=master;protoco
|
|||||||
file://0001-Add-WITH_TESTS-option.patch \
|
file://0001-Add-WITH_TESTS-option.patch \
|
||||||
file://0001-include-stdexcept-for-runtime_error.patch \
|
file://0001-include-stdexcept-for-runtime_error.patch \
|
||||||
file://fix-deprecation-warning.patch \
|
file://fix-deprecation-warning.patch \
|
||||||
|
file://0040-Mark-job-goal.upgrade-with-sltr-as-target.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
SRCREV = "751f89045b80d58c0d05800f74357cf78cdf7e77"
|
SRCREV = "751f89045b80d58c0d05800f74357cf78cdf7e77"
|
||||||
|
|||||||
Reference in New Issue
Block a user