Skip to content

Commit fe3959d

Browse files
authored
Merge branch 'main' into NODE-7046
2 parents 53274dc + 88e02a4 commit fe3959d

File tree

70 files changed

+2443
-2437
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+2443
-2437
lines changed

.evergreen/config.in.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -617,6 +617,9 @@ functions:
617617
export AWS_ACCESS_KEY_ID=${aws_key}
618618
export AWS_SECRET_ACCESS_KEY=${aws_secret}
619619
620+
# use Node20
621+
export PATH=/opt/devtools/node20/bin:/opt/dev/tools/bin:$PATH
622+
620623
# Download all the task coverage files.
621624
# NOTE: All coverage files are too large for V8 to handle the resulting call to
622625
# JSON.stringify from within nyc, so with stick to Fermiun to include the

.evergreen/config.yml

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -556,6 +556,9 @@ functions:
556556
export AWS_ACCESS_KEY_ID=${aws_key}
557557
export AWS_SECRET_ACCESS_KEY=${aws_secret}
558558
559+
# use Node20
560+
export PATH=/opt/devtools/node20/bin:/opt/dev/tools/bin:$PATH
561+
559562
# Download all the task coverage files.
560563
# NOTE: All coverage files are too large for V8 to handle the resulting call to
561564
# JSON.stringify from within nyc, so with stick to Fermiun to include the
@@ -1994,24 +1997,6 @@ tasks:
19941997
- func: install mongodb-client-encryption from source
19951998
- func: assume secrets manager role
19961999
- func: run custom csfle tests
1997-
- name: test-latest-driver-mongodb-client-encryption-6.0.0
1998-
tags:
1999-
- run-custom-dependency-tests
2000-
commands:
2001-
- command: expansions.update
2002-
type: setup
2003-
params:
2004-
updates:
2005-
- {key: NODE_LTS_VERSION, value: 20.19.0}
2006-
- {key: VERSION, value: '7.0'}
2007-
- {key: TOPOLOGY, value: replica_set}
2008-
- {key: CLIENT_ENCRYPTION, value: 'true'}
2009-
- func: install dependencies
2010-
- func: bootstrap mongo-orchestration
2011-
- func: install package
2012-
vars:
2013-
2014-
- func: run tests
20152000
- name: test-alpine-fle
20162001
tags:
20172002
- alpine-fle
@@ -3205,7 +3190,6 @@ buildvariants:
32053190
- run-custom-csfle-tests-5.0
32063191
- run-custom-csfle-tests-rapid
32073192
- run-custom-csfle-tests-latest
3208-
- test-latest-driver-mongodb-client-encryption-6.0.0
32093193
- name: rhel8-test-gcp-kms
32103194
display_name: GCP KMS Test
32113195
run_on: debian11-small

.evergreen/generate_evergreen_tasks.js

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -623,27 +623,28 @@ for (const serverVersion of ['5.0', 'rapid', 'latest']) {
623623
});
624624
}
625625

626-
customDependencyTests.push({
627-
name: `test-latest-driver-mongodb-client-encryption-6.0.0`,
628-
tags: ['run-custom-dependency-tests'],
629-
commands: [
630-
updateExpansions({
631-
NODE_LTS_VERSION: LOWEST_LTS,
632-
VERSION: '7.0',
633-
TOPOLOGY: 'replica_set',
634-
CLIENT_ENCRYPTION: true
635-
}),
636-
{ func: 'install dependencies' },
637-
{ func: 'bootstrap mongo-orchestration' },
638-
{
639-
func: 'install package',
640-
vars: {
641-
PACKAGE: '[email protected]'
642-
}
643-
},
644-
{ func: 'run tests' }
645-
]
646-
});
626+
// TODO(NODE-6997): update to 7.0.0 after release
627+
// customDependencyTests.push({
628+
// name: `test-latest-driver-mongodb-client-encryption-6.0.0`,
629+
// tags: ['run-custom-dependency-tests'],
630+
// commands: [
631+
// updateExpansions({
632+
// NODE_LTS_VERSION: LOWEST_LTS,
633+
// VERSION: '7.0',
634+
// TOPOLOGY: 'replica_set',
635+
// CLIENT_ENCRYPTION: true
636+
// }),
637+
// { func: 'install dependencies' },
638+
// { func: 'bootstrap mongo-orchestration' },
639+
// {
640+
// func: 'install package',
641+
// vars: {
642+
// PACKAGE: '[email protected]'
643+
// }
644+
// },
645+
// { func: 'run tests' }
646+
// ]
647+
// });
647648

648649
const coverageTask = {
649650
name: 'download and merge coverage'.split(' ').join('-'),

.evergreen/install-mongodb-client-encryption.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ rm -rf mongodb-client-encryption
1212
git clone https://github.com/mongodb-js/mongodb-client-encryption.git
1313
pushd mongodb-client-encryption
1414

15-
# TODO(NODE-7218): test against latest mongodb-client-encryption
16-
git checkout aa61a35f5e174cd1c1e247e036093e18c88268c6
15+
git checkout main
1716

1817
node --version
1918
npm --version

.github/dependabot.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,6 @@ updates:
2727
# chai-subset requires @types/chai 4.x.
2828
- dependency-name: "@types/chai"
2929
versions: [">=4.0.0"]
30-
# nyc is Node18+ only starting on [email protected].
31-
- dependency-name: "nyc"
32-
versions: [">=16.0.0"]
3330
# mocha-plugin-eslint breaks our lint configuration
3431
- dependency-name: "mocha-plugin-eslint"
3532
versions: [">=10.0.0"]

etc/notes/releasing.md

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,19 @@
11
# Releasing MongoDB Node.js Packages
22

3+
- [Releasing MongoDB Node.js Packages](#releasing-mongodb-nodejs-packages)
4+
- [Pre-requisites](#pre-requisites)
5+
- [Branching and backport strategy](#branching-and-backport-strategy)
6+
- [Backports](#backports)
7+
- [`release-please`](#release-please)
8+
- [Release Notes](#release-notes)
9+
- [Release Instructions](#release-instructions)
10+
- [Authentication](#authentication)
11+
- [Prebuilds](#prebuilds)
12+
- [Alphas / Prereleases](#alphas--prereleases)
13+
- [Packages](#packages)
14+
315
> [!NOTE]
4-
> _Last updated: Thu Jun 6_
16+
> _Last updated: Oct 1, 2025_
517
618
## Pre-requisites
719

@@ -95,6 +107,52 @@ prebuild uploads archives of the native dependency to the github release.
95107
Uploading binaries should happen automatically after the git tag/github release has been made.
96108
It may take some time for the building and uploading to finish, but no more than a few hours at most.
97109

110+
## Alphas / Prereleases
111+
112+
> [!NOTE]
113+
> This documentation uses `alpha` as the prerelease tag, but if you wish to use a different tag, just
114+
> replace `alpha` with the desired tag.
115+
116+
To configure a repo for a prerelease:
117+
118+
1. Update the release Github action's `npm publish` step to publish an alpha by specifying `--tag alpha`:
119+
120+
```yaml
121+
- run: npm publish --provenance --tag alpha
122+
if: ${{ needs.release_please.outputs.release_created }}
123+
env:
124+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
125+
```
126+
127+
2. Update the release please configuration file with the following parameters:
128+
1. Specify `prerelease-type: alpha`. This tells release-please that we want to use alpha as the pre-release tag.
129+
2. Specify `prerelease: true`. This tells release-please to create the Github release as a pre-release.
130+
3. Specify `versioning: prerelease`. This tells release-please that we wish to release a pre-release.
131+
132+
```json
133+
{
134+
"pull-request-header": "Please run the release_notes action before releasing to generate release highlights",
135+
"packages": {
136+
".": {
137+
"include-component-in-tag": false,
138+
"changelog-path": "HISTORY.md",
139+
"release-type": "node",
140+
"bump-minor-pre-major": false,
141+
"bump-patch-for-minor-pre-major": false,
142+
"draft": false,
143+
"prerelease-type": "alpha",
144+
"prerelease": true,
145+
"versioning": "prerelease"
146+
}
147+
}
148+
}
149+
```
150+
151+
After merging the a PR with the above changes, release-please should re-create the release PR as a PR to release
152+
an alpha.
153+
154+
Example PR: https://github.com/mongodb-js/mongodb-client-encryption/pull/104
155+
98156
## Packages
99157

100158
The following is a list of packages the Node.js team is responsible for and these release instructions apply to.

package-lock.json

Lines changed: 63 additions & 53 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"@mongodb-js/zstd": "^1.1.0 || ^2.0.0",
3535
"gcp-metadata": "^5.2.0",
3636
"kerberos": "^2.0.1",
37-
"mongodb-client-encryption": ">=6.0.0 <7",
37+
"mongodb-client-encryption": "^7.0.0-alpha",
3838
"snappy": "^7.3.2",
3939
"socks": "^2.7.1"
4040
},
@@ -96,7 +96,7 @@
9696
"js-yaml": "^4.1.0",
9797
"mocha": "^11.7.1",
9898
"mocha-sinon": "^2.1.2",
99-
"mongodb-client-encryption": "^6.5.0",
99+
"mongodb-client-encryption": "^7.0.0-alpha.1",
100100
"mongodb-legacy": "^6.1.3",
101101
"nyc": "^15.1.0",
102102
"prettier": "^3.6.2",
@@ -174,4 +174,4 @@
174174
"moduleResolution": "node"
175175
}
176176
}
177-
}
177+
}

0 commit comments

Comments
 (0)