@dbos-inc/dbos-sdk 5.3.4-preview → 5.3.5-preview
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DEVELOPING.md +42 -0
- package/package.json +1 -1
package/DEVELOPING.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Developing DBOS Transact
|
|
2
|
+
|
|
3
|
+
## Releasing
|
|
4
|
+
|
|
5
|
+
Every package in this repo is released together, from the tip of `main`, with one command:
|
|
6
|
+
|
|
7
|
+
```shell
|
|
8
|
+
node publish/make_release.mjs
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
This tags `main` as `vX.Y` (the next minor version), pushes the tag together with a new `release/vX.Y` branch, then runs the publish workflow on that branch and waits for it to finish.
|
|
12
|
+
Nothing is pushed until every check passes: clean working tree, on `main`, identical to `origin/main`, and at least one commit since the last release.
|
|
13
|
+
No commit is made on any branch.
|
|
14
|
+
|
|
15
|
+
To release a specific version, such as a major bump:
|
|
16
|
+
|
|
17
|
+
```shell
|
|
18
|
+
node publish/make_release.mjs --version 6.0
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
To publish a patch after merging backports into an existing release branch:
|
|
22
|
+
|
|
23
|
+
```shell
|
|
24
|
+
node publish/make_release.mjs --patch 5.3
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Pass `--no-publish` to tag and push without running the publish workflow.
|
|
28
|
+
You need the [GitHub CLI](https://cli.github.com/) logged in with the `repo` scope, and permission to create branches and tags in this repo.
|
|
29
|
+
|
|
30
|
+
### Versions
|
|
31
|
+
|
|
32
|
+
`publish/version.mjs` derives the version of a build from the nearest `vX.Y` tag and the number of commits since it.
|
|
33
|
+
Run it on any checkout to see what a build of the current branch would be versioned.
|
|
34
|
+
|
|
35
|
+
| Branch | Version | npm dist-tag |
|
|
36
|
+
| -------------- | ---------------------------------------- | ------------ |
|
|
37
|
+
| `release/vX.Y` | `X.Y.<commits since tag vX.Y>` | `latest` |
|
|
38
|
+
| `main` | `X.(Y+1).<commits since tag>-preview` | `preview` |
|
|
39
|
+
| anything else | `X.(Y+1).<commits since tag>-test.<sha>` | `test` |
|
|
40
|
+
|
|
41
|
+
The publish workflow runs on every push to `main`, so each merge publishes a preview.
|
|
42
|
+
Dispatching it manually on a branch other than `main` or a release branch publishes a `test` build, which is how to try out the publish path without touching `latest` or `preview`.
|