← Back to issue list

unpack chisel slices

View original Github issue

Metadata

Project
craft-parts
Number
#281
Type
pull request
State
merged
Author
tigarmo
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #281 as commit 17c119ea, adding Chisel slice unpacking by passing slices from pull to build via PullState, with CI integration coverage.

Resolution: closed resolved

Reason: The approved PR was merged into the main project as commit 17c119ea, implementing slice propagation and cutting while adding the required Chisel CI setup.

Evaluated by: mr-cal-bot

No scores available.

Issue body

This is done by using the `PullState` to "transmit" the list of slices from the pull step (that currently doesn't do anything for slices) to the build step (that does the actual cutting). The integration test needs the "chisel" binary, so it's set to run on CI only. This required updating the workflow to use a newer version of "go" to build chisel. I then needed to revert back to the default Ubuntu 20.04 version because other tests need an older version (might be worth looking into). In addition to the tests I also built a local `rockcraft` snap using this code, and used it to build an image containing "sliced" files.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #281 as commit 17c119ea, adding Chisel slice unpacking by passing slices from pull to build via PullState, with CI integration coverage.
stealth/space-bunny-alpha — closed resolved Merged PR #281 implemented Chisel slice unpacking by passing slices through PullState from pull to build, with integration tests and CI Go updates.
qwen/qwen3.6-35b-a3b — — Merged implementation to unpack chisel slices via PullState routing from pull to build step. Updated CI Go version, added integration tests, and verified locally. Approved by two reviewers, +365/-66 lines across 8 files.
qwen3.6-35b-a3b-mtp-q6 — — Merged implementation to unpack chisel slices by routing slice data from the pull step to the build step via PullState. Updated CI workflow to adjust Go and Ubuntu versions for integration tests. Verified locally with rockcraft.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/craft-parts#279 (confidence 96%)

    Merged PR #279 introduced the stage-slices specification used by this unpacking implementation.

Related issues

Issue Project State Summary Similarity
#1715 refactor: put chisel call in its own module craft-parts merged Merged PR #1715 in commit 0d154d79, extracting Chisel slice-cutting logic into its own module to separate cutting from Repository path normalization before build-slices support.
74%
#1119 chore: rebuild to bump chisel rockcraft merged Merged #1119 via commit 9f52bf52, bumping Chisel to v1.4.0+ for 26.04 v3 repositories and adding slice coverage and a changelog entry.
74%
#904 feat: add chisel as a build snap when stage-packages contain slices craft-parts merged Merged #904 via commit 941164e1, adding chisel@latest/stable only when stage-packages contain slices and no part already declares chisel.
73%
#1326 Investigate support for fetching chisel slices craft-parts open Feature request to support fetching Chisel slices as packages. Slices are now cut at unpack-time via a separate stage-slices key, so the original fetch-time TODO appears superseded; lengau noted upstream Chisel would need to split download/unpack.
73%
#592 fix(deb): normalize chisel slices craft-parts merged Merged PR #592 as commit 26d4f9ed, normalizing unpacked Chisel slices to rewrite absolute symlinks and prevent them escaping the lifecycle environment; fixes #578.
73%
#1718 feat: cut build-slices in the prologue craft-parts closed Merged as commit 2adcb0c1. Executor prologue now collects build-slices from all parts, de-duplicates them into a single chisel cut, with a state file to skip unchanged re-cuts; unit and integration tests added.
72%
#530 spread: don't cut dotnet slices unnecessarily rockcraft merged Merged #530 as commit 31a61529, replacing fragile dotnet slices with the more stable coreutils_bins slice while preserving Chisel slice coverage.
72%
#84 Add chisel to rockcraft rockcraft merged Merged PR #84 as commit ddf018ce, adding Chisel to Rockcraft’s snap and enabling Chisel slices in stage-packages.
71%
#127 fix: pin the commit of the bundled chisel rockcraft merged Merged PR #127, adding a one-line pin for the bundled Chisel commit; landed as commit 26854aca.
71%
#271 Split chisel explanation rockcraft merged Merged in PR #271 as commit 073078a0, splitting the Chisel explanation and clarifying its overview and diagram.
71%