All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed a bug where
get_subnet()
would return results for non-existent canisters, causingcanister_exists()
to returntrue
for non-existent canisters in client libraries - Fixed a bug related to
PocketIc
s internal time being set to the current time, which lead to non-deterministic behavior
- Cycles consumption is now more appropriately scaled according to the size of the subnet
- Support for multiple subnets
- Support for cross-subnet canister calls
- Improved support to start the PocketIC server from the command line:
- Ability to start the server without any flags
- Use
-p or --port
to specify a port where the server should listen - Use
--ttl
to specify for how long the server should be running before it shuts down --pid
flag is no longer required and discouraged to use from the command line
- Improved logging support:
- Use the
POCKET_IC_LOG_DIR
environment varible to specify where to store logs - Use the environment variable
POCKET_IC_LOG_DIR_LEVELS=trace
to specify the log level of the logs that are written to the log file
- Use the
read/pub_key
endpoint to retrieve the public key of a subnetread/get_subnet
endpoint to retrieve the subnet id of a canister
- POST
instances/
endpoint requires a subnet config - POST
instances/
endpoint returns a toplogy of the instance /read/query
and/update/execute_ingress_message
require aneffective_principal
field
- Checkpointing
read/canister_exists
endpoint (superseded byread/get_subnet
)read/root_key
endpoint (superseded byread/pub_key
)
- Blocking REST-API: Encode IC-call in endpoint, not in body.
- Blocking API to make IC-calls to a PocketIC server.