forked from rpms/dnf-plugins-core
Update to 4.1.0
Resolves: rhbz#2074457 Resolves: rhbz#1933112 Resolves: rhbz#2066646
This commit is contained in:
parent
116aa7258f
commit
2d4f65114c
1
.gitignore
vendored
1
.gitignore
vendored
@ -55,3 +55,4 @@
|
||||
/dnf-plugins-core-4.0.19.tar.gz
|
||||
/dnf-plugins-core-4.0.21.tar.gz
|
||||
/dnf-plugins-core-4.0.24.tar.gz
|
||||
/dnf-plugins-core-4.1.0.tar.gz
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 24668777a7624a8ee3c6f53aff8f4d6675019d23 Mon Sep 17 00:00:00 2001
|
||||
From: Marek Blaha <mblaha@redhat.com>
|
||||
Date: Mon, 8 Nov 2021 16:51:56 +0100
|
||||
Subject: [PATCH] groups-manager: More benevolent resolving of packages (RhBug:2013633)
|
||||
|
||||
= changelog =
|
||||
msg: groups-manager uses for matching packages full NEVRA and not only name.
|
||||
type: enhancement
|
||||
resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2013633
|
||||
---
|
||||
plugins/groups_manager.py | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plugins/groups_manager.py b/plugins/groups_manager.py
|
||||
index 382df37..12da183 100644
|
||||
--- a/plugins/groups_manager.py
|
||||
+++ b/plugins/groups_manager.py
|
||||
@@ -254,7 +254,9 @@ class GroupsManagerCommand(dnf.cli.Command):
|
||||
# find packages according to specifications from command line
|
||||
packages = set()
|
||||
for pkg_spec in self.opts.packages:
|
||||
- q = self.base.sack.query().filterm(name__glob=pkg_spec).latest()
|
||||
+ subj = dnf.subject.Subject(pkg_spec)
|
||||
+ q = subj.get_best_query(self.base.sack, with_nevra=True,
|
||||
+ with_provides=False, with_filenames=False).latest()
|
||||
if not q:
|
||||
logger.warning(_("No match for argument: {}").format(pkg_spec))
|
||||
continue
|
||||
--
|
||||
libgit2 1.1.0
|
||||
|
@ -1,95 +0,0 @@
|
||||
From e289904dcd9c93ad8e1c3b01878599e9d65fa2cc Mon Sep 17 00:00:00 2001
|
||||
From: Nicola Sella <nsella@redhat.com>
|
||||
Date: Mon, 1 Nov 2021 18:29:40 +0100
|
||||
Subject: [PATCH] [versionlock] fix multi pkg lock (RhBug:2013324)
|
||||
|
||||
= changelog =
|
||||
msg: [versionlock] Fix: Multiple package-name-spec arguments don't lock
|
||||
correctly (RhBug:2001039)
|
||||
type: bugfix
|
||||
resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2013324
|
||||
---
|
||||
plugins/versionlock.py | 57 +++++++++++++++++++++++++++++++++------------------------
|
||||
1 file changed, 33 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/plugins/versionlock.py b/plugins/versionlock.py
|
||||
index 19fbd8c..32c51da 100644
|
||||
--- a/plugins/versionlock.py
|
||||
+++ b/plugins/versionlock.py
|
||||
@@ -171,25 +171,27 @@ class VersionLockCommand(dnf.cli.Command):
|
||||
cmd = self.opts.subcommand
|
||||
|
||||
if cmd == 'add':
|
||||
- (entry, entry_cmd) = _search_locklist(self.opts.package)
|
||||
- if entry == '':
|
||||
- _write_locklist(self.base, self.opts.package, self.opts.raw, True,
|
||||
- "\n# Added lock on %s\n" % time.ctime(),
|
||||
- ADDING_SPEC, '')
|
||||
- elif cmd != entry_cmd:
|
||||
- raise dnf.exceptions.Error(ALREADY_EXCLUDED.format(entry))
|
||||
- else:
|
||||
- logger.info("%s %s", EXISTING_SPEC, entry)
|
||||
+ results = _search_locklist(self.opts.package)
|
||||
+ for entry, entry_cmd in results:
|
||||
+ if entry_cmd == '':
|
||||
+ _write_locklist(self.base, [entry], self.opts.raw, True,
|
||||
+ "\n# Added lock on %s\n" % time.ctime(),
|
||||
+ ADDING_SPEC, '')
|
||||
+ elif cmd != entry_cmd:
|
||||
+ raise dnf.exceptions.Error(ALREADY_EXCLUDED.format(entry))
|
||||
+ else:
|
||||
+ logger.info("%s %s", EXISTING_SPEC, entry)
|
||||
elif cmd == 'exclude':
|
||||
- (entry, entry_cmd) = _search_locklist(self.opts.package)
|
||||
- if entry == '':
|
||||
- _write_locklist(self.base, self.opts.package, self.opts.raw, False,
|
||||
- "\n# Added exclude on %s\n" % time.ctime(),
|
||||
- EXCLUDING_SPEC, '!')
|
||||
- elif cmd != entry_cmd:
|
||||
- raise dnf.exceptions.Error(ALREADY_LOCKED.format(entry))
|
||||
- else:
|
||||
- logger.info("%s %s", EXISTING_SPEC, entry)
|
||||
+ results = _search_locklist(self.opts.package)
|
||||
+ for entry, entry_cmd in results:
|
||||
+ if entry_cmd == '':
|
||||
+ _write_locklist(self.base, [entry], self.opts.raw, False,
|
||||
+ "\n# Added exclude on %s\n" % time.ctime(),
|
||||
+ EXCLUDING_SPEC, '!')
|
||||
+ elif cmd != entry_cmd:
|
||||
+ raise dnf.exceptions.Error(ALREADY_LOCKED.format(entry))
|
||||
+ else:
|
||||
+ logger.info("%s %s", EXISTING_SPEC, entry)
|
||||
elif cmd == 'list':
|
||||
for pat in _read_locklist():
|
||||
print(pat)
|
||||
@@ -237,14 +239,21 @@ def _read_locklist():
|
||||
|
||||
|
||||
def _search_locklist(package):
|
||||
+ results = []
|
||||
found = action = ''
|
||||
locked_specs = _read_locklist()
|
||||
- for ent in locked_specs:
|
||||
- if _match(ent, package):
|
||||
- found = ent
|
||||
- action = 'exclude' if ent.startswith('!') else 'add'
|
||||
- break
|
||||
- return (found, action)
|
||||
+ for pkg in package:
|
||||
+ match = False
|
||||
+ for ent in locked_specs:
|
||||
+ found = action = ''
|
||||
+ if _match(ent, [pkg]):
|
||||
+ found = ent
|
||||
+ action = 'exclude' if ent.startswith('!') else 'add'
|
||||
+ results.append((found, action))
|
||||
+ match = True
|
||||
+ if not match:
|
||||
+ results.append((pkg, action))
|
||||
+ return results
|
||||
|
||||
|
||||
def _write_locklist(base, args, raw, try_installed, comment, info, prefix):
|
||||
--
|
||||
libgit2 1.1.0
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 2c5c1a00fde93b25ffaaa9ad5eea6f0d5712efe4 Mon Sep 17 00:00:00 2001
|
||||
From: Nicola Sella <nsella@redhat.com>
|
||||
Date: Thu, 11 Nov 2021 13:48:39 +0100
|
||||
Subject: [PATCH] Update documentation for adding specific version (RhBug:2013332)
|
||||
|
||||
=changelog=
|
||||
msg: [versionlock] update documentation for adding specifi version
|
||||
type: bugfix
|
||||
resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2013332
|
||||
---
|
||||
doc/versionlock.rst | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/doc/versionlock.rst b/doc/versionlock.rst
|
||||
index 061ce80..1ac7196 100644
|
||||
--- a/doc/versionlock.rst
|
||||
+++ b/doc/versionlock.rst
|
||||
@@ -97,6 +97,10 @@ Subcommands
|
||||
Adding versionlock on: mutt-5:1.11.4-1.fc30.*
|
||||
Adding versionlock on: mutt-5:1.12.1-3.fc30.*
|
||||
|
||||
+ .. note:: Be careful when adding specific versions
|
||||
+
|
||||
+ If you add a package specifying a version with ``dnf versionlock mutt-5:1.11.4-1.fc30.x86_64`` then, if you run ``dnf versionlock add mutt``
|
||||
+ versionlock will not add ``mutt-5:1.12.1-3.fc30.x86_64``.
|
||||
|
||||
``dnf versionlock exclude <package-name-spec>``
|
||||
Add an exclude (within versionlock) for the available packages matching the spec. It means that
|
||||
--
|
||||
libgit2 1.1.0
|
||||
|
@ -1,33 +0,0 @@
|
||||
From 66bac802e84fcf97dbe32690c33c420cb8f16891 Mon Sep 17 00:00:00 2001
|
||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
||||
Date: Fri, 4 Feb 2022 10:28:59 +0100
|
||||
Subject: [PATCH] plugin debug: Use base._ts.dbCookie() to determining rpmdb
|
||||
version
|
||||
|
||||
The debug plugin used `base.sack._rpmdb_version()` method. Which is
|
||||
actually the private method `hawkey.Sack._rpmdb_version()` from libdnf.
|
||||
|
||||
The patch uses the `base._ts.dbCookie()` method. This method was added
|
||||
to DNF 4.11.0. And internally it calls the new official API function
|
||||
`rpm.TransactionSet.dbCookie()` from librpm. This is a necessary step
|
||||
to allow the `._rpmdb_version()` method to be removed from libdnf.
|
||||
---
|
||||
plugins/debug.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plugins/debug.py b/plugins/debug.py
|
||||
index ad136a9..c443f71 100644
|
||||
--- a/plugins/debug.py
|
||||
+++ b/plugins/debug.py
|
||||
@@ -161,7 +161,7 @@ class DebugDumpCommand(dnf.cli.Command):
|
||||
|
||||
def dump_rpmdb_versions(self):
|
||||
self.write("%%%%RPMDB VERSIONS\n")
|
||||
- version = self.base.sack._rpmdb_version()
|
||||
+ version = self.base._ts.dbCookie()
|
||||
self.write(" all: %s\n" % version)
|
||||
return
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,6 +1,6 @@
|
||||
%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.10.0-4}
|
||||
%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.11.0}
|
||||
%global dnf_plugins_extra 2.0.0
|
||||
%global hawkey_version 0.46.1
|
||||
%global hawkey_version 0.64.0
|
||||
%global yum_utils_subpackage_name dnf-utils
|
||||
%if 0%{?rhel} > 7
|
||||
%global yum_utils_subpackage_name yum-utils
|
||||
@ -33,16 +33,12 @@
|
||||
%endif
|
||||
|
||||
Name: dnf-plugins-core
|
||||
Version: 4.0.24
|
||||
Release: 3%{?dist}
|
||||
Version: 4.1.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Core Plugins for DNF
|
||||
License: GPLv2+
|
||||
URL: https://github.com/rpm-software-management/dnf-plugins-core
|
||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
Patch1: 0001-groups-manager-More-benevolent-resolving-of-packages-RhBug2013633.patch
|
||||
Patch2: 0002-versionlock-fix-multi-pkg-lock-RhBug2013324.patch
|
||||
Patch3: 0003-Update-documentation-for-adding-specific-version-RhBug2013332.patch
|
||||
Patch4: 0004-plugin-debug-Use-base._ts.dbCookie-to-determining-rp.patch
|
||||
|
||||
BuildArch: noarch
|
||||
BuildRequires: cmake
|
||||
@ -150,7 +146,6 @@ Summary: Core Plugins for DNF
|
||||
BuildRequires: python3-dbus
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-dnf >= %{dnf_lowest_compatible}
|
||||
BuildRequires: make
|
||||
%if 0%{?fedora}
|
||||
Requires: python3-distro
|
||||
%endif
|
||||
@ -408,6 +403,19 @@ versions of those packages. This allows you to e.g. protect packages from being
|
||||
updated by newer versions.
|
||||
%endif
|
||||
|
||||
%if %{with python3}
|
||||
%package -n python3-dnf-plugin-modulesync
|
||||
Summary: Download module metadata and packages and create repository
|
||||
Requires: python3-%{name} = %{version}-%{release}
|
||||
Requires: createrepo_c >= 0.17.4
|
||||
Provides: dnf-plugin-modulesync = %{version}-%{release}
|
||||
Provides: dnf-command(modulesync)
|
||||
|
||||
%description -n python3-dnf-plugin-modulesync
|
||||
Download module metadata from all enabled repositories, module artifacts and profiles of matching modules and create
|
||||
repository.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
%if %{with python2}
|
||||
@ -768,7 +776,19 @@ ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with python3}
|
||||
%files -n python3-dnf-plugin-modulesync
|
||||
%{python3_sitelib}/dnf-plugins/modulesync.*
|
||||
%{python3_sitelib}/dnf-plugins/__pycache__/modulesync.*
|
||||
%{_mandir}/man8/dnf-modulesync.*
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Apr 28 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 4.1.0-1
|
||||
- Add a new subpackage with modulesync command. The command downloads packages from modules and/or creates a repository with modular data. (RhBug:1868047)
|
||||
- [repoclosure] Print counts of missing dependencies
|
||||
- [reposync] Do not stop downloading packages on the first error (RhBug:2009894)
|
||||
|
||||
* Mon Feb 07 2022 Pavla Kratochvilova <pkratoch@redhat.com> - 4.0.24-3
|
||||
- Backport patch with new way to determine rpmdb version
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (dnf-plugins-core-4.0.24.tar.gz) = 3fd6a76d7b9b19c2ac749fa237ebfa34aca4f3e90e4fa7a7013d5f603b2ae733d14714c0c62544955e2f2390aa9a7fb50b996abef37cf1ed8d2105e51f81c8f7
|
||||
SHA512 (dnf-plugins-core-4.1.0.tar.gz) = 0a6fb2a9db129bce479777d6858292ca04ee25b2cb4a5362e241d98e7015b0bbeb2be7f1912ac9a443547a308e437a60c91c4e1a45c9108e4ae7e1ee77024c77
|
||||
|
Loading…
Reference in New Issue
Block a user