cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
NewcombR
Advocate IV
Advocate IV

PCF - pcf-scripts - Cannot find module "Typescript"

I went to create a new PCF project today, as a project has a requirement that I'd like to meet with a new component.

 

Receiving an error message when running pcf-scripts build.

 

 Executing task: npm run build <


> pcf-project@1.0.0 build C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary
> pcf-scripts build

internal/modules/cjs/loader.js:905
  throw err;
  ^

Error: Cannot find module 'typescript'
Require stack:
- C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary\node_modules\pcf-scripts\manifestTypesGenerator.js
- C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary\node_modules\pcf-scripts\tasks\manifestTypesTask.js
- C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary\node_modules\pcf-scripts\taskGroup.js
- C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary\node_modules\pcf-scripts\bin\pcf-scripts.js     
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
    at Function.Module._load (internal/modules/cjs/loader.js:746:27)
    at Module.require (internal/modules/cjs/loader.js:974:19)
    at require (internal/modules/cjs/helpers.js:92:18)
    at Object.<anonymous> (C:\Users\NewcombR\source\repos\CSA\CSAPcf\PurchaseOrderAmountSummary\node_modules\pcf-scripts\manifestTypesGenerator.js:6:12)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Module.load (internal/modules/cjs/loader.js:950:32)
    at Function.Module._load (internal/modules/cjs/loader.js:790:14)
    at Module.require (internal/modules/cjs/loader.js:974:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    'C:\\Users\\NewcombR\\source\\repos\\CSA\\CSAPcf\\PurchaseOrderAmountSummary\\node_modules\\pcf-scripts\\manifestTypesGenerator.js',
    'C:\\Users\\NewcombR\\source\\repos\\CSA\\CSAPcf\\PurchaseOrderAmountSummary\\node_modules\\pcf-scripts\\tasks\\manifestTypesTask.js',
    'C:\\Users\\NewcombR\\source\\repos\\CSA\\CSAPcf\\PurchaseOrderAmountSummary\\node_modules\\pcf-scripts\\taskGroup.js',
    'C:\\Users\\NewcombR\\source\\repos\\CSA\\CSAPcf\\PurchaseOrderAmountSummary\\node_modules\\pcf-scripts\\bin\\pcf-scripts.js'
  ]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! pcf-project@1.0.0 build: `pcf-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pcf-project@1.0.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\NewcombR\AppData\Roaming\npm-cache\_logs\2021-08-03T14_40_15_738Z-debug.log
The terminal process "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -Command npm run build" terminated with exit code: 1.

 

 

I created a second, PCF project and the results were the same.

 

I opened an existing PCF project and the build script worked as expected.

 

Is there I can "undo" the update that I installed this morning?  If not, what can I do to work through the issue?

11 REPLIES 11
NewcombR
Advocate IV
Advocate IV

I also noticed that there are the following messages that appear when running npm install on new PCF projects:

npm WARN ts-loader@8.3.0 requires a peer of typescript@* but none is installed. You must install peer dependencies yourself.
npm WARN ts-node@8.10.2 requires a peer of typescript@>=2.7 but none is installed. You must install peer dependencies yourself.
npm WARN tsutils@3.21.0 requires a peer of typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.

 

I checked the package.json and it doesn't appear that typescript is included there.

I have typescript installed globally, BTW.

NewcombR
Advocate IV
Advocate IV

It appears adding typescript as a dependency locally resolves the problem.

npm install --save-dev typescript

Not sure why this is required now, as it was not the case in prior versions.

HemantG
Power Apps
Power Apps

Sorry for the break. I probed about this and here is the summary. There was a change in pcf-scripts module to move the typescript module to the devDependencies section which reduces bundle size. If your local nodejs doesn’t have typescript 3 or 4 installed globally, you’ll either need to do:

  • npm install --save-dev typescript
  • or: npm install -g typescript

We’re updating the template in the July refresh

 

 

thanks,

Hemant 

Kristoffer88
Advocate I
Advocate I

Hi.

 

This has broken all our pipelines for our PCF apps, so we needed to add it to the package.json as a dev dependency on all our projects (after some lost hours debugging)

For what it’s worth, installing globally didn’t work.  (I already had it installed globally).

 

Only by adding it as a local dependency

worked.

DavidJen
Microsoft
Microsoft

we (the PCF/pac CLI tooling team) apologize for the breakage this caused: in the last 1.8.x release, we fixed a bug that typescript was mistakenly added as a runtime dependency: but TS is not a runtime dependency, e.g. TS should not get bundled etc.

 

Having typescript installed globally (npm install -g typescript) would work on local dev machines, but likely not on build agents. That is the reason why this breakage went undetected locally within our team, sigh.

But the idiomatic fix for npm/nodejs is to add typescript as a dev dependency in your package.json:
  

 

npm install --save-dev typescript

 

or if your project still needs TS 3
  

 

npm install --save-dev typescript@^3

 

 

The upcoming July refresh for PCF/pac CLI will contain updated package.json templates with TS already added as dev dependency

 

 

DavidJen
Microsoft
Microsoft

we (the PCF/pac CLI tooling team) apologize for the breakage this caused: in the last 1.8.x release, we fixed a bug that typescript was mistakenly added as a runtime dependency: but TS is not a runtime dependency, e.g. TS should not get bundled etc.

 

Having typescript installed globally (npm install -g typescript) would work on local dev machines, but likely not on build agents. That is the reason why this breakage went undetected locally within our team, sigh.

But the idiomatic fix for npm/nodejs is to add typescript as a dev dependency in your package.json:
  

 

 

npm install --save-dev typescript

 

 

or if your project still needs TS 3
  

 

 

npm install --save-dev typescript@^3

 

 

 

The upcoming July refresh for PCF/pac CLI will contain updated package.json templates with TS already added as dev dependency

 

 

Thanks for saving my day, it was very frustrating. As I was starting off with new control and was not able to build basic template itself.

JvdSchelling
Frequent Visitor

Hi,

I have the same issue. Unfortunately none of the suggestions in this thread work 😞

Error:

webpack 5.75.0 compiled with 1 error in 410 ms
[pcf-scripts] [Error] encountered unexpected error:
Error: An error occurred compiling or bundling the control.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! pcf-project@1.0.0 build: `pcf-scripts build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the pcf-project@1.0.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

 

This is quite frustrating. The information/ documentation is scarce and confusing. 

So, this is my cry for help: Please help anyone!!

Thanks!

 

Helpful resources

Announcements
Power Apps News & Annoucements carousel

Power Apps News & Announcements

Keep up to date with current events and community announcements in the Power Apps community.

Community Call Conversations

Introducing the Community Calls Conversations

A great place where you can stay up to date with community calls and interact with the speakers.

Power Apps Community Blog Carousel

Power Apps Community Blog

Check out the latest Community Blog from the community!

Users online (3,171)