public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/dnf5] rawhide: Restore ABI
@ 2026-08-19 13:48
0 siblings, 0 replies; only message in thread
From: @ 2026-08-19 13:48 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/dnf5
Branch : rawhide
Commit : f174d0fcedc78a34d74b800697862b93683ad5e0
Author : Petr Písař <ppisar@redhat.com>
Date : 2026-08-19T15:47:01+02:00
Stats : +75/-1 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/dnf5/c/f174d0fcedc78a34d74b800697862b93683ad5e0?branch=rawhide
Log:
Restore ABI
---
diff --git a/0003-Remove-libdnf5-base-Transaction-persistence-to-resto.patch b/0003-Remove-libdnf5-base-Transaction-persistence-to-resto.patch
new file mode 100644
index 0000000..3ae89fd
--- /dev/null
+++ b/0003-Remove-libdnf5-base-Transaction-persistence-to-resto.patch
@@ -0,0 +1,70 @@
+From 8438f6bafc2ce6c2570fb26c6d1ed93d11a8c0b5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Wed, 19 Aug 2026 13:41:51 +0200
+Subject: [PATCH] Remove libdnf5::base::Transaction::persistence to restore ABI
+
+93d42a2ffd9957aadb59f897771b890a09f8c927 commit ("bootc: Add
+transaction persistence field") broke ABI by adding "persistence"
+member to libdnf5::base::Transaction class. This unintentional ABI
+break caused crashing PackageKit daemon compiled against DNF5 5.4.2.1
+and running againt DNF5 5.4.3.0.
+
+This patch moves the member into a private
+libdnf5::base::Transaction::Impl class.
+
+Resolve: #2869
+---
+ include/libdnf5/base/transaction.hpp | 1 -
+ libdnf5/base/transaction.cpp | 2 +-
+ libdnf5/base/transaction_impl.hpp | 3 +++
+ 3 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/include/libdnf5/base/transaction.hpp b/include/libdnf5/base/transaction.hpp
+index 5ca23df79..6668724d6 100644
+--- a/include/libdnf5/base/transaction.hpp
++++ b/include/libdnf5/base/transaction.hpp
+@@ -227,7 +227,6 @@ private:
+ std::optional<uint32_t> user_id;
+ std::string comment;
+ std::string description;
+- libdnf5::base::TransactionPersistence persistence = libdnf5::base::TransactionPersistence::UNKNOWN;
+
+ /// Clear the recorded last scriptlet output
+ LIBDNF_LOCAL void clear_last_script_output();
+diff --git a/libdnf5/base/transaction.cpp b/libdnf5/base/transaction.cpp
+index a319b1b0a..444d9c5c1 100644
+--- a/libdnf5/base/transaction.cpp
++++ b/libdnf5/base/transaction.cpp
+@@ -485,7 +485,7 @@ void Transaction::set_comment(const std::string & comment) {
+ }
+
+ void Transaction::set_persistence(libdnf5::base::TransactionPersistence persistence) {
+- this->persistence = persistence;
++ p_impl->persistence = persistence;
+ }
+
+ bool Transaction::check_gpg_signatures() {
+diff --git a/libdnf5/base/transaction_impl.hpp b/libdnf5/base/transaction_impl.hpp
+index 9c4146a0a..19f056a0f 100644
+--- a/libdnf5/base/transaction_impl.hpp
++++ b/libdnf5/base/transaction_impl.hpp
+@@ -32,6 +32,7 @@
+ #include "libdnf5/base/transaction_group.hpp"
+ #include "libdnf5/base/transaction_module.hpp"
+ #include "libdnf5/base/transaction_package.hpp"
++#include "libdnf5/base/transaction_persistence.hpp"
+ #include "libdnf5/module/module_sack.hpp"
+ #include "libdnf5/rpm/package.hpp"
+ #include "libdnf5/rpm/rpm_signature.hpp"
+@@ -138,6 +139,8 @@ private:
+ // history db transaction id
+ int64_t history_db_id = 0;
+
++ libdnf5::base::TransactionPersistence persistence = libdnf5::base::TransactionPersistence::UNKNOWN;
++
+ // whether also the command line repo packages should be downloaded to the destination
+ bool download_local_pkgs{false};
+
+--
+2.55.0
+
diff --git a/dnf5.spec b/dnf5.spec
index bf0a1ea..647891e 100644
--- a/dnf5.spec
+++ b/dnf5.spec
@@ -13,13 +13,14 @@
Name: dnf5
Version: %{project_version_prime}.%{project_version_major}.%{project_version_minor}.%{project_version_micro}
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Command-line package manager
License: GPL-2.0-or-later
URL: https://github.com/rpm-software-management/dnf5
Source0: %{url}/archive/%{version}/dnf5-%{version}.tar.gz
Patch1: 0001-Fix-integer-overflow-on-32-bit-platforms-in-D-Bus-hi.patch
Patch2: 0002-reposync-Prevent-a-min-buildtime-overflow-on-32-bit-.patch
+Patch3: 0003-Remove-libdnf5-base-Transaction-persistence-to-resto.patch
Requires: libdnf5%{?_isa} = %{version}-%{release}
Requires: libdnf5-cli%{?_isa} = %{version}-%{release}
@@ -1173,6 +1174,9 @@ mkdir -p %{buildroot}%{_libdir}/libdnf5/plugins
%ldconfig_scriptlets
%changelog
+* Wed Aug 19 2026 Petr Pisar <ppisar@redhat.com> - 5.4.3.0-2
+- Restore ABI (upstream GH#2869)
+
* Wed Aug 12 2026 Packit <hello@packit.dev> - 5.4.3.0-1
- Update to version 5.4.3.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-19 13:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-19 13:48 [rpms/dnf5] rawhide: Restore ABI
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox