purescript/pursuit

Use semver instead of Data.Version

Opened this issue · 1 comments

Prerequisite for #98, probably

semver is MPL, but I don't think licensing is an issue, see https://www.mozilla.org/MPL/2.0/FAQ.html#distribute-my-binaries and https://www.mozilla.org/MPL/2.0/FAQ.html#virality.

Most of the work required for this will have to be inside the compiler, in Language.PureScript.Docs.Types. I'd like to achieve this without breaking the JSON format; the way to do this would be to serialize versions as strings in the normal way (eg, "1.2.3") before putting them in to the JSON, as we do currently.

It's possibly worth noting that this would break existing JSON documents produced by psc-publish where the version is in four components, which psc-publish currently doesn't stop you from doing. However, this is very rare for PureScript packages because we use Bower (which does require semver).