fix(uniffi): publish livekit_datatrack.swift with the Swift package - #1310
fix(uniffi): publish livekit_datatrack.swift with the Swift package#1310pblazej wants to merge 1 commit into
Conversation
Generated from rust-sdks tag livekit-uniffi/v0.1.8 (709dc980) with the same cargo-make swift-package flow that built the rest of this release; the publish workflow's file list dropped the second UniFFI component's bindings (fixed in livekit/rust-sdks#1310). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The generated Swift package contains one bindings file per UniFFI component, but the publish step's file list only carried livekit_uniffi.swift. The shipped package referenced data-track types that were never defined and failed to compile. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
a2fd12d to
b0a2e2e
Compare
| ${{ env.OUTPUT_DIR }}/LICENSE:LICENSE | ||
| ${{ env.OUTPUT_DIR }}/PrivacyInfo.xcprivacy:PrivacyInfo.xcprivacy | ||
| ${{ env.OUTPUT_DIR }}/Sources/${{ env.SPM_NAME }}/livekit_uniffi.swift:Sources/${{ env.SPM_NAME }}/livekit_uniffi.swift | ||
| ${{ env.OUTPUT_DIR }}/Sources/${{ env.SPM_NAME }}/livekit_datatrack.swift:Sources/${{ env.SPM_NAME }}/livekit_datatrack.swift |
There was a problem hiding this comment.
🟡 Release notes entry missing for this fix
The change ships without the required release-notes entry (no file added under /.changeset alongside the workflow edit at .github/workflows/uniffi-swift.yml:100), so the fix will not appear in the generated changelog or trigger a package bump.
Impact: Users reading the release notes won't see that the broken Swift package was fixed, and no new version may be published to deliver it.
Repository rule requiring a changeset per PR
AGENTS.md ("Documenting changes") states: "Every PR needs a changeset" and "Changeset must list any crates which need to be bumped stemming from the change". A comparable CI-only fix (commit 00258d1e, PR #1300) touching the same workflow added .changeset/fix_uniffi_android_package_build.md. This PR only modifies .github/workflows/uniffi-swift.yml with no changeset file, and the repo has a CI check for changeset detection (see commits 97c18fa6, a7a26250).
Prompt for agents
AGENTS.md requires every PR to include a knope changeset under /.changeset, listing the crates that need bumping. This PR fixes the Swift package publish step in .github/workflows/uniffi-swift.yml but adds no changeset, and precedent (PR #1300, commit 00258d1e) shows even CI-only uniffi fixes include one so a new livekit-uniffi version is cut and the fix reaches published packages. Add a changeset (e.g., via `knope document-change`) describing the missing livekit_datatrack.swift bindings fix and the affected package.
Was this helpful? React with 👍 or 👎 to provide feedback.
* v0.1.8 * Add missing livekit_datatrack.swift bindings Generated from rust-sdks tag livekit-uniffi/v0.1.8 (709dc980) with the same cargo-make swift-package flow that built the rest of this release; the publish workflow's file list dropped the second UniFFI component's bindings (fixed in livekit/rust-sdks#1310). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
The Swift package build generates one bindings file per UniFFI component, but the publish step's hardcoded file list only carried
livekit_uniffi.swift—livekit_datatrack.swiftwas silently dropped. The published package (v0.1.8, livekit-uniffi-xcframework#14) references data-track types that are never defined and fails to compile; verified by building therelease/0.1.8package against the draft xcframework (fails), then adding the bindings file generated at the same tag (builds clean). The Android AAR is unaffected — Kotlin sources are compiled as a directory, and the 0.1.8 AAR on Maven Central already contains both components. The v0.1.8 release itself was repaired by hand-adding the tag-generated bindings to livekit-uniffi-xcframework#14; this fix keeps future releases from regressing.