intersystems / intersystems/ipm
Module Dependency Version =* does not seem to work
- Dominant language
- ObjectScript
- Stars
- 41
- Forks
- 29
- Avg merge
- 23h 54m
- Merged PRs (30d)
- 4
Description
I have 2 modules
Module A
was verison 1.0.1
and then was republished as version 1.0.2
Module B has a dependency on Module A with the version being *
which according to https://github.com/intersystems/ipm/wiki/03.-IPM-Manifest-(Module.xml)
`Module dependencies, specify each dependent module in element.
In dependant module Version element you can specify an exact version (1.2.36) or use asterisk.
2.2.* - means the latest version grater than 2.2.0 and less then 2.3.0
* - means the latest version`
On my target environment I have Module A installed with version 1.0.1.
When I install Module B which reports to have a dependency on *, the latest version I would expect the process of installing Module B would cause Module A to be upgraded to 1.0.2 but this does not occur.
when BuildDependencyGraph is called in %ZPM.PackageManager.Developer.Module we have
` // Test whether dependency version is a valid semantic version. These are handled in the first pass only.
// Other cases are handled in the second pass only.
Set tIsExactVersion = +##class(%ZPM.PackageManager.Core.SemanticVersion).IsValid(tDep.VersionString) kill %objlasterror
If ((pPass = $$$EXACT) && 'tIsExactVersion) || ((pPass = $$$FUZZY) && tIsExactVersion) {
Continue
}
`
and because tIsExactVersion is 0 this method is Continuing to the next Dependecy.
Contributor guide
Assessment
This issue has not been assessed yet.