Skip to content

chore(deps): cargo update — patch bumps across the tree - #580

Merged
srperens merged 1 commit into
mainfrom
chore/cargo-update
May 19, 2026
Merged

chore(deps): cargo update — patch bumps across the tree#580
srperens merged 1 commit into
mainfrom
chore/cargo-update

Conversation

@srperens

Copy link
Copy Markdown
Collaborator

Summary

  • Routine in-semver refresh of the workspace lockfile (cargo update).
  • Direct-dep movers (all patch-level):
    • GStreamer cluster 0.25.0/0.25.1 → 0.25.2 (gl, video, audio, base, webrtc, pbutils, sdp, app — controller was already at .2 from chore(deps): bump gstreamer-controller from 0.25.0 to 0.25.2 #574)
    • gst-plugin-rtp 0.15.1 → 0.15.2
    • eframe 0.34.1 → 0.34.2, tokio 1.52.2 → 1.52.3, gio 0.22.4 → 0.22.6, bcrypt 0.19.0 → 0.19.1, sysinfo 0.39.1 → 0.39.2
  • Notable transitives: wgpu 29.0.1 → 29.0.3, wasm-bindgen 0.2.117 → 0.2.121, web-sys 0.3.94 → 0.3.98, aws-lc-rs 1.16.2 → 1.17.0.

No source changes — Cargo.lock only.

Test plan

  • cargo check — clean
  • cargo test --lib — 463 passed
  • cargo test --test openapi_test — snapshot in sync
  • cargo test --test block_properties_persist_test — 2/2 pass
  • cargo test --test pipeline_lifecycle_test — 3/3 pass (leak-detection regression)
  • Pre-commit hooks (fmt, clippy, sensitive-info scan) — green

🤖 Generated with Claude Code

Routine in-semver refresh. Direct-dep movers:
- gstreamer cluster 0.25.0/0.25.1 → 0.25.2 (gl, video, audio, base,
  webrtc, pbutils, sdp, app, controller already at .2 from PR #574)
- gst-plugin-rtp 0.15.1 → 0.15.2
- eframe 0.34.1 → 0.34.2, tokio 1.52.2 → 1.52.3, gio 0.22.4 → 0.22.6,
  bcrypt 0.19.0 → 0.19.1, sysinfo 0.39.1 → 0.39.2

Notable transitives: wgpu 29.0.1 → 29.0.3, wasm-bindgen 0.2.117 → 0.2.121,
web-sys 0.3.94 → 0.3.98, aws-lc-rs 1.16.2 → 1.17.0.

Verified: cargo check, 463 lib tests, openapi snapshot, persist tests (2),
pipeline lifecycle leak tests (3) — all pass.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@srperens
srperens merged commit 0da37c1 into main May 19, 2026
7 checks passed
@srperens
srperens deleted the chore/cargo-update branch May 19, 2026 20:00
srperens added a commit that referenced this pull request Jun 9, 2026
eframe 0.34.2 added `wgpu` to its `default` feature set (it was not a
default in 0.34.1, which the #580 cargo update bumped past). That pulled
wgpu-core into the wasm32-unknown-unknown build, where it fails to
compile (`cannot find value Vulkan in module hal::api`).

Disable eframe's default features at the workspace level and re-add the
features that previously came from `default`:
- native: wgpu, accesskit, wayland, x11
- wasm: web_screen_reader (glow comes from the workspace-level features)

Gate the `CreationContext::wgpu_render_state` access in info_page.rs
behind cfg(not(wasm32)); that field only exists with the wgpu feature,
so WASM now falls through to the glow/WebGL branch.

Cargo.lock drops the Wayland/Adwaita client-side-decoration chain
(sctk-adwaita, tiny-skia, ttf-parser, ...) that only came in via
winit/default.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
srperens added a commit that referenced this pull request Jun 9, 2026
…nsition fixes (#639)

* docs(readme): link to hosted Open Live platform

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(vision-mixer): add ColorCorrect primary correction + white balance

Add a single ColorCorrect video effect combining primary color
correction (brightness, contrast, saturation, gamma) and white balance
(temperature, tint) — the camera-matching tool the look library was
missing. Every control is neutral at its default, so an untouched
correction is an identity pass. Applied in a fixed order: white balance,
brightness, contrast, gamma, saturation.

Single-pass GLES2 shader, registered in all_fragments() for the CI
shader-compile validation. Exposed in the vision-mixer.html FX catalog
as a production staple (std), not under the Stylized group.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(vision-mixer): luma-space contrast + hue control for ColorCorrect

Compute brightness, contrast, hue and saturation in YCbCr (BT.601) so
they match glcolorbalance's model: brightness/contrast move only the
luma and no longer drift hue, hue/saturation act only on the chroma.
Adds a hue rotation control (-1..1 = -180..180 deg) the original RGB
version lacked, making ColorCorrect a strict superset of glcolorbalance
plus gamma and white balance.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore: bump workspace version to 0.6.5-dev

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(vision-mixer): glitch transition leaves residual artifacts on some GPUs

After a glitch take completed, faint block-displacement artifacts kept
flickering on the program output indefinitely instead of settling — seen
on Intel Arc iGPU.

Root cause: the master FX envelope was sin(fx_linear_p() * 3.14159265).
At completion fx_linear_p() is clamped to exactly 1.0, but the float pi
literal is slightly below pi, so sin() returns a tiny positive residual
(~1e-8) instead of 0 — and the magnitude is driver-dependent. The glitch
shader takes pow(envelope(), 0.4), whose infinite slope near zero
amplifies that residual into a small-but-visible displacement that never
clears. pixelate/punch take pow(envelope(), 0.5) and had the same latent
issue below the visibility threshold.

Replace the sine envelope with the parabola 4*p*(1-p): identical 0->1->0
shape peaking at the cut, but EXACTLY 0 at the clamped endpoints, so the
shaders become true identity passes once the transition is done.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(vision-mixer): TPDF dither, Vogel blur and fixed-raster CRT

Add a shared dither() helper (triangular-PDF, two decorrelated hashes,
static screen-space so flat areas don't crawl) and apply ~1 LSB of it
before output on the looks that stretch or remap smooth gradients and so
expose 8-bit banding: color_correct (gamma/contrast), blur, duotone and
thermal. Posterize is intentionally left undithered — it is supposed to
band.

Rewrite the blur as a 24-tap Vogel (golden-angle) spiral: even disc
coverage that stays gap-free as the radius grows, aspect-corrected so the
bokeh stays circular on non-square frames — the old fixed two-ring kernel
left visible rings past a few pixels.

Rewrite the CRT scanlines and aperture grille to a fixed virtual raster
instead of per-output-pixel frequencies, so the pattern stays well below
Nyquist at any render size instead of collapsing into shimmering moire.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(vision-mixer): lay out FX look params in a 4-column grid

The look param controls were a wrapping flex row, so an effect with many
sliders (Color Correct has seven) spread into one long line. Wrap each
label+slider+value in a .fx-param unit and lay them out in a 4-column
grid, so Color Correct reads as 4+3 over two rows and effects with fewer
params just fill as many cells as they need. Narrow the slider to 80px so
four columns fit on smaller panels.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(vision-mixer): raise blur radius cap to 40 px

The Vogel-spiral blur stays gap-free well past the old 13-tap kernel's
limit, so expose the headroom: bump the radius clamp and the UI slider
max from 20 to 40 px. Updates the API doc text and openapi snapshot.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* docs(vision-mixer): correct ColorCorrect documented apply order

The doc comment (and thus the OpenAPI description) listed the apply order
as "white balance, brightness, contrast, gamma, saturation", but the
shader applies hue before saturation and gamma last. Match the comment to
look_color_correct.glsl and refresh the OpenAPI snapshot.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(vision-mixer): roll and punch leave residual artifacts after transition

Two master transitions failed to return to a clean identity pass once the
take completed — the same class of bug as the glitch envelope residual,
but with distinct root causes.

Roll: the dark blanking/retrace bar was not gated by roll velocity (unlike
the tear, which was). The roll ends on an integer number of wraps, pinning
the wrap seam to the top and bottom edges at p=1, so the bar left a
permanent dark band along both edges. Gate it by velocity, which is
exactly 0 at p=0 and p=1, so the bar vanishes the instant the frame locks.

Punch: the per-frame camera shake was always folded into uv. Once the
envelope reached 0 the shake should contribute nothing, but `0.0 * x` is
NaN under IEEE when x is NaN/Inf, and a hash of the take-relative frame
counter can degrade on a stricter driver (observed on Intel Arc) — poisoning
uv and clamping to a single edge texel, so the whole frame went flat white
or black after the punch. Compute the shake only while the envelope is
live, keeping the post-take state an exact identity pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(frontend): keep wgpu out of the WASM build

eframe 0.34.2 added `wgpu` to its `default` feature set (it was not a
default in 0.34.1, which the #580 cargo update bumped past). That pulled
wgpu-core into the wasm32-unknown-unknown build, where it fails to
compile (`cannot find value Vulkan in module hal::api`).

Disable eframe's default features at the workspace level and re-add the
features that previously came from `default`:
- native: wgpu, accesskit, wayland, x11
- wasm: web_screen_reader (glow comes from the workspace-level features)

Gate the `CreationContext::wgpu_render_state` access in info_page.rs
behind cfg(not(wasm32)); that field only exists with the wgpu feature,
so WASM now falls through to the glow/WebGL branch.

Cargo.lock drops the Wayland/Adwaita client-side-decoration chain
(sctk-adwaita, tiny-skia, ttf-parser, ...) that only came in via
winit/default.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant