AlmaLinux changes
This commit is contained in:
commit
e8923650e9
@ -0,0 +1,70 @@
|
|||||||
|
From 025d477f63baf3df2f6da3b10a21f00d4a339073 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 (RhBug:2033130, 2048394)
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=2048394
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=2033130
|
||||||
|
---
|
||||||
|
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
|
||||||
|
|
4689
SOURCES/0003-Update-translations-RhBug-2017349.patch
Normal file
4689
SOURCES/0003-Update-translations-RhBug-2017349.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -56,12 +56,14 @@
|
|||||||
|
|
||||||
Name: libdnf
|
Name: libdnf
|
||||||
Version: %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version}
|
Version: %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version}
|
||||||
Release: 3%{?dist}.alma
|
Release: 5%{?dist}.alma
|
||||||
Summary: Library providing simplified C and Python API to libsolv
|
Summary: Library providing simplified C and Python API to libsolv
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: https://github.com/rpm-software-management/libdnf
|
URL: https://github.com/rpm-software-management/libdnf
|
||||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||||
Patch1: 0001-Use-rpmdbCookie-from-librpm-remove-hawkey.Sack._rpmd.patch
|
Patch1: 0001-Use-rpmdbCookie-from-librpm-remove-hawkey.Sack._rpmd.patch
|
||||||
|
Patch2: 0002-Skip-rich-deps-for-autodetection-of-unmet-dependencies-RhBug2033130-2048394.patch
|
||||||
|
Patch3: 0003-Update-translations-RhBug-2017349.patch
|
||||||
|
|
||||||
# Almalinux patches
|
# Almalinux patches
|
||||||
Patch10001: almalinux_bugtracker.patch
|
Patch10001: almalinux_bugtracker.patch
|
||||||
@ -308,9 +310,15 @@ popd
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Apr 08 2022 Eduard Abdullin <eabdullin@almalinux.org> - 0.65.0-3.alma
|
* Mon Apr 11 2022 Eduard Abdullin <eabdullin@almalinux.org> - 0.65.0-5.alma
|
||||||
- Added patch for almalinux bugtracker
|
- Added patch for almalinux bugtracker
|
||||||
|
|
||||||
|
* Mon Mar 21 2022 Marek Blaha <mblaha@redhat.com> - 0.65.0-5
|
||||||
|
- Update translations
|
||||||
|
|
||||||
|
* Fri Mar 11 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 0.65.0-4
|
||||||
|
- Skip rich deps for autodetection of unmet dependencies (RhBug:2048394)
|
||||||
|
|
||||||
* Mon Feb 07 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 0.65.0-3
|
* Mon Feb 07 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 0.65.0-3
|
||||||
- Use `rpmdbCookie` from librpm, remove `hawkey.Sack._rpmdb_version`
|
- Use `rpmdbCookie` from librpm, remove `hawkey.Sack._rpmdb_version`
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user