Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

77 changes: 77 additions & 0 deletions mainnet-routing-table.json
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,62 @@
[
{
"start": "arrrn-6aaaa-aaaag-qaaaa-cai",
"end": "r6vtg-piaaa-aaaag-qcfmq-cai"
},
"lhg73-sax6z-2zank-6oer2-575lz-zgbxx-ptudx-5korm-fy7we-kh4hl-pqe"
],
[
{
"start": "rxwy2-zaaaa-aaaag-qcfna-cai",
"end": "rxwy2-zaaaa-aaaag-qcfna-cai"
},
"c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae"
],
[
{
"start": "rqx6o-uyaaa-aaaag-qcfnq-cai",
"end": "ttopn-zaaaa-aaaag-qcjma-cai"
},
"lhg73-sax6z-2zank-6oer2-575lz-zgbxx-ptudx-5korm-fy7we-kh4hl-pqe"
],
[
{
"start": "tupjz-uyaaa-aaaag-qcjmq-cai",
"end": "tupjz-uyaaa-aaaag-qcjmq-cai"
},
"c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae"
],
[
{
"start": "t5mcf-cqaaa-aaaag-qcjna-cai",
"end": "55czr-jyaaa-aaaag-qjxmq-cai"
},
"lhg73-sax6z-2zank-6oer2-575lz-zgbxx-ptudx-5korm-fy7we-kh4hl-pqe"
],
[
{
"start": "5ubsn-7qaaa-aaaag-qjxna-cai",
"end": "5ubsn-7qaaa-aaaag-qjxna-cai"
},
"c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae"
],
[
{
"start": "5tauz-siaaa-aaaag-qjxnq-cai",
"end": "js4tq-kyaaa-aaaag-qjyxq-cai"
},
"lhg73-sax6z-2zank-6oer2-575lz-zgbxx-ptudx-5korm-fy7we-kh4hl-pqe"
],
[
{
"start": "lpb5y-zqaaa-aaaag-qjyya-cai",
"end": "lpb5y-zqaaa-aaaag-qjyya-cai"
},
"c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae"
],
[
{
"start": "lia3m-uiaaa-aaaag-qjyyq-cai",
"end": "42xlg-niaaa-aaaag-7777q-cai"
},
"lhg73-sax6z-2zank-6oer2-575lz-zgbxx-ptudx-5korm-fy7we-kh4hl-pqe"
Expand Down Expand Up @@ -170,6 +226,20 @@
[
{
"start": "dy46e-tiaaa-aaaak-aaaaa-cai",
"end": "usfts-faaaa-aaaak-ac27a-cai"
},
"k44fs-gm4pv-afozh-rs7zw-cg32n-u7xov-xqyx3-2pw5q-eucnu-cosd4-uqe"
],
[
{
"start": "uvevg-iyaaa-aaaak-ac27q-cai",
"end": "uvevg-iyaaa-aaaak-ac27q-cai"
},
"c4isl-65rwf-emhk5-5ta5m-ngl73-rgrl3-tcc56-2hkja-4erqd-iivmy-7ae"
],
[
{
"start": "7lshy-tqaaa-aaaak-ac3aa-cai",
"end": "7t2ep-aaaaa-aaaak-p777q-cai"
},
"k44fs-gm4pv-afozh-rs7zw-cg32n-u7xov-xqyx3-2pw5q-eucnu-cosd4-uqe"
Expand Down Expand Up @@ -376,5 +446,12 @@
"end": "nktt2-oqaaa-aaaax-7777q-cai"
},
"3zsyy-cnoqf-tvlun-ymf55-tkpca-ox7uw-kfxoh-7khwq-2gz43-wafem-lqe"
],
[
{
"start": "bmbbw-dyaaa-aaaay-aaaaa-cai",
"end": "5hh35-qqaaa-aaaay-p777q-cai"
},
"re2t4-faa75-v3vhk-kdmdr-uyrkl-aik2l-ixd6u-p3fyr-zlfkc-6c5af-zae"
]
]
2 changes: 1 addition & 1 deletion packages/ic-metrics-assert/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ async-trait = { workspace = true }
candid = { workspace = true }
ic-http-types = { version = "0.1.0", path = "../ic-http-types" }
ic-management-canister-types = { workspace = true, optional = true }
pocket-ic = { version = "12.0.0", path = "../../packages/pocket-ic", optional = true }
pocket-ic = { version = "13.0.0", path = "../../packages/pocket-ic", optional = true }
regex = "1.11.0"

[features]
Expand Down
2 changes: 1 addition & 1 deletion packages/pocket-ic/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ rust_library(
proc_macro_deps = [
"@crate_index//:strum_macros",
],
version = "12.0.0",
version = "13.0.0",
deps = [
# Keep sorted.
"@crate_index//:backoff",
Expand Down
4 changes: 4 additions & 0 deletions packages/pocket-ic/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## Unreleased



## 13.0.0 - 2026-03-20

### Added
- The function `PocketIcBuilder::with_mainnet_nns_subnet_id` to specify that the NNS subnet should be created with the mainnet NNS subnet ID.
- The parameter `hard_ttl` to `StartServerParams` to specify that the PocketIC server should perform a hard exit after the provided duration since its launch.
Expand Down
2 changes: 1 addition & 1 deletion packages/pocket-ic/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "pocket-ic"
version = "12.0.0"
version = "13.0.0"
license = "Apache-2.0"
description = "PocketIC: A Canister Smart Contract Testing Platform"
repository = "https://github.com/dfinity/ic"
Expand Down
20 changes: 10 additions & 10 deletions packages/pocket-ic/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,11 @@ pub mod nonblocking;

const POCKET_IC_SERVER_NAME: &str = "pocket-ic-server";

const MIN_SERVER_VERSION: &str = "12.0.0";
const MAX_SERVER_VERSION: &str = "13";
const MIN_SERVER_VERSION: &str = "13.0.0";
const MAX_SERVER_VERSION: &str = "14";

/// Public to facilitate downloading the PocketIC server.
pub const LATEST_SERVER_VERSION: &str = "12.0.0";
pub const LATEST_SERVER_VERSION: &str = "13.0.0";

// the default timeout of a PocketIC operation
const DEFAULT_MAX_REQUEST_TIME_MS: u64 = 300_000;
Expand Down Expand Up @@ -2322,25 +2322,25 @@ mod test {
.contains("Unexpected PocketIC server version")
);
assert!(
check_pocketic_server_version("pocket-ic 12.0.0")
check_pocketic_server_version("pocket-ic 13.0.0")
.unwrap_err()
.contains("Unexpected PocketIC server version")
);
assert!(
check_pocketic_server_version("pocket-ic-server 12 0 0")
check_pocketic_server_version("pocket-ic-server 13 0 0")
.unwrap_err()
.contains("Failed to parse PocketIC server version")
);
assert!(
check_pocketic_server_version("pocket-ic-server 11.0.0")
check_pocketic_server_version("pocket-ic-server 12.0.0")
.unwrap_err()
.contains("Incompatible PocketIC server version")
);
check_pocketic_server_version("pocket-ic-server 12.0.0").unwrap();
check_pocketic_server_version("pocket-ic-server 12.0.1").unwrap();
check_pocketic_server_version("pocket-ic-server 12.1.0").unwrap();
check_pocketic_server_version("pocket-ic-server 13.0.0").unwrap();
check_pocketic_server_version("pocket-ic-server 13.0.1").unwrap();
check_pocketic_server_version("pocket-ic-server 13.1.0").unwrap();
assert!(
check_pocketic_server_version("pocket-ic-server 13.0.0")
check_pocketic_server_version("pocket-ic-server 14.0.0")
.unwrap_err()
.contains("Incompatible PocketIC server version")
);
Expand Down
2 changes: 1 addition & 1 deletion rs/pocket_ic_server/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ MAINNET_NNS_CANISTER_ENV = {
crate_name = "pocket_ic_server",
proc_macro_deps = MACRO_DEPENDENCIES,
rustc_env = EXTERNAL_CANISTER_ENV | nns_canister_env,
version = "12.0.0",
version = "13.0.0",
deps = LIB_DEPENDENCIES + [":build_script"],
)
for (name_suffix, nns_canister_data, nns_canister_env) in [
Expand Down
4 changes: 4 additions & 0 deletions rs/pocket_ic_server/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## Unreleased



## 13.0.0 - 2026-03-20

### Added
- The endpoint `/instances/` takes an additional optional field `mainnet_nns_subnet_id` specifying that the NNS subnet should be created with the mainnet NNS subnet ID.
- The CLI option `--hard-ttl` to specify that the PocketIC server should perform a hard exit after the provided number of seconds since its launch.
Expand Down
2 changes: 1 addition & 1 deletion rs/pocket_ic_server/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "pocket-ic-server"
version = "12.0.0"
version = "13.0.0"
edition.workspace = true

[dependencies]
Expand Down
2 changes: 1 addition & 1 deletion rs/pocket_ic_server/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ static MAINNET_ROUTING_TABLE: &[u8] = include_bytes!(env!("MAINNET_ROUTING_TABLE

#[derive(Parser)]
#[clap(name = "pocket-ic-server")]
#[clap(version = "12.0.0")]
#[clap(version = "13.0.0")]
struct Args {
/// The IP address to which the PocketIC server should bind (defaults to 127.0.0.1)
#[clap(long, short)]
Expand Down
Loading