refactor(track): deprecate flutter_webrtc-typed Track getters#1125
Draft
hiroshihorie wants to merge 1 commit into
Draft
refactor(track): deprecate flutter_webrtc-typed Track getters#1125hiroshihorie wants to merge 1 commit into
hiroshihorie wants to merge 1 commit into
Conversation
Begins removing flutter_webrtc types from the public API: Track.mediaStream/mediaStreamTrack/sender/receiver/mediaType are deprecated in favor of @internal rtcStream/rtcTrack/rtcSender/rtcReceiver accessors, transceiver is marked @internal, and all internal call sites are migrated off the deprecated getters.
|
Caution Breaking change detected without major changeset
If this is intentional, please add a changeset with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Begins removing flutter_webrtc types from the public API surface.
Track.mediaStream,Track.mediaStreamTrack,Track.sender,Track.receiver, andTrack.mediaTypeare now@Deprecated, with@internalreplacements (rtcStream,rtcTrack,rtcSender,rtcReceiver) for SDK and first-party use.Track.transceiveris marked@internal. All internal call sites (~15 files) are migrated off the deprecated getters, so they can be deleted in a future major release.Non-breaking
@internalannotations only produce analyzer hints; no signatures or behavior change.receiverwas previously a public mutable field; it keeps both a deprecated getter and a deprecated setter, so existing reads and writes still compile.@internalaccessors read the same backing fields the old getters did — no runtime behavior change.Notes for consumers
First-party consumers (components-flutter, e2e-flutter) that read
track.receiver/track.senderfor stats will start seeing deprecation warnings; a LiveKit-owned stats accessor is the intended long-term replacement (follow-up). Remaining public rtc leaks (Hardware.openCamera,ScreenSelectDialog, encodingtoRTCRtpEncodingconverters, Track subclass constructors) are out of scope here and tracked as follow-ups.Testing
dart analyze lib testclean, all 314 tests pass (no behavior change expected or observed).