Skip to content

Commit 5aa9958

Browse files
authored
Apply changes from 1.13.0 release (#968)
* use newer example links (tickets, PRs, etc.) in release steps * add step to update SBOM serial number to `master` branch * update SBOM serial number * apply changes from 1.13.0 release
1 parent 8270531 commit 5aa9958

File tree

4 files changed

+30
-21
lines changed

4 files changed

+30
-21
lines changed

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# ChangeLog
2-
## 1.13.0 (Not yet released)
2+
## 1.13.0
3+
### New features
4+
- Support automatic encryption for `$lookup` stages in `aggregate` pipelines on MongoDB server 8.1+.
35
### Fixed
46
- Restore default behavior to disable extra alignment when importing libbson. This was the default behavior in 1.11. This can be overridden by setting the CMake option `ENABLE_EXTRA_ALIGNMENT=ON`.
57
### Removed

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ See [releasing](./doc/releasing.md).
103103
Distribution packages (i.e., .deb/.rpm) are built and published for several Linux distributions. The installation of these packages for supported platforms is documented here.
104104

105105
### Unstable Development Distribution Packages ###
106-
To install the latest unstable development package, change `1.12` to `development` in the package URLs listed in the subsequent instructions. For example, `https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/1.12` in the instructions would become `https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/development`. Do not use the unstable version of libmongocrypt in a production environment.
106+
To install the latest unstable development package, change `1.13` to `development` in the package URLs listed in the subsequent instructions. For example, `https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/1.13` in the instructions would become `https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/development`. Do not use the unstable version of libmongocrypt in a production environment.
107107

108108
### .deb Packages (Debian and Ubuntu) ###
109109

@@ -144,13 +144,13 @@ sudo sh -c 'curl -s --location https://pgp.mongodb.com/libmongocrypt.asc | gpg -
144144
Second, create a list entry for the repository. For Ubuntu systems (be sure to change `<release>` to `xenial`, `bionic`, `focal`, or `jammy`, as appropriate to your system):
145145

146146
```
147-
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/1.12 universe" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
147+
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/ubuntu <release>/libmongocrypt/1.13 universe" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
148148
```
149149

150150
For Debian systems (be sure to change `<release>` to `stretch`, `buster`, `bullseye`, or `bookworm` as appropriate to your system):
151151

152152
```
153-
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/debian <release>/libmongocrypt/1.12 main" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
153+
echo "deb https://libmongocrypt.s3.amazonaws.com/apt/debian <release>/libmongocrypt/1.13 main" | sudo tee /etc/apt/sources.list.d/libmongocrypt.list
154154
```
155155

156156
#### Package installation ####
@@ -172,7 +172,7 @@ Create the file `/etc/yum.repos.d/libmongocrypt.repo` with contents:
172172
```
173173
[libmongocrypt]
174174
name=libmongocrypt repository
175-
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/redhat/$releasever/libmongocrypt/1.12/x86_64
175+
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/redhat/$releasever/libmongocrypt/1.13/x86_64
176176
gpgcheck=1
177177
enabled=1
178178
gpgkey=https://pgp.mongodb.com/libmongocrypt.asc
@@ -191,7 +191,7 @@ Create the file `/etc/yum.repos.d/libmongocrypt.repo` with contents:
191191
```
192192
[libmongocrypt]
193193
name=libmongocrypt repository
194-
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2023/libmongocrypt/1.12/x86_64
194+
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2023/libmongocrypt/1.13/x86_64
195195
gpgcheck=1
196196
enabled=1
197197
gpgkey=https://pgp.mongodb.com/libmongocrypt.asc
@@ -210,7 +210,7 @@ Create the file `/etc/yum.repos.d/libmongocrypt.repo` with contents:
210210
```
211211
[libmongocrypt]
212212
name=libmongocrypt repository
213-
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2/libmongocrypt/1.12/x86_64
213+
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2/libmongocrypt/1.13/x86_64
214214
gpgcheck=1
215215
enabled=1
216216
gpgkey=https://pgp.mongodb.com/libmongocrypt.asc
@@ -229,7 +229,7 @@ Create the file `/etc/yum.repos.d/libmongocrypt.repo` with contents:
229229
```
230230
[libmongocrypt]
231231
name=libmongocrypt repository
232-
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2013.03/libmongocrypt/1.12/x86_64
232+
baseurl=https://libmongocrypt.s3.amazonaws.com/yum/amazon/2013.03/libmongocrypt/1.13/x86_64
233233
gpgcheck=1
234234
enabled=1
235235
gpgkey=https://pgp.mongodb.com/libmongocrypt.asc
@@ -252,7 +252,7 @@ sudo rpm --import https://pgp.mongodb.com/libmongocrypt.asc
252252
Second, add the repository (be sure to change `<release>` to `12` or `15`, as appropriate to your system):
253253

254254
```
255-
sudo zypper addrepo --gpgcheck "https://libmongocrypt.s3.amazonaws.com/zypper/suse/<release>/libmongocrypt/1.12/x86_64" libmongocrypt
255+
sudo zypper addrepo --gpgcheck "https://libmongocrypt.s3.amazonaws.com/zypper/suse/<release>/libmongocrypt/1.13/x86_64" libmongocrypt
256256
```
257257

258258
Finally, install the libmongocrypt packages:

doc/releasing.md

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Go to [Snyk](https://app.snyk.io/) and select the `dev-prod` organization. If ac
1919

2020
##### Update Snyk
2121

22-
Update the Snyk reference target tracking the to-be-released branch. For a patch release (e.g. x.y.z), check-out the `rx.y` branch and update the `rx.y` reference target. For a minor release (e.g. x.y.0), check out the `master` branch update the `master` reference target.
22+
Update the Snyk reference target tracking the to-be-released branch. For a patch release (e.g. x.y.z), check-out the `rx.y` branch and update the `rx.y` reference target. For a minor release (e.g. x.y.0), check out the `master` branch and update the `master` reference target.
2323

2424
Run `cmake` to ensure generated source files are present:
2525
```bash
@@ -68,7 +68,7 @@ Do the following when releasing:
6868
- If this is a new minor release (e.g. `x.y.0`):
6969
- Update the Linux distribution package installation instructions in [README.md](../README.md) to refer to the new version `x.y`.
7070
- Update the [libmongocrypt-release](https://spruce.mongodb.com/project/libmongocrypt-release/settings/general) Evergreen project (requires auth) to set `Branch Name` to `rx.y`.
71-
- Commit the changes on the `rx.y` branch with a message like "Update CHANGELOG.md for x.y.z".
71+
- Commit the changes on the `rx.y` branch with a message like "Release x.y.z".
7272
- Tag the commit with `git tag -a <tag>`.
7373
- Push both the branch ref and tag ref in the same command: `git push origin master 1.8.0-alpha0` or `git push origin r1.8 1.8.4`
7474
- Pushing the branch ref and the tag ref in the same command eliminates the possibility of a race condition in Evergreen (for building resources based on the presence of a release tag)
@@ -77,20 +77,21 @@ Do the following when releasing:
7777
- `upload-all`
7878
- `windows-upload-release`
7979
- All `publish-packages` tasks.
80-
- If the `publish-packages` tasks fail with an error like `[curator] 2024/01/02 13:56:17 [p=emergency]: problem submitting repobuilder job: 404 (Not Found)`, this suggests the published path does not yet exist. Barque (the Linux package publishing service) has protection to avoid unintentional publishes. File a DEVPROD ticket ([example](https://jira.mongodb.org/browse/DEVPROD-4053)) and assign to the team called Release Infrastructure to request the path be created. Then re-run the failing `publish-packages` task. Ask in the slack channel `#devprod-release-tools` for further help with `Barque` or `curator`.
80+
- If the `publish-packages` tasks fail with an error like `[curator] 2024/01/02 13:56:17 [p=emergency]: problem submitting repobuilder job: 404 (Not Found)`, this suggests the published path does not yet exist. Barque (the Linux package publishing service) has protection to avoid unintentional publishes. File a DEVPROD ticket ([example](https://jira.mongodb.org/browse/DEVPROD-15320)) and assign to the team called Release Infrastructure to request the path be created. Then re-run the failing `publish-packages` task. Ask in the slack channel `#ask-devprod-release-tools` for further help with `Barque` or `curator`.
8181
- Create the release from the GitHub releases page from the new tag.
82-
- Attach the tarball and signature file from the Files tab of the `windows-upload-release` task. [Example](https://github.com/mongodb/libmongocrypt/releases/tag/1.10.0).
82+
- Attach the tarball and signature file from the Files tab of the `windows-upload-release` task. [Example](https://github.com/mongodb/libmongocrypt/releases/tag/1.13.0).
8383
- Attach the Augmented SBOM file to the release as `cyclonedx.augmented.sbom.json`.
8484
Download the Augmented SBOM from a recent execution of the `sbom` task in an Evergreen patch or commit build.
8585
- Attach `etc/third_party_vulnerabilities.md` to the release.
8686
- Attach `etc/ssdlc_compliance_report.md` to the release.
8787

8888
- If this is a new minor release (e.g. `x.y.0`):
89-
- File a DOCSP ticket to update the installation instructions on [Install libmongocrypt](https://www.mongodb.com/docs/manual/core/csfle/reference/libmongocrypt/). ([Example](https://jira.mongodb.org/browse/DOCSP-36863))
90-
- Generate a new unique SBOM serial number for the next release:
89+
- File a DOCSP ticket to update the installation instructions on [Install libmongocrypt](https://www.mongodb.com/docs/manual/core/csfle/reference/libmongocrypt/). ([Example](https://jira.mongodb.org/browse/DOCSP-47954))
90+
- Check out the release branch (`rx.y`). Generate a new unique SBOM serial number for the next upcoming patch release (e.g. for `1.13.1` following the release of `1.13.0`):
9191
```bash
9292
./.evergreen/earthly.sh +sbom-generate-new-serial-number
9393
```
94+
Commit resulting `etc/cyclonedx.sbom.json` and push to `rx.y`.
9495
- Create a new Snyk reference target. The following instructions use the example branch `rx.y`:
9596

9697
Run `cmake` to ensure generated source files are present:
@@ -118,13 +119,19 @@ Do the following when releasing:
118119
- Navigate to the [Webhook Settings](https://github.com/mongodb/libmongocrypt/settings/hooks).
119120
- Click `Edit` on the hook for `https://githook.mongodb.com/`.
120121
- Add the new release branch to the `Payload URL`. Remove unmaintained release branches.
121-
- Make a PR to apply the "Update CHANGELOG.md for x.y.z" commit to the `master` branch.
122+
- Make a PR to to the `master` branch:
123+
- Apply changes from the "Release x.y.z" commit.
124+
- Generate a new unique SBOM serial number next upcoming non-patch release (e.g. for `1.14.0` following the release of `1.13.0`):
125+
```bash
126+
./.evergreen/earthly.sh +sbom-generate-new-serial-number
127+
```
128+
Commit resulting `etc/cyclonedx.sbom.json`.
122129
- Update the release on the [Jira releases page](https://jira.mongodb.org/projects/MONGOCRYPT/versions).
123130
- Record the release on [C/C++ Release Info](https://docs.google.com/spreadsheets/d/1yHfGmDnbA5-Qt8FX4tKWC5xk9AhzYZx1SKF4AD36ecY/edit?usp=sharing). This is done to meet SSDLC reporting requirements.
124131
- Add a link to the Evergreen waterfall for the tagged commit to [libmongocrypt Security Testing Summary](https://docs.google.com/document/d/1dc7uvBzu3okAIsA8LSW5sVQGkYIvwpBVdg5v4wb4c4s/edit#heading=h.5t79jwe4p0ss).
125132

126133
## Homebrew steps ##
127-
Submit a PR to update the Homebrew package https://github.com/mongodb/homebrew-brew/blob/master/Formula/libmongocrypt.rb. ([Example](https://github.com/mongodb/homebrew-brew/pull/208)). If not on macOS, request a team member to do this step.
134+
Submit a PR to update the Homebrew package https://github.com/mongodb/homebrew-brew/blob/master/Formula/libmongocrypt.rb. ([Example](https://github.com/mongodb/homebrew-brew/pull/234)). If not on macOS, request a team member to do this step.
128135

129136
## Debian steps ##
130137
If you are not a Debian maintainer on the team, request a team member to do the steps in this section.
@@ -142,8 +149,8 @@ index 609dc0b..f7530a9 100644
142149
source:
143150
Types: deb
144151
URIs: https://libmongocrypt.s3.amazonaws.com/apt/debian
145-
- Suites: <SUITE>/libmongocrypt/1.11
146-
+ Suites: <SUITE>/libmongocrypt/1.12
152+
- Suites: <SUITE>/libmongocrypt/1.12
153+
+ Suites: <SUITE>/libmongocrypt/1.13
147154
Components: main
148155
Architectures: amd64 arm64
149156
suites:

etc/cyclonedx.sbom.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
}
5858
],
5959
"metadata": {
60-
"timestamp": "2025-02-19T18:48:39.389784+00:00",
60+
"timestamp": "2025-02-27T16:24:58.542719+00:00",
6161
"tools": [
6262
{
6363
"externalReferences": [
@@ -100,7 +100,7 @@
100100
}
101101
]
102102
},
103-
"serialNumber": "urn:uuid:0325f852-2f52-41eb-9937-ad18000dccab",
103+
"serialNumber": "urn:uuid:1eeadd7e-be33-4e55-960c-02bac1da4cf7",
104104
"version": 1,
105105
"$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json",
106106
"bomFormat": "CycloneDX",

0 commit comments

Comments
 (0)