Repository navigation
chore: merge release into main - #5150
Conversation
(cherry picked from commit 2c0cf67) Co-authored-by: Grok 4.7 <noreply@x.ai> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit b0eca50) Backport drops the chunk_interleaving benchmark, its bench-rtmp recipe, and the nightly smoke step: nightly only runs on main, which keeps them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Release predates moq_net_sim and announce::Event, so the backported test runs on paused tokio time and reads announce::Update/Kind instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
On drafts 14-17 the subgroup header has no FIRST_OBJECT bit, so a stream that starts at the live edge reached Frame.decode with a non-zero first delta and failed the group. Run release's existing first-object peek on those drafts too, and drop the stream so the subscription resumes at the next group. (cherry picked from commit 321fc02, adapted) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…5081) Backport to release. The Rust regression test writes the draft-18 status object inline with release's encode form and runs under tokio::test, since release lacks the end_marker helper and moq_net_sim. Quest edits dropped. (cherry picked from commit 52a2a89) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Jchavarria <jose.chavarria@ridgerun.com> Co-authored-by: Codex <noreply@openai.com> (cherry picked from commit 7556594) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…5086) run_unis waited for each accepted uni stream's type before accepting the next. QUIC opens lower-numbered streams implicitly, so the stream it waited on could be one whose bytes sat behind connection flow control held by later streams' unread data, deadlocking the connection with any IETF peer. Each stream now reads its type and is served in its own child. A stream that breaks the session records the error in a shared slot, which ends the loop as before. Backports only the session.rs half of #5086; the resume.rs half fixes main-only code. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…4658) On drafts 19-22 a requester may FIN its request stream right after SUBSCRIBE (draft-21 section 6.4.2.2). The publisher treated that FIN as a cancellation, so no media flowed. On draft 17+ any REQUEST_UPDATE byte also made Reader::poll_closed fail and silently ended the subscription. Port the subscription half of #4658 to release: - From draft 19, a clean FIN on a SUBSCRIBE or SUBSCRIBE_NAMESPACE stream stops reading but keeps serving; RESET_STREAM or STOP_SENDING cancels. Drafts 14-18 keep FIN cancellation. - From draft 17, a subscription REQUEST_UPDATE is parsed: a priority change is applied and acknowledged with REQUEST_OK, anything else is refused with NOT_SUPPORTED and ends the subscription with PUBLISH_DONE UPDATE_FAILED. - moq-tokio's wrapped send stream observes STOP_SENDING while idle, which the Rust subscriber's FIN plus STOP_SENDING unsubscribe needs once a FIN no longer cancels. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Drops the quest/ file change, since release does not carry that quest. (cherry picked from commit 4ae871c) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ci: the back-merge no longer enables auto-merge (backport #4619)
fix(js): drop a headless subgroup before FIRST_OBJECT (backport #5019)
fix(rtmp): reassemble interleaved chunk streams independently (backport #4735)
fix(hang): accept AV1 profile 2 codec strings (backport #5064)
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Automated review of Carries one backport (#5136, "the back-merge no longer enables auto-merge", backport of #4619) from I checked that Non-blocking: Verdict: MERGE once CI is green. This is an automated review, not the maintainer's decision |
fix(net): read each IETF uni stream's type in its own task (backport #5086)
fix(moq-mux): configure H.265 from the SPS head when scuffle_h265 refuses the rest (backport #4924)
…start fix(transcode): refuse a fetch that starts mid-group (backport #4812)
fix(net): accept an End of Group status on a marked subgroup stream (backport #5081)
…ption fix(net): keep IETF subscriptions alive after a request FIN (backport #4658)
fix(net): give an anonymous dial its own hop (backport #5025)
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: 2c84a50
No new actionable backmerge-specific findings in the cumulative 30-file delta against main at 54dfe98. The source fixes are already present on main, with release-specific API/test adaptations; manifests, lockfiles, and workflow files are unchanged. The independently reported deferred-FIN loss and in-flight priority update issues also exist on main, so they are not introduced by this backmerge.
Direction: resolve the current merge conflicts by merging main into this branch, preserving main’s newer implementations and test harness. Validate the resolved merge and require passing Check/Test before landing as a merge commit.
Verification limits: static GitHub source/patch comparison only; no builds or tests run, and no resolved merge tree to validate. GitHub currently reports mergeable=false / dirty; this head has no Check/Test results (only a skipped Auto-merge check).
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 714e0916c8
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| if [[ -z "$pr" ]]; then | ||
| gh pr create --repo "$repo" --head "$branch" --base main \ |
There was a problem hiding this comment.
Restore automatic merging of the back-merge PR
Whenever release is ahead, the script now ends after creating or locating the PR, so nothing actually queues or merges it. I inspected the reviewed tree: .github/workflows/check.yml contains only check and test jobs, and a repository-wide search found no land job or other merger for this branch. This also matches the CLI help: gh pr create --help says it only creates a pull request, while gh pr merge --help documents --auto --merge as the mechanism removed here. Consequently every release back-merge remains open until manually merged, breaking the advertised release automation.
Useful? React with 👍 / 👎.
Conflicts are release backports whose originals are already on main (#4812, #4658, #5086, #5081, #5019, #5025); resolved to main's side. doc/bin/rtmp.md keeps main's text, since #5033 dropped the #4735 internal-limits paragraph the backport carried. Ports requester_reset_cancels_subscriptions, which only the #4658 backport carried, into main's publisher test harness. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed commit: 94d177e
The merge-conflict blocker from my previous review is resolved. Complete tree comparison against main at 9828d79 shows only the 33-line requester-reset regression test; runtime code, build inputs, dependencies, and workflows match main. No new actionable findings in the test or conflict resolution.
The earlier missing landing job concern does not apply to this head: land requires Check/Test and pins the merge to the checked head. The #5133 FIN/priority issues noted previously remain preexisting on main, unchanged here.
Direction: wait for passing Check/Test, then land as a merge commit. Verification: static source/tree inspection only; no builds or tests run. GitHub reports mergeable=true; Check/Test are currently queued.
Carries what
releasepublished (versions, CHANGELOGs, backports) back to trunk. Opened by the Back-merge workflow.Check's
landjob merges it as a merge commit once Check and Test pass. Never squash. A squash leaves the merge base at the last cut, so the next back-merge conflicts. On a conflict, mergemainintomerge/release-into-mainand resolve it there.