# @dfinity/pic-js — Release Announcements

**URL:** <https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217>\
**Category:** Developers\
**Tags:** picjs\
**Created:** [March 11, 2026, 9:00am UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217 "2026-03-11T09:00:40Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![nikosxenakis](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/nikosxenakis/32/36516_2.png) [@nikosxenakis](https://forum.dfinity.org/u/nikosxenakis)\
**Post date:** [March 11, 2026, 9:00am UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/1 "2026-03-11T09:00:40Z")

</div>

# @dfinitydfinity/pic — Release Announcements

This topic tracks releases of [`@dfinity/pic`](https://www.npmjs.com/package/@dfinity/pic), an ICP canister testing library for TypeScript and JavaScript.

**Source code:** [GitHub - dfinity/pic-js: An Internet Computer Protocol canister testing library for TypeScript and JavaScript. · GitHub](https://github.com/dfinity/pic-js)  
**Documentation:** [PicJS | PicJS](https://dfinity.github.io/pic-js/)  
**Releases:** [https://www.npmjs.com/package/@dfinity/pic](https://www.npmjs.com/package/@dfinity/pic)

### Install

```auto
npm i -D @dfinity/pic

```

Follow this topic to get notified about new releases. If you run into any issues, please report them on [GitHub Issues](https://github.com/dfinity/pic-js/issues). Contributions are also very welcome — check out our [contributing guide](https://github.com/dfinity/pic-js/blob/main/.github/CONTRIBUTING.md) to get started.

---

<div class="post-metadata">

**Author:** ![nikosxenakis](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/nikosxenakis/32/36516_2.png) [@nikosxenakis](https://forum.dfinity.org/u/nikosxenakis)\
**Post date:** [March 11, 2026, 9:06am UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/2 "2026-03-11T09:06:15Z")

</div>

# v0.19.0 (2026-03-10)

**GitHub Release:** [Release 0.19.0 · dfinity/pic-js · GitHub](https://github.com/dfinity/pic-js/releases/tag/0.19.0)  
**Changelog:** [pic-js/CHANGELOG.md at main · dfinity/pic-js · GitHub](https://github.com/dfinity/pic-js/blob/main/CHANGELOG.md)

## Changes

### Breaking changes

- **PocketIC server upgraded to v12.0.0** — make sure to update your local PocketIC server binary ([#231](https://github.com/dfinity/pic-js/pull/231))

### New features

- **Chunked WASM upload** — large WASM modules are now uploaded in chunks ([#239](https://github.com/dfinity/pic-js/pull/239))
- **HTTP gateway support** — PocketIC now supports an HTTP gateway for canister HTTP requests ([#233](https://github.com/dfinity/pic-js/pull/233))

### Bug fixes

- **Fail immediately on non-retryable PocketIC server errors** — errors that cannot be resolved by retrying now fail fast instead of timing out ([#242](https://github.com/dfinity/pic-js/pull/242))

## Upgrade

```auto
npm install -D @dfinity/pic@0.19.0

```

Give it a try and let us know how it goes! 🙏

Thank you to everyone who contributed to this release:

- @marc0olo
- @NathanosDev
- @nikosxenakis
- @mraszyk

---

<div class="post-metadata">

**Author:** ![skilesare](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/skilesare/32/5609_2.png) [@skilesare](https://forum.dfinity.org/u/skilesare)\
**Post date:** [March 11, 2026, 10:55pm UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/3 "2026-03-11T22:55:22Z")

</div>

> [@nikosxenakis](#):
>
> **Chunked WASM upload** — large WASM modules are now uploaded in chunks

RIP my custom chunked uploading code. You served our bloated binaries well.

 ![IMG_7001](https://us1.discourse-cdn.com/flex023/uploads/dfn/original/3X/5/e/5eda9cd39d0392534c566db8084e643641556b2b.gif)

---

<div class="post-metadata">

**Author:** ![peterparker](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@peterparker](https://forum.dfinity.org/u/peterparker)\
**Post date:** [March 17, 2026, 11:36am UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/4 "2026-03-17T11:36:33Z")

</div>

I had to **downgrade** PicJS back to `v0.17.2` 🥲.

I’m not sure whether the issue is related to `v0.18.x` or `v0.19.x`, but my test suite became flaky after upgrading - “heavy” tests (those in which I assert behavior of canister upgrades) started timing out regularly at 60000ms.

Is there a known performance regression in the recent versions of PicJS, or any change that could cause these tests to fail?

Example: [https://github.com/junobuild/juno/actions/runs/23088589705/job/67071317699?pr=2666](https://github.com/junobuild/juno/actions/runs/23088589705/job/67071317699?pr=2666)

---

<div class="post-metadata">

**Author:** ![nikosxenakis](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/nikosxenakis/32/36516_2.png) [@nikosxenakis](https://forum.dfinity.org/u/nikosxenakis)\
**Post date:** [March 18, 2026, 12:21pm UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/5 "2026-03-18T12:21:54Z")

</div>

Thanks for reporting this @peterparker! I had a look and found a probable cause.

PicJS currently polls for update call completion using individual `tick()` + `ingressStatus()` HTTP requests in a loop.

PocketIC’s changelog (v10.0.0) explicitly acknowledges this pattern has a performance regression and introduced a dedicated `await_ingress_message` endpoint to solve it [pocketic/CHANGELOG.md at main · dfinity/pocketic · GitHub](https://github.com/dfinity/pocketic/blob/main/CHANGELOG.md#added-2).

The performance issue is fix in [https://www.npmjs.com/package/@dfinity/pic/v/0.21.0](https://www.npmjs.com/package/@dfinity/pic/v/0.21.0), could you please try if this version resolves the issue?

---

<div class="post-metadata">

**Author:** ![peterparker](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@peterparker](https://forum.dfinity.org/u/peterparker)\
**Post date:** [March 18, 2026, 3:02pm UTC](https://forum.dfinity.org/t/dfinity-pic-js-release-announcements/65217/6 "2026-03-18T15:02:34Z")

</div>

The first [CI run](https://github.com/junobuild/juno/pull/2684) using this version of PicJS went through on first try, it looks promising 👍. I’ll monitor it the next few days. Thanks!
