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

Exclude DLLs being upgraded to full modules #4250

Merged
merged 2 commits into from
Nov 6, 2024

Conversation

HebaruSan
Copy link
Member

@HebaruSan HebaruSan commented Nov 6, 2024

Problem

If you manully install RPM alongside a CKAN install of Deferred and then try to upgrade RPM to CKAN-managed, it doesn't let you:

image

Cause

As of #4067, a DLL can be upgraded to a full module, but the relationship resolver's consistency check still checks conflicts against the pre-upgrade DLL list.

In the case of Deferred, it conflicts with older versions of RPM, but versions can't be checked with DLLs, so the registry starts out in a conflicted state and remains that way despite the planned upgrade to a non-conflicting module.

Changes

Now the relationship resolver computes a post-install set of DLLs based on the list from the registry minus the identifiers of modules being installed. This allows upgrading a version-specifically-conflicted DLL to a module with a version that doesn't match the conflict. A test is included to catch any future regressions.

Fixes #4225.

@HebaruSan HebaruSan added Bug Something is not working as intended Easy This is easy to fix Core (ckan.dll) Issues affecting the core part of CKAN Relationships Issues affecting depends, recommends, etc. labels Nov 6, 2024
@HebaruSan

This comment was marked as resolved.

@HebaruSan HebaruSan added the In progress We're still working on this label Nov 6, 2024
@HebaruSan HebaruSan added the Tests Issues affecting the internal tests label Nov 6, 2024
@HebaruSan HebaruSan merged commit 3d17da3 into KSP-CKAN:master Nov 6, 2024
3 checks passed
@HebaruSan HebaruSan deleted the fix/upgrade-conflicting-dlls branch November 6, 2024 18:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is not working as intended Core (ckan.dll) Issues affecting the core part of CKAN Easy This is easy to fix In progress We're still working on this Relationships Issues affecting depends, recommends, etc. Tests Issues affecting the internal tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Trying to upgrade a manually installed mod fails if it conflicts with another mod
1 participant