Depends/DependsVersions attributes #9
+221
−8
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.
This PR adds support for a
dependsanddependsVersionsattribute, both which allow for mods to depend on other mods alongside minimum specified versions, the list is seperated with a question mark to keep it consistent in the XML format.it's meant to be used as such in a
ModInfo.xml:This PR also adds a
versionattribute for mods, I know Spore-Mod-Manager already supported amodVersionattribute but personally I don't think having themodin the attribute name makes much sense, and due to the low amount of Spore-Mod-Manager users I think it should be fine to simplify the name, but this can be changed if desired.The uninstaller also supports showing the

versionattribute now with these changes:The installer dependency resolver is currently very simple and will error out when a user doesn't have the required dependencies installed:

I'd like to improve that in the future to ensure it doesn't error out when installing both the dependency and mod which depends on it at the same time.
The uninstaller has a slightly better resolver, it takes into account what the user is uninstalling, but it also shows an error when trying to uninstall a mod which is a dependency for another mod which currently isn't being uninstalled, like so:

All the features added in this PR are locked behind the
installerSystemVersionversion1.0.1.3