← Back to issue list

Charmcraft init migrated to InitService

View original Github issue

Metadata

Project
charmcraft
Number
#2316
Type
issue
State
closed
Author
sergiusens
Labels
Bounty
Created
Updated
Closed

Current evaluation

The bounty to migrate Charmcraft's init command to craft-application's InitService was closed without implementation. Multiple contributors submitted proposals, but maintainers declined to proceed, leaving the task abandoned.

Suggested action:

No scores available.

Issue body

### What needs to get done Replace the current [`init` command](https://github.com/canonical/charmcraft/blob/main/charmcraft/application/commands/init.py) in Charmcraft with the [craft-application `init` command](https://github.com/canonical/craft-application/blob/main/craft_application/commands/init.py), extending the craft-application command and the [InitService](https://github.com/canonical/craft-application/blob/main/craft_application/services/init.py) to make this possible. #### Acceptance Criteria * All existing args must be accepted. However: * The `--author` argument (and the general GECOS info) is no longer used and may simply output a warning that it’s not used. * `--force` can similarly be replaced with a warning. (The craft-application behaviour of initing a project even if files exist in this directory as long as they’re not overwritten is acceptable as the default, so the behaviour of `--force` becomes the default behaviour) * The command must accept either the positional `project_dir` as in craft-application or `--project-dir` as in existing charmcraft, with a migration note for users. * `--project-dir` should be removed from the help and documentation * Extend the craft-application InitService to be able to rename template files, similar to how it’s implemented in [https://github.com/canonical/charmcraft/pull/2242](https://github.com/canonical/charmcraft/pull/2242) * This should include at least one `testcraft` spread test that uses this feature. * End-to-end tests in Charmcraft pass without changes

Evaluation history

Date Model Scores Action Summary
qwen3.6-35b-a3b-mtp-q6 The bounty to migrate Charmcraft's init command to craft-application's InitService was closed without implementation. Multiple contributors submitted proposals, but maintainers declined to proceed, leaving the task abandoned.
qwen/qwen3.6-35b-a3b The bounty to migrate Charmcraft init to craft-application's InitService received multiple contributor proposals but was closed by maintainers without implementation or merge.
qwen/qwen3.6-35b-a3b The bounty to migrate Charmcraft's init command to craft-application's InitService received multiple proposals but was closed by maintainers without implementation or merging any changes.
qwen3.6-35b-a3b-mtp-q6 Maintainers closed the bounty to migrate Charmcraft's init command to craft-application without merging any submitted proposals. The task was abandoned.
qwen3.6-35b-a3b-mtp-q6 The bounty to migrate Charmcraft's init command to craft-application's InitService was closed without implementation. Multiple contributors submitted proposals, but the maintainers declined to proceed, leaving the task abandoned.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#2547 Charmcraft init migrated to InitService charmcraft open Refactor to replace charmcraft's custom init command with craft-application's init command and InitService, deprecating --author/--force and extending InitService with template file renaming. Triaged, tracked in Jira, not yet implemented.
85%
#753 Migrate to craft-application's InitService rockcraft closed Closed without resolution or linked pull request. The migration to craft-application's InitService was abandoned or superseded.
78%
#1153 Move the init command to craft-application charmcraft closed Closed without implementation. The migration of the init command to craft-application was abandoned or superseded, with no comments or merge details recorded.
76%
#360 Migrate non-lifecycle commands to craft-application rockcraft closed Closed without a documented resolution. Implementation discussion noted changing the InitCommand superclass from BaseCommand to AppCommand within craft-application. The migration remains unimplemented and effectively abandoned.
70%