Heads-up to all PCF component authors:
The latest pcf-scripts 1.8.5 release we published yesterday Wed 07/21 contains a hidden breaking change that now requires PCF control projects to be compiled with TypeScript >= 4.x.
If compiling with TypeScript 3.x and using pcf-scripts 1.8.5, you will experience the following error:
> npm run build
> email@example.com build
> pcf-scripts build
[1:21:38 PM] [build] Initializing...
[1:21:38 PM] [build] Validating manifest...
[1:21:38 PM] [build] Validating control...
[1:21:39 PM] [build] Generating manifest types...
[pcf-scripts] [Error] encountered unexpected error:
TypeError: Cannot read property 'createInterfaceDeclaration' of undefined
As a quick remedy, I have unpublished the offending version 1.8.5 for the pcf-scripts and pcf-start package from npmjs.org
For most users using the default floating version reference in their package.json ("pcf-scripts": "^1"), this will automatically fix the issue once your project's folder is refreshed with: npm install
If your builds is using upstream NPM feeds that already have a cached copy of 1.8.5, and your PCF control projects still require TypeScript 3.x and you cannot (or don't want to at this moment) easily update to 4.x, here is a mitigation:
- edit the package.json, and change the floating "^1" version of the the pcf-scripts package to be pinned to the previous release, 1.7.4:
- npm install
- npm run build
This change will need to be undone, once we have a hotfix 1.8.6 or higher available.
We apologize for the disruption and hassle this escaped and unintended breaking change has caused you
earlier today, we've published a hotfix for the unintentional breaking change as pcf-scripts 1.8.6 (the broken 1.8.5 remains unpublished). The 1.8.6 will now tolerate PCF projects that build with either TypeScript 3.x or 4.x
If your chosen mitigation was to pin pcf-scripts entries in your package.json files to an earlier 1.7.4 version, please feel free to undo that and go back to the floating version:
We apologize for the disruption and hassle this escaped and unintended breaking change has caused you; thank you for your collaboration
Join us for the next call on August 17, 2022 at 8am PDT.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.