Skip to content

Return failure when any imported package installation fails - #55

Merged
Marc-André Moreau (mamoreau-devolutions) merged 1 commit into
Devolutions:masterfrom
theKBro:fix/import-failure-exit-code
Oct 19, 2026
Merged

Marc-André Moreau (mamoreau-devolutions) merged 1 commit into
Devolutions:masterfrom
theKBro:fix/import-failure-exit-code

Conversation

@theKBro

Copy link
Copy Markdown
Contributor

Changes import processing in Rust and .NET to retain package failures through the complete import run, continue attempting later packages, and return exit code 1 if any non-ignored package fails. A later success, ignored unavailable package, or no-op cannot clear an earlier failure.

Fixes .NET's unavailable-package classification to recognize the core repository's actual no package matched the supplied query message as well as the existing spelling. Recognized package-not-found and no-applicable-installer errors remain ignorable with --ignore-unavailable; installer exit failures, hash verification errors, and arbitrary exceptions are not ignored.

Preserves successful package-level dry-run behavior, including Rust search errors and missing packages, without invoking installers. Dry-run does not mask file parsing or repository initialization errors. No-op results and --no-upgrade skips remain successful. .NET installed-state lookup errors are now handled per package, so they cannot stop later packages from being processed.

Adds handler-level regression coverage in both implementations for mixed failure/success imports, thrown installer errors, --ignore-unavailable, dry-run, and no-op behavior. Additional cases cover .NET installed-state lookup failures and Rust discovery errors. Updates the README's import behavior and compatibility limits.

@mamoreau-devolutions
Marc-André Moreau (mamoreau-devolutions) merged commit cd71a3e into Devolutions:master Oct 19, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants