packages: add test to ensure unnecessary normalize not called (CRAFT-221)
Metadata
Current evaluation
Merged a test ensuring file normalization is skipped when no files are unpacked during stage package processing. Approved by two reviewers, passed CI, and addresses CRAFT-221. Follows up on PR #76 to eliminate unnecessary processing overhead.
Suggested action: —
No scores available.
Issue body
When unpacking stage packages, it's not necessary to normalize unpacked
files if nothing was unpacked. This test verifies if no such call is
made in this case.
This is a follow-up to PR #76, and adds the normalization call test included in
https://github.com/snapcore/snapcraft/pull/3534.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged a test ensuring file normalization is skipped when no files are unpacked during stage package processing. Approved by two reviewers, passed CI, and addresses CRAFT-221. Follows up on PR #76 to eliminate unnecessary processing overhead. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged a test ensuring the normalize function is skipped during stage package unpacking when no files are extracted. Follows PR #76 and incorporates verification from snapcraft PR #3534 to prevent unnecessary operations. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3529 repo: normalize if stage-packages and check types (CRAFT-222) | snapcraft | merged | Merged fix for CRAFT-222 preventing normalization failures on directories like snap.pc. The change restricts normalization to stage-packages and adds type checks to stop fileinput from creating backup files on directories. Approved and verified. | |
| #76 packages: normalize unpacked stage packages (CRAFT-33) | craft-parts | merged | Merged implementation normalizing unpacked stage packages. The change patches Python shebangs, converts absolute symlinks to relative, removes suid/guid bits, and updates config paths. Ported from Snapcraft and approved by reviewers. | |
| #3534 repo: normalize only if there are packages to unpack | snapcraft | merged | Merged into master. Fixes a bug where pathlib.glob was incorrectly assumed to return a list instead of a generator. Ensures stage package normalization only runs when packages exist to unpack. Approved by two reviewers and passed CI. | |
| #73 tests: add stage snaps integration test (CRAFT-68) | craft-parts | merged | Merged an integration test verifying stage-snaps are correctly unpacked into the part install directory. Approved by two reviewers, passed CI, and added 133 lines across two files. |