ioBroker / ioBroker.javascript

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

[Bug]: `node:fs` `constants` is missed thru the `protectFS` #1545

Closed PeterVoronov closed 2 months ago

PeterVoronov commented 3 months ago

I'm sure that

Script type

JavaScript

The problem

Can't access to some constants exported by node:fs. For example: nodeFS.constants.R_OK.

iobroker.current.log (in debug mode!)

2024-04-08 15:59:59.882  - error: javascript.0 (2421712) script.js.Telegram.AutoTelegramMenuMainScript: TypeError: Cannot read properties of undefined (reading 'R_OK')
2024-04-08 15:59:59.883  - error: javascript.0 (2421712)     at telegramImageSend (script.js.Telegram.AutoTelegramMenuMainScript:19986:49)
2024-04-08 15:59:59.884  - error: javascript.0 (2421712)     at Object.cb (script.js.Telegram.AutoTelegramMenuMainScript:19556:31)
2024-04-08 15:59:59.884  - error: javascript.0 (2421712)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11082:45)
2024-04-08 15:59:59.885  - error: javascript.0 (2421712)     at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/db-states-redis/src/lib/states/statesInRedisClient.ts:379:37)
2024-04-08 15:59:59.885  - error: javascript.0 (2421712)     at processImmediate (node:internal/timers:476:21)

Version of nodejs

v18.19.1

Version of ioBroker js-controller

5.0.19

Version of adapter

8.0

PeterVoronov commented 3 months ago

Proposed solution is #1544

PeterVoronov commented 2 months ago

Solved in v8.0.3