Skip to content

Deprecate the call participants info menu that no SDK screen opens - #1837

Open
andremion wants to merge 1 commit into
developfrom
andrerego/and-1527-deprecate-the-call-participants-info-menu-and-invite-flow
Open

andremion wants to merge 1 commit into
developfrom
andrerego/and-1527-deprecate-the-call-participants-info-menu-and-invite-flow

Conversation

@andremion

@andremion andremion commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Goal

Refs AND-1527

CallParticipantsInfoMenu lost its only call site in June 2023, when the participant invitation flow was removed from CallContainer and CallViewModel. Since then nothing in the SDK or the demo app has opened it, and its only reference is a debug preview. The demo app shows its own ParticipantsDialog instead.

The v2 branch removes the menu and the types around it in #1838. This PR gives 1.x integrators one release of notice first.

Implementation

  • @Deprecated with WARNING level on the three public declarations that go away in v2: CallParticipantsInfoMenu, the CallParticipantInfoMode interface, and ParticipantInfoAction with its ChangeMuteState and InviteUsers cases. Each message says the declaration is removed in v2; the menu message points at call.state.participants as the building block.
  • Deprecation suppressions inside the same three files, where the declarations reference each other.
  • Only the files that the v2 removal deletes are touched, so the later develop to develop-v2 merge resolves each of them by keeping the deletion.
  • The API dump does not change. Core's InviteUsersToCall action is left alone.

Testing

No behaviour change, so there is nothing to try on a device. The deprecation warning shows up on any call to the three declarations, for example in CallParticipantsInfoMenuPreview in the compose module's debug source set. That preview is left as is on purpose, to keep the merge-down footprint to the three files above.

Ran on stream-video-android-ui-compose: spotlessApply (no edits), compileDebugKotlin, apiCheck.

Summary by CodeRabbit

  • Deprecations
    • Deprecated the participant information menu and related participant information types.
    • The SDK no longer opens the participant information menu; it is scheduled for removal in version 2.
    • Builders should use call.state.participants for participant data.

…ypes

CallParticipantsInfoMenu lost its only call site in June 2023, when the
participant invitation flow was removed from CallContainer and
CallViewModel. Nothing in the SDK or the demo app has opened it since,
and the debug preview is its only remaining reference. The same applies
to the public CallParticipantInfoMode interface and to the
ParticipantInfoAction hierarchy, which no UI emits anymore.

Mark all three public declarations as deprecated with a warning so
integrators get one release of notice before v2 removes them. The
annotations do not change the API dump. The internal mode objects and the
files themselves suppress the deprecation warnings they now trigger on
their own supertypes.

Only the files that v2 deletes are touched, so the later develop to
develop-v2 merge resolves each of them by keeping the deletion.

AND-1527
@andremion andremion added the pr:improvement Enhances an existing feature or code label Sep 17, 2026
@github-actions

Copy link
Copy Markdown
Contributor

PR checklist ✅

All required conditions are satisfied:

  • Title length is OK (or ignored by label).
  • At least one pr: label exists.
  • Sections ### Goal, ### Implementation, and ### Testing are filled, or the PR is bot-authored.
  • An issue is linked (Linear ticket or GitHub issue), or the PR is bot-authored.

🎉 Great job! This PR is ready for review.

@andremion

Copy link
Copy Markdown
Contributor Author

@CodeRabbit review

@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown
Contributor
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@github-actions

Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-video-android-core 12.38 MB 12.38 MB 0.00 MB 🟢
stream-video-android-ui-xml 5.68 MB 5.68 MB 0.00 MB 🟢
stream-video-android-ui-compose 6.23 MB 6.23 MB 0.00 MB 🟢

@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Advanced

Run ID: b3973e29-ccc9-4c4e-b04c-a7f2867f5ebe

📥 Commits

Reviewing files that changed from the base of the PR and between f3e5886 and b6456e5.

📒 Files selected for processing (3)
  • stream-video-android-ui-compose/src/main/kotlin/io/getstream/video/android/compose/state/ui/internal/CallParticipantInfoMode.kt
  • stream-video-android-ui-compose/src/main/kotlin/io/getstream/video/android/compose/state/ui/participants/ParticipantInfoAction.kt
  • stream-video-android-ui-compose/src/main/kotlin/io/getstream/video/android/compose/ui/components/participants/CallParticipantsInfoMenu.kt

Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review.


Walkthrough

The PR adds WARNING-level deprecation annotations to participant information actions, modes, and the CallParticipantsInfoMenu composable. It adds suppression annotations where deprecated declarations reference each other. No functional behavior changes.

Changes

Participant information deprecation

Layer / File(s) Summary
Deprecate participant information actions
stream-video-android-ui-compose/.../ParticipantInfoAction.kt
ParticipantInfoAction, ChangeMuteState, and InviteUsers are marked for removal in v2.
Deprecate participant information menu and modes
stream-video-android-ui-compose/.../CallParticipantInfoMode.kt, stream-video-android-ui-compose/.../CallParticipantsInfoMenu.kt
CallParticipantInfoMode and CallParticipantsInfoMenu are marked deprecated. Related suppressions silence internal deprecation warnings.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Other

Suggested reviewers: aleksandar-apostolov

Merge Risk: ⚪ Minimal · up to b6456

The change only marks scheduled-for-removal APIs as deprecated and does not alter runtime behavior.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 3 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main change: deprecating the unreachable call participants info menu.
Description check ✅ Passed The description explains the goal, issue reference, implementation, testing, API impact, and lack of behavior changes. It appropriately states that no device testing is required. Some template checkli…
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch andrerego/and-1527-deprecate-the-call-participants-info-menu-and-invite-flow

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

A rabbit marks the old paths clear
Deprecated signs now softly appear
The menu rests, the modes grow still
Actions wait beyond the hill
V2 will bring a cleaner trail

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

sonarqubecloud Bot commented Sep 17, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
0.0% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

@andremion
andremion marked this pull request as ready for review September 17, 2026 10:32
@andremion
andremion requested a review from a team as a code owner September 17, 2026 10:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:improvement Enhances an existing feature or code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant