This document describes the versioning policy for this repository. This policy is designed so the following goals can be achieved.
Once the API for a given signal (spans, logs, metrics, baggage) has been officially released, that API module will function with any SDK that has the same major version, and equal or greater minor or patch version.
For example, libraries that are instrumented with opentelemetry 1.0.1 will
function in applications using opentelemetry 1.11.33 or opentelemetry
1.3.4.
Public portions of the SDK (constructors, configuration, end-user interfaces) must remain backwards compatible. Internal types are allowed to break.
New telemetry signals will be introduced behind experimental cargo features.
To better understand the implementation of the above policy, here is an example of how the metrics and logging signals could stabilize.
opentelemetry 1.0.0
opentelemetry-semantic-conventions 1.0.0
opentelemetry-contrib 1.0.0
opentelemetry 1.5.0
opentelemetry-semantic-conventions 1.2.0
opentelemetry-contrib 1.6.0
opentelemetry 1.10.0
opentelemetry-semantic-conventions 1.4.0
opentelemetry-contrib 1.12.0