diff --git a/.gitignore b/.gitignore index 35fe658..7631c66 100644 --- a/.gitignore +++ b/.gitignore @@ -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 diff --git a/0001-Skip-rich-deps-for-autodetection-of-unmet-dependencies.patch b/0001-Skip-rich-deps-for-autodetection-of-unmet-dependencies.patch deleted file mode 100644 index bf99a23..0000000 --- a/0001-Skip-rich-deps-for-autodetection-of-unmet-dependencies.patch +++ /dev/null @@ -1,67 +0,0 @@ -From e361b9fa110f5c79f0713243a1e7cba189d1219c Mon Sep 17 00:00:00 2001 -From: Jaroslav Mracek -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 recommends(dnf_package_get_recommends(pkg)); - for (int i = 0; i < recommends->count(); ++i) { -- Query query(base_query); - std::unique_ptr 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 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 - diff --git a/libdnf.spec b/libdnf.spec index 05cf877..b266f90 100644 --- a/libdnf.spec +++ b/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 - 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 - 0.65.0-3 - Skip rich deps for autodetection of unmet dependencies (RhBug:2033130) diff --git a/sources b/sources index 72ba82e..21b4ee0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libdnf-0.65.0.tar.gz) = e334cb5674940503ff33a15da68a42eab75ec9db8e23cf00ac84310b7a7339572a7d406897149d0ab01ad527afdaedaf488c3270d3033c99146221349400628a +SHA512 (libdnf-0.66.0.tar.gz) = a93660aaab92a7133264234adcadbd229654bf315b336ff27b765ab99efa87a7fafede0d4e9a349aa1e81415c5b0ede735fb10ccf0a0150e81b382c67aeab790