Skip to content

Commit 6bc77ec

Browse files
Add release docs (#258)
* Add release docs * Replace Pursuit with Try PureScript * Use 1. for markdown step-by-step items * Port package set update instructions to RELEASE.md
1 parent 2cd83d4 commit 6bc77ec

File tree

2 files changed

+42
-24
lines changed

2 files changed

+42
-24
lines changed

README.md

+1-24
Original file line numberDiff line numberDiff line change
@@ -47,30 +47,7 @@ Most of these features can be controlled not only from the toolbar, but also usi
4747

4848
### Which Libraries Are Available?
4949

50-
Try PureScript aims to provide a complete, recent package set from <https://github.com/purescript/package-sets>. The available libraries are those listed in `staging/spago.dhall`, at the versions in the package set mentioned in `staging/packages.dhall`.
51-
52-
To update to a more recent package set, first update the `upstream` package set in `staging/packages.dhall`:
53-
54-
```
55-
$ spago upgrade-set
56-
```
57-
58-
Then, set the dependencies key in the `spago.dhall` file to be an empty list. This will require a type annotation of `List Text`:
59-
60-
```dhall
61-
{ name = "try-purescript-server"
62-
, dependencies = [] : List Text
63-
, ...
64-
}
65-
```
66-
67-
Finally, run this command to install every package in the package set:
68-
69-
```
70-
$ spago ls packages | cut -f 1 -d ' ' | xargs spago install
71-
```
72-
73-
Before deploying an updated package set, someone (your reviewer) should check that the memory required to hold the package set's externs files does not exceed that of the try.purescript.org server.
50+
Try PureScript aims to provide a complete, recent package set from <https://github.com/purescript/package-sets>. The available libraries are those listed in [`staging/spago.dhall`](./staging/spago.dhall), at the versions in the package set mentioned in [`staging/packages.dhall`](./staging/packages.dhall).
7451

7552
## Development
7653

RELEASE.md

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Release
2+
3+
## Instructions for Redeploying Try PureScript
4+
5+
After making a new compiler release, do the following to redeploy Try PureScript using the new compiler.
6+
7+
1. Submit a PR with the following changes:
8+
- In `stack.yaml`, update `purescript` (and possibly `purescript-cst`) to use its new version.
9+
- If you are updating the package set, see the next section for instructions.
10+
1. Once the PR is merged, create a new GitHub tagged release using `vYYYY-MM-DD.X` (where `X` is usually `1` or the release attempt) as the version schema. The release will trigger a GitHub Actions build.
11+
2. Wait for the GitHub Actions build to finish (it builds the assets)
12+
3. Run `./deploy/run.sh vX-X-X.1`, replacing `vX-X-X.1` with the version you created.
13+
14+
## Updating the Package Set
15+
16+
The try.purescript.org server only has a limited amount of memory. If the package set we use in deployment is too large, the server will run out of memory.
17+
18+
Before deploying an updated package set, someone (your reviewer) should check that the memory required to hold the package set's externs files does not exceed that of the try.purescript.org server.
19+
20+
Update the package set by doing the following:
21+
22+
1. Update the `upstream` package set in `staging/packages.dhall`:
23+
24+
```
25+
$ pushd staging && spago upgrade-set && popd
26+
```
27+
28+
2. Set the `dependencies` key in the `spago.dhall` file to be an empty list. This will require a type annotation of `List Text`:
29+
30+
```dhall
31+
{ name = "try-purescript-server"
32+
, dependencies = [] : List Text
33+
, ...
34+
}
35+
```
36+
37+
3. Install all packages in the package set by running this command:
38+
39+
```
40+
$ spago ls packages | cut -f 1 -d ' ' | xargs spago install
41+
```

0 commit comments

Comments
 (0)