pluginhandler: stop using alias for snapcraftctl
Metadata
Current evaluation
Merged PR #2251 as commit d941f0573, replacing the snapcraftctl alias with direct installation in a dedicated PATH directory to prepare for subshell-based scriptlets.
Resolution: closed resolved
Reason: PR #2251 was merged as commit d941f0573. It installs snapcraftctl directly in its own directory on PATH rather than using an alias, advancing LP #1790978.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [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] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh tests/unit`?
-----
Once the snapcraft CLI supports plugins providing command chains, scriptlets will need to be run in a subshell, a boundary across which aliases cannot cross. Instead of using an alias when running from the snap, this PR makes progress on [LP: #1790978](https://bugs.launchpad.net/snapcraft/+bug/1790978) by simply installing snapcraftctl into its own directory and adding it to the PATH.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2251 as commit d941f0573, replacing the snapcraftctl alias with direct installation in a dedicated PATH directory to prepare for subshell-based scriptlets. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2251 as commit d941f0573, replacing the snapcraftctl alias with a dedicated binary added to PATH for future subshell scriptlet execution. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #2251: pluginhandler now installs snapcraftctl directly on PATH instead of using an alias, preparing for subshell scriptlet execution. Resolved in commit d941f0573. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged. Replaced snapcraftctl alias usage with direct PATH installation in the pluginhandler. This prepares the codebase for subshell scriptlet execution, where aliases fail. Approved by reviewers and passed all CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Replaced the snapcraftctl alias with direct PATH installation to enable execution across required subshell boundaries for plugin command chains. Resolves LP #1790978 and passes all unit tests. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3317 plugin handler: properly handle snapcraftctl errors | snapcraft | merged | Merged PR #3317 in commit 9c622ecda, making snapcraftctl exit nonzero on build/pull failures and stop override scripts after parent operation errors. |