ioBroker / ioBroker.javascript

Script engine for JavaScript and Blockly
MIT License
320 stars 119 forks source link

[Bug]: Adapter does not start with js-controller 6.0.3 #1610

Closed todde99 closed 3 weeks ago

todde99 commented 3 weeks ago

I'm sure that

Script type

None

The problem

After updating js-controller to 6.0.3 the javascript adapter does not start. Downgrading to js-controller 6.0.2 helps.

iobroker log: 2024-06-13 06:05:08.734 - info: javascript.0 (2051145) starting. Version 8.5.2 in /opt/iobroker/node_modules/iobroker.javascript, node: v20.14.0, js-controller: 6.0.3 2024-06-13 06:05:08.957 - error: javascript.0 (2051145) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). 2024-06-13 06:05:08.961 - error: javascript.0 (2051145) unhandled promise rejection: Package subpath './package.json' is not defined by "exports" in /opt/iobroker/node_modules/@iobroker-javascript.0/cheerio/package.json 2024-06-13 06:05:08.962 - error: javascript.0 (2051145) Error: Package subpath './package.json' is not defined by "exports" in /opt/iobroker/node_modules/@iobroker-javascript.0/cheerio/package.json at exportsNotFound (node:internal/modules/esm/resolve:304:10) at packageExportsResolve (node:internal/modules/esm/resolve:651:9) at resolveExports (node:internal/modules/cjs/loader:592:36) at Function.Module._findPath (node:internal/modules/cjs/loader:669:31) at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1131:27) at Function.resolve (node:internal/modules/helpers:190:19) at listInstalledNodeModules (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/utils.ts:126:34) at installLibraries (/opt/iobroker/node_modules/iobroker.javascript/main.js:1836:36) 2024-06-13 06:05:08.964 - error: javascript.0 (2051145) Exception-Code: ERR_PACKAGE_PATH_NOT_EXPORTED: Package subpath './package.json' is not defined by "exports" in /opt/iobroker/node_modules/@iobroker-javascript.0/cheerio/package.json 2024-06-13 06:05:09.028 - info: javascript.0 (2051145) terminating 2024-06-13 06:05:09.030 - warn: javascript.0 (2051145) Terminated (UNCAUGHT_EXCEPTION): Without reason 2024-06-13 06:05:09.526 - info: javascript.0 (2051145) terminating 2024-06-13 06:05:10.159 - error: host.iobroker Caught by controller[0]: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason: 2024-06-13 06:05:10.160 - error: host.iobroker Caught by controller[1]: Error: Package subpath './package.json' is not defined by "exports" in /opt/iobroker/node_modules/@iobroker-javascript.0/cheerio/package.json 2024-06-13 06:05:10.160 - error: host.iobroker Caught by controller[1]: at exportsNotFound (node:internal/modules/esm/resolve:304:10) 2024-06-13 06:05:10.161 - error: host.iobroker Caught by controller[1]: at packageExportsResolve (node:internal/modules/esm/resolve:651:9) 2024-06-13 06:05:10.161 - error: host.iobroker Caught by controller[1]: at resolveExports (node:internal/modules/cjs/loader:592:36) 2024-06-13 06:05:10.161 - error: host.iobroker Caught by controller[1]: at Function.Module._findPath (node:internal/modules/cjs/loader:669:31) 2024-06-13 06:05:10.162 - error: host.iobroker Caught by controller[1]: at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1131:27) 2024-06-13 06:05:10.162 - error: host.iobroker Caught by controller[1]: at Function.resolve (node:internal/modules/helpers:190:19) 2024-06-13 06:05:10.163 - error: host.iobroker Caught by controller[1]: at listInstalledNodeModules (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/utils.ts:126:34) 2024-06-13 06:05:10.163 - error: host.iobroker Caught by controller[1]: at installLibraries (/opt/iobroker/node_modules/iobroker.javascript/main.js:1836:36) 2024-06-13 06:05:10.163 - error: host.iobroker instance system.adapter.javascript.0 terminated with code 6 (UNCAUGHT_EXCEPTION)

iobroker.current.log (in debug mode!)

No response

Version of nodejs

20

Version of ioBroker js-controller

6.0.3

Version of adapter

8.5.2

Diginix commented 3 weeks ago

Works for me with same versions of adapter, controller and nodejs

foxriver76 commented 3 weeks ago

It is a js-controller bug will be fixed with 6.0.4 later today, and only occurs for users which have additional node modules which meet certain conditons

Diginix commented 3 weeks ago

Ok, but it doesn't seem to affect everyone.

todde99 commented 3 weeks ago

Works with js-controller 6.0.4, again!