Pocket IC
We have released PocketIC server 8.0.0 and its Rust library 7.0.0. This release contains new response types (announced in a separate forum post) and support for using the PocketIC Rust library in DFX (announced in the roadmap from the past PocketIC release forum post).
Changelog
Here’s an overview of the new features included in the latest PocketIC release and their use cases:
- New response types (
Vec<u8>
andRejectResponse
): more consistent with the (Rust) agent response types and less boilerplate code in tests (see a separate forum post for more details). - New instance endpoint
/read/ingress_status
to fetch the status of an update call submitted through an ingress message. This is an alternative to a mainnet-like read state request at/api/v2/canister/…/read_state
which requires signatures and cannot thus be used when impersonating principals. - New instance endpoint
/update/set_certified_time
to set the current (certified) IC time on all subnets of the PocketIC instance. The (certified) time set via this endpoint is immediately observed by subsequent query calls and read state requests (the existing endpoint/update/set_time
only sets the time of the next round, but doesn’t actually change the IC time until the next round is executed separately). - The instance endpoint
/update/execute_ingress_message
is removed: use the two instance endpoints/update/submit_ingress_message
and/update/await_ingress_message
to submit and then await an ingress message instead.
For a complete list of changes, see the server changelog and the library changelog.
Conclusion
Your feedback helps us improve PocketIC, so please let us know your thoughts and questions in this thread.
Thank you for providing feature requests and feedback on your PocketIC user experience!