Skip to content

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Aug 26, 2025

Updates the requirements on bson to permit the latest version.

Release notes

Sourced from bson's releases.

v3.0.0

The MongoDB Rust driver team is pleased to announce the v3.0.0 release of the bson crate.

Highlighted Changes

3.0 updates several APIs in backwards-incompatible ways; in most cases these changes should require only minor updates in application code.

Most notably:

  • Unified Error Hierarchy: 3.0 adds the bson::error::Error type, with fields for values common across errors like message or associated key and a kind enum that provides granular root cause information.
  • &CStr: The bson crate now provides types that directly model the BSON spec "cstring" type, removing a potential source of panic!s and allowing validation at either run-time or compile-time for constant strings.
  • Optional serde: Integration with serde is now an optional feature; in support of this, the API has been updated to clarify where methods are for encoding (directly converting Rust BSON values into BSON bytes) or for serialization (converting arbitrary Rust structs to BSON values or bytes via the serde crate).

For detailed information on breaking changes and code examples, please see the migration guide.

Release Notes

Impactful changes are listed below; for a full list of changes see this GitHub query.

Breaking Changes

  • RUST-1906 Remove human readable options (#531)
  • RUST-1380 Drop support for uuid 0.8 (#534)
  • RUST-2169 Clean up and future-proof features (#544)
  • RUST-1887 Convince append to be more accepting (#541)
  • RUST-1960 Make large-dates time feature optional (#546)
  • RUST-1406 Add crate-wide error types, convert value access errors (#551)
  • RUST-1406 Convert raw errors to standard error type (#552)
  • RUST-1998 Remove lossy utf8 as a decoder option (#550)
  • RUST-1869 Rename RawElement::len to RawElement::size (#557)
  • RUST-1992 Make serde an optional feature (#554)
  • RUST-1406 Add type-specific errors to standard error type (#555)
  • RUST-1406 Convert serde errors to standard error type (#562)
  • RUST-1887 Make BindRawBsonRef a little more user-friendly (#565)
  • RUST-1748 Convert serde helpers to serde_with::(De)SerializeAs implementations for some converters between ObjectId, String, and DateTime (#559)
  • RUST-1992 Introduce the &CStr and CString types for keys and regular expressions (#563)
  • RUST-2241 Convert panic from malformed input to error (#568)
  • RUST-2240 Move serde_json API behind a feature flag (#567)
  • RUST-1748 Convert unsigned serde helpers to use serde_conv (#575)
  • RUST-1748 Convert UUID serde helpers to use serde_conv (#579)
  • RUST-2228 Normalize conversions between raw types and base crate types (#580)
  • RUST-1998 Remove now-redundant to_document_utf8_lossy method (#592)

New Features

... (truncated)

Commits
  • 69f82fb release v3.0.0 (#599)
  • de0f60c RUST-2266 Add HashSet to Bson conversion (#598)
  • 5c20bde RUST-2251 document and tidy up serde helpers (#597)
  • 46bc541 RUST-2239 Fix performance of bson 3.0 (#596)
  • a0e50d6 Bump the rust-dependencies group with 8 updates (#595)
  • 93b391c RUST-2258 Use borrowed buffer in raw serializer (#590)
  • e76c0e7 minor: bump clippy to 1.89 (#594)
  • 062c499 RUST-2148 Migration guide for bson crate 3.0 (#591)
  • 47d05d3 Bump the rust-dependencies group with 3 updates (#593)
  • 7fd393e RUST-1998 Remove now-redundant to_document_utf8_lossy method (#592)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [bson](https://github.com/mongodb/bson-rust) to permit the latest version.
- [Release notes](https://github.com/mongodb/bson-rust/releases)
- [Commits](mongodb/bson-rust@v2.4.0...v3.0.0)

---
updated-dependencies:
- dependency-name: bson
  dependency-version: 3.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added enhancement Improvement of existing features or bugfix k::dependencies Pull requests that update a dependency file rust Related to Rust specifically labels Aug 26, 2025
@tyranron tyranron self-assigned this Aug 27, 2025
@tyranron tyranron added semver::breaking Breaking change in terms of SemVer k::integration Related to integration with third-party libraries or systems lib::bson Related to `bson` crate integration labels Aug 27, 2025
@tyranron tyranron added this to the 0.17.0 milestone Aug 27, 2025
@tyranron tyranron merged commit a181391 into master Aug 27, 2025
358 of 360 checks passed
@tyranron tyranron deleted the dependabot/cargo/bson-3.0 branch August 27, 2025 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improvement of existing features or bugfix k::dependencies Pull requests that update a dependency file k::integration Related to integration with third-party libraries or systems lib::bson Related to `bson` crate integration rust Related to Rust specifically semver::breaking Breaking change in terms of SemVer
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant