getnamo / NodeJs-Unreal

Embed node.js as an Unreal Engine plugin.
MIT License
239 stars 34 forks source link

auto dependencies resolving not working #46

Open loudon23 opened 1 year ago

loudon23 commented 1 year ago

Hi,

v1.2.0 for UE 5.0 auto dependencies resolving not working

D:\Users\loudon23\Documents\Unreal Projects\NodeChat\Plugins\NodeJs-Unreal\Source\ThirdParty\node\node_modules\npm\index.js:4
  throw new Error('The programmatic API was removed in npm v8.0.0')
  ^

Error: The programmatic API was removed in npm v8.0.0
    at Object.<anonymous> (D:\Users\loudon23\Documents\Unreal Projects\NodeChat\Plugins\NodeJs-Unreal\Source\ThirdParty\node\node_modules\npm\index.js:4:9)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (D:\Users\loudon23\Documents\Unreal Projects\NodeChat\Plugins\NodeJs-Unreal\Content\Scripts\npmManager.js:6:13)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)

It seems like npm has discontinued the support for programmatic API. https://github.com/npm/cli/pull/3762

getnamo commented 1 year ago

Looks like we'll need to update to NPM commandline api. This will be trickier to ensure it gives the required feedback on operation success/details, but likely doable. Not something I have time to address in the near term, but it would be a good feature for someone to take a crack at and make a pull request.

The place to update support for this would be here: https://github.com/getnamo/NodeJs-Unreal/blob/master/Content/Scripts/npmManager.js