Skip to content

Commit

Permalink
DRIVERS-2776 document "range" as stable (#1617)
Browse files Browse the repository at this point in the history
  • Loading branch information
kevinAlbs authored Jul 31, 2024
1 parent 458f80c commit 89edd81
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 13 deletions.
15 changes: 3 additions & 12 deletions source/client-side-encryption/client-side-encryption.md
Original file line number Diff line number Diff line change
Expand Up @@ -978,7 +978,6 @@ class ClientEncryption {
// {$and: [{$gt: [<fieldpath>, <value1>]}, {$lt: [<fieldpath>, <value2>]}]
// $gt may also be $gte. $lt may also be $lte.
// Only supported when queryType is "range" and algorithm is "Range".
// NOTE: The "range" queryType and "Range" algorithm are currently unstable API and subject to backwards breaking changes.
encryptExpression(expr: Document, opts: EncryptOpts): Document;

// Decrypts an encrypted value (BSON binary of subtype 6).
Expand Down Expand Up @@ -1163,7 +1162,6 @@ class EncryptOpts {
rangeOpts: Optional<RangeOpts>
}

// NOTE: RangeOpts is currently unstable API and subject to backwards breaking changes.
// RangeOpts specifies index options for a Queryable Encryption field supporting "range" queries.
// min, max, trimFactor, sparsity, and precision must match the values set in the encryptedFields of the destination collection.
// For double and decimal128, min/max/precision must all be set, or all be unset.
Expand Down Expand Up @@ -1200,7 +1198,7 @@ One of the strings:
- "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
- "Indexed"
- "Unindexed"
- "Range" (unstable)
- "Range"

The result of explicit encryption with the "Indexed" or "Range" algorithm must be processed by the server to insert or
query. Drivers MUST document the following behavior:
Expand All @@ -1209,9 +1207,6 @@ query. Drivers MUST document the following behavior:
> `AutoEncryptionOpts`. `AutoEncryptionOpts.bypassQueryAnalysis` may be true. `AutoEncryptionOpts.bypassAutoEncryption`
> must be false.

> [!NOTE]
> The "Range" algorithm is currently unstable API and subject to backwards breaking changes.

#### contentionFactor

contentionFactor may be used to tune performance. Only applies when algorithm is "Indexed" or "Range". libmongocrypt
Expand All @@ -1227,17 +1222,11 @@ One of the strings:
queryType only applies when algorithm is "Indexed" or "Range". libmongocrypt returns an error if queryType is set for a
non-applicable queryType.

> [!NOTE]
> The "range" queryType is currently unstable API and subject to backwards breaking changes.

#### rangeOpts

rangeOpts only applies when algorithm is "range". libmongocrypt returns an error if rangeOpts is set for a
non-applicable algorithm.

> [!NOTE]
> rangeOpts is currently unstable API and subject to backwards breaking changes.

## User facing API: When Auto Encryption Fails

Auto encryption requires parsing the MongoDB query language client side (with the [mongocryptd](#mongocryptd) process or
Expand Down Expand Up @@ -2383,6 +2372,8 @@ explicit session parameter as described in the [Drivers Sessions Specification](

## Changelog

- 2024-07-29: Document range as stable.

- 2024-07-22: Make `trimFactor` and `sparsity` optional.

- 2024-06-13: Document range as unstable.
Expand Down
2 changes: 1 addition & 1 deletion source/client-side-encryption/tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2820,7 +2820,7 @@ MONGOCRYPT-705.
> [!NOTE]
> MongoDB Server 8.0 introduced a backwards breaking change to the Queryable Encryption (QE) range protocol: QE Range V2
> libmongocrypt 1.10.0 is required to use the QE Range V2.
> libmongocrypt 1.11.0 is required to use the QE Range V2.
> [!NOTE]
> MongoDB Server 7.0 introduced a backwards breaking change to the Queryable Encryption (QE) protocol: QEv2.
Expand Down

0 comments on commit 89edd81

Please sign in to comment.