Skip to content
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

blog[js]: Add post announcing JS SDK 2.0 #6574

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 85 additions & 0 deletions content/en/blog/2025/otel-js-sdk-2-0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
---
title: Announcing the OpenTelemetry JavaScript SDK 2.0
linkTitle: OTel JS SDK 2.0
date: 2025-02-21
author: >
[Jamie Danielson](https://github.com/JamieDanielson) (Honeycomb)
sig: OpenTelemetry JS
cSpell:ignore: Danielson
---

Exciting news!
[OpenTelemetry JavaScript](https://github.com/open-telemetry/opentelemetry-js)
has released
[SDK 2.0](https://github.com/open-telemetry/opentelemetry-js/releases)!

There is a
[migration guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md)
in the repository detailing breaking changes and steps for users to take to
upgrade to the latest versions.

## What is JS SDK 2.x?

"JS SDK 2.x" encompasses new releases of the `@opentelemetry/*` JavaScript
packages published from the
[`opentelemetry-js` repository](https://github.com/open-telemetry/opentelemetry-js),
except the API and semantic-conventions packages. The package versions for this
new major will be `>=2.0.0` for the stable and `>=0.200.0` for the unstable
packages. Details on the full list of packages can be found in the
[migration guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#what-is-js-sdk-2x).

## What has changed?

### Summary

- The **minimum supported Node.js has been raised to `^18.19.0 || >=20.6.0`**.
This means that support for Node.js 14 and 16 has been dropped.
- The **minimum supported TypeScript version has been raised to 5.0.4**.
- The **compilation target for transpiled TypeScript has been raised to ES2022**
(from ES2017).
- The **public interface has changed**
- for notes on migrating to 2.x / 0.200.x see
[the upgrade guide](https://github.com/open-telemetry/opentelemetry-js/tree/main/doc/upgrade-to-2.x.md)

### Details

- [Node.js supported versions](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-nodejs-supported-versions)
- [TypeScript supported versions](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-typescript-supported-versions)
- [ES2022 compilation target](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-es2022-compilation-target)
- [Drop `window.OTEL_*` support in browsers](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-drop-windowotel_-support-in-browsers)
- [`@opentelemetry/resources` API changes](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-opentelemetryresources-api-changes)
- [`@opentelemetry/core` API changes](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-opentelemetrycore-api-changes)
- [Tracing SDK API changes](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-tracing-sdk-api-changes)
- [`@opentelemetry/sdk-metrics` API changes](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-opentelemetrysdk-metrics-api-changes)
- [`@opentelemetry/resources` changes for _implementors_ of Resource Detectors](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-opentelemetryresources-changes-for-implementors-of-resource-detectors)
- [Other changes](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/upgrade-to-2.x.md#-other-changes)

## Why was this done?

Some of the details for why this 2.0 was done can be found
[in this issue](https://github.com/open-telemetry/opentelemetry-js/issues/4083).
We knew we would gain the greatest benefit by allowing breaking changes to
improve things related to:

- Optimization: removing classes and namespaces to allow better minification and
tree-shaking.
- Better Tooling and Support: dropping old runtimes and tool versions to take
advantage of enhanced ESM support and simplify documentation.
- Velocity: reducing code complexity and removing deprecated fields for faster
feature and maintenance work.

This also begins our goal of releasing a new major release every year.

## How can I get involved?

- Try out the
[v2.0.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/v2.0.0)
and
[v0.200.0](https://github.com/open-telemetry/opentelemetry-js/releases/tag/experimental%2Fv0.200.0)
releases and provide feedback
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do you want to add something on how to provide feedback? I see people getting confused on how to do so. Maybe mention creation of issues, or reaching our slack/SIG. I know you added slack and sig right below, but wanted to make more clear those are the communications channels for feedback too

Copy link
Contributor

@trentm trentm Mar 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The upgrade guide has this blurb, FWIW:

If you have any questions about the 2.x changes, please ask! You can reach the OTel JS community on the [#otel-js](https://cloud-native.slack.com/archives/C01NL1GRPQR) channel of the [CNCF Slack](https://slack.cncf.io/), [open a Discussion issue](https://github.com/open-telemetry/opentelemetry-js/issues/new?template=discussion.md) on the repository, or join the weekly [OTel JS SIG zoom call](https://docs.google.com/document/d/1tCyoQK49WVcE-x8oryZOTTToFm7sIeUhxFPm9g-qL1k/edit).

If you have any questions about the 2.x changes, please ask! You can reach the OTel JS community on the #otel-js channel of the CNCF Slack, open a Discussion issue on the repository, or join the weekly OTel JS SIG zoom call.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh... I guess the subsequent few bullets include links on how to get involved.

- Review our
[contributing guide](https://github.com/open-telemetry/opentelemetry-js/blob/main/CONTRIBUTING.md)
for details on contributing
- Attend our
[SIG meetings](https://groups.google.com/a/opentelemetry.io/g/calendar-js)
- Collaborate on [Slack](https://cloud-native.slack.com/archives/C01NL1GRPQR)
Loading