Description
I think we should stop using purs publish
and instead move that functionality into the registry. purs publish
has many restrictions that prevent the registry from working properly, such as having to have a SemVer-compliant Git tag checked out with a clean source tree (except for the purs.json
file). To support monorepos or non-GitHub locations we have to lift these restrictions. Rather than iterate on the compiler I think we should just do this in the registry, because then we can report better errors and not be tied in with compiler releases.
purs publish
can stay in the compiler for non-registry users – the Pursuit API isn't changing – but I think eventually we will want to deprecate it altogether and have the registry be the direct pipeline to Pursuit.
We can do this because we already have, in the API pipeline:
- The dependency resolutions for the package
- The
purs.json
orspago.yaml
manifest for the package - The
output
directory produced by the compiler; we can also generate docs if need be.