Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Aug 25, 2025

This PR contains the following updates:

Package Type Update Change
bson dependencies major 2.9.0 -> 3.0.0

Release Notes

mongodb/bson-rust (bson)

v3.1.0

Compare Source

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

Full Release Notes

See this GitHub query for a full list of changes.

New Features
  • Add const array bson conversion (#​601)

v3.0.0

Compare Source

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
Improvements
  • minor: remove incorrect note about Decimal128 panic (#​539)
  • RUST-2215 Ergonomics for HumanReadable (#​540)
  • RUST-1798 use simd to optimize utf8 validation (#​548) (thanks @​Liyixin95!)
  • RUST-1992 Consolidate binary encoding logic (#​560)
  • RUST-998 / RUST-2244 Documentation improvements (#​581)
  • RUST-2196 Require ignored bits in packed bit vector to be 0 (#​586)
  • RUST-1985 Update bson toplevel rustdoc (#​589)
  • RUST-2148 Migration guide for bson crate 3.0 (#​591)
  • RUST-2239 Fix performance of bson 3.0 (#​596)
  • RUST-2251 document and tidy up serde helpers (#​597)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant