Opentelemetry-js: Use API 0.19.0

Created on 19 May 2021  路  17Comments  路  Source: open-telemetry/opentelemetry-js

API 1.0.0-rc.1 has been released and includes several breaking changes.

We should adapt core to use api 1.0.0-rc.1

Maybe someone started already with this. Please leave a message to avoid double work.

Update: it's API 0.19.0 to target

dependencies enhancement

Most helpful comment

I'm also preparing a PR for contrib to pin API.

All 17 comments

Just encountered this issue in my setup.
dependency on "@opentelemetry/api": "^1.0.0-rc.0" no longer works as it now fetches 1.0.0-rc.1

There was a discussion about this, see https://github.com/open-telemetry/opentelemetry-js-api/issues/15

I guess that time no one expected breaking changes like this to happen in the rc phase.

Does this mean the new API release broke a lot user setups?

I start on a PR now.

Our SDK is currently broken on fresh installations due to this issue.
Any suggestion on how to fix this until new otel SDK packages are published?

Maybe pin the API version in the package.json of your SDK?

Maybe pin the API version in the package.json of your SDK?

that works well for otel-sdk packages as they have peer dependency on api, but we also use instrumentations which have caret dependency on "@opentelemetry/api": "^1.0.0-rc.0", and that install new rc version with no option to lock API version to rc.0.

I think at least with npm it should work as pinning 1.0.0-rc.0 at one place is compatible with ^1.0.0-rc.0 at other places and as a result it should de-duplicate it. But maybe other package managers have a different opinion in this. could be also that a leftover package-lock.json has impact here.

Thanks @Flarna
Tested it with both npm and yarn and couldn't get it to pin the api version used by instrumentation packages. Perhaps it should be a peer dependency in auto-instrumentations packages as well?

I created a PR to pin to 1.0.0-rc.0.
Update to rc.1 is not that simple as it requires at least https://github.com/open-telemetry/opentelemetry-js/pull/2202

I created a PR to pin to 1.0.0-rc.0.

Great, thank you.
To my understanding, the issue will still exist for installations that depend on contrib repo (instrumentations). Should we pin or limit the semver range there as well?

I'm also preparing a PR for contrib to pin API.

I'm also preparing a PR for contrib to pin API.

Do you plan to change contrib to use peer dependency like core packages? or just pin the api regular dependency to 1.0.0-rc.0?

We are releasing the old rc.0 as rc.2 to fix users who have depended on carat ranges. We will deprecate all 1.0.0-rc.x versions on npm. New release candidates will be released as 0.x.y versions so that they can follow semver.

@blumamir I am deeply sorry that I broke your users. Please let me know if there is anything I can do to help mitigate the damage. See above for the remediation steps we have taken so far.

As far as I know @obecny is already working on the updated core version for the changes. This issue should be changed to reference 0.19.0 as we will be using 0.x.y moving forward.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lizthegrey picture lizthegrey  路  6Comments

obecny picture obecny  路  6Comments

amarflybot18 picture amarflybot18  路  3Comments

rbruggem picture rbruggem  路  5Comments

legendecas picture legendecas  路  3Comments