Issue & PR triage
Loading...
Showing 100 of 137 issues
| Issue | Title | Author | Age | Action | Impact ↓ | Actionability | Quick Win | Summary |
|---|---|---|---|---|---|---|---|---|
|
craft-application issue #1143 |
LifecycleService should turn on part_builld_subdir for future bases (e.g.... | lengau | 99d | keep open | 68 | 70 | 29 | Maintainer-filed change to use Craft Parts' part_build_subdir for Ubuntu 27.04+ builds; valid but blocked on canonical/craft-parts#1652. |
|
craft-application pr #994 |
feat(RequestService): retry upon ChunkedEncodingError | zhijie-yang | 277d | needs review | 65 | 75 | 27 | Adds retry handling for ChunkedEncodingError in RequestService downloads; approved with 1 unresolved review comment, CI passing |
|
craft-application issue #1205 |
remote build: stale git repositories on launchpad | enriqueesanchz | 28d | needs triage | 64 | 78 | 19 | New, unlabelled report documents several remote-build paths orphaning about 20,000 Launchpad git repositories and proposes a best-effort, bounded cleanup sweep; no maintainer response yet. |
|
craft-application issue #792 |
http auth token occasionally leaked | setharnold | 490d | keep open | 64 | 88 | 37 | Triaged security bug: short-lived Launchpad HTTP tokens can appear in remote-build git failure logs; current code still streams unsanitized git output. |
|
craft-application issue #914 |
Allow building/packing multiple platforms in parallel. | lengau | 407d | keep open | 64 | 76 | 14 | Triaged enhancement to run builds for multiple planned platforms concurrently; lifecycle commands still process build-plan items sequentially through provider.run_managed. |
|
craft-application pr #1206 |
Issue 1205 remote clean build stale repos | enriqueesanchz | 28d | needs review | 60 | 60 | 16 | Adds best-effort cleanup of stale Launchpad git repositories during remote builds; under review, CI title check failing and tests pending. |
|
craft-application issue #1119 |
Prepare instance environment in LP builds | cmatsuoka | 115d | keep open | 58 | 59 | 13 | Launchpad builds still need instance proxy configuration equivalent to local policy-enabled builds; the maintainer-authored requirement is triaged and open, with only an internal CRAFT-5255 sync comment. |
|
craft-application issue #821 |
5.5.0 changes pack semantics if the project file has different metadata | javierdelapuente | 462d | close resolved | 58 | 98 | 31 | Metadata-only charmcraft.yaml edits were skipped as "Already packed," leaving stale .charm artifacts; Charmcraft PR #2890 is reported to fix repacking after the edit. |
|
craft-application issue #261 |
Commands cannot always load projects with advanced grammar | mr-cal | 962d | close resolved | 58 | 94 | 26 | Resolved by PR #279: commands now auto-select a build target and process advanced grammar even when build-for and platform are omitted. |
|
craft-application issue #386 |
Explicitly separate public and private APIs | lengau | 835d | needs triage | 58 | 46 | 6 | API visibility remains undefined: launchpad and remote already expose __all__, but no policy classifies them as public or private and no implementation plan is provided. |
|
craft-application issue #676 |
Use a different instance name when using the fetch service | lengau | 602d | needs triage | 56 | 61 | 19 | A separate provider-instance name is requested for fetch-service runs so they do not destroy the normal build instance; the issue remains open, unlabelled, and without discussion. |
|
craft-application issue #915 |
Enforce that the build and run base are the same* base | lengau | 405d | keep open | 55 | 72 | 17 | Maintainer request to reject mismatched build-base/base pairs, with exceptions for bare, development, legacy overrides, and base snaps; still open. |
|
craft-application issue #313 |
Support local key assets for package-repositories | tigarmo | 924d | close resolved | 55 | 85 | 30 | Feature request to support local key assets (e.g. snap/keys) in package-repositories instead of hardcoding /dev/null. Resolved by merged PR #317 (071ad272), which added a local_keys_path parameter and an overridable _get_local_keys_path() hook. |
|
craft-application issue #348 |
Rewrite default `_providers_base()` command. | mr-cal | 896d | keep open | 55 | 80 | 22 | Maintainer request for Project._providers_base() to translate a bare 'devel' build-base to craft_providers BuilddBaseAlias.DEVEL, and effective_base to match. Still unimplemented at HEAD; no labels, quiet since May 2024. |
|
craft-application issue #344 |
remote build: provide a way to set application snap channel | lengau | 899d | keep open | 55 | 72 | 23 | Triaged enhancement remains open: Launchpad remote builds lack user-facing application snap channel selection, and downstream Snapcraft and Charmcraft work depends on this plumbing. |
|
craft-application issue #420 |
Rework PackageService API | lengau | 806d | keep open | 55 | 80 | 20 | Maintainer-authored PackageService API rework remains open; current code still has pack(prime_dir, dest), abstract metadata, and write_metadata(path). |
|
craft-application issue #881 |
Rewrite the development base check to use distro-support | lengau | 426d | keep open | 55 | 62 | 18 | Replace the hard-coded development-base list with distro-support metadata so status is checked at runtime. The triaged enhancement remains open; maintainers are clarifying how app-level support control interacts with distro data. |
|
craft-application issue #222 |
Specify a project's lifecycle | lengau | 981d | keep open | 54 | 52 | 4 | Project creation, mutation/freezing, access, and optional-project command semantics lack a documented contract. Loading and adopt-info handling are documented, but the broader lifecycle design remains open. |
|
craft-application issue #1200 |
Spread tests fail on openstack: "remote directory /root/proj ... is not empty" | lengau | 30d | keep open | 52 | 76 | 15 | OpenStack-only nested testcraft failure: the inner spread run cannot populate /root/proj because a freshly allocated image already contains files; provenance and the fix require backend investigation. |
|
craft-application issue #993 |
`request` should be able to retry upon broken connections | zhijie-yang | 277d | needs triage | 52 | 55 | 16 | remote-build crashes with unhandled ChunkedEncodingError when artifact download breaks mid-stream; request service has no retry support. Still open, no maintainer response, code path unchanged. |
|
craft-application issue #770 |
Pack command output option is inconsistent | cmatsuoka | 524d | keep open | 52 | 91 | 25 | `pack --output` has path-dependent semantics and can report success while artifacts remain outside the host project; outside-tree artifacts are now rejected, but filename and multi-artifact behavior remains undocumented. |
|
craft-application issue #327 |
Support argument list passthrough | cmatsuoka | 913d | keep open | 52 | 74 | 15 | Raw CLI argument passthrough remains unimplemented; this maintainer-labeled enhancement supports downstream spread commands and consistent single- versus double-dash handling. |
|
craft-application pr #1011 |
feat: strict platform name validation | lengau | 261d | keep open | 50 | 16 | 4 | Adds conditional strict platform-name validation via craft-platforms, exempting legacy Ubuntu 20.04–24.04 bases; remains open with failing fast, minimum-dependency, and lint checks plus one unresolved thread. |
|
craft-application issue #549 |
Spec and prototype omitting the traceback for known user errors | tigarmo | 721d | keep open | 50 | 55 | 10 | Design mechanism to suppress craft-tool tracebacks in logs/terminal for known user errors such as plugin build failures; open, unlabelled, internal ticket CRAFT-3655 created. |
|
craft-application issue #248 |
remote build: If a build with the given name already exists, ask the user... | lengau | 975d | keep open | 50 | 84 | 16 | Triaged enhancement remains open: remote-build has explicit --recover but no same-name choice to recover an existing Launchpad build or cancel and replace it; the service currently deletes/recreates a found recipe. |
|
craft-application issue #989 |
remote-build does not exit with error upon partially successful builds | zhijie-yang | 286d | needs triage | 50 | 80 | 29 | remote-build returns exit code 0 even when some architecture builds fail/stop; the unconditional `return 0` at the end of `_monitor_and_complete` in commands/remote.py is identified as the cause. Unlabelled, no maintainer response yet. |
|
craft-application pr #1216 |
fix: set mode for the lp-test openstack backend | simonepelosi | 21d | needs review | 50 | 45 | 17 | Adds mode to SpreadBackend and sets application-credential for lp-test openstack backend; updates test expectation. CI failing lint/files, no reviews yet. |
|
craft-application issue #493 |
Use a craft-providers callback hook to set the apt proxy by an app config | lengau | 764d | keep open | 50 | 70 | 16 | Feature request to use craft-providers' prepare_instance callback to set apt proxy from app config; upstream callback exists, but apt_proxy config is not yet implemented in craft-application. |
|
craft-application issue #301 |
Smarter docs URL handling | lengau | 937d | close resolved | 50 | 98 | 32 | Automatic documentation URL composition from an error's doc_slug and the application's versioned docs base is implemented in the current code, despite #301 remaining open. |
|
craft-application issue #583 |
Redesign project file resolver | mr-cal | 693d | keep open | 50 | 60 | 14 | Redesign project file resolver to search multiple locations and skip non-directory candidates. Current resolver only checks one app-named YAML and errors on a file path; multi-location search remains unimplemented. |
|
craft-application issue #342 |
Utility to allow a `format` option for commands. | lengau | 903d | needs triage | 49 | 76 | 22 | A maintainer-authored request for reusable table and JSON output helpers remains unimplemented and untriaged in the current codebase. |
|
craft-application pr #1082 |
fix(errors): render user-config and base-alias failures as structured errors | tonyandrewmeyer | 156d | needs review | 48 | 62 | 19 | Maps Pydantic validation and BuilddBaseAlias failures to structured config errors and appropriate exit codes. All CI passes and two reviewers approved, but 11 comments remain unresolved. |
|
craft-application issue #670 |
Document best practices for craft-application test fixtures | lengau | 604d | needs triage | 48 | 67 | 19 | Open maintainer request for a how-to standardizing application test-fixture setup and use; individual pytest fixtures have reference docs, but no task-oriented guide is indexed. |
|
craft-application issue #331 |
Process grammar and non-grammar dictionary data | mr-cal | 912d | needs triage | 48 | 87 | 22 | The organize grammar processor cannot combine conditional mappings with plain file mappings in one list; the exact arm64 reproducer remains open with no maintainer triage or implementation. |
|
craft-application issue #909 |
`ProjectService` needs to be runtime configurable to determine whether ESM... | lengau | 408d | keep open | 48 | 70 | 16 | Triaged enhancement remains open: runtime-selected Pro services still do not affect ProjectService support checks, so ESM bases are rejected unless users bypass the unmaintained-base check. |
|
craft-application issue #1187 |
Improve parts features registration | bepri | 38d | keep open | 48 | 90 | 19 | Maintainer-authored enhancement: make parts feature registration opinionated via a PartsFeature enum, default/requested sets, public enable/disable methods, and a final _enable_craft_parts_features hook. Triaged, not yet implemented. |
|
craft-application issue #1059 |
Packing with CRAFT_BUILD_ON can fail when installing registered snaps | tigarmo | 202d | close resolved | 48 | 98 | 31 | Cross-architecture packing with registered snaps could inject incompatible host snaps; commit 16bd7ac3 now skips host snap injection when architectures differ. |
|
craft-application issue #985 |
Support Snapcraft advanced grammar in plugin parameters? | brlin-tw | 297d | keep open | 48 | 76 | 16 | Enhancement to apply advanced grammar to dynamically named plugin parameters; acknowledged as valid, clearly reproduced, and still awaiting implementation and tests. |
|
craft-application issue #1028 |
Add a way to run a spread test on only certain architectures | lengau | 227d | keep open | 46 | 74 | 16 | Architecture-scoped Spread tasks are requested because test systems currently expose only distribution and version. The triaged enhancement remains open with a concrete different-architecture fixture and no identified resolving PR. |
|
craft-application issue #1034 |
`test` command fails to allocate LXD VMs when verbosity is `verbose` or `debug` | lengau | 226d | keep open | 45 | 86 | 22 | Triaged bug: snapcraft test allocates LXD VMs at default verbosity but fails at verbose or debug, with spread receiving no ADDRESS output; no resolving change is evidenced. |
|
craft-application issue #572 |
add ability to add / update run_managed env | dariuszd21 | 699d | keep open | 45 | 60 | 12 | Feature request to add an `_extra_managed_env()` hook so applications can inject/update environment variables for managed runs; currently unimplemented and unlabelled. |
|
craft-application issue #295 |
Store the user's Launchpad credentials in a keyring when available | lengau | 939d | needs triage | 45 | 82 | 17 | Launchpad remote builds still store credentials in a user-data file; OS-keyring storage with file fallback remains unimplemented and needs maintainer triage. |
|
craft-application issue #1127 |
Linter service clears lint results too greedily | bepri | 108d | keep open | 45 | 70 | 17 | LinterService.run() clears _issues/_issues_by_linter on every call, so a PRE run's results are lost when POST runs later and summary() can wrongly return OK. Filed by maintainer; still reproducible at HEAD. |
|
craft-application issue #991 |
Add a prune-instances command | mr-cal | 281d | keep open | 45 | 82 | 20 | Enhancement to add a prune-instances command for removing non-base provider instances. Upstream craft-providers blockers (#639, #893) are now closed; implementation sits in stalled open PR #1058 with 28 unresolved review comments and failing CI. |
|
craft-application pr #1230 |
fix: validate platforms type before vectorisation | EdwinJdevops | 7d | needs review | 45 | 75 | 29 | Fixes AttributeError when platforms is a list by validating type before vectorisation. Approved, CI passing except CLA. |
|
craft-application issue #479 |
Application: treat CraftError-like exceptions as CraftErrors | lengau | 770d | close resolved | 45 | 70 | 24 | CraftError-like exceptions bubbling to Application were reported as internal errors; PR #695 added a craft_platforms.CraftError branch in handle_runtime_error, so this appears resolved but the issue remains open. |
|
craft-application issue #1101 |
remote-build: status indicator blocks interactive input | steinbro | 127d | keep open | 45 | 78 | 19 | remote-build's git push inherits stdin, so SSH prompts (unknown host key, missing key) block while the progress indicator owns the terminal; @mr-cal proposed running an SSH probe before upload to pause the emitter and give a friendly error. |
|
craft-application issue #800 |
Test must only pack if necessary | cmatsuoka | 482d | keep open | 45 | 50 | 10 | Enhancement: `*craft test` should only repack artifacts when necessary. Core mechanism landed in 7.1.0 (PR #1111, metadata mediator API); open questions remain about passing a pre-built artifact to test. |
|
craft-application issue #721 |
Don't follow symlinks for remote-builds | mr-cal | 569d | keep open | 45 | 85 | 29 | Remote-build worktree copy still follows symlinks and has no try/except around copytree, so copy failures bubble up as internal errors. Only dangling-symlink skipping (PR #1104) landed. |
|
craft-application issue #1033 |
`test` command provides unhelpful output or failure | lengau | 226d | keep open | 45 | 50 | 12 | `test` still reports only “Testing failed.” for failed spread runs in brief mode; the issue is triaged but lacks a concrete reproduction or expected diagnostic. |
|
craft-application issue #926 |
The `adopt_info` field should be checked to reference a valid part. | lengau | 394d | keep open | 45 | 90 | 25 | Adopt-info still accepts nonexistent part names; the exact parts: {} reproducer remains valid after an earlier validation fix was reverted. |
|
craft-application issue #698 |
Some valid `spread.yaml` files don't get parsed correctly. | lengau | 583d | close resolved | 44 | 94 | 34 | Valid spread backends with bare system-name strings are now accepted; this report was resolved by merged PR #737, commit 2f11fe33. |
|
craft-application issue #249 |
remote build: provide a way to clean up all of a user's remote builds | lengau | 975d | keep open | 43 | 80 | 17 | Triaged enhancement remains open: add a command to remove stopped, app-prefixed builds left in the user's Launchpad remote-build project after crashes. |
|
craft-application issue #320 |
Set the project environment in the Lifecycle Service | mr-cal | 918d | close resolved | 42 | 91 | 29 | Project-aware environment expansion from #101 is now in place, and current integration coverage verifies CRAFT_PROJECT_NAME and CRAFT_PROJECT_VERSION are exported during builds; the omission is resolved. |
|
craft-application pr #664 |
feat: add line number to error messages | alesancor1 | 610d | needs review | 42 | 28 | 7 | Adds line numbers to project/config error messages across nine files (+157/-14). It has had no review or CI for 482 days; one comment is unresolved and the changelog entry is unchecked. |
|
craft-application issue #806 |
Use `snapcraft test` for spread tests | lengau | 477d | keep open | 42 | 70 | 14 | Maintainer dogfooding task: switch CI from invoking spread directly to `snapcraft test`. Triaged but unimplemented — .github/workflows/spread.yaml still calls `spread ${{ matrix.spread }}`; open PR #1038 attempts it with failing CI. |
|
craft-application issue #719 |
Raise an error for unfiltered build plans | mr-cal | 574d | needs triage | 42 | 74 | 15 | The requested guard remains unimplemented: create_build_plan() still accepts three None filters and selects one build-on per platform; LifecycleService also depends on that fallback. |
|
craft-application issue #793 |
Opt-in configuration to always use git+ssh for remote builds | lengau | 490d | keep open | 42 | 78 | 20 | Triaged enhancement to add opt-in configuration forcing git+ssh for remote builds; public projects still use HTTPS, while private projects use SSH. |
|
craft-application pr #1038 |
ci(spread): switch from manually running spread to using snapcraft test | lengau | 224d | keep open | 42 | 18 | 3 | Migrates dogfooding Spread runs to snapcraft test; after 197 days it remains unreviewed with seven CI failures, including all craft-test jobs and snap-tests. |
|
craft-application issue #713 |
Add an issues page field to the base application | bepri | 580d | needs triage | 42 | 72 | 15 | Open, untriaged request to add a mandatory issue-reporting URL to AppMetadata; the current code exposes docs_url but has no issues_page field. |
|
craft-application issue #1195 |
Conditionally add build-slices to the json schema | mr-cal | 35d | keep open | 40 | 78 | 12 | Triaged enhancement to conditionally expose the existing top-level build-slices field in JSON schema when AppMetadata.enable_build_slices is enabled; it remains unimplemented. |
|
craft-application issue #1105 |
remote-build should be asynchronous by default | steinbro | 126d | keep open | 40 | 55 | 12 | Maintainer proposal to make remote-build non-blocking: exit after submitting the job, print a status URL and follow-up command, with an opt-in --detach/--bg flag. Discussed and converging, not implemented. |
|
craft-application issue #573 |
Improve API naming and scoping | sergiusens | 696d | needs triage | 40 | 55 | 12 | Maintainer proposal to drop redundant Service suffix (PackageService -> services.Package) and tighten module scoping. Still unchanged at HEAD: no labels, comments, or decision on naming variant or back-compat. |
|
craft-application issue #434 |
Provide a way to write machine-readable output to stdout for `pack` | lengau | 792d | needs triage | 40 | 60 | 12 | Maintainer-authored feature request for opt-in JSON output to stdout from pack, plus guidance for app commands. Open, unlabelled, no comments; output schema and interface remain undecided. |
|
craft-application issue #662 |
Add reference docs for the pydantic models | lengau | 611d | keep open | 40 | 55 | 13 | Maintainer tracking issue to add reference docs pages for craft-application's Pydantic models, including rationale for defaults before apps override them. Platforms (#736) and Project (#845) documented; several models remain undocumented. |
|
craft-application issue #621 |
remote build: `--recover` looking for the wrong repository | lengau | 639d | keep open | 40 | 88 | 25 | Remote-build recovery looks for a personal Launchpad repository instead of a project-scoped repository, breaking --recover for builds inside a Launchpad project. The bug is triaged and remains open. |
|
craft-application pr #1058 |
feat: add prune instances | Aeonoi | 202d | keep open | 40 | 18 | 4 | Adds a prune-instances command (+249/-2, 9 files) for removing non-base provider instances, closing #991. Idle ~150 days with 28 unresolved review comments and failing lint, fast-test and minimum-deps CI checks; changelog entry still missing. |
|
craft-application issue #105 |
Custom compatibility tags in the provider service | lengau | 1107d | keep open | 40 | 65 | 18 | Feature request: add a per-application integer addendum (e.g. in AppMetadata, default 0) to the provider base compatibility_tag so charmcraft needn't override ProviderService/get_base. Open, unlabelled, tracked as CRAFT-2606. |
|
craft-application issue #965 |
snapcraft internal error: AttributeError("'list' object has no attribute 'get'") | xypron | 365d | keep open | 40 | 80 | 22 | Poor error message when platforms YAML uses a list instead of a dict, causing unhandled AttributeError in _vectorise_platforms. |
|
craft-application issue #347 |
Improve platform validation error message | cmatsuoka | 896d | close resolved | 40 | 76 | 17 | Platform validation now produces user-facing CraftValidationError messages, while the affected BuildPlanner model was removed in 5.0.0; the issue appears resolved. |
|
craft-application issue #424 |
Surface deprecation warnings when loading the project model | lengau | 804d | keep open | 40 | 70 | 15 | Feature request to surface Pydantic deprecation warnings when loading the project model; no implementation found in current codebase. |
|
craft-application issue #928 |
Write documentation describing how to use reusable documentation snippets | lengau | 393d | keep open | 40 | 82 | 23 | A maintainer-filed, documentation-labeled task to add an app-developer how-to for reusable documentation snippets; the current how-to index has no such guide. |
|
craft-application issue #982 |
Publish testcraft from PRs to relevant branches | lengau | 315d | keep open | 40 | 55 | 11 | Enhancement (triaged, by maintainer) to add CI that publishes the testcraft snap from PRs to `latest/edge/craft-application-<pr#>` and main to `latest/edge/craft-application-main`, plus a PR comment with install commands. Explicitly blocked on canonical/craft-actions#48, which is still open; no such workflow exists in the repo yet. |
|
craft-application issue #1015 |
Improve craft tool dev experience with destructive mode | bepri | 254d | needs triage | 38 | 65 | 10 | Root-run destructive packing leaves root-owned lifecycle directories, blocking later non-root packing; the UX request remains untriaged with no selected solution. |
|
craft-application issue #338 |
`pack` command gives wrong help message and doesn't support packing a directory | mr-cal | 911d | close resolved | 38 | 76 | 19 | Resolved: commit 13230eda removed the bogus pack part argument, and 309aa73b added a project-loading override for application-specific directory pack commands. |
|
craft-application issue #685 |
overlayfs tests break on plucky | lengau | 590d | needs triage | 38 | 74 | 12 | Plucky's AppArmor profile denies fuse-overlayfs mounts, breaking a lifecycle integration test; the report has a reproducer and audit log, but no triage, confirmed root cause, fix, or implementation link. |
|
craft-application issue #922 |
Reference documentation about services in general | lengau | 399d | keep open | 38 | 76 | 19 | Triaged documentation work to broaden and rename the services reference, clarify what a service is, and make AppService secondary; the current app.rst remains AppService-only. |
|
craft-application pr #1162 |
fix: fail fast on unsupported lifecycle bases | lengaubot | 72d | needs review | 38 | 76 | 25 | Reorders the unsupported-base check ahead of lifecycle initialization to avoid an unnecessary LXC profile lookup; all completed checks pass, while several remain pending and review is pending. |
|
craft-application issue #99 |
Means to reduce duplication of plugin fields | sed-i | 1246d | keep open | 36 | 74 | 11 | Maintainer-acknowledged request to support top-level YAML definitions and anchors for reusing repeated part source fields; implementation awaits upstream framework work tracked as CRAFT-2612. |
|
craft-application issue #255 |
Properly represent multi-line yaml strings | cmatsuoka | 973d | close resolved | 35 | 95 | 29 | Reported multi-line YAML formatting is already implemented in dump_yaml and covered by a regression test; commit 51346d9b is the resolving fix. |
|
craft-application issue #722 |
test: CI backend needs to be system-specific | lengau | 567d | close resolved | 35 | 85 | 24 | Craft's CI testing backend now uses a host-matching OS; merged PR #733 fixed the system-specific backend requirement. |
|
craft-application issue #741 |
Refactor to return packaged resource names | cmatsuoka | 554d | needs triage | 35 | 60 | 10 | PackageService.pack still returns only artifact paths and exposes resource_map in the legacy path; newer artifact-aware packing bypasses it, so the requested API cleanup needs reassessment. |
|
craft-application issue #435 |
Include appropriate craft-parts environment variables when packing with... | lengau | 791d | needs triage | 35 | 60 | 8 | Feature request to set craft-parts environment variables such as CRAFT_STAGE when launching a shell via --shell or --debug, so override scripts can be tested faster. Unlabelled and without comments. |
|
craft-application issue #1092 |
Some tests will require the charm plugin to be enabled | lengau | 136d | needs triage | 35 | 55 | 13 | Open, unlabelled issue: charmcraft PR #2722 may make craft-application tests depend on the charm plugin; the maintainer asks to remove that dependency, but no affected test or fix is identified. |
|
craft-application issue #540 |
Document parallel build count environment variables | mr-cal | 738d | keep open | 35 | 85 | 24 | Documentation request to define and explain CRAFT_PARALLEL_BUILD_COUNT and CRAFT_MAX_PARALLEL_BUILD_COUNT; docs/reference/environment-variables.rst still omits them while util/system.py defines precedence. |
|
craft-application issue #960 |
Docs: In CLI messages, compose URLs with app's minor version | medubelko | 344d | keep open | 35 | 82 | 22 | Maintainer-filed, triaged request to make render_doc_url in craft_application/util/docs.py substitute the app's minor version (not major) in RTD doc URLs, matching the planned switch to minor-only Read the Docs publishing. Still unimplemented. |
|
craft-application issue #110 |
docs: Add developer documentation | lengau | 1105d | keep open | 35 | 32 | 6 | Maintainer tracking issue asking for developer documentation so apps can move to craft-application without reading source. Partly delivered: docs/ now has how-to, reference and explanation sections, but no tutorial/get-started guide remains. |
|
craft-application issue #1035 |
Fetch service external spread tests are failing | lengau | 225d | keep open | 35 | 90 | 22 | External fetch-service spread tests remain disabled and blocked on Fetch Service 0.16, which must include fixes from canonical/fetch-service#548 and #579. |
|
craft-application pr #607 |
feat: allow use of interceptable `mknod` in `ProviderService` | mattculler | 652d | keep open | 35 | 30 | 8 | Wires ProviderService’s LXD setup to craft-providers’ new intercept_mknod argument, with tests. No failures are reported, but two requested-change reviews remain unresolved and many checks are pending. |
|
craft-application issue #561 |
Prototype spread extension mechanism (test driver) | cmatsuoka | 710d | close resolved | 35 | 60 | 12 | Maintainer task to prototype a spread extension script decoupling test definitions from command handling; current code has spread/.extension and TestingService using it. |
|
craft-application issue #682 |
Upstream Charmcraft's store service | mr-cal | 591d | needs triage | 35 | 58 | 9 | Move Charmcraft's store service into craft-application to remove duplicated code; it remains open, unlabeled, and unresolved pending triage. |
|
craft-application issue #869 |
State service doesn't catch permission errors in XDG_RUNTIME_DIR | mr-cal | 433d | keep open | 35 | 75 | 21 | StateService._get_state_dir calls platformdirs.user_runtime_path(ensure_exists=True), so a PermissionError in XDG_RUNTIME_DIR escapes as an internal traceback instead of falling back to util.get_home_temporary_directory() or recommending CRAFT_STATE_DIR. Still unfixed at HEAD; no comments or commits since. |
|
craft-application issue #889 |
Developer docs: Architecture explanation | lengau | 421d | close resolved | 35 | 80 | 21 | Maintainer doc request to explain purposes of commands, services, and what a craft app should/shouldn't do; largely delivered by docs/explanation/structure-of-a-craft-app.rst in PR #910. |
|
craft-application issue #833 |
`test` command gives unhelpful error message if extension file is not executable | lengau | 456d | keep open | 34 | 91 | 24 | The `test` command lacks a preflight executable check for `spread/.extension`, causing allocation retries and a misleading empty-ADDRESS error. |
|
craft-application issue #395 |
Put public utility items in the top-level namespace | lengau | 827d | needs triage | 34 | 76 | 18 | Public helpers such as get_host_architecture should be re-exported from craft_application directly; current code still exposes them only through craft_application.util. |
|
craft-application issue #816 |
Config service should check whether the program is running in the app's snap | lengau | 469d | keep open | 32 | 88 | 24 | Config service's SnapConfigHandler uses snaphelpers.is_snap() (true for any snap) instead of verifying we run in the app's own snap. Repo already has util.is_running_from_snap(app_name) used by provider.py. Open, unfixed. |
|
craft-application issue #787 |
Validate spread expressions before packing in `*craft test` | lengau | 503d | keep open | 32 | 64 | 13 | Open maintainer-authored enhancement: validate spread test expressions before packing so invalid selections fail fast; no comments, reproducer, or confirmed implementation are present. |
|
craft-application issue #875 |
Craft-application should include a schema JSON and a CI job to check the schema. | lengau | 428d | keep open | 32 | 78 | 14 | Maintainer-filed enhancement (Status: Triaged, internal CRAFT-4712) to vendor rockcraft's schema generator plus a CI schema-diff job in craft-application, so schema changes surface in changelogs. Not yet implemented. |
|
craft-application issue #370 |
Bad error report when the lxd instance is already running | tigarmo | 848d | needs triage | 32 | 82 | 17 | A second craftapp pack in the same directory reports only that LXD failed to start when the managed instance is already running; the reproducer is clear, but maintainer triage is missing. |
|
craft-application issue #692 |
internal errors for `all` platform | mr-cal | 584d | needs triage | 32 | 90 | 22 | A null `all` platform reaches Pydantic as a required Platform, causing an internal type error instead of the intended build-on validation message; the issue remains open and untriaged. |