May 23, 2023
  • All
  • Engineering
  • stencil

Announcing Stencil v3.3.0

Stencil Team

Announcing Stencil 3.3 release


Hey folks! We’re excited to announce that Stencil v3.3.0 is available! This release contains support for TypeScript 5, a new way to run Puppeteer tests, and Node 20 support. Let’s take a look!

TypeScript 5 Support

Stencil v3.3.0 bumps up the version of TypeScript we support and bundle into the Stencil compiler from 4.9.5 to 5.0.4. TypeScript 5 was a big milestone for the TypeScript team, bringing some incremental updates as well as a major refactor of how TypeScript is built and bundled. Although upgrading Stencil to support TypeScript 5 was a bit involved, the changes we made to support it should make it easy for us to stay on track going forward and meet our pledge to stay within one minor version of the latest version of TypeScript.

For more on TypeScript and Stencil see our support policy.

Puppeteer v20 Support

Stencil v3.3.0 adds support for Puppeteer v20, the latest release from the Puppeteer team. The latest versions of Puppeteer have introduced support for Chrome’s new “headless mode”. At this time, using Chrome’s new headless mode is an “opt-in” feature for Stencil users. Upgrading to Stencil v3.3.0 won’t force projects to use the new headless mode until they’re ready to do so.

import { Config } from '@stencil/core';

export const config: Config = {
  testing: {
    /**
     * The following values are accepted:
     * - "new" - enables the "new" headless mode, starting with Chrome 112
     * - `true` - enables the "old" headless mode, prior to Chrome 112
     * - `false` - enables the "headful" mode
     * 
     * Stencil will default to `true` (the old headless mode) if no value is provided.
     */
    browserHeadless: 'new',
    // ...
  },
  // ...
};

For projects using the --headless flag, the value of “new” can now be provided to opt-in as well:

npx stencil test --e2e --headless=new

For more information on browserHeadless’ configuration, please see the documentation for testing configuration. For more information on the –headless flag, please see the Stencil CLI documentation.

Node 20 Support

Stencil v3.3.0 expands the range of support Node versions to include version 20. We don’t anticipate that upgrading to node 20 will cause any issues for users, so you should be able to start using node 20 without issues.

For more information about Stencil’s node support check out our support policy.

And More!

This release of Stencil includes additional bug fixes and internal upgrades. For a full list of changes, please take a look at the changelog for this release. 


Stencil Team