CKAN icon indicating copy to clipboard operation
CKAN copied to clipboard

Multiple issues with depending a specific mod version

Open BasharMilesTeg opened this issue 9 years ago • 1 comments

ATTN: @pjf, @RichardLake. This issue repeatedly refers to MechJebFARExt. With v1.8.4-0-gf17dfb5 (beta) on KSP 1.0.2 (win): Initial condition: a dummy ksp install consisting of just the readme.txt and the various required directories. Tick 'MechJeb Modules for FAR' (MechJebFARExt) and install. The following will be installed:

 * MechJebFARExt 1.0.0 (cached)
 * MechJeb2 2.5.1 (cached)
 * FerramAerospaceResearch v0.15.2_Ferri (cached)
 * ModuleManager 2.6.6 (cached)
 * ModularFlightIntegrator 1.0.repackaged0 (cached)

This demonstrates that #1175 fixed the bug where the wrong version of FerramAerospaceResearch was selected causing the install to fail.

Tick [update] for Ferram Aerospace Research (FerramAerospaceResearch) and install. This will incorrectly allow FerramAerospaceResearch to be updated to a version (v0.15.3_Froude) that in incompatible with MechJebFARExt. v1.8.4-58-gb447380 (beta) behaves in the same way.


With v1.8.4-0-gf17dfb5 (beta) on KSP 1.0.2 (win): Initial condition: a dummy ksp install consisting of the readme.txt, the various required directories and the following mods.

- FerramAerospaceResearch v0.15.3_Froude
- ModularFlightIntegrator 1.0.repackaged0
- ModuleManager 2.6.6

Tick 'MechJeb Modules for FAR' (MechJebFARExt). The client will throw an exception of type 'CKAN.InconsistentKraken':

************** Exception Text **************
The following inconsistencies were found:
FerramAerospaceResearch requires a version v0.15.2_Ferri. However a incompatible version, v0.15.3_Froude, is in the resolver   at CKAN.RelationshipResolver.ResolveStanza(IEnumerable`1 stanza, SelectionReason reason, RelationshipResolverOptions options, Boolean soft_resolve)
   at CKAN.RelationshipResolver.Resolve(CkanModule module, RelationshipResolverOptions options)
   at CKAN.RelationshipResolver.AddModulesToInstall(IEnumerable`1 modules)
   at CKAN.MainModList.ComputeConflictsFromModList(Registry registry, IEnumerable`1 change_set, KSPVersion ksp_version)
   at CKAN.Main.<UpdateChangeSetAndConflicts>c__async1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CKAN.Main.<ModList_CellValueChanged>c__async0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__4(Object state)

v1.8.4-58-gb447380 (beta) does not crash, colours the line and displays an explanation of why. This demonstrates that #1219 fixes this bug, however if FerramAerospaceResearch is then unticked the client will crash with the message 'Mod FerramAerospaceResearch is not in the list':

************** Exception Text **************
System.ArgumentException: Mod FerramAerospaceResearch is not in the list
   at CKAN.RelationshipResolver.ReasonStringFor(Module mod)
   at CKAN.RelationshipResolver.get_ConflictList()
   at CKAN.MainModList.ComputeConflictsFromModList(IRegistryQuerier registry, IEnumerable`1 change_set, KSPVersion ksp_version)
   at CKAN.Main.<UpdateChangeSetAndConflicts>c__async1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CKAN.Main.<ModList_CellValueChanged>c__async0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__4(Object state)

BasharMilesTeg avatar Jun 30 '15 10:06 BasharMilesTeg

Even able to reproduce similar behaviours in the gui when trying to install metapackages with old mods.

Postremus avatar Aug 10 '15 20:08 Postremus