chore(release): bump workspace version to 0.25.0 #56
Open
enricobuehler
wants to merge 3 commits from
worktree-release-0250 into main
pull from: worktree-release-0250
merge into: :main
:main
:worktree-native-decode-m0
:worktree-release-0250
:worktree-presenter-cadence-wp1
:worktree-decky-brand-name
:worktree-win-amd-decoder-order
:worktree-stall-ride-through
:fix/pad-audio-wasapi-module-path
:feat/android-pad-audio
:worktree-adl-emul-probe
:worktree-haptics-m12-dry
:worktree-haptics-m9-richfb
:worktree-haptics-m11-settings
:worktree-apple-store-screenshots
:worktree-decky-slim-rework
:worktree-appstore-copy
:worktree-haptics-m10-wire
:worktree-haptics-m8-proto
:worktree-haptics-m7-windows
:worktree-haptics-m6-presenter
:worktree-wire-mtu-resilience
:worktree-haptics-m5-android
:worktree-haptics-m4-apple
:worktree-haptics-m3-rumble-engine
:worktree-android-presenter-023-triage
:worktree-vdisplay-resume-recovery
:worktree-kwin-vout-demirror
:fix/web-console-sweep
:fix/windows-web-console-lifecycle
:chore/windows-rerender-semantics
:fix/pf-encode-phase8
:fix/pf-encode-phase7
:feat/cursor-channel
:feat/desktop-mouse-mode
:feat/plugin-kit
:fix/network-split-standing-latency
:fix/windows-msix-arm64-and-manifest
:fix/encode-medium-tier
:fix/encode-rfi-taint-and-oob
:fix/encode-init-leak-and-twin-drift
:fix/encode-teardown-uaf
:feat/pyrowave-windows
:fix/ubuntu-2404-host-deb
:fix/ios-archive-provisioning
:merge/first-frame-latency
:feat/shared-clipboard-v2
:feat/apple-live-activities-widgets
:debug/touch-finger-logging
:feat/shared-clipboard
:midstream-resize
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Prepares v0.25.0 — now 136 commits since v0.24.0 (main moved from
8983ec04to35ba64cawhile this sat open; merged in and the notes rewritten to match). Four files, the same bump surface as every prior cut:Cargo.toml,Cargo.lock,docs/releases/v0.25.0.md,docs/releases/whatsnew/v0.25.0.txt.The version was not a judgment call:
scripts/ci/pf-version.shprintsPF_BASE=0.25.0, derived from the tags, and canary has been publishing against it all along.🚫 Do not tag yet — one real defect, two broken runners
1. The flatpak has not built since
35ba64ca. Fixed by #65 — merge that first.PR #64 declared
vkrootstwice; flatpak-builder clones submodules by default, so the second source tries to copy a bare mirror onto a gitlink file andcprefuses. Extraction dies before any build command runs.flatpak.ymlruns ontags: ['v*']and that step gates the bundle export, the registry publish, the OSTree push and the release-asset attach — a tag cut today ships with no Linux/Steam Deck flatpak at all, on the release whose headline Linux change is Deck HDR. It reached main becauseflatpak.ymlhas nopull_request:trigger, so #64's checks were green without ever building the flatpak.2. Both Linux runner hosts are misconfigured, in different ways (infra,
unom/infra):home-runner-2is missing192.168.1.58:5011in its Dockerinsecure-registries, so builder-image pushes fail withhttp: server gave HTTP response to HTTPS client. The failures split strictly by runner, not by image — every1-*green, every2-*red. Degrades a tag: theTag for releasestep sits after the failing login, sov0.25.0builder-image tags never get minted.home-runner-1's Docker cannot pull any image — LAN or Docker Hub (No such image: fedora:43on a public image). act_runner swallows the pull error and dies atcreate, which is why jobs report failure with every stepcancelledin 4 seconds.ci.ymlhas notags:trigger so it can't fail the fan-out directly, but every Linux tag workflow starts by pulling a container image on this same fleet.3. There is currently no green
rust/rust-arm64result on main's tip. Those jobs have never executed a step on35ba64ca— the workspace there is untested, not known-good. Worth one clean run before tagging.The earlier
windows-msixred remains benign: the identical commit's arm64 leg was re-run and passed, andwindows.ymlwent green on that SHA building the same crates for both arches. Known runner flake — on tag day, re-run a failed leg rather than blocking.⚠️ A release-content call that is yours
The headline feature has never run on hardware. PR #23's own final commit (
d27e62f7) says it plainly: "Still owed: on-glass. This is a hardware feature and none of it has been on a real DualSense since the merge." Its entire verification is unit tests and compile checks. Since avX.Y.Ztag publishes to Google Play production at 100%, that ships to real users unverified. The notes describe it accurately — wired DualSense only, Windows host with Steam only, Android and the desktop session client only — and say the verification gap outright. Softening or cutting the claim is a one-file edit.What the notes now cover
A new
## Before you updatesection, because the security review landed changes that need the reader to act and would not survive being buried in a Fixed bullet:sudo usermod -aG punktfunk "$USER"and log back in, or it stops attaching — the capability moved off theinputgroup (which every gamepad guide says to join) onto its own, since it can emulate arbitrary USB hardware.PORT + 1: a self-signed console needs the new port trusted once, and custom firewalls/proxies must open it.The library-sources work is written as groundwork, deliberately: all six built-in scanners still ship and stay on, nothing is removed, and none of the replacement add-ons are published yet, so the migration offer appears as they arrive. Promising otherwise would repeat the v0.22.3 mistake of notes describing a build nobody is getting.
Two honesty items worth flagging: the Android stats-overlay entry states outright that the stream did not get faster and the headline number only shrank because it stopped counting the compositor's wait; and the Windows non-C: settings entry says plainly that nothing is recoverable, because those writes never reached disk.
Kept out of user-facing notes:
56adb470(verified not an ancestor of v0.24.0 — repairs a Windows build break in never-shipped code, folds into the pad-audio feature) and19f637ea(CI only).Version facts (verified against source and the generated header)
max_shard_payloadonHello, the0x08/0x09renegotiation pair, the0xD1controller-audio plane, the0xD2redundant desktop-audio plane,MAX_DATAGRAM_BYTES2048 → 9216.0x04/ host0x20; controller audio client0x08/ host0x40. ⚠️ Commited3d236a's message says0x04/0x20for pad audio — stale, rebased when AUDIO_RED took those.quic/caps.rsis authoritative.host_capsis down to its last free bit (0x80).video_capsremains full from 0.23.0, so the standing "next video cap needs a second byte and an ABI bump" note still holds.pf-driver-protois byte-for-byte identical to v0.24.0.PUNKTFUNK_-prefixed. Cannot break silently — the old spellings cease to exist, so it is always an undeclared-identifier error rather than the wrong value a colliding#defineused to produce.Gates run locally (re-run after the merge)
cargo metadata --lockedresolves — 35 members;fec-rs,pf-driver-proto,usbip-simkeep their own versions by design.origin/mainversions-only, 32/32. Last cut'swasapicounting trap does not apply — it sits at 0.23.0 and was never a candidate.cargo fmt --all --checkclean in both the main andpackaging/windows/driversworkspaces.## Under the hood.android.yml's own gate logic, including the byte-identical check. Left unchanged — there is no room, and the only Android-facing additions since are worth less to a phone user than any line already in it.Also worth deciding
api/openapi.jsonis deliberately left at 0.23.0, as in every prior cut. It will be two releases behind once this ships.After merge
Merge #65 → get one green
ci.ymlon main → tag → wait for every platform green → dispatchannouncewith the tag. That last step publishes the signed stable update manifest, i.e. the moment every host's update check learns about the release. (0.24.0's manifest is live and correct, so the ritual is known-good.)View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.