-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dnfdaemon: Update goal.resolve() return value with missing attributes #190
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
from
December 7, 2022 17:41
0b22799
to
0f5528b
Compare
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
from
December 7, 2022 18:02
0f5528b
to
0aaaa55
Compare
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
from
December 8, 2022 19:59
0aaaa55
to
7ce7c1f
Compare
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
2 times, most recently
from
December 9, 2022 07:36
acec085
to
cad2f36
Compare
For transaction serialization in dnf5daemon we need to distinguish which type of object given transaction item represents. There was similar enum in LogEvent which is also replaced by the new TransactionItemType and the same implementation is used everywhere.
Also rename repo to repo_id to have dbus package attribute name consistent with libdnf5::Package.
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
from
March 1, 2023 07:38
cad2f36
to
1dde5ad
Compare
To correctly present resolved transaction to the user we need to change the structure of transaction item returned from goal.resolve(). The new transaction item structure consists of: - string object_type. This allows the client to correctly interpret data stored in transaction object map. Value is one of libdnf::transaction::TransactionItemType enum. - string action. One of libdnf::transaction::TransactionItemAction - string reason. One of libdnf::transaction::TransactionItemReason enum - {string:variant} map with other transaction item attributes. Currently used for group id in case of REASON_CHANGE action and GROUP reason. - {string:variant} map with object - package / group / environment / module, according to object_type. All enum values are passed as string using corresponding libdnf::transaction::*_to_string() methods. Server and client can use different versions of libdnf with potentially different enum definitions. Using strings makes communication more reliable.
New attribute "replaces" of transaction item attributes. Contains list of ids (int) of packages that are replaced by given transaction item. Needed to correctly display transaction table.
m-blaha
force-pushed
the
mblaha/dnfdaemon-groups
branch
from
March 1, 2023 09:23
1dde5ad
to
fd04b23
Compare
Honestly I don't have comments on it meaning that I find it consistent and I would then merge it. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add missing attributes to transaction items returned by goal.resolve().