You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+8-2Lines changed: 8 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,7 +22,7 @@ The official [MongoDB](https://www.mongodb.com/) driver for Node.js.
22
22
23
23
### Release Integrity
24
24
25
-
Releases are created automatically and signed using the [Node team's GPG key](https://pgp.mongodb.com/node-driver.asc). This applies to the git tag as well as all release packages provided as part of a GitHub release. To verify the provided packages, download the key and import it using gpg:
25
+
Releases are created automatically and signed using the [Node team's GPG key](https://pgp.mongodb.com/node-driver.asc). All release packages provided as part of a GitHub release are signed. To verify the provided packages, download the key and import it using gpg:
> No verification is done when using npm to install the package. The contents of the Github tarball and npm's tarball are identical.
49
+
> No GPG verification is done when using npm to install the package. The contents of the GitHub tarball and npm's tarball are identical.
50
+
51
+
Releases published to the npm registry also include a [provenance attestation](https://docs.npmjs.com/generating-provenance-statements), which cryptographically links the package to its source repository and build workflow. To verify provenance:
52
+
53
+
```shell
54
+
npm audit signatures
55
+
```
50
56
51
57
The MongoDB Node.js driver follows [semantic versioning](https://semver.org/) for its releases.
Copy file name to clipboardExpand all lines: etc/notes/releasing.md
+10-12Lines changed: 10 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -100,15 +100,9 @@ The MongoDB driver can now generate a cup of joe.
100
100
101
101
### Authentication
102
102
103
-
The github action is able to publish with the repository secret `NPM_TOKEN`.
104
-
This is a granular API key that is unique to each package and has to be rotated on a regular basis.
105
-
The `dbx-node@mongodb.com` npm account is the author of the automated release.
103
+
The GitHub Actions release workflow publishes to npm using [npm Trusted Publishing](https://docs.npmjs.com/trusted-publishers) (OIDC). A short-lived OIDC token is issued by GitHub Actions at publish time — no long-lived `NPM_TOKEN` secret is required on the `main` branch. The `mongodb` package's trusted publisher entry on npmjs.com points at `npm-publish.yml`, which is dispatched by `release.yml` via `dispatch-and-wait.mjs`.
106
104
107
-
The nightly release flow is an exception: `release-nightly.yml` dispatches
108
-
`.github/workflows/npm-publish.yml`, which authenticates to the npm registry
109
-
via [npm Trusted Publishing](https://docs.npmjs.com/trusted-publishers) (OIDC)
110
-
rather than `NPM_TOKEN`. The `mongodb` package's trusted publisher entry on
111
-
npmjs.com points at `npm-publish.yml`.
105
+
The `5.x` and `6.x` backport branches still publish using the legacy `NPM_TOKEN` secret. These branches are only used when a backport release is actually needed — the migration to trusted publishers will be done at that point, not proactively.
112
106
113
107
### Prebuilds
114
108
@@ -126,13 +120,17 @@ It may take some time for the building and uploading to finish, but no more than
126
120
127
121
To configure a repo for a prerelease:
128
122
129
-
1. Update the release Github action's `npm publish` step to publish an alpha by specifying`--tag alpha`:
123
+
1. Update the release GitHub action's publish step to dispatch `npm-publish.yml` with`--tag alpha`:
0 commit comments