Open SCanzano opened 1 month ago
This is a matter of repo configuration - at least that's the design. Reviewing current behavior on 0.7.2 it doesn't work, though, so calling this a bug.
Suppose I update configuration for a zpm-registry repo named registry2
using:
zpm "repo -n registry2 -prereleases 0 -snapshots 0"
I should see, in zpm "repo -list":
registry2
Source: **********
Enabled? Yes
Available? Yes
Use for Snapshots? No
Use for Prereleases? No
Is Read-Only? No
Deployment Enabled? No
zpm "install registry2/package-with-only-snapshot-versions"
or zpm "install registry2/package-with-only-prerelease-versions"
should fail in this case, but they pick up the incorrect package version.
IMO we should make sure this is fixed in v0.9.0
Related issue in zpm-registry, which I reported back in 2022: https://github.com/intersystems-community/zpm-registry/issues/91
The zpm-registry side is fixed in the latest release. IPM will be fixed in 0.9 via #560 or possibly in an upcoming 0.7 release if we have another one, via #561.
It looks like there is some discussion about pre-releases but I don't have clarity on how to define this and or what its behavior does. https://github.com/intersystems/ipm/issues/480
I would like to be able to mark a version as a pre-release. I would hope that when a user is in ZPM and do
install -v moduleName
It would skip any of the pre-release versions. I could still do
install -v moduleName specificVersion
to install a specific version including a pre-release version.
If I do install -v moduleName specificVersion and its a pre-released version and there are module dependencies it would pick any pre-release versions for the dependent modules.
The reason why I want to do this is I currently have rclib-studio 1.5.0 Versions: 1.5.0, 1.4.0, 1.0.1 rclib-system 1.5.0 Versions: 1.5.0, 1.4.0, 1.0.2, 1.0.0 rclib-unittest 1.5.0 Versions: 1.5.0, 1.4.0, 1.0.2, 1.0.1 rclib-wellbase 1.5.0 Versions: 1.5.0, 1.4.0, 1.3.0, 1.2.0, 1.1.0, 1.0.1
1.4.0 is our GR Release and 1.5.0 is a module that is published but not expected to go to customer sites just yet.
if someone just does
install -v rclib-unittest
I'd like it to be able to skip 1.5.0 and install the highest non pre-release version, that being 1.4.0