-
Notifications
You must be signed in to change notification settings - Fork 376
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
No Storing Channel* and MRepo* in Solvables #2409
Conversation
0dea571
to
e57b81e
Compare
e57b81e
to
547abdb
Compare
m_real_repo_key = pool_str2id(pool, "solvable:real_repo_url", 1); | ||
m_mrepo_key = pool_str2id(pool, "solvable:mrepo_url", 1); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the difference between repo
and real_repo
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to know too! This is a mechanical operation that stores the value of MRepo::url
for retrival.
I tried to merge real_repo_url
and mrepo_url
but it was significantly more tricky than the scope of this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is also m_metadata.url
/"mamba:url" in the mix
@@ -165,6 +165,8 @@ namespace mamba | |||
|
|||
History::UserRequest m_history_entry; | |||
Transaction* m_transaction; | |||
::Id m_real_repo_key = 0; // Must match that in ``MRepo`` | |||
::Id m_mrepo_key = 0; // Must match that in ``MRepo`` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess this leaking of libsolv details in the transaction class is temporary and will be replaced with PackageInfo list on the long run? In the meantime, they (and those in MRepo) should call the same initialization function to ensure their "synchronization"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This constraint was already here, the PR just made it more obvious.
At the libsolv level (which will be private), #2401 will introduce clean getter/setter in the bindings so that we don't need to match the keys manually.
At the user level, this will be invisible. The user will only deal in PackageInfo style of data.
This removes
mamba::Channel*
inmamba::MRepo
mamba::MRepo*
in::Repo::appdata
mamba::MRepo
andmamba::Channel