-
Notifications
You must be signed in to change notification settings - Fork 187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
An upgrade of API from 1.0.3 to 1.1.0 contains breaking changes #1419
Comments
Hi @filakhtov |
There have been similar issues in the past in other languages API & SDK-s (eg. open-telemetry/opentelemetry-js#4142), and it ended up being defined in the spec as (PR):
So this is actually as-intended by spec and custom implementations should require exact version (maybe |
@t2t2 something doesn't line up with your story. Versioning for this project indicates use of semver2 opentelemetry-php/docs/versioning.md Line 2 in 39cc549
And also https://opentelemetry.io/docs/specs/otel/versioning-and-stability/#version-numbers:
Adding a method to the interface is considered a breaking change in many compiled and interpreted languages. Even though adding a method in the spec is considered to be an additive change and can be released as a minor version, this doesn't mean that every language implementation will also have a minor version release. If I misunderstand the situation, and there is an expectation that spec version is locked down to the implementation version, then we should stop saying that OpenTelemetry follows the semantic versioning, because that's misleading. |
👋🏻 hey folks,
Just wanted to make sure you are aware of this, but when trying to upgrade the API package from 1.0.3 to 1.1.0 I ran into problems. We are using a custom tracer implementation that implements the usual
TracerInterface
but enriches things with necessary context and is a composition on top of the actual tracer provided by the SDK. We have a composer version constraints set to^1.0
, which considers everything up to2.0
as compatible. However, the 1.1.0 just added a new methodisEnabled
to the interface, breaking our custom tracer implementation with:Given this project is following the semantic versioning, this is breaking the expectations.
Cheers,
Garry
The text was updated successfully, but these errors were encountered: