Issue & PR triage
Loading...
Showing 51 of 51 issues
| Issue | Title | Author | Age | Action | Impact ↓ | Actionability | Quick Win | Summary |
|---|---|---|---|---|---|---|---|---|
|
craft-parts issue #1641 |
uv plugin fails on core26: dispatch script uses system Python instead of venv | zyga | 106d | needs triage | 62 | 72 | 19 | core26 has no Python in the base snap, so uv-built parts find no interpreter in the payload and fall back to the system python, leaving venv/bin/python pointing at a bare interpreter that lacks ops. Fix options undecided. |
|
craft-parts issue #1780 |
A part's install directory doesn't get cleaned if the prior build failed. | lengau | 7d | needs triage | 60 | 80 | 38 | Install directory not cleaned after failed build, causing subsequent builds to fail with unclear errors. New issue with no labels or maintainer response. |
|
craft-parts issue #675 |
Python plugin is not idempotent on iterative builds due to faulty `PATH` set up | NucciTheBoss | 972d | needs triage | 58 | 88 | 27 | Python plugin iterative rebuilds can resolve python3 from the prior install venv, causing ensurepip to fail; the current legacy plugin still prepends install/bin to PATH and needs triage. |
|
craft-parts issue #822 |
[Python plugin]: Consider including a rust compiler by default | lengau | 800d | needs triage | 58 | 63 | 21 | Open, untriaged request to provision Rust by default for Python native-extension builds; the current Python v2 plugin requests neither build snaps nor build packages. |
|
craft-parts issue #1026 |
Part's source directory needs to be read-only | vpa1977 | 609d | needs triage | 58 | 58 | 9 | Request to protect part source directories from build-step mutations so subsequent builds produce consistent output; the reproducibility concern remains unassessed. |
|
craft-parts issue #561 |
Meson Plugin with python or gjs based app | soumyaDghosh | 1119d | needs triage | 58 | 67 | 15 | Meson-built Python/GJS apps retain invalid build-time shebangs and fail to launch; a reproducer is linked, but the unlabelled issue has no maintainer triage or fix. |
|
craft-parts issue #889 |
add "always run" plugin hook | flotter | 730d | needs triage | 58 | 57 | 10 | Requests an optional plugin hook that runs even when sources are unchanged, supporting build IDs and propagation of craft.yaml configuration; it remains untriaged. |
|
craft-parts issue #1122 |
craft-parts doesn't track primed files when using `override-prime` | mr-cal | 506d | needs triage | 58 | 91 | 34 | override-prime stores empty file metadata instead of tracking scriptlet-created content, breaking primed-stage-package manifests and related Snapcraft workflows. |
|
craft-parts issue #974 |
Python plugins install wheels for the host architecture, not the target architecture. | lengau | 652d | needs triage | 58 | 76 | 14 | Cross-compiled Python plugin parts can succeed while installing host-architecture wheels, leaving binary dependencies such as cryptography unusable; the report remains open and untriaged. |
|
craft-parts issue #806 |
sources module unaware of the environment | upils | 811d | needs triage | 57 | 82 | 24 | Source pulls reportedly ignore the consuming application's environment, so snap-packaged consumers can miss snap PATH tools and invoke incompatible binaries; the issue remains untriaged. |
|
craft-parts issue #1058 |
SCP formatted git source cause infinite loading when packing | alesancor1 | 575d | needs triage | 55 | 84 | 29 | SCP-style Git sources can wait indefinitely for SSH host-key input during pull instead of returning a clone failure; the issue remains open, unlabelled, and untriaged. |
|
craft-parts issue #1291 |
BUILD step of a part organizing to the overlay should invalidate overlay... | upils | 413d | needs triage | 55 | 82 | 25 | A part BUILD that organizes files into the overlay can change lower overlay layers without invalidating dependent OVERLAY steps; the precise reproducer exists but the open issue remains untriaged |
|
craft-parts issue #962 |
CI: create test workflow to build application docs upon changing `docs/common` | lengau | 658d | needs triage | 55 | 72 | 14 | Open CI feature request to build all downstream application docs when a PR changes docs/common, preventing reusable-documentation integration failures before merge. |
|
craft-parts issue #1217 |
cargo-use: support Rust workspaces better | Saviq | 429d | needs triage | 55 | 72 | 16 | Feature request: cargo-use plugin only supports a single crate (reads [package] from one Cargo.toml) and breaks on workspace crates that inherit metadata; proposal is a CARGO_PACKAGES key plus `cargo package --no-verify` build-override. Untriaged, no maintainer response. |
|
craft-parts issue #1666 |
Source pull step doesn't retry on transient network failures | lengau | 78d | needs triage | 55 | 62 | 20 | SourceHandler.download() in craft_parts/sources/base.py and GitSource._run() issue single un-retried requests.get()/git clone, so transient network errors fail the whole pull step. Unlabelled, no maintainer comments. |
|
craft-parts issue #674 |
Symlink fixing logic doesn't consider relative location changes when using organize | dilyn-corner | 975d | needs triage | 55 | 87 | 19 | Package normalization rewrites absolute symlinks before organize moves their link or target, leaving relative links dangling; a detailed reproducer exists, but the issue has not been maintainer-triaged. |
|
craft-parts issue #899 |
Craft parts should close stdin when cloning git projects | mr-cal | 721d | needs triage | 52 | 78 | 27 | Git source commands still inherit stdin, so private-repository prompts can hang or produce unhelpful failures in local and remote builds; this request remains open and untriaged. |
|
craft-parts issue #311 |
Permission changes in files are not detected | facundobatista | 1466d | needs triage | 52 | 84 | 25 | Valid local-source change-detection bug: chmod-only updates are ignored because the pull outdated check considers timestamps but not permission modes. |
|
craft-parts issue #1490 |
Fallback once to `snap download` if snap not found in global store | soumyaDghosh | 236d | needs triage | 48 | 64 | 14 | Private or dedicated-store build snaps are unsupported when absent from the global store; a one-time `snap download` fallback is requested. The issue has no labels, comments, or maintainer triage. |
|
craft-parts issue #1447 |
snap build fails if go must download the version | adombeck | 266d | needs triage | 48 | 92 | 31 | Go plugin validation misreads a toolchain-download message from stderr as the compiler version, so the first clean snapcraft pack fails while retries succeed; it remains unfixed and untriaged. |
|
craft-parts issue #772 |
Use `parallel_build_count` in plugins and document usage | mr-cal | 842d | needs triage | 48 | 76 | 21 | Parallel job limits are still absent from Rust and SCons build commands; auditing other plugins and documenting support remain open and untriaged. |
|
craft-parts issue #995 |
Create a general migration how-to for the `uv` and `poetry` plugins | lengau | 638d | needs triage | 45 | 82 | 26 | Add a tabbed migration how-to for users moving from the python plugin to uv or poetry; it remains open, untriaged, and no guide is present in the how-to index. |
|
craft-parts issue #237 |
Allow disabling common-directory removal code in tar source | zyga | 1591d | needs triage | 45 | 68 | 21 | Tar sources still unconditionally strip their detected common top-level directory. The opt-out request remains open, unlabeled, and awaiting maintainer triage; only an automated CRAFT-2968 Jira-sync comment exists. |
|
craft-parts issue #1754 |
Revert pkgconfig_fixup during prime stage | jonathan-conder | 28d | needs triage | 45 | 68 | 18 | Feature request to have _builtin_prime strip the /root/stage prefix that pkgconfig_fixup adds to .pc files during stage, so primed pkg-config files suit end consumers (e.g. Mir SDK). Brand new, no labels or maintainer response. |
|
craft-parts issue #1051 |
Rename overlay+partition specific env vars | upils | 587d | needs triage | 42 | 84 | 22 | Partition overlay variables still use CRAFT_[namespace_]partition_OVERLAY; the requested consistent CRAFT_[namespace_]partition_PART_OVERLAY rename remains unimplemented and needs triage. |
|
craft-parts issue #1613 |
uv: Support workspace packages arguments | pedro-avalos | 143d | needs triage | 42 | 58 | 18 | Feature request: add a `uv-packages` part property to the uv plugin so `uv sync` can be scoped with `--all-packages` or `--package=<name>`, enabling multi-package artifacts. Open, untriaged. |
|
craft-parts issue #1023 |
`subprocess.run` emitting wrapper | mattculler | 615d | needs triage | 40 | 42 | 8 | Feature request for a general subprocess.run-style wrapper that logs the command and prefixes each output line with ':: '; existing os_utils.process_run is a starting point. Awaiting maintainer direction on placement; volunteer asked in July 2026. |
|
craft-parts issue #1189 |
Add ability to handle Internet connection failures | ofry | 461d | needs triage | 40 | 32 | 4 | Feature request (external contributor, no maintainer response) to add a config/CLI option that retries failed builds or downloads N times after network failures such as unexpected EOF. Still untriaged in craft-parts. |
|
craft-parts issue #657 |
`python-extras` keyword for Python plugin | lengau | 993d | needs triage | 40 | 75 | 23 | Maintainer QoL feature request: add a `python-extras` key to the Python plugin so `pip install -U .[extras]` runs. Still unimplemented — the keyword appears nowhere in craft-parts, though the newer uv plugin already ships `uv-extras`. Untriaged; only comment is an autogenerated Jira-sync bot message. |
|
craft-parts issue #583 |
Documentation is missing important concepts and graphs | sergiusens | 1074d | needs triage | 40 | 28 | 8 | Maintainer-filed docs gap report (2024): the overlays and lifecycle explanation pages reportedly lack key concepts and diagrams. Only screenshots plus two readthedocs links; no labels, no maintainer triage, only a Jira bot comment. |
|
craft-parts issue #838 |
Validate snapd payload | sergiusens | 780d | needs triage | 38 | 62 | 16 | Validate snapd API JSON payloads in craft_parts/packages/snaps.py; raw json()["result"] access is still unvalidated, so TypeError: 'NoneType' object is not subscriptable can still surface. Maintainer-filed, no labels, no comments, untriaged. |
|
craft-parts issue #1546 |
Support download part source from FTP URLs | brlin-tw | 198d | needs triage | 38 | 62 | 12 | Feature request to support downloading part sources from FTP URLs; the code still raises NotImplementedError and the issue has no maintainer triage or comments. |
|
craft-parts issue #1328 |
Clean up return of `install_packages` | bepri | 401d | needs triage | 38 | 64 | 12 | Cleanup remains open: install_packages still returns package manifests that internal callers discard; PR #1671 removed the related list_only parameter but not the return contract. |
|
craft-parts issue #648 |
Provide better errors for failures to clear the apt cache | mr-cal | 1000d | needs triage | 35 | 85 | 24 | Enhancement request to wrap the apt cache rmtree in _populate_stage_cache_dir with try/except and raise an actionable error when the cache cannot be removed (e.g. sudo then non-sudo destructive runs). Still open, untriaged, tracked as CRAFT-2937. |
|
craft-parts issue #934 |
Rust plugin prevents from building a single package in workspace | artivis | 686d | needs triage | 35 | 75 | 21 | Rust plugin hardcodes `cargo build --workspace` in the virtual-workspace branch, so users cannot build a single/selected package; the `rust_cargo_parameters` workaround fails. Still present at HEAD, untriaged and unacknowledged. |
|
craft-parts issue #1470 |
Integration test for poetry plugin requires root/apt state (not marked,... | gcomneno | 249d | needs triage | 35 | 95 | 30 | Poetry integration tests run in non-privileged CI despite invoking apt; replacing the file marker with requires_root is locally validated, but maintainer triage is still absent. |
|
craft-parts issue #659 |
Docs: Document/cross-reference working directory and environment variables... | thp-canonical | 993d | needs triage | 35 | 84 | 22 | Open, untriaged documentation gap: Part properties does not cross-reference step environments, leaving override-pull/build/stage/prime working directories and variables hard to find. |
|
craft-parts issue #318 |
Provide a way to return all project variables | merlijn-sebrechts | 1445d | needs triage | 35 | 66 | 14 | Feature request to list all project variables through craftctl for debugging; it remains unimplemented and untriaged. |
|
craft-parts issue #750 |
Reference docs: Separate "library developer/user" content from "craft user" content | thp-canonical | 874d | needs triage | 32 | 76 | 14 | Reference docs remain a flat, mixed-audience index; Parts and Steps still combines permissions, environment, and output-directory material. The detailed restructuring proposal is open and untriaged. |
|
craft-parts issue #1493 |
go plugin: Add flag to run tests during build phase | steinbro | 232d | needs triage | 32 | 72 | 19 | Maintainer-filed feature request to add an `enable-checks` build attribute to the go plugin so `go test` runs as the final build command, plus a test and docs update. Unimplemented, unlabelled, no discussion. |
|
craft-parts issue #1232 |
ant plugin: Support `disable-parallel` parameter | lengau | 422d | needs triage | 30 | 45 | 10 | Ant plugin support for disable-parallel is unimplemented; the request remains open as Needs information, with maintainers requesting a real-world case that fails under parallel builds. |
|
craft-parts issue #196 |
Consider capturing all potentially invalid stage-packages before bailing | sergiusens | 1667d | needs triage | 30 | 72 | 14 | Requests validating all stage-packages and reporting every missing entry at once; still open, unlabelled, and awaiting maintainer triage beyond an automated Jira-sync comment. |
|
craft-parts issue #319 |
Support `--help` flag for craftctl | merlijn-sebrechts | 1445d | needs triage | 30 | 76 | 18 | Requested craftctl --help to list supported commands; current code still accepts only default, set, and get, and the request has not been maintainer-triaged. |
|
craft-parts issue #835 |
Document the creation and use of stage-packages filters | lengau | 784d | needs triage | 28 | 66 | 14 | Docs task from maintainer: write a how-to for registering stage-packages filters; still undocumented (docs/how-to/index.rst has no callbacks page) and the register_stage_packages_filter docstring still misleadingly says the mechanism "is now deprecated". |
|
craft-parts issue #456 |
Explain how `stage` and `prime` work in the docs | ca-scribner | 1260d | needs triage | 27 | 84 | 18 | Current docs explain install-to-stage-to-prime migration and fileset filtering, but omitted stage/prime defaults remain implicit; #921 still requests fuller key-reference coverage. |
|
craft-parts issue #1239 |
gradle plugin: Support `disable-parallel` parameter | lengau | 422d | needs triage | 25 | 40 | 7 | Feature request: add `disable-parallel` support to the gradle plugin. Maintainer labels it low-priority, 'Needs information', asking for a real-world use case that fails under parallel builds; design (None/False/True) sketched in a comment. |
|
craft-parts issue #1237 |
go plugin: Support `disable-parallel` parameter | lengau | 422d | needs triage | 25 | 45 | 9 | Adding disable-parallel support to the Go plugin remains open and low priority, pending a concrete real-world use case or application that fails with parallel builds. |
|
craft-parts issue #1236 |
dotnet (v2) plugin: Support `disable-parallel` parameter | lengau | 422d | needs triage | 25 | 45 | 9 | dotnet v2 ignores disable-parallel, but maintainers labeled it Needs information and requested a real-world failure case; none was provided in 395 days. |
|
craft-parts issue #1707 |
Drop extraneous type checks | mr-cal | 58d | needs triage | 25 | 45 | 8 | Maintainer cleanup task to remove redundant runtime type checks (e.g. the isinstance(dict) guard in PartSpec.unmarshal); open, unlabelled, no comments, and only one example site given. |
|
craft-parts issue #1326 |
Investigate support for fetching chisel slices | bepri | 401d | needs triage | 25 | 45 | 5 | Feature request to support fetching Chisel slices as packages. Slices are now cut at unpack-time via a separate stage-slices key, so the original fetch-time TODO appears superseded; lengau noted upstream Chisel would need to split download/unpack. |
|
craft-parts issue #670 |
Format partition warnings and errors inside the error class | mr-cal | 980d | needs triage | 20 | 80 | 11 | Maintainer-authored refactor: pass unformatted partition warning/error data to PartitionUsageError/Warning and let the error classes do the indenting, instead of building pre-indented strings in parts.py. Still open, unlabelled, only a Jira sync bot comment. |