Skip to content

Commit 2ff3f1f

Browse files
doc: Update index.md with versioning policy (#3546)
* Update index.md with versioning policy * moving position of version policy section and adjusting title sizes * addressing docs feedback --------- Co-authored-by: stephen-cassil0 <[email protected]>
1 parent 58d5c5f commit 2ff3f1f

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed

docs/index.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,77 @@ In addition to [generic `provider` arguments](https://www.terraform.io/docs/conf
172172

173173
For more information on configuring and managing programmatic API Keys see the [MongoDB Atlas Documentation](https://docs.atlas.mongodb.com/tutorial/manage-programmatic-access/index.html).
174174

175+
## MongoDB Atlas Provider Versioning Policy
176+
177+
In order to promote stability, predictability, and transparency, the MongoDB Atlas Terraform Provider will implement **semantic versioning** with a **scheduled release cadence**. Our goal is to deliver regular improvements to the provider without overburdening users with frequent breaking changes.
178+
179+
---
180+
181+
### Definition of Breaking Changes
182+
183+
Our definition of breaking changes aligns with the impact updates have on the customer:
184+
185+
Breaking changes are defined as any change that requires user intervention to address.
186+
This may include:
187+
188+
- Modifying existing schema (e.g., removing or renaming fields, renaming resources)
189+
- Changes to business logic (e.g., implicit default values or server-side behavior)
190+
- Provider-level changes (e.g., changing retry behavior)
191+
192+
Final confirmation of a breaking change — possibly leading to an exemption — is subject to:
193+
194+
- MongoDB’s understanding of the adoption level of the feature
195+
- Timing of the next planned major release
196+
- The change's relation to a bug fix
197+
198+
---
199+
200+
### Versioning Strategy
201+
202+
We follow [semantic versioning](https://semver.org/) for all updates:
203+
204+
- **Major (X.0.0):** Introduces breaking changes (as defined by MongoDB)
205+
- **Minor (X.Y.0):** Adds non-breaking changes and announces deprecations
206+
- **Patch (X.Y.Z):** Includes bug fixes and documentation updates
207+
208+
We do not utilize pre-release versioning at this time.
209+
210+
---
211+
212+
### Release Cadence
213+
214+
To minimize unexpected changes, we follow a scheduled cadence:
215+
216+
- **Minor and patch** versions follow a **biweekly** release pattern
217+
- **Major** versions are released **once per year**, with a maximum of **two per calendar year**
218+
- The provider team may adjust the schedule based on need
219+
220+
**Off-cycle releases** may occur for critical security flaws or regressions.
221+
222+
---
223+
224+
### Deprecation Policy
225+
226+
We use a structured deprecation window to notify customers in advance:
227+
228+
- Breaking changes are **deprecated in a minor version** with:
229+
- Warnings in migration guides, changelogs, and resource usage
230+
- Deprecated functionality is **removed in the next 1–2 major versions**, unless otherwise stated
231+
232+
---
233+
234+
### Customer Communication
235+
236+
We are committed to clear and proactive communication:
237+
238+
- **Each release** includes a [changelog](https://github.com/mongodb/terraform-provider-mongodbatlas/releases) clearly labeling:
239+
- `breaking`, `deprecated`, `bug-fix`, `feature`, and `enhancement` changes
240+
- **Major versions** include migration guides
241+
- **Minor and patch versions** generally do not include migration guides, but may if warranted
242+
- **GitHub tags** with `vX.Y.Z` format are provided for all releases
243+
244+
---
245+
175246
## [HashiCorp Terraform Version](https://www.terraform.io/downloads.html) Compatibility Matrix
176247

177248
<!-- DO NOT remove below placeholder comments as this table is auto-generated -->

0 commit comments

Comments
 (0)