pluginhandler: add {pre,post}-build scriptlets
Metadata
Current evaluation
Closed without merging. The author indicated plans to restructure the changes and implement them in a different order, superseding this pull request.
Suggested action: —
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 unit`?
-----
Snapcraft currently supports three scriptlets:
- `prepare`: run before build
- `build`: replaces plugin's build
- `install`: run after build
The end goal is to have scriptlets surrounding each lifecycle step. To that end, this PR resolves #1671 by adding some generic scriptlet scaffolding to make future additions easier, and by renaming `prepare` and `install` to `pre-build` and `post-build`, respectively. The old names are deprecated (https://github.com/canonical-docs/snappy-docs/pull/371).
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Closed without merging. The author indicated plans to restructure the changes and implement them in a different order, superseding this pull request. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed and superseded by a restructured merge. The PR added pre/post-build scriptlet scaffolding and renamed prepare/install to pre-build/post-build, deprecating legacy names. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by a reordered implementation. The author planned to reorganize the pre- and post-build scriptlet changes and land them differently, leaving this pull request unmerged. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #988 pluginhandler: build scriptlet support | snapcraft | merged | Merged pull request adding build scriptlet support to the pluginhandler. The update modifies 8 files with 96 additions and 9 deletions, resolving LP #1649684. | |
| #2327 pluginhandler: remove prepare, build and install scriptlets | snapcraft | merged | Merged removal of deprecated prepare, build, and install scriptlets from pluginhandler, replaced by override-step-name syntax. Backwards compatibility maintained via integration tests. Approved and passed CI. | |
| #987 pluginhandler: prepare scriptlet support | snapcraft | merged | Merged into master after reviewer approval. The change prepares scriptlet support in the pluginhandler, modifying 7 files (+77/-10 lines). Code coverage increased by less than 0.01% upon integration. |