Skip to content

ci: update Docker actions to latest major versions and Zig to 0.15.1#203

Merged
javi11 merged 5 commits intomainfrom
fix/folder-output-subdirectory-cross-volume
Apr 11, 2026
Merged

ci: update Docker actions to latest major versions and Zig to 0.15.1#203
javi11 merged 5 commits intomainfrom
fix/folder-output-subdirectory-cross-volume

Conversation

@javi11
Copy link
Copy Markdown
Owner

@javi11 javi11 commented Apr 11, 2026

Summary

  • Bump docker/setup-buildx-action v3 → v4
  • Bump docker/login-action v3 → v4
  • Bump docker/build-push-action v5 → v6
  • Bump docker/metadata-action v5 → v6
  • Bump Zig compiler 0.14.10.15.1 (used in mlugg/setup-zig)

All four Docker actions released new major versions (March 2026) with Node 24 as the default runtime. Zig 0.15.1 is the current stable release.

Test plan

  • Verify dev-build workflow runs successfully on push
  • Verify release workflow builds and pushes Docker images correctly
  • Confirm ARM64 cross-compilation with Zig 0.15.1 produces valid binaries

🤖 Generated with Claude Code

javi11 added 5 commits April 11, 2026 18:46
When Postie processes a watched folder (SingleNzbPerFolder or explicit
folder upload), generated NZB and PAR2 files are now placed inside a
dedicated <outputDir>/<folderName>/ subdirectory instead of directly in
the output root.

Before this fix, postFolder() used:
  nzbPath = filepath.Join(outputDir, folderName+".nzb")
  par2OutputDir = outputDir

Both paths now use folderOutputDir = filepath.Join(outputDir, folderName),
so the layout becomes:
  <outputDir>/Movie_A/Movie_A.nzb
  <outputDir>/Movie_A/*.par2   (when maintain_par2_files=true)

This fixes the cross-volume case (watch folder and output folder on
different mount points) where files were previously scattered in the
output root. The fix covers both the sequential (WaitForPar2=true) and
parallel (WaitForPar2=false) code paths.

Also bumps Node.js to v22 in CI workflows and adds tests covering:
- Sequential and parallel paths with maintain_par2_files=false
- Sequential and parallel paths with maintain_par2_files=true (peer files)
- Explicit cross-volume path separation scenario
Bump docker/setup-buildx-action v3→v4, docker/login-action v3→v4,
docker/build-push-action v5→v6, docker/metadata-action v5→v6, and
Zig compiler 0.14.1→0.15.1 across dev-build.yml and release.yml.
ubuntu-latest (Ubuntu 24.04) installs chromium-browser as a snap
wrapper which fails in CI due to snap store timeouts. The GitHub
Actions runner already ships google-chrome-stable, which the e2e
helpers already prefer as the first candidate.
…ration race

openSettingsTab was using WaitReady(body)+Sleep(300ms) before clicking
the target tab. In CI, the Svelte config fetch + {#if enabled} render
cycle can exceed 300ms, leaving the tab-panel content un-rendered when
WaitVisible polls for elements inside it.

Replace the fixed sleep with WaitVisible(tabSelector) which blocks
until the page has fully hydrated and the tab input itself is in the
DOM — a reliable signal that all tab-panel content is rendered.
@javi11 javi11 merged commit 6788f8f into main Apr 11, 2026
3 checks passed
@javi11 javi11 deleted the fix/folder-output-subdirectory-cross-volume branch April 11, 2026 17:18
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