The cli supports ethpm URIs like...
ethpm://ens.packages.eth : specify only a registry
ethpm://ens.packages.eth/package@1.0.0 : specify a package release on a registry
ethpm://ens.packages.eth/package@1.0.0/deployments/Token: specify a certain asset within a package
From a UX point of view it would be nice to support
ethpm://ens.packages.eth/package - rather than requiring a version to be specified.
Since ethpm does not enforce semver, if this kind of uri is used - then a list of all detected versions should be printed - giving the user the chance to choose what version they want to install/activate (similar to how this is handled in ethpm update).
How can it be fixed?
parse_registry_uri in web3.py will need to be updated. currently if an ethpm uri contains a package name a version is also required.
an input() prompt will be required for both ethpm activate and ethpm install that allows the user to specify a version from a list of available versions (similar to ethpm update)
What was wrong?
The cli supports ethpm URIs like...
ethpm://ens.packages.eth
: specify only a registryethpm://ens.packages.eth/package@1.0.0
: specify a package release on a registryethpm://ens.packages.eth/package@1.0.0/deployments/Token
: specify a certain asset within a packageFrom a UX point of view it would be nice to support
ethpm://ens.packages.eth/package
- rather than requiring a version to be specified.Since ethpm does not enforce semver, if this kind of uri is used - then a list of all detected versions should be printed - giving the user the chance to choose what version they want to install/activate (similar to how this is handled in
ethpm update
).How can it be fixed?
parse_registry_uri
inweb3.py
will need to be updated. currently if an ethpm uri contains a package name a version is also required.input()
prompt will be required for bothethpm activate
andethpm install
that allows the user to specify a version from a list of available versions (similar toethpm update
)