-
Notifications
You must be signed in to change notification settings - Fork 983
chore: prepare release 2.0.0/0.200.0 #5521
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
chore: prepare release 2.0.0/0.200.0 #5521
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5521 +/- ##
=======================================
Coverage 94.95% 94.95%
=======================================
Files 308 308
Lines 7927 7927
Branches 1604 1604
=======================================
Hits 7527 7527
Misses 400 400 🚀 New features to boost your workflow:
|
|
@pichlermarc I put this in the ESM related thread, but it might be worth considering not including NodeJS 18, it is out of support on 2025-04-30 (only about 6 weeks away). Then you can drop CommonJS entirely in the release (see https://antfu.me/posts/move-on-to-esm-only). Being able to |
|
@JakeGinnivan, thanks for reaching out. We're releasing on Monday and the release candidate is already published. That means that we'll not make any major changes to the 2.0 release anymore. There will be more major releases in the future, though - 2.0 is just the first step towards a more regular major release cadence. |
068f4e5 to
acfed92
Compare
|
rebased onto main - now ready for review. 🙂 |
|
(lint step is failing due to a server error contacting https://slack.cncf.io - I'll re run the workflow once it's back up) |
JamieDanielson
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
7fde940
Note
Scheduled for Mar 17, 2025
2.0.0
Summary
^18.19.0 || >=20.6.0. This means that support for Node.js 14 and 16 has been dropped.0.200.0are compatible with this release💥 Breaking Change
parentSpanContextand removeparentSpanIdfromSpanandReadableSpan#5450 @JacksonWeberSpansparentSpanIdwas replaced byparentSpanContext, to migrate to the new property, please replacespan.parentSpanId->span.parentSpanContext?.spanIdtypefield onMetricDescriptor#5291 @chancancodeInstrumentDescriptortype; useMetricDescriptorinstead #5277 @chancancode@opentelemetry/apipeer dependency to 1.9.0 #5254 @chancancodeSpanAttributeswithAttributes#5009 @david-lunaResourceAttributeswithAttributes#5016 @david-lunaViewandAggregationin favor ofViewOptionsandAggregationOption#4931 @pichlermarcnew Spanconstructor in favor ofTracer.startSpanAPI #5048 @david-lunaBasicTracerProvider.addSpanProcessorAPI in favor of constructor options. #5134 @david-lunaresourceproperty private inBasicTracerProviderand removegetActiveSpanProcessorAPI. #5192 @david-lunaIMetricReaderinterface and use it over abstract class #5311MeterProviderOptionsnow provides the more generalIMetricReadertype overMetricReaderMetricReaderin your public interface, consider accepting the more generalIMetricReaderinstead to avoid unintentional breaking changesBasicTracerProvider, the class offered multiple methods to facilitate the creation of exporters and auto-pairing withSpanProcessors.SpanProcessors to the base class constructor when extending_registeredExportershas been removed_getSpanExporterhas been removed_buildExporterFromEnvhas been removedIdGeneratorandRandomIdGenerator#5309 @pichlermarcInstrumentationLibrary#5308 @pichlermarcInstrumentationScopeinsteadInstrumentationLibrarywithInstrumentationScope#5308 @pichlermarcTracer.instrumentationLibrary->Tracer.instrumentationScopeReadableSpan.instrumentationLibrary->ReadableSpan.instrumentationScopeReadableSpanReadableSpan.instrumentationScopeoverReadableSpan.instrumentationLibrary#5308 @pichlermarcReadableSpan.instrumentationScopeoverReadableSpan.instrumentationLibrary#5308 @pichlermarc5.0.4#5145 @david-lunatypescript@<5.0.4typescriptin minor releases. We will only drop support for versions that are older than 2 years.AlwaysOnSamplerhas moved to@opentelemetry/sdk-trace-baseAlwaysOffSamplerhas moved to@opentelemetry/sdk-trace-baseParentBasedSamplerhas moved to@opentelemetry/sdk-trace-baseTraceIdRatioSamplerhas moved to@opentelemetry/sdk-trace-baseattributesobjectDetectedResourceplain objects instead ofnew Resource()BasicTracerProvider#register().OTEL_PROPAGATORSorwindow.OTEL_PROPAGATORSanymore, please pass the propagator toNodeTracerProvider#register()instead.BasicTracerProvider#register()will now fall back to defaults (tracecontextandbaggage)NodeTracerProvider#register().OTEL_PROPAGATORSanymore, please pass the propagator toNodeTracerProvider#register()instead.NodeTracerProvider#register()will now fall back to the defaults (tracecontextandbaggage)NodeSDKfrom@opentelemetry/sdk-node.WebTracerProvider#register().window.OTEL_PROPAGATORSanymore, please pass the propagator toWebTracerProvider#register()instead.WebTracerProvider#register()will now fall back to defaults (tracecontextandbaggage)EXPORTER_FACTORYis not used anymore and has been removedPROPAGATOR_FACTORYis not used anymore and has been removedForceFlushStatewas intended for internal use and has been removedTracerclass was unintentionally exported and has been removedTracer, please useBasicTracerProvider#getTracer(),NodeTracerProvider#getTracer()orWebTracerProvider#getTracer()Tracer, please use theTracertype from@opentelemetry/api^18.19.0 || >=20.6.0. Support for Node.js 14, 16, and early minor versions of 18 and 20 have been dropped. This applies to all packages except the 'api' and 'semantic-conventions' packages. #5395 @trentm@opentelemetry/resourcein favor of@opentelemetry/opentelemetry-browser-detector#5420VERSIONwas an internal constant that was unintentionally exported. It has been removed without replacement.isWrappedhas been removed in favor ofisWrappedfrom@opentelemetry/instrumentationShimWrappedhas been removed in favor ofShimWrappedfrom@opentelemetry/instrumentationhexToBase64was a utility function that is not used by the SDK anymore. It has been removed without replacement.hexToBinarywas a utility function that now internal to@opentelemetry/otlp-tranformer. It has been removed without replacement.baggageUtils.getKeyPariswas an internal utility function that was unintentionally exported. It has been removed without replacement.baggageUtils.serializeKeyPairswas an internal utility function that was unintentionally exported. It has been removed without replacement.baggageUtils.parseKeyPairsIntoRecord,has been removed in favor ofparseKeyPairsIntoRecordbaggageUtils.parsePairKeyValuewas an internal utility function that was unintentionally exported. It has been removed without replacement.TimeOriginLegacyhas been removed without replacement.isAttributeKeywas an internal utility function that was unintentionally exported. It has been removed without replacement.window.OTEL_*is now not supported anymore, please pass configuration options to constructors instead.window.OTEL_*is now not supported anymore, please pass configuration options to constructors instead.Resourceclass toResourceImpland makes it package-privateIResourceinterface toResourceresourceFromAttributesto create aResourcefrom aDetectedAttributesobjectdefaultResourceto create a default resource #5467 @pichlermarcemptyResourceto create an empty resource #5467 @pichlermarcwindow.OTEL_*is now not supported anymoreenvDetectorin browser environments, please migrate to manually creating a resource.ParentBasedAlwaysOnSampleroverAlwaysOnSamplerwhen bogus data is supplied toOTEL_TRACES_SAMPLERgetEnv(),getEnvWithoutDefaults()#5481 @pichlermarcgetEnv()has been replaced bygetStringFromEnv(),getNumberFromEnv(),getBooleanFromEnv(),getStringListFromEnv()getStringFromEnv("OTEL_FOO") ?? "my-default")getEnvWithoutDefaults()has been replaced bygetStringFromEnv(),getNumberFromEnv(),getBooleanFromEnv(),getStringListFromEnv()DEFAULT_ENVIRONMENThas been removed, please inline any defaults from now onENVIRONMENThas been removed without replacementRAW_ENVIRONMENThas been removed without replacementparseEnvironmenthas been removed without replacementBasicTracerProvider#register()to improve tree-shaking #5503 @pichlermarcBasicTracerProvider#register()has been removedpropagation.setGlobalPropagator()from@opentelemetry/apicontext.setGlobalContextManager()from@opentelemetry/api@opentelemetry/api,@opentelemetry/api-logs,@opentelemetry/api-events, and@opentelemetry/semantic-conventions#5456 @david-lunaDEFAULT_ATTRIBUTE_VALUE_LENTGHT_LIMIThas been removed, please useInfinityinsteadDEFAULT_ATTRIBUTE_VALUE_COUNT_LIMIThas been removed, please use128insteadDEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIThas been removed, please use128insteadDEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIThas been removed, please use128instead🚀 (Enhancement)
WebTracerProviderconstructor now does not throw anymore whencontextManagerorpropagatorare passed as extra options to the constructordiagLogLevelFromStringutility #5475 @pichlermarc🐛 (Bug Fix)
url.parsefromnode:url#5390 @chancancodePeriodicExportingMetricReaderwhen there are no metrics to export. #5288 @JacksonWeber🏠 (Internal)
InstrumentDescriptortype now extendsMetricDescriptor; moved publicInstrumentTypetype enum into./src/export/MetricData.ts#5277GaugeandMetricAdviceworkaround types in favor of the upstream@opentelemetry/apitypes #5254 @chancancodeBasicTracerProvider._registeredSpanProcessorsprivate property. #5134 @david-lunaBasicTracerProvider.activeSpanProcessorprivate property. #5211 @david-lunamodulecompiler option tonode16. #5347 @david-lunasemverpackage with internal semantic versioning check implementation to get rid ofsemverpackage initialization overhead especially in the AWS Lambda environment during coldstart #5305 @serkan-ozal@opentelemetry/semantic-conventionsdep to allow better de-duplication in installs #5439 @trentm0.200.0
Summary
^18.19.0 || >=20.6.0. This means that support for Node.js 14 and 16 has been dropped.2.0.0are compatible with this release💥 Breaking Change
typefield to enforce naming conventions #5291 @chancancode_totalsuffix.typeto OpenTelemetry metrics #5291 @chancancodeapplyCustomAttributeshook #5281 @chancancodefetch()response in order to preserve the ability for theapplyCustomAttributeshook to consume the response body. This is fundamentally unsound, as it forces the browser to buffer and retain the response body until it is fully received and read, which crates unnecessary memory pressure on large or long-running response streams. In extreme cases, this is effectively a memory leak and can cause the browser tab to crash. If your use case forapplyCustomAttributesrequires access to the response body, please chime in on #5293.^18.19.0 || >=20.6.0. Support for Node.js 14, 16, and early minor versions of 18 and 20 have been dropped. This applies to all packages except the 'api' and 'semantic-conventions' packages. #5395 @trentmIMetricReaderoverMetricReader#5311NodeSDKConfigurationnow provides the more generalIMetricReadertype overMetricReaderwindow.OTEL_*is now not supported anymore, please pass configuration options to constructors instead.window.OTEL_*is now not supported anymore, please pass configuration options to constructors instead.🚀 (Enhancement)
requestHookoption #5380withResourceConstantLabelsoption toExporterConfig. It can be used to define a regex pattern to choose which resource attributes will be used as static labels on the metrics. The default is to not set any static labels.🐛 (Bug Fix)
🏠 (Internal)
@opentelemetry/semantic-conventionsdep to allow better de-duplication in installs #5439 @trentm