Skip to content

chore: release ic-cdk-management-canister v0.2.0, ic-cdk v0.20.3, ic0 v1.2.0 - #715

Merged
lwshang merged 1 commit into
mainfrom
release-mgmt-0.2.0
Sep 15, 2026
Merged

lwshang merged 1 commit into
mainfrom
release-mgmt-0.2.0

Conversation

@lwshang

@lwshang lwshang commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Description

Release PR for ic-cdk-management-canister v0.2.0, cutting the flexible HTTPS outcall / pay-as-you-go pricing work from #714.

The management canister crate does not release alone: its new builders call ic_cdk::api::cost_http_request_v2 and ic_cdk::api::subnet_self_node_count, which in turn rest on new ic0 bindings, and both are still unreleased. Publishing ic-cdk-management-canister 0.2.0 by itself would resolve ic-cdk 0.20.2 from crates.io and fail to build, so all three crates are released together.

Crate From To Why
ic0 1.1.0 1.2.0 Additive: subnet_self_node_count, cost_http_request_v2 bindings
ic-cdk / ic-cdk-macros 0.20.2 0.20.3 Additive: the api::subnet_self_node_count and api::cost_http_request_v2 wrappers
ic-cdk-management-canister 0.1.1 0.2.0 Breaking

The breaking changes in ic-cdk-management-canister 0.2.0, already recorded in its CHANGELOG by #714:

  • The free functions http_request, cost_http_request and http_request_with_closure are removed in favor of the HttpRequest / FlexibleHttpRequest builders. HttpRequest::from_args accepts an existing HttpRequestArgs so a call site can migrate without rewriting how it builds arguments, and ic_cdk::api::cost_http_request still exposes version 1 pricing.
  • ic-management-canister-types moves from 0.7.1 to 0.10, which adds fields to HttpRequestArgs and CanisterSettings and so breaks exhaustive struct literals over the re-exported types.

Note that the builders price outcalls through the ic0.cost_http_request_v2 System API, so a canister built with them requires a replica that provides it.

This PR contains no code changes — only version bumps in the manifests and the dated CHANGELOG headings.

Publishing

After merge, run the Publish crates to crates.io workflow with ic0, ic-cdk and ic-cdk-management-canister checked. The workflow already publishes them in dependency order (ic0 → ic-cdk-macros + ic-cdk → ic-cdk-management-canister).

How Has This Been Tested?

cargo check --workspace --all-features passes. The functional changes being released were tested by the e2e tests added in #714; CI on this branch re-runs them.

cargo package -p ic-cdk-management-canister is expected to fail until ic-cdk 0.20.3 is on crates.io, which is the reason the three crates ship in one release.

Checklist:

  • The title of this PR complies with Conventional Commits.
  • I have edited the CHANGELOG accordingly.
  • I have made corresponding changes to the documentation.

🤖 Generated with Claude Code

… v1.2.0

Cuts the flexible HTTPS outcall / pay-as-you-go pricing work in #714.

`ic-cdk-management-canister` 0.2.0 calls `ic_cdk::api::cost_http_request_v2`
and `subnet_self_node_count`, which rest on new `ic0` bindings, so all three
crates are released together; publishing the management canister crate alone
would resolve `ic-cdk` 0.20.2 from crates.io and fail to build.

- ic0 1.1.0 -> 1.2.0 (additive: `subnet_self_node_count`, `cost_http_request_v2`)
- ic-cdk / ic-cdk-macros 0.20.2 -> 0.20.3 (additive: the two `api` wrappers)
- ic-cdk-management-canister 0.1.1 -> 0.2.0 (breaking: free `http_request`,
  `cost_http_request` and `http_request_with_closure` removed in favor of the
  builders; `ic-management-canister-types` 0.7.1 -> 0.10)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@lwshang
lwshang marked this pull request as ready for review September 15, 2026 13:20
@lwshang
lwshang requested a review from a team as a code owner September 15, 2026 13:20
@zeropath-ai

zeropath-ai Bot commented Sep 15, 2026

Copy link
Copy Markdown

✅ No security or compliance issues detected. Reviewed everything up to d5d9cc6.

Security Overview
Detected Code Changes
Change Type Relevant files
Enhancement ► ic-cdk-macros/Cargo.toml
    version from 0.20.2 to 0.20.3 (sync with ic-cdk)
Enhancement ► ic-cdk/Cargo.toml
    version from 0.20.2 to 0.20.3 (sync with ic-cdk-macros)
Enhancement ► ic0/Cargo.toml
    version from 1.1.0 to 1.2.0
Enhancement ► ic-cdk-management-canister/Cargo.toml
    version from 0.1.1 to 0.2.0
Enhancement ► ic-cdk-management-canister/CHANGELOG.md
    add [0.2.0] entry with added HttpRequest builder
Enhancement ► ic-cdk/CHANGELOG.md
    add [0.20.3] entry with subnet_self_node_count API
Enhancement ► ic0/CHANGELOG.md
    add [1.2.0] entry with subnet_self_node_count and cost_http_request_v2 bindings

@lwshang
lwshang merged commit 624606f into main Sep 15, 2026
17 checks passed
@lwshang
lwshang deleted the release-mgmt-0.2.0 branch September 15, 2026 14:06
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