Skip to content

feat(op): Add span op deprecation support - #621

Open
Lms24 wants to merge 2 commits into
mainfrom
lms/feat-op-deprecation
Open

feat(op): Add span op deprecation support#621
Lms24 wants to merge 2 commits into
mainfrom
lms/feat-op-deprecation

Conversation

@Lms24

@Lms24 Lms24 commented Sep 3, 2026

Copy link
Copy Markdown
Member

Description

Adds a way to deprecate span ops, like we already have for attributes. An op can now have a deprecation object with a replacement and a reason. No op is deprecated yet, this only adds the mechanism.

  • Optional deprecation field in op schema
  • Emits @deprecated JSDoc in JavaScript constants
  • Emits #[deprecated] attribute on Rust constants
  • Shows deprecation and replacement on docs site
  • Adds op tests, there were none before

Simpler than attribute deprecation on purpose: no _status, because this only concerns SDKs and not ingestion.

Fixes #619

PR Checklist

  • I have run yarn test and verified that the tests pass.
  • I have run yarn generate to generate and format code and docs.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown

Semver Impact of This PR

🟡 Minor (new features)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


New Features ✨

Attributes

  • Add sveltekit.* attributes emitted by SvelteKit's native spans by Lms24 in #611
  • Add browser.navigation.type, move navigation.* to router.navigation.* by logaretm in #600
  • Add langchain.chain.name (deprecated) in favor of gen_ai.pipeline.name by RulaKhaled in #599
  • Add browser.paint.type by Lms24 in #606

Names

  • Add FAAS function span name and description rules by Lms24 in #617
  • Add function span name and description rules by Lms24 in #618
  • Add browser.* span name and description rules by Lms24 in #607
  • Add cache span name rules by Lms24 in #605

Other

  • (descriptions) Add graphql span description rules by Lms24 in #616
  • (op) Add span op deprecation support by Lms24 in #621

Bug Fixes 🐛

  • (descriptions) Add graphql-enhanced http.client span description template by Lms24 in #613

Internal Changes 🔧

Deps

  • Bump browserslist from 4.28.2 to 4.28.8 by dependabot in #614
  • Bump fast-uri from 3.1.5 to 3.1.7 by dependabot in #612

Other

  • (descriptions) Fix http.client span description example by Lms24 in #603
  • (names) Add OTel divergence note for graphql span names by Lms24 in #615

🤖 This preview updates automatically when you update the PR.

@Lms24
Lms24 force-pushed the lms/feat-op-deprecation branch from 509fbcb to d145092 Compare September 3, 2026 13:00
@Lms24 Lms24 self-assigned this Sep 3, 2026
@Lms24
Lms24 marked this pull request as ready for review September 3, 2026 14:11
@Lms24
Lms24 requested review from a team, cleptric, mjq and nsdeschenes as code owners September 3, 2026 14:11
Lms24 and others added 2 commits September 3, 2026 16:51
Span ops are shipped to SDKs as generated constants, so retiring one needs a
deprecation path instead of a deletion. Ops can now carry an optional
`deprecation` object with a `replacement` and a `reason`. Deprecated ops keep
their constant and get a JSDoc `@deprecated` tag in JavaScript and a
`#[deprecated]` attribute in Rust, plus a badge and a replacement notice on the
docs site.

Kept intentionally light: unlike attribute deprecations there is no `_status`,
since this only concerns SDKs and not the ingestion pipeline. No op is
deprecated yet — this only adds the mechanism.

Fixes GH-619
Co-Authored-By: Claude <noreply@anthropic.com>
Follow-up on the ops page rendering: the notice took up three times the height
of a regular row and its reason was hard to read in both themes.

- Link the replacement to the row that documents it.
- Drop the padded box for a single compact line.
- Read the reason in the regular secondary text color, at full opacity.

Refs GH-619
Co-Authored-By: Claude <noreply@anthropic.com>
@Lms24
Lms24 force-pushed the lms/feat-op-deprecation branch from d145092 to 975e2c5 Compare September 3, 2026 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add span op deprecation functionality

1 participant