parts: Do not import craft_parts.packages.deb until needed
Metadata
Current evaluation
Merged to defer importing craft_parts.packages.deb until needed, resolving failures on non-deb systems. Approved by reviewers, passed CI checks, and integrated into main.
Suggested action: —
No scores available.
Issue body
Importing craft_parts.packages.deb on non-deb systems fails. So this
import should only happen when in the container or VM.
Fixes https://bugs.launchpad.net/snapcraft/+bug/1981979
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `make lint`?
- [x] Have you successfully run `pytest tests/unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged to defer importing craft_parts.packages.deb until needed, resolving failures on non-deb systems. Approved by reviewers, passed CI checks, and integrated into main. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into main. Defers importing craft_parts.packages.deb to prevent failures on non-deb systems, resolving bug #1981979. The change achieved 100% test coverage and was successfully integrated. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into main. Defers importing craft_parts.packages.deb until execution to prevent failures on non-deb systems. Resolves Launchpad bug #1981979 with full test coverage. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #294 docs: import Craft Parts documentation fragments | rockcraft | merged | Merged after two reviewers approved and requested rebasing to sync with main. The change imports Craft Parts documentation fragments. CI passed, and preview confirms successful integration pending a Craft Parts release. | |
| #3636 parts: integrate craft-parts (CRAFT-765) | snapcraft | merged | Merged after reviewer approval and passing CI checks. Integrates craft-parts for part validation and lifecycle processing. Modifies 12 files, adding 369 lines and removing 20, fulfilling CRAFT-765. | |
| #5031 build(deps): bump craft-parts | snapcraft | merged | Merged dependency update bumping craft-parts to fix an npm plugin bug where implicit state failed to pass between separate pull and build steps. Approved by two reviewers, passed CI, and integrated into the codebase. | |
| #132 build: pin craft-parts to keep organize from build | debcraft | merged | Merged a craft-parts dependency pin to preserve organize-from-build in Debcraft builds during a Craft Parts regression investigation. Approved, passed CI, and includes a comment specifying unpinning conditions. | |
| #879 build(deps): bump craft-parts | rockcraft | merged | Merged dependency update bumping craft-parts to 2.9.1, resolving a uv version issue. Approved by two reviewers, passed all CI checks, and merged successfully, modifying two files. | |
| #107 craft_parts: export PartsError in base package (CRAFT-456) | craft-parts | merged | Merged after two approvals and passing CI. Exports PartsError from the craft_parts base package via a single-line change, enabling applications to catch the exception directly without internal module references. | |
| #207 build(deps): use craft-parts 2.23.0 | imagecraft | merged | Merged following three approvals and successful CI validation. Updated the craft-parts dependency to version 2.23.0, modifying six files with a net addition of 115 lines. | |
| #1334 refactor(parts): move craft-parts related things into their own package | charmcraft | merged | Merged a refactor that moves craft-parts components into a dedicated package. Approved by two reviewers with zero unresolved comments. The change modifies 16 files, adding 960 lines and removing 794. | |
| #1021 requirements: update craft-parts to 1.18.1 | charmcraft | merged | Merged dependency update to craft-parts 1.18.1, fixing ignored file patterns during local source processing. Approved by one reviewer with passing CI checks. | |
| #145 release: craft-parts 1.0.3 (CRAFT-576) | craft-parts | merged | Merged release of craft-parts 1.0.3. Changes include proper public API declarations, support for non-snap applications on non-apt systems, and switching to Bash as the script interpreter. Approved by one reviewer and passed CI checks. |