Issue & PR triage

Loading...

Showing 83 of 83 issues

Issue Title Author Age Action Impact ↓ Actionability Quick Win Summary
craft-providers
issue #430
Improve integration tests mr-cal 1105d keep open 72 68 11 Integration tests remain disk-bound: LXD images consume nearly all GitHub runner storage, and the proposed Spread migration or pytest cleanup/parametrization overhaul is still unresolved.
craft-providers
issue #584
Catch `FileNotFound` for all `subprocess.run()` calls mr-cal 861d keep open 70 80 28 Enhancement to catch FileNotFoundError from subprocess.run() calls across craft-providers and raise ProviderError for better user-facing error messages. Still open.
craft-providers
issue #508
LXD Provider requires a local installation of LXD on macOS jat-canonical 993d keep open 68 70 10 Remote-LXD builds remain unavailable on macOS and Windows because provider checks still require a local LXD install, despite acknowledged demand and partial low-level remote support.
craft-providers
issue #895
Add a LXD VM provider lengau 275d needs triage 66 58 13 Add a VM-backed LXD provider for Imagecraft loop-device support; the requested capability remains open and is absent from the current provider tree.
craft-providers
issue #828
Allow getting the apt proxy from the user's apt settings lengau 408d keep open 66 78 22 Add support for propagating host APT proxies, including Proxy-Auto-Detect results refreshed during each machine warmup; the enhancement remains open and unimplemented.
craft-providers
issue #665
Add a callback hook to allow users to configure a base on warmup before... lengau 764d close resolved 65 91 34 Merged PR #788 adds a prepare_instance callback before base setup, enabling early apt and proxy configuration; the callback is not literally inside warmup, but the requested capability is implemented.
craft-providers
issue #259
Cannot launch lxd instance with high uids mr-cal 1282d close resolved 65 95 40 LXD launches failed for host UIDs above 65,535; commit 5717e2c and PR #780 now configure separate UID and GID raw.idmap entries, resolving the reported failure.
craft-providers
pr #948
test: failing reproducer - snap developer-id not asserted lengau 190d needs review 62 58 22 Parses developer-id from snap-revision and asserts the developer account in _get_assertions_file (fix for #445); fix added by copilot-swe-agent. CI green, 0 reviewers, 1 unresolved comment, inactive 34 days.
craft-providers
issue #830
Provide an asynchronous API for starting and handling instances lengau 407d keep open 62 40 5 Triaged enhancement to add a non-blocking API for launching/handling provider instances, unblocking parallel multi-base builds. No async code has landed; core design (true async vs non-blocking) still undecided.
craft-providers
issue #531
Provide a way to set Multipass CPU and memory mr-cal 960d keep open 60 80 34 Enhancement request to make Multipass CPU and memory configurable instead of hardcoded 2 CPU/2GB, which currently causes slow or failed builds.
craft-providers
issue #381
Improve integration tests mr-cal 1170d keep open 58 74 10 Integration-test overhaul is partially implemented: weekly macOS fast/slow jobs and pytest timing exist, but base-instance behavior tests and full base/provider coverage remain absent.
craft-providers
issue #684
Create a generic craft LXD profile dilyn-corner 749d needs triage 58 50 13 A dedicated craft LXD profile is proposed to isolate build containers from user-edited defaults; the open enhancement still needs a decision on shared versus per-user profiles.
craft-providers
issue #880
Support LXD backend on non-Linux hosts lengau 318d keep open 57 64 12 Maintainer-authored enhancement to use the LXD provider on non-Linux hosts through a configured remote or VM. Remote arguments exist, but availability checks still require local LXD.
craft-providers
issue #454
Using default compatibility tag can cause DNS name conflicts mr-cal 1084d keep open 56 89 28 Missing compatibility tags still produce identical LXD base-instance names across projects, causing DNS conflicts and failed launches; the proposed warning and API redesign remain unimplemented.
craft-providers
issue #789
Checking the compatibility tag should be more robust bepri 444d keep open 55 68 23 Open maintainer enhancement: compatibility checks still treat missing, None, or empty tags as compatible instead of failing or requiring investigation.
craft-providers
issue #391
LXD issue when build multiple charms in parallel beliaev-maksim 1154d close resolved 55 78 33 Parallel LXD charm builds failed with a snapd 'daemon is stopping' error during `snap watch`. Fixed by retrying snap watch in commit e0f6bc7 (PR #899), released in 3.3.0; issue still open awaiting closure.
craft-providers
issue #907
Rename base instances to template instances lengau 260d keep open 55 90 21 Planned API-wide rename of “base instance” to “template instance,” including provider methods, hooks, launch behavior, and on-disk names; current code still uses the base terminology.
craft-providers
pr #1010
fix: improve robustness of compatibility tag cmatsuoka 61d needs review 52 74 22 Rejects instances with missing compatibility tags, centralizes config loading and error handling, and updates tests; lint and fast checks pass while five slow CI jobs remain pending.
craft-providers
issue #765
Set up weekly tests for tests that don't need to run on each PR lengau 486d close resolved 52 90 29 Weekly Linux LXD integration coverage now exists, but the issue remains open despite its implementation in PR #857.
craft-providers
issue #445
`developer-id` of the `snap-revision` is not asserted mr-cal 1086d keep open 52 94 30 Host snap injection still omits the snap-revision developer account, causing transferred snaps such as Rockcraft 1194 to fail assertion; open PR #948 proposes a tested fix.
craft-providers
issue #544
Managed instance names don't take the base into account tigarmo 980d keep open 52 90 29 Managed instances still do not persist and compare build-base, allowing a reused Ubuntu devel instance to bypass version validation; the triaged fix is to store it in InstanceConfiguration.
craft-providers
issue #625
Drop Centos 7 support lengau 804d keep open 51 88 26 CentOS 7 remains exposed by craft-providers despite Charmcraft 4 removing its use; this valid enhancement still needs the provider base, alias, remote image, and tests removed.
craft-providers
issue #452
macOS CI is failing in PRs mr-cal 1084d keep open 50 55 7 macOS PR CI fails without logs; qa.yaml multipass/smoketest jobs commented out as a temporary workaround (#982), but root cause (runner timeout/disconnect) unfixed and weekly macOS jobs still fail per #467. Reopened by bepri.
craft-providers
issue #884
Enable Ubuntu minimal builds lengau 317d keep open 48 65 18 Maintainer-filed enhancement to let the LXD backend use Ubuntu minimal images; LXD still hard-maps Ubuntu aliases to coreXX images, with no implementation evidence.
craft-providers
issue #517
Multipass: Use native mounts where available lengau 973d keep open 48 90 29 Multipass mounts still use classic SSHFS because the provider does not detect the active driver or pass `--type native`; this open enhancement targets faster mounts on Hyper-V, QEMU, and LXD.
craft-providers
issue #211
multipass: better error handling when images are unavailable mr-cal 1360d keep open 48 78 22 Multipass launch gives generic errors when Snapcraft images are unreachable or unsupported on arm64; this acknowledged enhancement remains open with a downstream report and internal ticket.
craft-providers
issue #399
Loading the instance config should be more robust mr-cal 1140d keep open 48 68 22 InstanceConfiguration still rejects unknown YAML fields, preventing compatibility-tag cleanup when a config was written by a newer Charmcraft version; no final design has been chosen.
craft-providers
issue #646
Consider switching from using the LXD CLI to pylxd lengau 790d keep open 48 46 6 Partially underway: pylxd handles some interactions, but most provider operations still use the LXC CLI; maintainers deferred reassessment until the LXD 6.x migration.
craft-providers
issue #794
Warn if requested specs don't match the existing instance bepri 443d needs triage 48 46 11 Existing instances are reused without validating requested hardware settings; a maintainer asked for elaboration, but the mismatch policy and covered specifications remain unspecified.
craft-providers
issue #821
Unmount nonexistent directories on start lengau 415d keep open 48 58 13 Open, triaged enhancement to remove stale host-directory mounts before starting reused instances; missing-path validation is proposed, but the full decision rule remains unspecified.
craft-providers
issue #714
craft-providers error: Timed out waiting for networking to be ready. nteodosio 657d needs triage 48 45 8 Open Type: Bug report: Snapcraft 8.5.1 LXD builds time out while getent checks DNS for snapcraft.io; host/network context and a part YAML are missing, leaving the root cause unknown.
craft-providers
pr #932
Work/ci linux multipass lengau 224d keep open 45 22 4 Maintainer WIP enabling Multipass integration tests on Linux CI (uncommenting test-multipass in qa.yaml); +293/-178 over 5 files. Idle 196 days, 0 reviews/comments; policy and macOS slow-integration checks failing. Tracks open issue #754.
craft-providers
issue #796
Improve approach to waiting for Multipass start bepri 443d keep open 45 75 24 Enhancement: replace hardcoded 20s sleep after Multipass install with polling until multipassd is ready. TODO still in installer.py, triaged, but may be blocked by upstream canonical/multipass#1995.
craft-providers
pr #900
feat(base): cache uv directory carlcsaposs-canonical 265d needs review 45 72 24 Adds uv cache directory mounting to Base._mount_shared_cache_dirs (mirroring merged pip-cache PR #394), fixing charmcraft#2461. Approved, lint fixed via merged #910, slow tests still pending.
craft-providers
issue #281
multipass: do not always use sudo to execute commands mr-cal 1255d keep open 45 88 29 MultipassInstance still always rootifies execute_run() and execute_popen() through _rootify_multipass_command; the requested per-call use_sudo option remains absent.
craft-providers
issue #946
Install snapd from a user-defined channel mr-cal 191d keep open 45 77 19 Triaged enhancement to honor CRAFT_SNAPD_CHANNEL by refreshing and tracking snapd; current code still apt-installs snapd, and snapd injection was suggested.
craft-providers
issue #449
Handle SIGINT mr-cal 1086d keep open 43 76 18 Maintainer-labeled enhancement remains open: Ctrl-C during LXD base setup can leave a non-ephemeral base running; current code stops many setup failures but does not guarantee removal.
craft-providers
issue #304
Base _setup_wait_for_system_ready should use systemctl's --wait parameter lengau 1238d keep open 42 74 19 Enhancement to replace polling of systemctl is-system-running with native --wait; it remains unimplemented and needs CentOS 7 handling plus a Xenial compatibility decision.
craft-providers
pr #723
feat(bases): make BaseName compatible with craft-platforms lengau 631d close superseded 42 10 2 Adds BaseName convenience methods and DistroBase-compatible API types. Open for 603 days without reviews or reported CI and apparently superseded by craft-platforms#44.
craft-providers
pr #876
ci: add weekly tests on a variety of distros lengau 320d keep open 42 12 3 Adds a weekly LXD integration-test matrix for Debian, Fedora, Rocky Linux, CentOS Stream, AlmaLinux, openSUSE, and Mint; every new distro job is failing and the unreviewed PR has had no activity for 293 days.
craft-providers
issue #212
Incorrectly handling SNAPCRAFT_MAX_PARALLEL_BUILD_COUNT stolk 1360d keep open 42 64 10 SNAPCRAFT_MAX_PARALLEL_BUILD_COUNT not honored and Multipass instances hardcoded to 2 CPUs. Maintainer triaged; still unfixed in craft-providers (cpus=2 at multipass_provider.py:300), provider-side work split out to #531, snapcraft-side partly fixed in 8.4.4.
craft-providers
pr #824
feat: add a `get_base` factory function lengau 414d needs review 42 76 17 Adds a public get_base factory with documentation and tests; all 13 CI checks pass, but after 386 days it remains unreviewed with no comments.
craft-providers
issue #119
Provide fixtures / some helpers to test an application using craft-providers jugmac00 1641d needs triage 42 48 8 Enhancement request for reusable public test fixtures/helpers that simplify downstream mocking of elaborate LXD JSON responses; remains open, uncommented, and not maintainer-triaged.
craft-providers
issue #873
Switch from external tmate to the Canonical tmate action lengau 321d keep open 42 86 33 Triaged refactor: replace mxschmitt/action-tmate@v3 with canonical/action-tmate in 3 workflow steps (check-renovate.yaml; tests-weekly.yaml x2). Still unmodified at HEAD; prerequisite for self-hosted runners.
craft-providers
issue #583
Documentation for network connectivity mr-cal 861d keep open 40 80 26 Open documentation request to add network connectivity troubleshooting guides for LXD and Multipass. The how-to docs are empty; only a partial Docker/iptables note exists in explanation/.
craft-providers
pr #1026
fix: include unknown Ubuntu version in compatibility warnings Shahzeb-DataEngineer 14d needs review 40 35 10 Improves compatibility warnings to include unknown Ubuntu versions instead of raising errors. Has 3 unresolved review comments and no reviewers yet.
craft-providers
issue #703
Allow pointing to daily or release buildd images for LXD mr-cal 728d keep open 40 76 19 Enhancement to let LXD select Ubuntu buildd daily or release images, including through app configuration, remains open; the current remote is hard-coded per Ubuntu alias.
craft-providers
pr #998
ci: enable and stabilize multipass tests in QA lengau 77d needs review 40 48 11 Maintainer CI PR enabling multipass integration tests in qa.yaml on a large self-hosted runner (LXD disabled), wiring setup-tests to install-multipass, waiting on multipassd with diagnostics, and fixing bytes-vs-string and cache-mount test assertions. All listed checks pass; 5 review comments unresolved.
craft-providers
issue #754
Run Multipass tests on Linux CI lengau 513d keep open 40 70 11 Enhancement to run Multipass integration tests on Linux CI (nested virt now available). Still open: qa.yaml's test-multipass job remains commented out and WIP PR #932 is inactive with failing checks.
craft-providers
issue #766
Switch centos and almalinux containers to use images.lxd.canonical.com lengau 486d keep open 40 82 26 Maintainer-filed enhancement (lengau, labelled Type: Enhancement) asking to point CentOS 7 and AlmaLinux 9 LXD remotes at images.lxd.canonical.com; code at HEAD still uses images.linuxcontainers.org. Unimplemented, no discussion.
craft-providers
issue #383
bumping the compatibility tag should be more robust mr-cal 1169d keep open 38 84 22 Tests still hardcode buildd-base-v7 while production derives it from Base.compatibility_tag, leaving compatibility-tag bumps vulnerable to inconsistent test updates.
craft-providers
pr #1011
chore: reduce verbosity of timer logging cmatsuoka 61d needs review 38 45 14 Changes the LXD instance heartbeat from 3 to 30 seconds and removes per-update timer logging; one slow test is failing and three review comments remain unresolved.
craft-providers
issue #858
Error when setting up almalinux test lengau 327d close resolved 38 87 19 AlmaLinux unit setup exposed a leaked InstanceTimer thread exception; cleanup was later fixed by #996, leaving this open issue apparently resolved.
craft-providers
issue #213
Use alternate lxd profiles cmatsuoka 1353d keep open 38 45 9 Enhancement request (by maintainer cmatsuoka) to allow alternate LXD profiles, e.g. CRAFT_PROVIDERS_LXD_PROFILE(S), for devs with multiple pools. mr-cal replied with design questions (plural list, global vs per-app) still unanswered; no code implements profiles.
craft-providers
issue #969
BuilddBaseAlias enum lookup raises bare ValueError — should raise a typed error tonyandrewmeyer 149d close resolved 38 94 28 Resolved: compatibility checks now catch unknown host and guest Ubuntu VERSION_IDs and skip validation instead of leaking BuilddBaseAlias ValueError; no typed error was added.
craft-providers
issue #795
Verify present addresses when adding a remote bepri 443d keep open 38 68 16 Enhancement remains open: RemoteImage.add_remote checks only remote_name, so an existing address under another LXC remote name is not detected; address-level handling and tests are missing.
craft-providers
issue #942
Feature Request for custom software mirror Kxuan 196d keep open 38 58 13 Requests a craft-providers env var (like legacy SNAPCRAFT_BUILD_ENVIRONMENT_PRIMARY_MIRROR) to point Ubuntu build instances at a custom APT mirror; unimplemented, 0 comments, no maintainer response, still untriaged.
craft-providers
pr #808
chore: prepare for Python 3.14 lengau 440d close superseded 35 15 3 Adds Python 3.14 and free-threaded CI coverage, but has 14 failing checks and was tracked as superseded by craft-providers#1509 after PyO3 0.26 support landed.
craft-providers
issue #929
Multipass is needed for TICS coverage bepri 227d close resolved 35 80 21 TICS workflow needed Multipass installed to run coverage. Resolved by merged PR #991 (6c4b99c), which added an install-multipass Makefile target wired into setup-tics; subsequent TICS run succeeded. Only the flaky multipass_instance test module remains excluded.
craft-providers
issue #901
Remove mypy and pyright mr-cal 265d keep open 35 88 23 Drop mypy/pyright in favour of ty. Makefile, CI and pyproject already use ty only; common.mk still defines lint-mypy, lint-pyright, install-pyright, and stale .gitignore/type: ignore entries remain. Mirrors snapcraft#6007 and craft-cli#420, both completed.
craft-providers
issue #582
Add support for Xenial jugmac00 862d keep open 35 60 7 Enhancement request to add Xenial (16.04) support to craft-providers. Mapping is missing from remotes.py and snapd commands need version abstraction for older snapd on Xenial. Issue acknowledged by maintainer as non-trivial scope.
craft-providers
issue #793
Warn about unused parameters in subprocess calls bepri 443d keep open 35 82 20 LXC and Multipass still omit timeout and check when exec uses subprocess.Popen, so the requested warning for silently discarded parameters remains unimplemented.
craft-providers
issue #467
macOS CI is failing weekly tests mr-cal 1065d needs triage 35 25 3 Maintainer-tracked CI issue: macOS runners drop connection after ~1h losing all logs, so flaky macOS integration tests were pushed out of PR CI (#452) into the weekly workflow. Still open, no logs or reproducer captured.
craft-providers
issue #657
check the storage space before trying to spin container dariuszd21 770d keep open 35 32 6 Maintainer-filed enhancement to warn (or fail early) when host/LXD storage is nearly full before spinning up a build container; still open, with ownership and a concrete threshold unresolved after lengau questioned whether craft-providers is the right place.
craft-providers
issue #450
Timer thread logging is overly verbose mr-cal 1086d keep open 33 86 22 Maintainer-filed enhancement to quiet timer-thread output and refresh every 30 seconds instead of 5; the current LXD readiness loop still logs full status and timer details every 3 seconds.
craft-providers
issue #711
Rebase craft-providers on starbase mattculler 660d close resolved 32 72 6 Maintainer request to rebase craft-providers on canonical/starbase for a unified dev approach; completed via #786/#787 and follow-up starbase merges, and CI has since moved to starflow.
craft-providers
pr #931
ci: add support for Python 3.14 lengau 224d needs review 32 52 13 Adds Python 3.14 to CI matrices (qa.yaml, weekly macOS workflows, likely lockfile constraints). 18/19 checks pass; integration-slow-macos (3.14, macos-14-large) fails. No reviewers, no comments, idle 196 days.
craft-providers
issue #172
Check for docker upstream iptables installation for proper error message sergiusens 1452d keep open 32 66 11 Enhancement to detect docker-installed iptables rules that break LXD networking and fail early with a fix suggestion. Tracked as CRAFT-1683; not implemented in source (only docs added).
craft-providers
issue #312
Integration tests are slow due to fixture ordering mr-cal 1233d keep open 32 62 14 Enhancement: integration tests provision LXD instances before the installed_snap fixture can skip, wasting time; current test_snap_installer.py signatures still list core22_lxd_instance first. Unaddressed.
craft-providers
issue #116
Better parameter documentation for `execute_run` -> `command` jugmac00 1645d keep open 32 88 21 execute_run still documents command only as “Command to execute”; users need explicit argument-list, escaping, and shell-feature guidance, leaving this triaged documentation request unresolved.
craft-providers
issue #970
Test on Python 3.14 and Ubuntu 26.04 (Resolute) lengau 148d needs triage 30 60 14 Request to add Python 3.14 and Ubuntu 26.04 testing to CI. A previous PR (#971) failed and was closed, leaving the tracking issue open without maintainer review or labels.
craft-providers
pr #949
test: failing reproducer - no error for high UID (>65535) lengau 190d keep open 30 25 7 Adds failing reproducer test test_set_id_map_raises_for_high_uid showing _set_id_map() lacks a uid>65535 check; the actual fix is described but NOT implemented. Red by design on 4 test-basic jobs, 0 reviews, idle 163 days.
craft-providers
issue #468
Check for a running process should be more fine-grained mr-cal 1065d keep open 28 82 18 Enhancement: the LXD launcher's creator-PID liveness check only tests Path('/proc/<pid>').exists(); suggested fix is to also verify /proc/<pid>/cmdline is a python process so PID reuse triggers immediate cleanup instead of a 60s wait. Still unimplemented.
craft-providers
issue #792
Create an inner class for LXD variables bepri 443d keep open 28 58 8 Maintainer-filed enhancement to group LXD launcher variables into an inner class/dataclass to shrink launch()'s long parameter lists; still open, approach under discussion.
craft-providers
issue #791
Move troubleshooting info on explanation index bepri 443d keep open 28 84 18 Documentation cleanup remains open: network troubleshooting is still embedded in the explanation index, and NetworkError still links to that index.
craft-providers
pr #881
ci: add Linux multipass weekly tests lengau 318d close superseded 25 10 2 Adds Linux Multipass jobs (latest/candidate, latest/edge) to tests-weekly.yaml; both new linux-multipass checks fail, no reviews or activity for 290 days. Superseded by WIP PR #932.
craft-providers
issue #894
docs: odd Explanation tree/page rendering steinbro 279d keep open 22 82 13 Docs bug: the "Failure to properly execute commands that depend on network access" section lives inline in docs/explanation/index.rst with a _network-error label but is not in the toctree, so it renders in the page body yet not in the sidebar.
craft-providers
pr #817
ci: enable macos for multipass tests lengau 420d close stale 15 10 1 Adds macOS (macos-14-large) to the multipass slow-test CI matrix (+10/-10 in the old tests.yaml). Inactive 386 days; macos-14-large and minimum-deps jobs fail and it targets a workflow file since deleted.
craft-providers
issue #420
docs: bring all starter pack documentation checks into tox lengau 1119d close stale 15 90 11 Starter-pack documentation checks now run through the Make/uv docs-lint workflow; tox was removed, making the request to integrate them into tox obsolete.
craft-providers
pr #950
test: failing reproducer - no warning for default compatibility tag lengau 190d keep open 10 28 3 Adds a 21-line failing reproducer test (test_default_compat_tag_logs_warning) for issue #454: BuilddBase with the default compatibility tag logs no warning. No fix included; fast/min-deps CI red, unreviewed for 163 days.
craft-providers
issue #271
LXD integration tests incompatible with canonical/setup-lxd mr-cal 1261d close stale 8 20 1 Old request to make LXD integration tests work with canonical/setup-lxd user/group permissions. The tests.yaml workflow that motivated it was deleted (b2b9b81) and CI moved to Starflow, making the request obsolete.
craft-providers
pr #859
fix: add explicit test IDs to environment parametrizations Copilot 327d close superseded 5 8 0 Adds explicit pytest IDs to three unit-test files; inactive for 300 days and unreviewed. It does not fix the reported timer failure, which was addressed separately by #996.
craft-providers
pr #1033
fix(lxd): retry instance start on forkstart errors GreyViperTooth 2d ? ? ?