legacy/meta: make hooks executable instead of complaining they're not
Metadata
Current evaluation
Merged cherry-pick of #2440 that fixes bug #1812003 by making hooks executable instead of raising an error. Approved by one reviewer, passed CI, and modified 2 files.
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)?
- [ ] 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`?
-----
Fixes https://bugs.launchpad.net/snapcraft/+bug/1812003
This is a cherry-pick of #2440
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged cherry-pick of #2440 that fixes bug #1812003 by making hooks executable instead of raising an error. Approved by one reviewer, passed CI, and modified 2 files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged to legacy/meta as a cherry-pick of PR #2440. Updates hook handling to make them executable rather than raising an error, resolving bug #1812003. Diff coverage is 100%. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged into legacy/meta. Resolves bug #1812003 by making hooks executable rather than raising an error. Cherry-picked from PR #2440. Passed static and unit tests with 100% diff coverage. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2440 meta: make hooks executable instead of complaining they're not | snapcraft | merged | Merged into master. Hooks are now made executable instead of triggering an error, resolving bug #1812003. The change passed CI, received approval, and achieved 100% diff coverage. Whitelisting was deferred to a follow-up PR. | |
| #2481 meta: handle symlinked hooks (#2478) | snapcraft | merged | Merged a fix for a regression in symlinked hook handling that caused FileNotFoundErrors during permission changes. Approved by reviewer, passed CI, and updated 2 files to safely resolve symlinks before stat operations. | |
| #2478 meta: handle symlinked hooks | snapcraft | merged | Merged PR #2478 resolves a regression from #2440 that broke symlinked hooks. The fix prevents FileNotFoundErrors during permission changes by properly resolving symlinks before stat operations. Approved, passed CI, and merged into master. | |
| #1812003 hooks should be made executable instead of erroring out | snapcraft (launchpad) | closed | Automatic executable permission for hooks was implemented via merged pull request #2440. Snapcraft now sets hook permissions automatically instead of raising an error. | |
| #3386 meta: don't overwrite preconfigured hooks with stubs | snapcraft | merged | Merged a fix that prevents hook stub generation from overwriting existing preconfigured hooks by verifying script existence first. Includes unit tests and passed CI. |