Skip to content
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

Introduce conflicts to moss and boulder #248

Merged
merged 3 commits into from
Jun 8, 2024

Conversation

GZGavinZhao
Copy link
Contributor

@GZGavinZhao GZGavinZhao commented May 25, 2024

Part 1 of #94. This PR allows moss and boulder to emit packages with conflicts and store conflicts in the meta database.

Conflicts is being interpreted as "providers that cannot coexist with a package". In other words, if provider foo is a conflict of package bar, then any package that provides foo cannot be co-installed with bar. Therefore, a conflict is the exact same as a provider except that it is used/interpreted in a different way.

moss support is complete but needs testing. Testing is contingent on boulder being able to emit packages with conflicts, so I'm implementing that right now. I cannot get the D-boulder to build a package properly, it just says: Support for boulder is implemented and a simple test for storing/retrieving conflicts from the meta database is added.

@GZGavinZhao GZGavinZhao marked this pull request as draft May 25, 2024 02:35
@GZGavinZhao GZGavinZhao marked this pull request as ready for review June 4, 2024 02:19
@GZGavinZhao
Copy link
Contributor Author

Looking at how run_deps is collected in boulder/src/package.rs, I may be missing a few details on handling conflicts for subpackages, but otherwise this PR should be good for review.

Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Signed-off-by: Gavin Zhao <git@gzgz.dev>
Copy link
Member

@ikeycode ikeycode left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome! Will be interesting trying to use this but likely some setops style magic is the way to go =)

@ikeycode ikeycode merged commit a76f744 into serpent-os:main Jun 8, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants