Skip to content

Remove the dead video call, thread request, and upstream channel read DTOs - #6692

Merged
gpunto merged 1 commit into
developfrom
chore/remove-dead-api2-dtos
Sep 11, 2026
Merged

gpunto merged 1 commit into
developfrom
chore/remove-dead-api2-dtos

Conversation

@gpunto

@gpunto gpunto commented Sep 10, 2026 •

Copy link
Copy Markdown
Contributor

Goal

Delete nine hand-written DTO classes in api2/model that nothing references any more, so the
remaining count reflects actual migration work.

Part of AND-1291

Implementation

  • Drop the video call island: VideoCallDto, HMSDto, AgoraDto, VideoCallInfoDto,
    CreateVideoCallResponse, VideoCallCreateRequest and VideoCallTokenRequest. It is a closed
    graph rooted at CreateVideoCallResponse, and VideoCallApi is already gone.
  • Drop GetThreadRequest. ThreadsApi.getThread takes query parameters, so the body type it
    documents no longer exists.
  • Drop UpstreamChannelUserRead. Reads are never sent upstream; only DownstreamChannelUserRead
    is in use, and the file is renamed after it to satisfy the ktlint filename rule.

All nine are internal, so the API dump is unchanged.

Testing

No behaviour to test. Each class was confirmed unreferenced across the whole repo, including
tests: the only hits were their own declarations and each other.

The stale VideoCallCreateRequest and VideoCallTokenRequest lines left in baseline-prof.txt
are untouched. That file already names the long-deleted VideoCallApi, and unresolvable profile
rules are skipped at install time.

Summary by CodeRabbit

  • Refactor
    • Removed unused internal data models related to channel read state, thread requests, and video call creation, tokens, and responses.
    • No user-facing functionality was added or changed.

@gpunto gpunto added the pr:internal Internal changes / housekeeping label Sep 10, 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.

@github-actions

Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-chat-android-client 6.10 MB 6.09 MB -0.01 MB 🚀
stream-chat-android-ui-components 11.41 MB 11.40 MB -0.00 MB 🚀
stream-chat-android-compose 13.09 MB 13.08 MB -0.01 MB 🚀

@sonarqubecloud

Copy link
Copy Markdown

@gpunto
gpunto marked this pull request as ready for review September 10, 2026 11:50
@gpunto
gpunto requested a review from a team as a code owner September 10, 2026 11:50
@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown

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: a919ec4f-1e79-4f08-a12c-ab098af901c3

📥 Commits

Reviewing files that changed from the base of the PR and between 0c82141 and b0c61cd.

📒 Files selected for processing (7)
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/DownstreamChannelUserRead.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/VideoCallDto.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/VideoCallDtos.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/GetThreadRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/VideoCallCreateRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/VideoCallTokenRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/response/CreateVideoCallResponse.kt
💤 Files with no reviewable changes (7)
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/response/CreateVideoCallResponse.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/VideoCallCreateRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/GetThreadRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/VideoCallDto.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/VideoCallTokenRequest.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/DownstreamChannelUserRead.kt
  • stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/VideoCallDtos.kt

Included review availability: Your plan provides up to 4 included reviews per hour; 3 remain after this review.


Walkthrough

The change removes unused internal channel, thread, and video call DTO, request, and response model declarations from the Android client.

Changes

Obsolete internal model removal

Layer / File(s) Summary
Remove obsolete model declarations
stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/dto/*, stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/requests/*, stream-chat-android-client/src/main/java/io/getstream/chat/android/client/api2/model/response/*
Removed unused channel-read, thread, video-call request, video-call response, and video-call DTO declarations.

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

Merge Risk: ⚪ Minimal · up to b0c61

This cleanup removes unused internal models without changing client behavior or public API surface, so it is mergeable with normal checks.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly states the goal, implementation, scope, related issue, testing rationale, and API impact. It omits the UI Changes, contributor checklist, reviewer checklist, and GIF sections, …
Title check ✅ Passed The title clearly and concisely summarizes the removal of the dead video call, thread request, and upstream channel read DTOs.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
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.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/remove-dead-api2-dtos

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 checks the model nest
Old DTOs leave, the code rests
Threads and calls are swept away
Clean files greet the light of day
Hop, hop, fewer types today

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

@gpunto
gpunto enabled auto-merge September 10, 2026 13:13
@gpunto
gpunto added this pull request to the merge queue Sep 11, 2026
Merged via the queue into develop with commit ec778ca Sep 11, 2026
20 of 21 checks passed
@gpunto
gpunto deleted the chore/remove-dead-api2-dtos branch September 11, 2026 08:41
@stream-public-bot stream-public-bot added the released Included in a release label Sep 24, 2026
@stream-public-bot

Copy link
Copy Markdown
Contributor

🚀 Available in v7.12.0

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

Labels

pr:internal Internal changes / housekeeping released Included in a release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants