gofractally / psibase

Open source protocol enabling communities to easily self-host web applications
https://docs.psibase.io
MIT License
31 stars 5 forks source link

Package CLI improvements #1157

Closed James-Mart closed 1 week ago

James-Mart commented 3 weeks ago

While testing some recent PRs related to packaging, I had the following thoughts

swatanabe commented 3 weeks ago

While testing some recent PRs related to packaging, I had the following thoughts

* `psibase info` will default to showing the installed package. So if I do `psibase info -a dev Tokens` when I have multiple versions available, it will (only) show the installed version unless I explicitly reference the new version number. Is this the desired behavior?

Yes.

* `psibase search` doesn't show version numbers, e.g.: `psibase search -a dev Tokens` just outputs `Tokens`. Perhaps it should show versions:
Tokens-0.16.0 [installed]
Tokens-0.16.1
etc

I'd actually go the other way, and dedup the output. The main use for search is to find the exact name of a package that I only know approximately or to find related packages. A list of all the versions is probably going to be noise far more often than it's useful.

* `psibase list --available` does not consider versions. If 0.16.0 is installed, but 0.16.1 is available, shouldn't it list 0.16.1?

No. I think listing packages that have upgrades available should be separate from listing packages that are not installed.

* `--package-source` with an invalid value (in e.g. `psibase list`) doesn't seem to cause any failures.

It looks like /common doesn't check that the service is an account that exists.

James-Mart commented 3 weeks ago

I think listing packages that have upgrades available should be separate from listing packages that are not installed.

Maybe the flags should then be --upgrades-available and --not-installed?

swatanabe commented 1 week ago