Update to 0.66.0
This commit is contained in:
parent
ede0478c76
commit
0315c10112
1
.gitignore
vendored
1
.gitignore
vendored
@ -53,3 +53,4 @@
|
||||
/libdnf-0.63.1.tar.gz
|
||||
/libdnf-0.64.0.tar.gz
|
||||
/libdnf-0.65.0.tar.gz
|
||||
/libdnf-0.66.0.tar.gz
|
||||
|
@ -1,67 +0,0 @@
|
||||
From e361b9fa110f5c79f0713243a1e7cba189d1219c Mon Sep 17 00:00:00 2001
|
||||
From: Jaroslav Mracek <jmracek@redhat.com>
|
||||
Date: Tue, 8 Feb 2022 09:30:03 +0100
|
||||
Subject: [PATCH] Skip rich deps for autodetection of unmet dependencies
|
||||
|
||||
Rich dependencies are difficult to properly evaluate because we do not
|
||||
have enough information about past and only libsolv is capable to
|
||||
evaluate it in comparison to present state of the system.
|
||||
|
||||
Additionally - rich deps are used for langpacks therefore disabling
|
||||
unmet rich deps will have a negative impact on UX.
|
||||
---
|
||||
libdnf/goal/Goal.cpp | 22 +++++++++++++++++++---
|
||||
1 file changed, 19 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/libdnf/goal/Goal.cpp b/libdnf/goal/Goal.cpp
|
||||
index 2b698f7..ebe2fbd 100644
|
||||
--- a/libdnf/goal/Goal.cpp
|
||||
+++ b/libdnf/goal/Goal.cpp
|
||||
@@ -835,8 +835,12 @@ Goal::exclude_from_weak_autodetect()
|
||||
installed_names.push_back(dnf_package_get_name(pkg));
|
||||
std::unique_ptr<libdnf::DependencyContainer> recommends(dnf_package_get_recommends(pkg));
|
||||
for (int i = 0; i < recommends->count(); ++i) {
|
||||
- Query query(base_query);
|
||||
std::unique_ptr<libdnf::Dependency> dep(recommends->getPtr(i));
|
||||
+ const char * dep_string = dep->toString();
|
||||
+ if (dep_string[0] == '(') {
|
||||
+ continue;
|
||||
+ }
|
||||
+ Query query(base_query);
|
||||
const char * version = dep->getVersion();
|
||||
// There can be installed provider in different version or upgraded packed can recommend a different version
|
||||
// Ignore version and search only by reldep name
|
||||
@@ -858,7 +862,7 @@ Goal::exclude_from_weak_autodetect()
|
||||
}
|
||||
}
|
||||
|
||||
- // Invesigate supplements of only available packages with a different name to installed packages
|
||||
+ // Investigate supplements of only available packages with a different name to installed packages
|
||||
installed_names.push_back(nullptr);
|
||||
base_query.addFilter(HY_PKG_NAME, HY_NEQ, installed_names.data());
|
||||
auto * available_pset = base_query.getResultPset();
|
||||
@@ -870,8 +874,20 @@ Goal::exclude_from_weak_autodetect()
|
||||
if (supplements->count() == 0) {
|
||||
continue;
|
||||
}
|
||||
+ libdnf::DependencyContainer supplements_without_rich(getSack());
|
||||
+ for (int i = 0; i < supplements->count(); ++i) {
|
||||
+ std::unique_ptr<libdnf::Dependency> dep(supplements->getPtr(i));
|
||||
+ const char * dep_string = dep->toString();
|
||||
+ if (dep_string[0] == '(') {
|
||||
+ continue;
|
||||
+ }
|
||||
+ supplements_without_rich.add(dep.get());
|
||||
+ }
|
||||
+ if (supplements_without_rich.count() == 0) {
|
||||
+ continue;
|
||||
+ }
|
||||
Query query(installed_query);
|
||||
- query.addFilter(HY_PKG_PROVIDES, supplements.get());
|
||||
+ query.addFilter(HY_PKG_PROVIDES, &supplements_without_rich);
|
||||
// When supplemented package already installed, exclude_from_weak available package
|
||||
if (!query.empty()) {
|
||||
add_exclude_from_weak(pkg);
|
||||
--
|
||||
libgit2 1.1.0
|
||||
|
16
libdnf.spec
16
libdnf.spec
@ -1,10 +1,10 @@
|
||||
%global libsolv_version 0.7.20
|
||||
%global libmodulemd_version 2.13.0
|
||||
%global librepo_version 1.13.1
|
||||
%global dnf_conflict 4.3.0
|
||||
%global dnf_conflict 4.11.0
|
||||
%global swig_version 3.0.12
|
||||
%global libdnf_major_version 0
|
||||
%global libdnf_minor_version 65
|
||||
%global libdnf_minor_version 66
|
||||
%global libdnf_micro_version 0
|
||||
|
||||
%define __cmake_in_source_build 1
|
||||
@ -56,12 +56,11 @@
|
||||
|
||||
Name: libdnf
|
||||
Version: %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version}
|
||||
Release: 3%{?dist}
|
||||
Release: 1%{?dist}
|
||||
Summary: Library providing simplified C and Python API to libsolv
|
||||
License: LGPLv2+
|
||||
URL: https://github.com/rpm-software-management/libdnf
|
||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
Patch1: 0001-Skip-rich-deps-for-autodetection-of-unmet-dependencies.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: gcc
|
||||
@ -74,7 +73,7 @@ BuildRequires: valgrind
|
||||
%endif
|
||||
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.46.0
|
||||
BuildRequires: pkgconfig(gtk-doc)
|
||||
BuildRequires: rpm-devel >= 4.11.0
|
||||
BuildRequires: rpm-devel >= 4.15.0
|
||||
%if %{with rhsm}
|
||||
BuildRequires: pkgconfig(librhsm) >= 0.0.3
|
||||
%endif
|
||||
@ -84,7 +83,6 @@ BuildRequires: pkgconfig(zck) >= 0.9.11
|
||||
BuildRequires: pkgconfig(sqlite3)
|
||||
BuildRequires: pkgconfig(json-c)
|
||||
BuildRequires: pkgconfig(cppunit)
|
||||
BuildRequires: pkgconfig(libcrypto)
|
||||
BuildRequires: pkgconfig(modulemd-2.0) >= %{libmodulemd_version}
|
||||
BuildRequires: pkgconfig(smartcols)
|
||||
BuildRequires: gettext
|
||||
@ -306,6 +304,12 @@ popd
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Mar 14 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 0.66.0-1
|
||||
- Use `rpmdbCookie` from librpm, remove `hawkey.Sack._rpmdb_version`
|
||||
- Fix handling transaction id in resolveTransactionItemReason (RhBug:2010259,2053014)
|
||||
- Remove deprecated assertions (RhBug:2027383)
|
||||
- Increase required rpm version since we use `rpmdbCookie()`
|
||||
|
||||
* Mon Feb 21 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 0.65.0-3
|
||||
- Skip rich deps for autodetection of unmet dependencies (RhBug:2033130)
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (libdnf-0.65.0.tar.gz) = e334cb5674940503ff33a15da68a42eab75ec9db8e23cf00ac84310b7a7339572a7d406897149d0ab01ad527afdaedaf488c3270d3033c99146221349400628a
|
||||
SHA512 (libdnf-0.66.0.tar.gz) = a93660aaab92a7133264234adcadbd229654bf315b336ff27b765ab99efa87a7fafede0d4e9a349aa1e81415c5b0ede735fb10ccf0a0150e81b382c67aeab790
|
||||
|
Loading…
Reference in New Issue
Block a user