Skip to content

ref(core): Mark NoOp stubs as @ApiStatus.Internal - #6016

Open
sentry-junior[bot] wants to merge 1 commit into
mainfrom
ref/mark-noop-stubs-internal
Open

ref(core): Mark NoOp stubs as @ApiStatus.Internal#6016
sentry-junior[bot] wants to merge 1 commit into
mainfrom
ref/mark-noop-stubs-internal

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

📜 Description

Mark remaining public NoOp/stub implementations with class-level @ApiStatus.Internal.

💡 Motivation and Context

Marking them internal now makes the public contract honest and sets up a later major to relocate them under io.sentry.internal.* without implying they were supported surface.

💚 How did you test it?

No api changes with apidump

📝 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

#skip-changelog

Requested by no.

--

View Junior Session [Sentry]

These no-op implementations are SDK plumbing, not public API. Marking
them internal now documents the contract so they can be relocated in a
future major without implying customer support.

Co-Authored-By: Nelson Osacky <nelson.osacky@sentry.io>
@sentry

sentry Bot commented Aug 27, 2026

Copy link
Copy Markdown

📲 Install Builds

Android

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

⚙️ sentry-android Build Distribution Settings

@runningcode
runningcode marked this pull request as ready for review August 27, 2026 08:57
@runningcode runningcode added the sanity-check PR needs a lightweight review for obvious issues label Aug 28, 2026

@0xadam-brown 0xadam-brown left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for this @runningcode 👍

I'm definitely okay with our making any implementations internal whose interface is also internal (~ half of those here, as my clanker tells me).

What's the thinking around making implementations internal whose interface is – and after this PR will remain – public (eg, making NoOpScope internal but leaving IScope public)? Do we plan to make those interfaces internal in a follow-on? Otherwise, I'm not sure I see how the win on our end would beat out the inconvenience to others (but I may be overlooking something).

@runningcode

Copy link
Copy Markdown
Contributor

I did it this way because I thought this would be the least controversial change so that way we can start moving classes out of the top level io.sentry package and in to internal packages in v9. I'm happy to also mark some of the interfaces as internal as well that aren't to be publicly used but these NoOps are certainly not to be used by customers.

I think I am not following your point, why does it matter that the interface needs to be internal as well for NoOp stubs to be marked as internal ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

sanity-check PR needs a lightweight review for obvious issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants