Skip to content

[Bug]: npm dependencies broken with js-controller 6 #1642

@agross

Description

@agross

I'm sure that

  • This issue is still present in the current beta version of this adapter
  • There is no other (open) issue with the same topic (use the search!)
  • This issue is not described in the adapter documentation / FAQ (read the docs!)

Script type

TypeScript

The problem

  1. Install the adapter
  2. Add rxjs@6 as a NPM dependency and add rxjs syntax support
  3. Add the following script:
    import { Subject } from 'rxjs';
    
    const subject = new Subject<number>();
  4. While this is a very simple usage of the npm module, compilation fails with
    ^ ERROR: Untyped function calls may not accept type arguments.
    It does not matter if you added syntax support for rxjs and/or rxjs/operators

The error only occurs with js-controller 6.x.

iobroker.current.log (in debug mode!)

2024-07-19 14:21:40.983  - info: host.iobroker instance system.adapter.javascript.1 in version "8.7.0" started with pid 7517
2024-07-19 14:21:43.279  - debug: javascript.1 (7517) Redis Objects: Use Redis connection: 127.0.0.1:9001
2024-07-19 14:21:43.308  - debug: javascript.1 (7517) Objects client ready ... initialize now
2024-07-19 14:21:43.309  - debug: javascript.1 (7517) Objects create System PubSub Client
2024-07-19 14:21:43.311  - debug: javascript.1 (7517) Objects create User PubSub Client
2024-07-19 14:21:43.354  - debug: javascript.1 (7517) Objects client initialize lua scripts
2024-07-19 14:21:43.372  - debug: javascript.1 (7517) Objects connected to redis: 127.0.0.1:9001
2024-07-19 14:21:43.406  - debug: javascript.1 (7517) Redis States: Use Redis connection: redis:6379
2024-07-19 14:21:43.420  - debug: javascript.1 (7517) States create System PubSub Client
2024-07-19 14:21:43.421  - debug: javascript.1 (7517) States create User PubSub Client
2024-07-19 14:21:43.432  - debug: javascript.1 (7517) States connected to redis: redis:6379
2024-07-19 14:21:43.647  - debug: javascript.1 (7517) Plugin sentry Initialize Plugin (enabled=true)
2024-07-19 14:21:44.376  - info: javascript.1 (7517) starting. Version 8.7.0 in /opt/iobroker/node_modules/iobroker.javascript, node: v18.20.3, js-controller: 6.0.8
2024-07-19 14:21:44.401  - debug: javascript.1 (7517) config.subscribe (Do not subscribe all states on start): false
2024-07-19 14:21:44.429  - debug: javascript.1 (7517) Found installed libraries: ["rxjs"]
2024-07-19 14:21:44.430  - debug: javascript.1 (7517) Found custom dependency in config: "rxjs@6"
2024-07-19 14:21:49.943  - debug: javascript.1 (7517) Installed custom dependency: "rxjs@6"
2024-07-19 14:21:50.097  - debug: javascript.1 (7517) Loaded TypeScript definitions for node: ["node_modules/@types/node/package.json","node_modules/@types/node/index.d.ts","node_modules/@types/node/assert.d.ts","node_modules/@types/node/assert/strict.d.ts","node_modules/@types/node/globals.d.ts","node_modules/@types/node/async_hooks.d.ts","node_modules/@types/node/buffer.d.ts","node_modules/@types/node/child_process.d.ts","node_modules/@types/node/cluster.d.ts","node_modules/@types/node/console.d.ts","node_modules/@types/node/constants.d.ts","node_modules/@types/node/crypto.d.ts","node_modules/@types/node/dgram.d.ts","node_modules/@types/node/diagnostics_channel.d.ts","node_modules/@types/node/dns.d.ts","node_modules/@types/node/dns/promises.d.ts","node_modules/@types/node/domain.d.ts","node_modules/@types/node/dom-events.d.ts","node_modules/@types/node/events.d.ts","node_modules/@types/node/fs.d.ts","node_modules/@types/node/fs/promises.d.ts","node_modules/@types/node/http.d.ts","node_modules/@types/node/http2.d.ts","node_modules/@types/node/https.d.ts","node_modules/@types/node/inspector.d.ts","node_modules/@types/node/module.d.ts","node_modules/@types/node/net.d.ts","node_modules/@types/node/os.d.ts","node_modules/@types/node/path.d.ts","node_modules/@types/node/perf_hooks.d.ts","node_modules/@types/node/process.d.ts","node_modules/@types/node/punycode.d.ts","node_modules/@types/node/querystring.d.ts","node_modules/@types/node/readline.d.ts","node_modules/@types/node/readline/promises.d.ts","node_modules/@types/node/repl.d.ts","node_modules/@types/node/sea.d.ts","node_modules/@types/node/stream.d.ts","node_modules/@types/node/stream/promises.d.ts","node_modules/@types/node/stream/consumers.d.ts","node_modules/@types/node/stream/web.d.ts","node_modules/@types/node/string_decoder.d.ts","node_modules/@types/node/test.d.ts","node_modules/@types/node/timers.d.ts","node_modules/@types/node/timers/promises.d.ts","node_modules/@types/node/tls.d.ts","node_modules/@types/node/trace_events.d.ts","node_modules/@types/node/tty.d.ts","node_modules/@types/node/url.d.ts","node_modules/@types/node/util.d.ts","node_modules/@types/node/v8.d.ts","node_modules/@types/node/vm.d.ts","node_modules/@types/node/wasi.d.ts","node_modules/@types/node/worker_threads.d.ts","node_modules/@types/node/zlib.d.ts","node_modules/@types/node/globals.global.d.ts"]
2024-07-19 14:21:50.120  - debug: javascript.1 (7517) Loaded TypeScript definitions for request: ["node_modules/@types/request/package.json","node_modules/@types/request/index.d.ts"]
2024-07-19 14:21:50.122  - debug: javascript.1 (7517) Loaded TypeScript definitions for rxjs: ["node_modules/@types/rxjs/index.d.ts"]
2024-07-19 14:21:50.123  - debug: javascript.1 (7517) Loaded TypeScript definitions for rxjs/operators: ["node_modules/@types/rxjs/operators/index.d.ts"]
2024-07-19 14:21:50.459  - info: javascript.1 (7517) requesting all states
2024-07-19 14:21:50.460  - info: javascript.1 (7517) requesting all objects
2024-07-19 14:21:51.336  - info: javascript.1 (7517) received all objects
2024-07-19 14:21:51.442  - info: javascript.1 (7517) received all states
2024-07-19 14:21:51.446  - debug: javascript.1 (7517) [sunTimeSchedules] Times: {"solarNoon":"2024-07-19T11:18:38.403Z","nadir":"2024-07-19T23:18:38.403Z","sunrise":"2024-07-19T03:21:35.488Z","sunset":"2024-07-19T19:15:41.317Z","sunriseEnd":"2024-07-19T03:25:42.029Z","sunsetStart":"2024-07-19T19:11:34.776Z","dawn":"2024-07-19T02:39:12.739Z","dusk":"2024-07-19T19:58:04.066Z","nauticalDawn":"2024-07-19T01:40:03.881Z","nauticalDusk":"2024-07-19T20:57:12.924Z","nightEnd":"2024-07-18T23:56:27.218Z","night":"2024-07-19T22:40:49.588Z","goldenHourEnd":"2024-07-19T04:11:46.873Z","goldenHour":"2024-07-19T18:25:29.932Z"}

2024-07-19 14:21:54.902  - error: javascript.1 (7517) script.js.global.Shared.Script_1: TypeScript compilation failed:
export const subject = new Subject<number>();
                       ^
ERROR: Untyped function calls may not accept type arguments.

Version of nodejs

18.20.3

Version of ioBroker js-controller

6.0.8

Version of adapter

8.7.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions