Snapcraft is testing file collisions on unbuilt parts
Metadata
Current evaluation
Closed without a merged fix. Snapcraft incorrectly checked file collisions on unbuilt parts, causing file not found errors. The author verified a local workaround, but the report was closed without upstream resolution or discussion.
Suggested action: —
No scores available.
Issue body
When using snapcraft, it appears to be calling "check_for_collisions" on parts that have not been built yet (or more accurately, not installed) so this call is failing with a "file not found" error. I've modified my version of snapcraft to remove this code (internal/lifecycle.py):
for step in common.COMMAND_ORDER[0:step_index]:
#if step == 'stage':
# pluginhandler.check_for_collisions(self.config.all_parts)
for part in parts:
if step not in self._steps_run[part.name]:
self._run_step(step, part, part_names)
self._steps_run[part.name].add(step)
self._create_meta(step, part_names)
I did this to verify this is the cause of the failure and my yaml successfully ran. I've included a copy of my yaml file.
It might be important to note that the failing parts all seem to be related to the dump plugin and with custom "build" instructions.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Closed without a merged fix. Snapcraft incorrectly checked file collisions on unbuilt parts, causing file not found errors. The author verified a local workaround, but the report was closed without upstream resolution or discussion. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. Premature collision checks on unbuilt dump plugin parts caused file-not-found errors. No fix was implemented or documented. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1761598 Snapcraft modifies binaries | snapcraft (launchpad) | closed | Closed without resolution. Snapcraft 2.39.2 and 2.40.1 modified binaries by adding 4096 bytes, a regression from 2.35. The report was abandoned with no comments or fix applied. | |
| #1622435 snapcraft does not respect filesets of remote parts | snapcraft (launchpad) | closed | Closed without resolution. Snapcraft failed to resolve remote part filesets, causing build errors. Likely abandoned or superseded by newer versions. The wiki label indicates the workflow was clarified via documentation. | |
| #1686484 snapcraft fails when two parts have the same file in the stage keyword | snapcraft (launchpad) | closed | Closed. Resolved by deferring collision checks until after parts finish staging, preventing the FileNotFoundError when multiple parts specify identical stage files. | |
| #1752766 Snapcraft fails to prime part containg device files | snapcraft (launchpad) | closed | Closed without a direct fix. Snapcraft crashes when priming parts with device files, throwing an OSError during ELF detection. The bug was likely abandoned or resolved in newer Snapcraft versions. | |
| #1799925 snapcraft gives conflicting advice for cleaning parts | snapcraft (launchpad) | closed | Closed without a fix. Snapcraft incorrectly advised running snapcraft clean with part and step flags, which were unsupported. The author worked around it with a full clean. The report appears abandoned or superseded by later updates. | |
| #5843 Snapcraft uses the wrong project model for non-app snaps | snapcraft | closed | Closed without resolution. An internal Jira ticket (SNAPCRAFT-1252) was created to track incorrect project model assignment for non-app snaps, causing a build-for architecture error. No fix was implemented. | |
| #1816 snapcraft update won't fetch from `SNAPCRAFT_PARTS_URI` | snapcraft | closed | Closed without resolution or comments. Likely superseded by the linked Launchpad bug report. No fixes or code changes were applied. | |
| #1778081 Snapcraft saves the fact that parts need to be rebuilt rather than discovering them | snapcraft (launchpad) | closed | Closed without implementation. The dynamic dependency discovery approach for build caching was abandoned and superseded by later Snapcraft caching architecture updates. |