Skip to content

ref(profiling): Promote continuous profiler APIs - #6426

Open
adinauer wants to merge 2 commits into
9.x.xfrom
ref/promote-profiler-apis-v9
Open

adinauer wants to merge 2 commits into
9.x.xfrom
ref/promote-profiler-apis-v9

Conversation

@adinauer

@adinauer adinauer commented Oct 30, 2026 •

Copy link
Copy Markdown
Member

📜 Description

Remove @ApiStatus.Experimental from the continuous profiling lifecycle APIs:

  • Sentry.startProfiler()
  • Sentry.stopProfiler()

Internal profiler interfaces and platform implementations remain unchanged. This changes API status only; profiling behavior remains unchanged.

💡 Motivation and Context

The static start/stop lifecycle is documented for both Java and Android and is shared across the JVM async-profiler and Android profiling implementations. Platform-specific collection and upload improvements can continue behind this stable process-global API.

JVM profiling remains unavailable on Windows, and Android framework profiling requests may be rejected asynchronously. Follow-up work remains tracked in #4778 and #5906 without requiring a public API redesign.

Refs #6408

💚 How did you test it?

Ran:

./gradlew spotlessApply apiDump
./gradlew :sentry:test --tests io.sentry.SentryTest --tests io.sentry.ScopesTest

Both commands completed successfully, and API generation produced no API dump changes.

📝 Checklist

  • I added GH Issue ID & Linear ID
  • I added tests to verify the changes.
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled.
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • Review from the native team if needed.
  • No breaking change or entry added to the changelog.
  • No breaking change for hybrid SDKs or communicated to hybrid SDKs.
  • Public API changes reviewed by another Mobile SDK team member or implemented according to the develop docs spec.

🔮 Next steps

Continue improving platform support, diagnostics, and profiler-ID handling behind the stable lifecycle API.

adinauer and others added 2 commits October 30, 2026 10:26
Remove the experimental annotations from Sentry.startProfiler and Sentry.stopProfiler. The process-global lifecycle API is stable across the JVM and Android profiler implementations, while platform-specific improvements can continue internally.

Refs #6408
Refs #4778
Refs #5906
Co-Authored-By: Claude <noreply@anthropic.com>
@sentry

sentry Bot commented Oct 30, 2026

Copy link
Copy Markdown

📲 Install Builds

Android

🔗 App Name App ID Version Configuration
SDK Size io.sentry.tests.size 8.62.0 (1) release

⚙️ sentry-android Build Distribution Settings

@adinauer
adinauer marked this pull request as ready for review October 30, 2026 09:34

This branch has not been deployed

No deployments
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.

1 participant