-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Unknown
-
None
-
Affects Version/s: None
-
Component/s: None
Use Case
As a driver engineer and user of the driver,
I want to have an up-to-date version support specification,
So that I stay ahead of any deprecations and can make use of improvements
User Experience
- n/a
Dependencies
- Final versions for the packages we own (kerberos, mongodb-client-encryption, zstd) cannot be set until their majors are cut. Those entries are finalized in the Release V8 ticket.
Risks/Unknowns
- The driver supports a peer dependency matrix spanning two major versions, so this work touches both the driver and zstd.
- Range style for the packages we own is an open decision. Narrow ranges (for example, >=8.0.0 <8.1.0) remove the need for forward compat testing and can be widened later without a breaking change, but they can cause npm peer conflicts when another library in the tree pulls in a later minor. Caret ranges avoid that at the cost of a wider test matrix. Decide before implementation.
Acceptance Criteria
Implementation Requirements
- Update the following third party peer dependencies to the versions current at time of the V8 release. Present values: @aws-sdk/credential-providers ^3.806.0, gcp-metadata ^7.0.1, snappy ^7.3.2, socks ^2.8.6
- @aws-sdk/credential-providers is constrained by availability in the AWS Lambda Node runtimes, confirm the target version is present there before setting it
- Set the peer dependency range for kerberos once kerberos 8 is released
- Set the peer dependency range for mongodb-client-encryption once mongodb-client-encryption 8 is released
- zstd: remove support for the outgoing major from the driver's package.json and remove the corresponding CI tasks
- Confirm the dependabot config still excludes peer dependencies from automatic updates
Testing Requirements
- all tests pass
Documentation Requirements
- Ensure there is a release note documenting the change
Follow Up Requirements
- Compat table updates are handled separately
- Finalization of peer dependency versions with pending major releases happens in the Release V8 ticket