Skip to content

Use one resolved Pictures root across Qt and the native core - #963

Merged
capy-ai[bot] merged 2 commits into
devfrom
capy/unify-media-pictures-root
Sep 16, 2026
Merged

capy-ai[bot] merged 2 commits into
devfrom
capy/unify-media-pictures-root

Conversation

@zortos293

Copy link
Copy Markdown
Collaborator

Changes

Resolve the Pictures directory in Qt and pass that root to the native core on every supported desktop platform, not only Flatpak. Use the same path policy for screenshot capture, copy, thumbnails, and recording targets.

Preserve explicit overrides and normalize nonempty paths to absolute paths. An explicit empty root means media storage is unavailable. The core reports a media-specific error instead of falling back to a directory relative to its working directory or failing unrelated startup work.

Verification

Independently reviewed the final Qt process-environment propagation and Rust path handling. Formatting, locked Clippy with warnings denied, and the full core suite passed, including three real-core process tests for media environment handling.

All 337 Qt tests passed across the independent suite and one interruption retry: 336 passed before a machine restart interrupted the performance test, and that remaining test passed when rerun. The three focused Qt tests also passed separately.

Regression coverage includes overrides, unavailable roots, platform fallback, capture and thumbnail path validation, and media errors without unrelated core startup failure.

Limits

Windows partial-path tests are present for Windows CI. Local Windows checks covered compilation and source-level path semantics, not execution on a Windows host. No live streaming account was used.

Open in Capy

@coderabbitai

coderabbitai Bot commented Sep 15, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: fccf7371-8c56-46a4-aed6-2996f76a47bd

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@capy-ai capy-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Capy found no issues.

View 2 other findings in Capy.

Open in Capy

@blacksmith-sh

This comment has been minimized.

@capy-ai

capy-ai Bot commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Pushed eefad519 to correct the Windows test setup. Qt 6.8's qputenv(name, "") removes the variable on Windows rather than setting an empty value, so the new tests were exercising the unset-variable fallback there. Those marker checks now skip only when the process cannot represent the required environment state. The portable real-core override test remains enabled and compares normalized paths.

The existing Rust child-process empty-marker test passed in the failed Windows job, so that contract still has Windows coverage. The job identified the three failing Qt binaries but did not expose their assertion output; the new Windows CI run must confirm the correction.

Independent Linux rerun passed all 28 ci-unit tests. The three affected binaries passed 56 individual tests with zero skips. Product code is unchanged.

@capy-ai
capy-ai Bot merged commit 94197b7 into dev Sep 16, 2026
14 checks passed
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