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
> firstname.lastname@example.org 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
Explore the latest innovations, learn from product experts and partners, level up your skillset, and create connections from around the world.
Your chance to join an engaging competition of Power Platform enthusiasts.