Skip to content

Proposal: Reimplement 'purs publish' in the registry #525

Description

@thomashoneyman

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:

  1. The dependency resolutions for the package
  2. The purs.json or spago.yaml manifest for the package
  3. The output directory produced by the compiler; we can also generate docs if need be.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions