From fef4f4c5623155922c14536490a70fc574487b33 Mon Sep 17 00:00:00 2001 From: Tyler Yahn Date: Tue, 11 Jun 2024 10:47:04 -0700 Subject: [PATCH] Explain stability guarantees for experimental packages (#177) * Explain stability guarantees for experimental pkgs * Remove left-over --- README.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5c1ff43..b5fa1e9 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,20 @@ Generated Go code for the OpenTelemetry protobuf data model. ## Versioning Policy -The autogenerated Go code follows the stability guarantees as defined in +The auto-generated Go code follows the stability guarantees as defined in [maturity level](https://github.com/open-telemetry/opentelemetry-proto?tab=readme-ov-file#maturity-level). -Packages suffixed as `experimental` might not be kept indefinitely. + +Versioning of modules in this project will be idiomatic of a Go project using [Go modules](https://github.com/golang/go/wiki/Modules). +They will use [semantic import versioning](https://github.com/golang/go/wiki/Modules#semantic-import-versioning). +Meaning modules will comply with [semver 2.0](https://semver.org/spec/v2.0.0.html) with the following exception: + +- Packages with an `experimental` suffix do not comply with [semver 2.0](https://semver.org/spec/v2.0.0.html). + - Backwards incompatible changes may be introduced to these packages between minor versions. + - These packages are intended to be temporary. + They will be deprecated and removed when the protobuf definition stabilizes or is removed. + If the protobuf definition stabilizes, the package will be replaced with a stable "non-experimental" package. + If the protobuf definition is removed, the package will be removed without a replacement. ## Getting Started