diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index dab0d621cf..52de9ef87c 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -4,7 +4,7 @@ Please complete the following before merging: - [ ] Update changelog. - [ ] Test changes in at least one language driver. -- [ ] Test these changes against all server versions and topologies (including standalone, replica set, sharded - clusters, and serverless). +- [ ] Test these changes against all server versions and topologies (including standalone, replica set, and sharded + clusters). diff --git a/source/serverless-testing/README.md b/source/serverless-testing/README.md index 4f8748e21b..66c7b73496 100644 --- a/source/serverless-testing/README.md +++ b/source/serverless-testing/README.md @@ -1,10 +1,15 @@ # Atlas Serverless Tests -- Status: Accepted +- Status: Obsolete - Minimum Server Version: N/A ______________________________________________________________________ +## Obsolescence Notice + +This document is obsolete and there is no longer a requirement for drivers to test against Atlas Serverless. The +specification is preserved for historical purposes only. + ## Introduction This file describes a subset of existing tests that drivers MUST use to assert compatibility with Atlas Serverless. diff --git a/source/unified-test-format/unified-test-format.md b/source/unified-test-format/unified-test-format.md index f662ed2ba6..9c8625895f 100644 --- a/source/unified-test-format/unified-test-format.md +++ b/source/unified-test-format/unified-test-format.md @@ -337,9 +337,10 @@ The structure of this object is as follows: Note: load balancers were introduced in MongoDB 5.0. Therefore, any sharded cluster behind a load balancer implicitly uses replica sets for its shards. -- `serverless`: Optional string. Whether or not the test should be run on Atlas Serverless instances. Valid values are - "require", "forbid", and "allow". If "require", the test MUST only be run on Atlas Serverless instances. If - "forbid", the test MUST NOT be run on Atlas Serverless instances. If omitted or "allow", this option has no effect. +- `serverless` (deprecated): Optional string. Whether or not the test should be run on Atlas Serverless instances. Valid + values are "require", "forbid", and "allow". If "require", the test MUST only be run on Atlas Serverless instances. + If "forbid", the test MUST NOT be run on Atlas Serverless instances. If omitted or "allow", this option has no + effect. The test runner MUST be informed whether or not Atlas Serverless is being used in order to determine if this requirement is met (e.g. through an environment variable or configuration option). @@ -348,6 +349,9 @@ The structure of this object is as follows: is in use by issuing commands such as `buildInfo` or `hello`. Furthermore, connections to Atlas Serverless use a load balancer, so the topology will appear as "load-balanced". + Note: serverless testing is no longer required, and drivers that no longer support serverless testing MAY omit + implementation of this requirement and instantly skip all tests that use `serverless: require`. + - `serverParameters`: Optional object of server parameters to check against. To check server parameters, drivers send a `{ getParameter: 1, : 1 }` command to the server using an internal MongoClient. Drivers MAY also choose to send a `{ getParameter: '*' }` command and fetch all parameters at once. The result SHOULD be cached to avoid @@ -3579,6 +3583,8 @@ other specs *and* collating spec changes developed in parallel or during the sam ## Changelog +- 2025-06-04: Deprecate the `serverless` runOnRequirement + - 2025-04-25: Drop `_enxcol` collections. - 2025-04-07: Add `topologyOpeningEvent` and `topologyClosedEvent` to the unified test format and schema 1.20+ as they