opentelemetry-js icon indicating copy to clipboard operation
opentelemetry-js copied to clipboard

chore: prepare release API 1.10.0/Core 1.25.0/Experimental 0.52.0

Open pichlermarc opened this issue 9 months ago • 3 comments

API 1.9.0

:rocket: (Enhancement)

  • feat(api): allow adding span links after span creation #4536 @seemk
    • This change is non-breaking for end-users, but breaking for Trace SDK implementations in accordance with the specification as new features need to be implemented.
  • feat: support node 22 #4666 @dyladan

Core 1.25.0

:rocket: (Enhancement)

  • feat(instrumentation): generic config type in instrumentation base #4659 @blumamir
  • feat: support node 22 #4666 @dyladan
  • feat(sdk-trace-node): support xray Propagator via OTEL_PROPAGATORS environment variable #4602 @anuraags

:bug: (Bug Fix)

  • fix(core): align inconsistent behavior of getEnv() and getEnvWithoutDefaults() when a process polyfill is used #4648 @pichlermarc
    • getEnvWithoutDefaults() would use process.env if it was defined when running in a browser, while getEnv() would always use _globalThis. Now both use _globalThis when running in a browser.
  • fix(resources): prevent circular import (resource -> detector -> resource -> ...) #4653 @pichlermarc
    • fixes a circular import warning which would appear in rollup when bundling @opentelemetry/resources

Experimental 0.52.0

:boom: Breaking Change

  • feat(exporter--otlp-)!: move serialization for Node.js exporters to @opentelemetry/otlp-transformer #4542 @pichlermarc
    • Breaking changes:
      • (user-facing) convert() now returns an empty object and will be removed in a follow-up
      • (internal) OTLPExporterNodeBase now has additional constructor parameters that are required
      • (internal) OTLPExporterNodeBase now has an additional ResponseType type parameter
  • feat(exporter--otlp-)!: move serialization for Node.js exporters to @opentelemetry/otlp-transformer #4581 @pichlermarc
    • Breaking changes:
      • (user-facing) convert() has been removed from all exporters
      • (internal) OTLPExporterBrowserBase: RequestType has been replaced by a ResponseType type-argument
      • (internal) OTLPExporterNodeBase: ServiceRequest has been replaced by a ServiceResponse type-argument
      • (internal) the @opentelemetry/otlp-exporter-proto-base package has been removed, and will from now on be deprecated in npm

:rocket: (Enhancement)

  • feat(instrumentation): add util to execute span customization hook in base class #4663 @blumamir
  • feat(instrumentation): generic config type in instrumentation base #4659 @blumamir
  • feat: support node 22 #4666 @dyladan
  • feat(propagator-aws-xray-lambda): add AWS Xray Lambda propagator 4554

1.25.0

:rocket: (Enhancement)

  • feat: support node 22 #4666 @dyladan
  • feat(sdk-trace-node): support xray Propagator via OTEL_PROPAGATORS environment variable #4602 @anuraags

:bug: (Bug Fix)

  • fix(core): align inconsistent behavior of getEnv() and getEnvWithoutDefaults() when a process polyfill is used #4648 @pichlermarc
    • getEnvWithoutDefaults() would use process.env if it was defined when running in a browser, while getEnv() would always use _globalThis. Now both use _globalThis when running in a browser.
  • fix(resources): prevent circular import (resource -> detector -> resource -> ...) #4653 @pichlermarc
    • fixes a circular import warning which would appear in rollup when bundling @opentelemetry/resources
  • fix(exporter-metrics-otlp-grpc): add explicit otlp-exporter-base dependency to exporter-metrics-otlp-grpc #4678 @AkselAllas

pichlermarc avatar May 03 '24 16:05 pichlermarc

I reached out to Datadog about this through @Qard. As the PR currently stands it would break dd-trace which I would like to avoid. I think we should delay this for a short time in order to allow them to respond, but I don't want to delay it forever.

dyladan avatar May 07 '24 12:05 dyladan

I've forwarded it to the relevant person internally so hopefully we'll come up with some solution soon...

Qard avatar May 07 '24 12:05 Qard

Any chance of #4536 enhancement having a published release soon? I realize there's a breaking change with a dd lib but was hoping to have the enhancement in a release sooner than that's resolved?

Appreciate everyone's efforts here.

hamin avatar May 10 '24 17:05 hamin

Any chance of #4536 enhancement having a published release soon? I realize there's a breaking change with a dd lib but was hoping to have the enhancement in a release sooner than that's resolved?

Appreciate everyone's efforts here.

@Qard @dyladan Any chance the dd-trace blockers don't hold back API 1.9.0 enhancements? Is it possible to have a release for API without waiting on dd-trace resolution? Thank you in advance!

hamin avatar May 14 '24 20:05 hamin

It's possible but it's not ideal. If we release in the current state we will definitely break dd-trace and it reflects poorly on the project. We're doing our best to work with them. Sorry it's delaying the release but please be patient and we'll have a release soon.

dyladan avatar May 14 '24 20:05 dyladan

We're going to move forward with this change next week. It looks to me like dd-trace hasn't done anything yet to address the issue, but we have been very clear for months. @pichlermarc please update this PR and we can get it merged when I get back.

dyladan avatar May 15 '24 16:05 dyladan

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 89.81%. Comparing base (ecc88a3) to head (6554b25). Report is 21 commits behind head on main.

:exclamation: Current head 6554b25 differs from pull request most recent head 8da8fd4

Please upload reports for the commit 8da8fd4 to get more accurate results.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4677      +/-   ##
==========================================
- Coverage   91.04%   89.81%   -1.24%     
==========================================
  Files          89      147      +58     
  Lines        1954     3220    +1266     
  Branches      416      699     +283     
==========================================
+ Hits         1779     2892    +1113     
- Misses        175      328     +153     

see 98 files with indirect coverage changes

codecov[bot] avatar May 22 '24 15:05 codecov[bot]

@open-telemetry/javascript-approvers this release PR is now unblocked:

  • dd-trace is updated
  • #4602 has been rolled back (see #4727)

pichlermarc avatar May 23 '24 11:05 pichlermarc

There's an unreleased bug on main (missing dependency), fixed by https://github.com/open-telemetry/opentelemetry-js/pull/4732. Other than that there's nothing blocking this release anymore.

pichlermarc avatar May 27 '24 15:05 pichlermarc

  • feat(propagator-aws-xray-lambda): add AWS Xray Lambda propagator 4554

@pichlermarc Is there a need/reason to avoid publishing this propagator from the core repo? I suppose it is fine. It can be moved and published from contrib repo later.

trentm avatar May 31 '24 18:05 trentm

  • feat(propagator-aws-xray-lambda): add AWS Xray Lambda propagator 4554

@pichlermarc Is there a need/reason to avoid publishing this propagator from the core repo? I suppose it is fine. It can be moved and published from contrib repo later.

It's not spec compliant but I think it's fine for now. We can move it to contrib at any time and be spec compliant again.

pichlermarc avatar Jun 03 '24 11:06 pichlermarc