diff --git a/CHANGELOG.md b/CHANGELOG.md index 46d6a2b11..e248e2706 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,8 @@ air-gapped signing # Unreleased +# v1.4.0 + * feat: a canister can now declare `upgrade_args` alongside `init_args`, in its own manifest and as a per-canister environment override. It is passed when `icp deploy` upgrades the canister, where `init_args` is passed when it installs or reinstalls it. It takes exactly the forms `init_args` does (inline Candid string, or `{ value | path, format }`), and paths resolve against the canister's own directory the same way. A canister that declares no `upgrade_args` is upgraded with its `init_args`, as before, and `--args` / `--args-file` still override whichever applies. * feat: a new `status_visibility` canister setting controls who may read a canister's status (its running state, cycles, memory usage, and settings) through the management canister. It takes the same forms as `log_visibility` — `controllers` (the default), `public`, or `{ allowed_viewers: [...] }` — and can be set in a manifest's `settings:` block or with `icp canister settings update --status-visibility / --add-status-viewer / --remove-status-viewer / --set-status-viewer`. `icp canister status` and `icp canister settings show` now report it. See the [canister settings reference](docs/reference/canister-settings.md#status_visibility). * `icp canister status` and `icp canister settings show` now list principals one per line under their label rather than comma-separated on the label's line: `log viewer:` / `status viewer: ` for the allowed viewers of a visibility setting, `controller: ` for a canister's controllers. This applies to `log_visibility` and to the controller list as well, so scripts matching those lines need updating. Both lists are sorted, which the controller list previously was not. diff --git a/Cargo.lock b/Cargo.lock index f85aa4674..8554ea0ec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3621,7 +3621,7 @@ dependencies = [ [[package]] name = "icp" -version = "1.3.0" +version = "1.4.0" dependencies = [ "async-dropper", "async-trait", @@ -3703,7 +3703,7 @@ dependencies = [ [[package]] name = "icp-canister-interfaces" -version = "1.3.0" +version = "1.4.0" dependencies = [ "bigdecimal", "candid", @@ -3713,7 +3713,7 @@ dependencies = [ [[package]] name = "icp-cli" -version = "1.3.0" +version = "1.4.0" dependencies = [ "anstyle", "anyhow", @@ -3792,7 +3792,7 @@ dependencies = [ [[package]] name = "icp-events" -version = "1.3.0" +version = "1.4.0" dependencies = [ "serde", "serde_json", @@ -3801,7 +3801,7 @@ dependencies = [ [[package]] name = "icp-sync-plugin" -version = "1.3.0" +version = "1.4.0" dependencies = [ "async-trait", "bytes", @@ -6369,7 +6369,7 @@ dependencies = [ [[package]] name = "schema-gen" -version = "1.3.0" +version = "1.4.0" dependencies = [ "icp", "schemars", diff --git a/Cargo.toml b/Cargo.toml index 5ca927f52..df0ef270a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,7 @@ resolver = "3" [workspace.package] authors = ["DFINITY Stiftung "] edition = "2024" -version = "1.3.0" +version = "1.4.0" repository = "https://github.com/dfinity/icp-cli" rust-version = "1.88.0" license = "Apache-2.0"