summaryrefslogtreecommitdiffhomepage
path: root/HANDBOOK.md
blob: 20876600c63996975b46fc51796e282026099673 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Handbook

Notes for myself that I don't want cluttering up the README

## Deployment Process

### Step 0: Things you might have missed

#### Did you update the version of `"typescript"` in the monorepo's root **package.json** file?

Run this first to update **packages/types/dom.ts** then commit the changes:

```
(cd packages/types; pnpm run extract-dom-types)
```

### Step 1: Determine which packages need to be published

Run this command, **but cancel out the first time!** Use it to determine which packages need entries
in CHANGELOG.md!

```
pnpm run update-version
```

### Step 2: Update CHANGELOG.md

Add entries to CHANGELOG.md, then re-run the command above **but go all the way through with it this
time** so that the latest changes have an entry in the CHANGELOG that gets bundled with the release.

### Step 3: Need to publish `types`?

```
pnpm run publish:types
```

### Step 4: Need to publish `browser`?

```
pnpm run publish:browser
```

### Step 5: Need to publish `server`?

1.
   - [ ] Make sure the correct version of `types` is on NPM
   - The `npm install` step that dnt performs while building the project pulls from NPM. The build
     will fail if the version of `types` specified in `mappings` in **build_npm.ts** is unavailable.

```
pnpm run publish:server
```

### Step 6: Push up `HEAD` to `origin`

Don't forget to push up the latest changes to `origin` when everything's been published!