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

Allow totally incompatible modules in changeset #2869

Merged
merged 1 commit into from
Sep 15, 2019

Conversation

HebaruSan
Copy link
Member

Problem

In #2821 we added the ability to select a specific version of a module to install in GUI rather than only installing the latest compatible. As part of this, incompatible versions were allowed as well.

However, you could only install an incompatible version if at least one other version of the module was compatible. Modules with no compatible versions (let's call them "totally incompatible") could be selected but would not show up in the changeset and could not be installed.

Cause

Totally incompatible modules were excluded in two ways, in line with the old assumptions about installability:

  • MainModList.ComputeUserChangeSet only checked modules for which IsInstallable is true (it's false for totally incompatible modules)
  • GUIMod.GetRequestedChanges only allowed installing a new module if the install checkbox was visible and checked (it's - for totally incompatible modules), and changing from one version to another only worked if the module was already installed

Changes

  • Now MainModList.ComputeUserChangeSet checks all modules
  • Now GUIMod.GetRequestedChanges can return an installation change even if the installation checkbox isn't available, as long as InstalledMod and SelectedMod aren't the same. As part of this, the old install/uninstall logic and the newer version-switching logic are unified to a single block.

@xZise, if you'd like to try this change, here's a test build:

Fixes #2868.

@HebaruSan HebaruSan added Bug GUI Issues affecting the interactive GUI Pull request labels Sep 14, 2019
@DasSkelett
Copy link
Member

DasSkelett commented Sep 15, 2019

Hmmm, not working for me. Always throws the following error:

AlmostRealSolarSystem 1.2.3 depends on SigmaDimensions, which isn't compatible with your current version of KSP

even if I select another mod to install, f.e. [x] Science!.

So the selected mod isn't updated in the background (in the UI it is).

The error is also thrown if I try to select a compatible mod via the checkbox in the modlist.

@DasSkelett
Copy link
Member

Scratch that, problem was that ARSS was still selected in the versions tab...

Copy link
Member

@DasSkelett DasSkelett left a comment

Choose a reason for hiding this comment

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

Works!

@HebaruSan HebaruSan merged commit f9e1fa8 into KSP-CKAN:master Sep 15, 2019
@HebaruSan HebaruSan deleted the fix/incompat-inst branch September 15, 2019 21:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug GUI Issues affecting the interactive GUI Pull request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Cannot force install a mod which is not supported [Bug]
2 participants