Skip to content

feat: Allow specifying sync steps in conjunction with recipes - #731

Open
adamspofford-dfinity wants to merge 3 commits into
spofford/fetch-sectionfrom
spofford/multi-sync
Open

feat: Allow specifying sync steps in conjunction with recipes#731
adamspofford-dfinity wants to merge 3 commits into
spofford/fetch-sectionfrom
spofford/multi-sync

Conversation

@adamspofford-dfinity

@adamspofford-dfinity adamspofford-dfinity commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Currently you can either specify build: and sync: or a recipe. But while a build owns the WASM module end-to-end as part of a toolchain, syncing is part of the canister rather than the toolchain, so projects should be able to define sync steps without restructuring their configuration. This PR makes it so that you can add sync: even if you are already using a recipe.

Stack created with GitHub Stacks CLIGive Feedback 💬

Copilot AI balanced review requested due to automatic review settings August 26, 2026 17:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Enables canisters using recipes to append custom sync steps after recipe-provided steps.

Changes:

  • Extends recipe manifests and consolidation logic with optional sync steps.
  • Updates schemas and documentation.
  • Adds unit and CLI integration tests.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
CHANGELOG.md Records the feature.
crates/icp/src/manifest/canister.rs Parses recipe sync configuration.
crates/icp/src/project.rs Appends manifest sync steps after recipe steps.
crates/icp-cli/tests/recipe_tests.rs Tests effective sync ordering.
docs/schemas/icp-yaml-schema.json Updates project schema.
docs/schemas/canister-yaml-schema.json Updates canister schema.
docs/reference/configuration.md Documents configuration syntax.
docs/guides/using-recipes.md Adds usage guidance.
docs/concepts/recipes.md Clarifies recipe and sync semantics.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread crates/icp/src/manifest/canister.rs Outdated
Comment thread crates/icp/src/manifest/canister.rs Outdated
adamspofford-dfinity and others added 3 commits September 4, 2026 03:41
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants