NEWS
Puppeteer: Screenshots PhantomJS Alternative
-
@foxriver76 Jetzt kommt ein haufen Zeugs:
$ npm ls --depth=4 ├── @types/caseless@0.12.2 extraneous ├─┬ @types/request@2.48.8 extraneous │ ├── @types/caseless@0.12.2 deduped │ ├── @types/node@18.6.3 │ ├── @types/tough-cookie@4.0.2 deduped │ └─┬ form-data@2.5.1 extraneous │ ├── asynckit@0.4.0 │ ├─┬ combined-stream@1.0.8 │ │ └── delayed-stream@1.0.0 │ └─┬ mime-types@2.1.30 │ └── mime-db@1.47.0 ├── @types/tough-cookie@4.0.2 extraneous ├─┬ canvas@2.9.3 │ ├─┬ @mapbox/node-pre-gyp@1.0.9 │ │ ├── detect-libc@2.0.1 │ │ ├─┬ https-proxy-agent@5.0.0 │ │ │ ├─┬ agent-base@6.0.2 │ │ │ │ └── debug@4.3.1 │ │ │ └─┬ debug@4.3.1 │ │ │ └── ms@2.1.2 │ │ ├─┬ make-dir@3.1.0 │ │ │ └── semver@6.3.0 │ │ ├─┬ node-fetch@2.6.7 │ │ │ ├─┬ encoding@0.1.13 │ │ │ │ └── iconv-lite@0.6.3 │ │ │ └─┬ whatwg-url@5.0.0 │ │ │ ├── tr46@0.0.3 │ │ │ └── webidl-conversions@3.0.1 │ │ ├─┬ nopt@5.0.0 │ │ │ └── abbrev@1.1.1 │ │ ├─┬ npmlog@5.0.1 │ │ │ ├─┬ are-we-there-yet@2.0.0 │ │ │ │ ├── delegates@1.0.0 │ │ │ │ └── readable-stream@3.6.0 │ │ │ ├── console-control-strings@1.1.0 │ │ │ ├─┬ gauge@3.0.2 │ │ │ │ ├── aproba@1.2.0 │ │ │ │ ├── color-support@1.1.3 │ │ │ │ ├── console-control-strings@1.1.0 deduped │ │ │ │ ├── has-unicode@2.0.1 │ │ │ │ ├── object-assign@4.1.1 deduped │ │ │ │ ├── signal-exit@3.0.7 │ │ │ │ ├── string-width@4.2.3 │ │ │ │ ├── strip-ansi@6.0.1 │ │ │ │ └── wide-align@1.1.5 │ │ │ └── set-blocking@2.0.0 │ │ ├─┬ rimraf@3.0.2 │ │ │ └─┬ glob@7.1.6 │ │ │ ├── fs.realpath@1.0.0 │ │ │ ├── inflight@1.0.6 │ │ │ ├── inherits@2.0.3 deduped │ │ │ ├── minimatch@3.0.4 │ │ │ ├── once@1.4.0 deduped │ │ │ └── path-is-absolute@1.0.1 │ │ ├── semver@7.3.5 deduped │ │ └── tar@6.1.11 deduped │ ├── nan@2.16.0 │ └─┬ simple-get@3.1.0 │ ├─┬ decompress-response@4.2.1 │ │ └── mimic-response@2.1.0 │ ├─┬ once@1.4.0 │ │ └── wrappy@1.0.2 │ └── simple-concat@1.0.1 ├── coffeescript@1.12.7 extraneous ├─┬ iobroker.admin@6.2.17 │ ├─┬ @iobroker/adapter-core@2.6.0 │ │ └─┬ @types/iobroker@4.0.2 │ │ └── @types/node@18.6.3 deduped │ ├─┬ @iobroker/socket-classes@0.5.2 │ │ ├── axios@0.27.2 deduped │ │ ├── cookie-parser@1.4.6 deduped │ │ └── passport@0.6.0 deduped │ ├─┬ @iobroker/ws-server@2.1.0 │ │ └── ws@8.8.1 deduped │ ├─┬ axios@0.27.2 │ │ ├── follow-redirects@1.14.9 │ │ └─┬ form-data@4.0.0 │ │ ├── asynckit@0.4.0 deduped │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.30 deduped │ ├─┬ body-parser@1.20.0 │ │ ├── bytes@3.1.2 │ │ ├── content-type@1.0.4 │ │ ├─┬ debug@2.6.9 │ │ │ └── ms@2.0.0 │ │ ├── depd@2.0.0 │ │ ├── destroy@1.2.0 │ │ ├─┬ http-errors@2.0.0 │ │ │ ├── depd@2.0.0 deduped │ │ │ ├── inherits@2.0.4 │ │ │ ├── setprototypeof@1.2.0 deduped │ │ │ ├── statuses@2.0.1 deduped │ │ │ └── toidentifier@1.0.1 │ │ ├─┬ iconv-lite@0.4.24 │ │ │ └── safer-buffer@2.1.2 │ │ ├─┬ on-finished@2.4.1 │ │ │ └── ee-first@1.1.1 │ │ ├── qs@6.10.3 deduped │ │ ├─┬ raw-body@2.5.1 │ │ │ ├── bytes@3.1.2 deduped │ │ │ ├── http-errors@2.0.0 deduped │ │ │ ├── iconv-lite@0.4.24 deduped │ │ │ └── unpipe@1.0.0 deduped │ │ ├─┬ type-is@1.6.18 │ │ │ ├── media-typer@0.3.0 │ │ │ └── mime-types@2.1.30 deduped │ │ └── unpipe@1.0.0 │ ├─┬ compression@1.7.4 │ │ ├─┬ accepts@1.3.7 │ │ │ ├── mime-types@2.1.30 deduped │ │ │ └── negotiator@0.6.2 │ │ ├── bytes@3.0.0 │ │ ├─┬ compressible@2.0.18 │ │ │ └── mime-db@1.47.0 deduped │ │ ├── debug@2.6.9 deduped │ │ ├── on-headers@1.0.2 │ │ ├── safe-buffer@5.1.2 │ │ └── vary@1.1.2 │ ├── connect-flash@0.1.1 │ ├─┬ cookie-parser@1.4.6 │ │ ├── cookie-signature@1.0.6 │ │ └── cookie@0.4.1 │ ├─┬ express-fileupload@1.4.0 │ │ └─┬ busboy@1.6.0 │ │ └── streamsearch@1.1.0 │ ├─┬ express-session@1.17.3 │ │ ├── cookie-signature@1.0.6 deduped │ │ ├── cookie@0.4.2 │ │ ├── debug@2.6.9 deduped │ │ ├── depd@2.0.0 deduped │ │ ├── on-headers@1.0.2 deduped │ │ ├── parseurl@1.3.3 │ │ ├── safe-buffer@5.2.1 │ │ └─┬ uid-safe@2.1.5 │ │ └── random-bytes@1.0.0 │ ├─┬ express@4.18.1 │ │ ├─┬ accepts@1.3.8 │ │ │ ├─┬ mime-types@2.1.35 │ │ │ │ └── mime-db@1.52.0 │ │ │ └── negotiator@0.6.3 │ │ ├── array-flatten@1.1.1 │ │ ├── body-parser@1.20.0 deduped │ │ ├─┬ content-disposition@0.5.4 │ │ │ └── safe-buffer@5.2.1 │ │ ├── content-type@1.0.4 deduped │ │ ├── cookie-signature@1.0.6 deduped │ │ ├── cookie@0.5.0 │ │ ├── debug@2.6.9 deduped │ │ ├── depd@2.0.0 deduped │ │ ├── encodeurl@1.0.2 │ │ ├── escape-html@1.0.3 │ │ ├── etag@1.8.1 │ │ ├─┬ finalhandler@1.2.0 │ │ │ ├── debug@2.6.9 deduped │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── on-finished@2.4.1 deduped │ │ │ ├── parseurl@1.3.3 deduped │ │ │ ├── statuses@2.0.1 deduped │ │ │ └── unpipe@1.0.0 deduped │ │ ├── fresh@0.5.2 │ │ ├── http-errors@2.0.0 deduped │ │ ├── merge-descriptors@1.0.1 │ │ ├── methods@1.1.2 │ │ ├── on-finished@2.4.1 deduped │ │ ├── parseurl@1.3.3 deduped │ │ ├── path-to-regexp@0.1.7 │ │ ├─┬ proxy-addr@2.0.7 │ │ │ ├── forwarded@0.2.0 │ │ │ └── ipaddr.js@1.9.1 │ │ ├── qs@6.10.3 deduped │ │ ├── range-parser@1.2.1 │ │ ├── safe-buffer@5.2.1 deduped │ │ ├─┬ send@0.18.0 │ │ │ ├── debug@2.6.9 deduped │ │ │ ├── depd@2.0.0 deduped │ │ │ ├── destroy@1.2.0 deduped │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── etag@1.8.1 deduped │ │ │ ├── fresh@0.5.2 deduped │ │ │ ├── http-errors@2.0.0 deduped │ │ │ ├── mime@1.6.0 │ │ │ ├── ms@2.1.3 │ │ │ ├── on-finished@2.4.1 deduped │ │ │ ├── range-parser@1.2.1 deduped │ │ │ └── statuses@2.0.1 deduped │ │ ├─┬ serve-static@1.15.0 │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── parseurl@1.3.3 deduped │ │ │ └── send@0.18.0 deduped │ │ ├── setprototypeof@1.2.0 │ │ ├── statuses@2.0.1 │ │ ├── type-is@1.6.18 deduped │ │ ├── utils-merge@1.0.1 │ │ └── vary@1.1.2 deduped │ ├── mime@3.0.0 │ ├─┬ passport-local@1.0.0 │ │ └── passport-strategy@1.0.0 │ ├─┬ passport@0.6.0 │ │ ├── passport-strategy@1.0.0 deduped │ │ ├── pause@0.0.1 │ │ └── utils-merge@1.0.1 deduped │ ├─┬ semver@7.3.7 │ │ └─┬ lru-cache@6.0.0 │ │ └── yallist@4.0.0 deduped │ └─┬ ws@8.8.1 │ ├── UNMET OPTIONAL DEPENDENCY bufferutil@^4.0.1 │ └── UNMET OPTIONAL DEPENDENCY utf-8-validate@^5.0.2 ├─┬ iobroker.backitup@2.4.12 │ ├─┬ @googleapis/drive@3.0.1 │ │ └─┬ googleapis-common@5.1.0 │ │ ├── extend@3.0.2 deduped │ │ ├─┬ gaxios@4.3.3 │ │ │ ├── abort-controller@3.0.0 │ │ │ ├── extend@3.0.2 deduped │ │ │ ├── https-proxy-agent@5.0.0 deduped │ │ │ ├── is-stream@2.0.0 deduped │ │ │ └── node-fetch@2.6.7 deduped │ │ ├─┬ google-auth-library@7.14.1 │ │ │ ├── arrify@2.0.1 deduped │ │ │ ├── base64-js@1.5.1 deduped │ │ │ ├── ecdsa-sig-formatter@1.0.11 deduped │ │ │ ├── fast-text-encoding@1.0.3 deduped │ │ │ ├── gaxios@4.3.3 deduped │ │ │ ├── gcp-metadata@4.3.1 │ │ │ ├── gtoken@5.3.2 │ │ │ ├── jws@4.0.0 deduped │ │ │ └── lru-cache@6.0.0 deduped │ │ ├── qs@6.10.3 deduped │ │ ├── url-template@2.0.8 │ │ └── uuid@8.3.2 │ ├── @iobroker/adapter-core@2.6.0 deduped │ ├─┬ axios@0.27.2 │ │ ├── follow-redirects@1.14.9 deduped │ │ └─┬ form-data@4.0.0 │ │ ├── asynckit@0.4.0 deduped │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.30 deduped │ ├─┬ dropbox-v2-api@2.5.4 │ │ └── request@2.88.2 deduped │ ├─┬ express@4.18.1 │ │ ├─┬ accepts@1.3.8 │ │ │ ├─┬ mime-types@2.1.35 │ │ │ │ └── mime-db@1.52.0 │ │ │ └── negotiator@0.6.3 │ │ ├── array-flatten@1.1.1 deduped │ │ ├─┬ body-parser@1.20.0 │ │ │ ├── bytes@3.1.2 │ │ │ ├── content-type@1.0.4 deduped │ │ │ ├── debug@2.6.9 deduped │ │ │ ├── depd@2.0.0 deduped │ │ │ ├── destroy@1.2.0 │ │ │ ├── http-errors@2.0.0 deduped │ │ │ ├── iconv-lite@0.4.24 deduped │ │ │ ├── on-finished@2.4.1 deduped │ │ │ ├── qs@6.10.3 deduped │ │ │ ├─┬ raw-body@2.5.1 │ │ │ │ ├── bytes@3.1.2 deduped │ │ │ │ ├── http-errors@2.0.0 deduped │ │ │ │ ├── iconv-lite@0.4.24 deduped │ │ │ │ └── unpipe@1.0.0 deduped │ │ │ ├── type-is@1.6.18 deduped │ │ │ └── unpipe@1.0.0 deduped │ │ ├── content-disposition@0.5.4 deduped │ │ ├── content-type@1.0.4 deduped │ │ ├── cookie-signature@1.0.6 deduped │ │ ├── cookie@0.5.0 │ │ ├── debug@2.6.9 deduped │ │ ├── depd@2.0.0 │ │ ├── encodeurl@1.0.2 deduped │ │ ├── escape-html@1.0.3 deduped │ │ ├── etag@1.8.1 deduped │ │ ├─┬ finalhandler@1.2.0 │ │ │ ├── debug@2.6.9 deduped │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── on-finished@2.4.1 deduped │ │ │ ├── parseurl@1.3.3 deduped │ │ │ ├── statuses@2.0.1 deduped │ │ │ └── unpipe@1.0.0 deduped │ │ ├── fresh@0.5.2 deduped │ │ ├─┬ http-errors@2.0.0 │ │ │ ├── depd@2.0.0 deduped │ │ │ ├── inherits@2.0.4 │ │ │ ├── setprototypeof@1.2.0 deduped │ │ │ ├── statuses@2.0.1 deduped │ │ │ └── toidentifier@1.0.1 deduped │ │ ├── merge-descriptors@1.0.1 deduped │ │ ├── methods@1.1.2 deduped │ │ ├─┬ on-finished@2.4.1 │ │ │ └── ee-first@1.1.1 deduped │ │ ├── parseurl@1.3.3 deduped │ │ ├── path-to-regexp@0.1.7 deduped │ │ ├── proxy-addr@2.0.7 deduped │ │ ├── qs@6.10.3 deduped │ │ ├── range-parser@1.2.1 deduped │ │ ├── safe-buffer@5.2.1 │ │ ├─┬ send@0.18.0 │ │ │ ├── debug@2.6.9 deduped │ │ │ ├── depd@2.0.0 deduped │ │ │ ├── destroy@1.2.0 deduped │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── etag@1.8.1 deduped │ │ │ ├── fresh@0.5.2 deduped │ │ │ ├── http-errors@2.0.0 deduped │ │ │ ├── mime@1.6.0 deduped │ │ │ ├── ms@2.1.3 │ │ │ ├── on-finished@2.4.1 deduped │ │ │ ├── range-parser@1.2.1 deduped │ │ │ └── statuses@2.0.1 deduped │ │ ├─┬ serve-static@1.15.0 │ │ │ ├── encodeurl@1.0.2 deduped │ │ │ ├── escape-html@1.0.3 deduped │ │ │ ├── parseurl@1.3.3 deduped │ │ │ └── send@0.18.0 deduped │ │ ├── setprototypeof@1.2.0 deduped │ │ ├── statuses@2.0.1 │ │ ├── type-is@1.6.18 deduped │ │ ├── utils-merge@1.0.1 deduped │ │ └── vary@1.1.2 deduped │ ├─┬ fs-extra@10.1.0 │ │ ├── graceful-fs@4.2.6 │ │ ├─┬ jsonfile@6.1.0 │ │ │ ├── graceful-fs@4.2.6 deduped │ │ │ └── universalify@2.0.0 deduped │ │ └── universalify@2.0.0 │ ├─┬ ftp@0.3.10 │ │ ├─┬ readable-stream@1.1.14 │ │ │ ├── core-util-is@1.0.2 │ │ │ ├── inherits@2.0.3 deduped │ │ │ ├── isarray@0.0.1 │ │ │ └── string_decoder@0.10.31 │ │ └── xregexp@2.0.0 │ ├─┬ google-auth-library@8.1.1 │ │ ├── arrify@2.0.1 │ │ ├── base64-js@1.5.1 │ │ ├─┬ ecdsa-sig-formatter@1.0.11 │ │ │ └── safe-buffer@5.1.2 deduped │ │ ├── fast-text-encoding@1.0.3 │ │ ├─┬ gaxios@5.0.1 │ │ │ ├── extend@3.0.2 deduped │ │ │ ├── https-proxy-agent@5.0.0 deduped │ │ │ ├── is-stream@2.0.0 │ │ │ └── node-fetch@2.6.7 deduped │ │ ├─┬ gcp-metadata@5.0.0 │ │ │ ├── gaxios@5.0.1 deduped │ │ │ └─┬ json-bigint@1.0.0 │ │ │ └── bignumber.js@9.0.2 │ │ ├─┬ gtoken@6.1.0 │ │ │ ├─┬ gaxios@4.3.3 │ │ │ │ ├── abort-controller@3.0.0 deduped │ │ │ │ ├── extend@3.0.2 deduped │ │ │ │ ├── https-proxy-agent@5.0.0 deduped │ │ │ │ ├── is-stream@2.0.0 deduped │ │ │ │ └── node-fetch@2.6.7 deduped │ │ │ ├─┬ google-p12-pem@4.0.0 │ │ │ │ └── node-forge@1.3.1 deduped │ │ │ └── jws@4.0.0 deduped │ │ ├─┬ jws@4.0.0 │ │ │ ├─┬ jwa@2.0.0 │ │ │ │ ├── buffer-equal-constant-time@1.0.1 │ │ │ │ ├── ecdsa-sig-formatter@1.0.11 deduped │ │ │ │ └── safe-buffer@5.1.2 deduped │ │ │ └── safe-buffer@5.1.2 deduped │ │ └── lru-cache@6.0.0 deduped │ ├─┬ node-schedule@2.1.0 │ │ ├─┬ cron-parser@3.5.0 │ │ │ ├─┬ is-nan@1.3.2 │ │ │ │ ├── call-bind@1.0.2 deduped │ │ │ │ └── define-properties@1.1.3 deduped │ │ │ └── luxon@1.27.0 deduped │ │ ├── long-timeout@0.1.1 │ │ └── sorted-array-functions@1.3.0 │ ├── node-wol@0.1.1 │ ├─┬ request@2.88.2 │ │ ├── aws-sign2@0.7.0 │ │ ├── aws4@1.11.0 │ │ ├── caseless@0.12.0 │ │ ├── combined-stream@1.0.8 deduped │ │ ├── extend@3.0.2 │ │ ├── forever-agent@0.6.1 │ │ ├─┬ form-data@2.3.3 │ │ │ ├── asynckit@0.4.0 deduped │ │ │ ├── combined-stream@1.0.8 deduped │ │ │ └── mime-types@2.1.30 deduped │ │ ├─┬ har-validator@5.1.5 │ │ │ ├─┬ ajv@6.12.6 │ │ │ │ ├── fast-deep-equal@3.1.3 deduped │ │ │ │ ├── fast-json-stable-stringify@2.1.0 │ │ │ │ ├── json-schema-traverse@0.4.1 │ │ │ │ └── uri-js@4.4.1 │ │ │ └── har-schema@2.0.0 │ │ ├─┬ http-signature@1.2.0 │ │ │ ├── assert-plus@1.0.0 │ │ │ ├─┬ jsprim@1.4.1 │ │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ │ ├── extsprintf@1.3.0 │ │ │ │ ├── json-schema@0.2.3 │ │ │ │ └── verror@1.10.0 │ │ │ └─┬ sshpk@1.16.1 │ │ │ ├── asn1@0.2.4 │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ ├── bcrypt-pbkdf@1.0.2 │ │ │ ├── dashdash@1.14.1 │ │ │ ├── ecc-jsbn@0.1.2 │ │ │ ├── getpass@0.1.7 │ │ │ ├── jsbn@0.1.1 │ │ │ ├── safer-buffer@2.1.2 deduped │ │ │ └── tweetnacl@0.14.5 │ │ ├── is-typedarray@1.0.0 │ │ ├── isstream@0.1.2 │ │ ├── json-stringify-safe@5.0.1 │ │ ├── mime-types@2.1.30 deduped │ │ ├── oauth-sign@0.9.0 │ │ ├── performance-now@2.1.0 │ │ ├── qs@6.5.2 │ │ ├── safe-buffer@5.1.2 deduped │ │ ├─┬ tough-cookie@2.5.0 │ │ │ ├── psl@1.8.0 deduped │ │ │ └── punycode@2.1.1 deduped │ │ ├─┬ tunnel-agent@0.6.0 │ │ │ └── safe-buffer@5.1.2 deduped │ │ └── uuid@3.4.0 │ ├─┬ tar-fs@2.1.1 │ │ ├── chownr@1.1.4 │ │ ├── mkdirp-classic@0.5.3 │ │ ├─┬ pump@3.0.0 │ │ │ ├─┬ end-of-stream@1.4.4 │ │ │ │ └── once@1.4.0 deduped │ │ │ └── once@1.4.0 deduped │ │ └─┬ tar-stream@2.2.0 │ │ ├─┬ bl@4.1.0 │ │ │ ├── buffer@5.7.1 │ │ │ ├── inherits@2.0.4 │ │ │ └── readable-stream@3.6.0 │ │ ├── end-of-stream@1.4.4 deduped │ │ ├── fs-constants@1.0.0 │ │ ├── inherits@2.0.3 deduped │ │ └─┬ readable-stream@3.6.0 │ │ ├── inherits@2.0.3 deduped │ │ ├── string_decoder@1.3.0 │ │ └── util-deprecate@1.0.2 deduped │ └─┬ webdav@4.10.0 │ ├─┬ axios@0.27.2 │ │ ├── follow-redirects@1.14.9 deduped │ │ └─┬ form-data@4.0.0 │ │ ├── asynckit@0.4.0 deduped │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.30 deduped │ ├── base-64@1.0.0 │ ├── byte-length@1.0.2 │ ├─┬ fast-xml-parser@3.21.1 │ │ └── strnum@1.0.5 │ ├── he@1.2.0 │ ├── hot-patcher@0.5.0 │ ├── layerr@0.1.2 │ ├─┬ md5@2.3.0 │ │ ├── charenc@0.0.2 │ │ ├── crypt@0.0.2 │ │ └── is-buffer@1.1.6 │ ├─┬ minimatch@5.1.0 │ │ └─┬ brace-expansion@2.0.1 │ │ └── balanced-match@1.0.2 │ ├── nested-property@4.0.0 │ ├── path-posix@1.0.0 │ ├── url-join@4.0.1 │ └─┬ url-parse@1.5.10 │ ├── querystringify@2.2.0 │ └── requires-port@1.0.0 ├─┬ iobroker.daswetter@3.1.4 │ ├── @iobroker/adapter-core@2.6.0 deduped │ ├─┬ axios@0.27.2 │ │ ├── follow-redirects@1.14.9 deduped │ │ └─┬ form-data@4.0.0 │ │ ├── asynckit@0.4.0 deduped │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.30 deduped │ └── xml2json-light@1.0.6 ├─┬ iobroker.discovery@3.0.5 │ ├── @iobroker/adapter-core@2.6.0 deduped │ ├─┬ mdns-discovery@0.2.6 │ │ ├─┬ debug@2.2.0 │ │ │ └── ms@0.7.1 │ │ ├── dgram@1.0.1 │ │ └─┬ dns-packet@1.3.4 │ │ ├── ip@1.1.5 deduped │ │ └── safe-buffer@5.1.2 deduped │ ├── netmask@2.0.2 │ ├── node-mndp@0.0.3 │ ├─┬ node-ssdp@4.0.1 │ │ ├─┬ async@2.6.4 │ │ │ └── lodash@4.17.21 │ │ ├── bluebird@3.7.2 │ │ ├─┬ debug@3.2.7 │ │ │ └── ms@2.1.3 │ │ ├── extend@3.0.2 deduped │ │ └── ip@1.1.5 deduped │ └─┬ serialport@10.4.0 │ ├─┬ @serialport/binding-mock@10.2.2 │ │ ├── @serialport/bindings-interface@1.2.1 │ │ └── debug@4.3.3 deduped │ ├─┬ @serialport/bindings-cpp@10.7.0 │ │ ├── @serialport/bindings-interface@1.2.1 deduped │ │ ├─┬ @serialport/parser-readline@10.3.0 │ │ │ └── @serialport/parser-delimiter@10.3.0 │ │ ├─┬ debug@4.3.3 │ │ │ └── ms@2.1.2 │ │ ├── node-addon-api@4.3.0 deduped │ │ └── node-gyp-build@4.3.0 │ ├── @serialport/parser-byte-length@10.3.0 │ ├── @serialport/parser-cctalk@10.3.0 │ ├── @serialport/parser-delimiter@10.3.0 │ ├── @serialport/parser-inter-byte-timeout@10.3.0 │ ├── @serialport/parser-packet-length@10.3.0 │ ├─┬ @serialport/parser-readline@10.3.0 │ │ └── @serialport/parser-delimiter@10.3.0 deduped │ ├── @serialport/parser-ready@10.3.0 │ ├── @serialport/parser-regex@10.3.0 │ ├── @serialport/parser-slip-encoder@10.3.0 │ ├── @serialport/parser-spacepacket@10.3.0 │ ├─┬ @serialport/stream@10.3.0 │ │ ├── @serialport/bindings-interface@1.2.1 deduped │ │ └── debug@4.3.3 deduped │ └─┬ debug@4.3.3 │ └── ms@2.1.2 ├─┬ iobroker.echarts@1.0.12 │ ├── canvas@2.9.3 deduped │ ├─┬ echarts@5.3.3 │ │ ├── tslib@2.3.0 │ │ └─┬ zrender@5.3.2 │ │ └── tslib@2.3.0 │ ├─┬ jsdom@19.0.0 │ │ ├── abab@2.0.6 │ │ ├─┬ acorn-globals@6.0.0 │ │ │ ├── acorn-walk@7.2.0 │ │ │ └── acorn@7.4.1 │ │ ├── acorn@8.7.1 │ │ ├── canvas@2.9.3 deduped │ │ ├── cssom@0.5.0 │ │ ├─┬ cssstyle@2.3.0 │ │ │ └── cssom@0.3.8 │ │ ├─┬ data-urls@3.0.2 │ │ │ ├── abab@2.0.6 deduped │ │ │ ├── whatwg-mimetype@3.0.0 deduped │ │ │ └─┬ whatwg-url@11.0.0 │ │ │ ├── tr46@3.0.0 deduped │ │ │ └── webidl-conversions@7.0.0 deduped │ │ ├── decimal.js@10.3.1 │ │ ├─┬ domexception@4.0.0 │ │ │ └── webidl-conversions@7.0.0 deduped │ │ ├─┬ escodegen@2.0.0 │ │ │ ├── esprima@4.0.1 │ │ │ ├── estraverse@5.3.0 │ │ │ ├── esutils@2.0.3 │ │ │ ├─┬ optionator@0.8.3 │ │ │ │ ├── deep-is@0.1.4 │ │ │ │ ├── fast-levenshtein@2.0.6 │ │ │ │ ├── levn@0.3.0 │ │ │ │ ├── prelude-ls@1.1.2 │ │ │ │ ├── type-check@0.3.2 │ │ │ │ └── word-wrap@1.2.3 │ │ │ └── source-map@0.6.1 deduped │ │ ├─┬ form-data@4.0.0 │ │ │ ├── asynckit@0.4.0 deduped │ │ │ ├── combined-stream@1.0.8 deduped │ │ │ └── mime-types@2.1.30 deduped │ │ ├─┬ html-encoding-sniffer@3.0.0 │ │ │ └── whatwg-encoding@2.0.0 deduped │ │ ├─┬ http-proxy-agent@5.0.0 │ │ │ ├── @tootallnate/once@2.0.0 │ │ │ ├── agent-base@6.0.2 deduped │ │ │ └─┬ debug@4.3.4 │ │ │ └── ms@2.1.2 │ │ ├── https-proxy-agent@5.0.0 deduped │ │ ├── is-potential-custom-element-name@1.0.1 │ │ ├── nwsapi@2.2.0 │ │ ├── parse5@6.0.1 │ │ ├─┬ saxes@5.0.1 │ │ │ └── xmlchars@2.2.0 │ │ ├── symbol-tree@3.2.4 │ │ ├─┬ tough-cookie@4.0.0 │ │ │ ├── psl@1.8.0 deduped │ │ │ ├── punycode@2.1.1 deduped │ │ │ └── universalify@0.1.2 │ │ ├─┬ w3c-hr-time@1.0.2 │ │ │ └── browser-process-hrtime@1.0.0 │ │ ├─┬ w3c-xmlserializer@3.0.0 │ │ │ └── xml-name-validator@4.0.0 deduped │ │ ├── webidl-conversions@7.0.0 │ │ ├─┬ whatwg-encoding@2.0.0 │ │ │ └─┬ iconv-lite@0.6.3 │ │ │ └── safer-buffer@2.1.2 deduped │ │ ├── whatwg-mimetype@3.0.0 │ │ ├─┬ whatwg-url@10.0.0 │ │ │ ├─┬ tr46@3.0.0 │ │ │ │ └── punycode@2.1.1 deduped │ │ │ └── webidl-conversions@7.0.0 deduped │ │ ├── ws@8.8.1 deduped │ │ └── xml-name-validator@4.0.0 │ └── moment@2.29.3 ├─┬ iobroker.email@1.1.3 │ ├── @iobroker/adapter-core@2.6.0 deduped │ └── nodemailer@6.7.5 ├─┬ iobroker.energiefluss@1.0.0 (git+ssh://git@github.com/SKB-CGN/ioBroker.energiefluss.git#0a734637f65acccbe761f460d06ecd1cb0731a96) │ ├── @iobroker/adapter-core@2.6.0 deduped │ └── canvas@2.9.3 deduped ├─┬ iobroker.flot@1.11.0 │ └── @iobroker/adapter-core@2.6.0 deduped ├─┬ iobroker.fritzdect@2.2.3 │ ├─┬ @iobroker/adapter-core@2.5.1 │ │ └─┬ @types/iobroker@3.3.4 │ │ └── @types/node@18.6.3 deduped │ ├─┬ command-line-args@5.2.0 │ │ ├── array-back@3.1.0 │ │ ├─┬ find-replace@3.0.0 │ │ │ └── array-back@3.1.0 deduped │ │ ├── lodash.camelcase@4.3.0 │ │ └── typical@4.0.0 │ ├─┬ command-line-usage@6.1.1 │ │ ├── array-back@4.0.2 │ │ ├─┬ chalk@2.4.2 │ │ │ ├─┬ ansi-styles@3.2.1 │ │ │ │ └── color-convert@1.9.3 │ │ │ ├── escape-string-regexp@1.0.5 │ │ │ └─┬ supports-color@5.5.0 │ │ │ └── has-flag@3.0.0 │ │ ├─┬ table-layout@1.0.2 │ │ │ ├── array-back@4.0.2 │ │ │ ├── deep-extend@0.6.0 │ │ │ ├── typical@5.2.0 │ │ │ └─┬ wordwrapjs@4.0.1 │ │ │ ├── reduce-flatten@2.0.0 │ │ │ └── typical@5.2.0 │ │ └── typical@5.2.0 │ └── xml2json-light@1.0.6 deduped ├─┬ iobroker.history@2.2.1 │ └── @iobroker/adapter-core@2.6.0 deduped ├─┬ iobroker.homeconnect@1.0.1 │ ├─┬ @iobroker/adapter-core@2.6.0 │ │ └─┬ @types/iobroker@4.0.2 │ │ └── @types/node@18.6.3 deduped │ ├─┬ axios-rate-limit@1.3.0 │ │ └── axios@0.24.0 deduped │ ├─┬ axios@0.26.1 │ │ └── follow-redirects@1.14.9 │ ├── eventsource@2.0.0 │ └─┬ qs@6.10.3 │ └─┬ side-channel@1.0.4 │ ├─┬ call-bind@1.0.2 │ │ ├── function-bind@1.1.1 │ │ └── get-intrinsic@1.1.1 deduped │ ├─┬ get-intrinsic@1.1.1 │ │ ├── function-bind@1.1.1 deduped │ │ ├── has-symbols@1.0.2 │ │ └── has@1.0.3 deduped │ └── object-inspect@1.12.0 ├─┬ iobroker.husq-automower@1.1.2 (git+ssh://git@github.com/truegreyhound/ioBroker.husq-automower.git#7a8ed7031d6e945544c0adbb05d82cc0f322f954) │ ├─┬ node-schedule@1.3.3 │ │ ├─┬ cron-parser@2.18.0 │ │ │ ├── is-nan@1.3.2 deduped │ │ │ └─┬ moment-timezone@0.5.33 │ │ │ └── moment@2.29.1 │ │ ├── long-timeout@0.1.1 deduped │ │ └── sorted-array-functions@1.3.0 deduped │ └── request@2.88.2 deduped ├─┬ iobroker.info@1.9.19 │ ├─┬ @iobroker/adapter-core@2.6.0 │ │ └─┬ @types/iobroker@4.0.1 │ │ └── @types/node@18.6.3 deduped │ ├─┬ axios@0.26.0 │ │ └── follow-redirects@1.14.9 │ ├── jshashes@1.0.8 │ ├── UNMET OPTIONAL DEPENDENCY osx-temperature-sensor@^1.0.7 │ ├─┬ semver@7.3.5 │ │ └── lru-cache@6.0.0 deduped │ └── systeminformation@5.11.6 ├─┬ iobroker.jarvis@3.0.13 │ ├── @iobroker/adapter-core@2.6.0 deduped │ ├─┬ got@11.8.5 │ │ ├── @sindresorhus/is@4.0.1 │ │ ├─┬ @szmarczak/http-timer@4.0.5 │ │ │ └── defer-to-connect@2.0.1 │ │ ├─┬ @types/cacheable-request@6.0.1 │ │ │ ├── @types/http-cache-semantics@4.0.0 │ │ │ ├─┬ @types/keyv@3.1.1 │ │ │ │ └── @types/node@18.6.3 deduped │ │ │ ├── @types/node@18.6.3 deduped │ │ │ └── @types/responselike@1.0.0 deduped │ │ ├─┬ @types/responselike@1.0.0 │ │ │ └── @types/node@18.6.3 deduped │ │ ├── cacheable-lookup@5.0.4 │ │ ├─┬ cacheable-request@7.0.2 │ │ │ ├─┬ clone-response@1.0.2 │ │ │ │ └── mimic-response@1.0.1 │ │ │ ├─┬ get-stream@5.2.0 │ │ │ │ └── pump@3.0.0 deduped │ │ │ ├── http-cache-semantics@4.1.0 │ │ │ ├─┬ keyv@4.0.3 │ │ │ │ └── json-buffer@3.0.1 │ │ │ ├── lowercase-keys@2.0.0 deduped │ │ │ ├── normalize-url@6.1.0 │ │ │ └── responselike@2.0.0 deduped │ │ ├─┬ decompress-response@6.0.0 │ │ │ └── mimic-response@3.1.0 │ │ ├─┬ http2-wrapper@1.0.3 │ │ │ ├── quick-lru@5.1.1 │ │ │ └── resolve-alpn@1.1.2 │ │ ├── lowercase-keys@2.0.0 │ │ ├── p-cancelable@2.1.1 │ │ └─┬ responselike@2.0.0 │ │ └── lowercase-keys@2.0.0 deduped │ ├── ip@1.1.5 │ ├── object-hash@2.2.0 │ ├── platform@1.3.6 │ ├── semver@7.3.5 deduped │ ├─┬ socket.io@4.5.1 │ │ ├── accepts@1.3.7 deduped │ │ ├── base64id@2.0.0 │ │ ├─┬ debug@4.3.4 │ │ │ └── ms@2.1.2 │ │ ├─┬ engine.io@6.2.0 │ │ │ ├── @types/cookie@0.4.1 │ │ │ ├── @types/cors@2.8.12 │ │ │ ├── @types/node@18.6.3 deduped │ │ │ ├── accepts@1.3.7 deduped │ │ │ ├── base64id@2.0.0 deduped │ │ │ ├── cookie@0.4.1 deduped │ │ │ ├─┬ cors@2.8.5 │ │ │ │ ├── object-assign@4.1.1 deduped │ │ │ │ └── vary@1.1.2 deduped │ │ │ ├── debug@4.3.4 deduped │ │ │ ├── engine.io-parser@5.0.4 │ │ │ └─┬ ws@8.2.3 │ │ │ ├── UNMET OPTIONAL DEPENDENCY bufferutil@^4.0.1 │ │ │ └── UNMET OPTIONAL DEPENDENCY utf-8-validate@^5.0.2 │ │ ├── socket.io-adapter@2.4.0 │ │ └─┬ socket.io-parser@4.0.5 │ │ ├── @types/component-emitter@1.2.11 │ │ ├── component-emitter@1.3.0 │ │ └── debug@4.3.4 deduped │ └── uuid@8.3.2 ├─┬ iobroker.javascript@6.0.1 (git+ssh://git@github.com/ioBroker/ioBroker.javascript.git#9f30d43e14ff8e86d89860be50d1a4f4e15e2905) │ ├─┬ @iobroker/adapter-core@2.6.0 │ │ └─┬ @types/iobroker@4.0.4 │ │ └── @types/node@16.11.52 deduped │ ├── @types/node@16.11.52 │ ├─┬ @types/request@2.48.8 │ │ ├── @types/caseless@0.12.2 │ │ ├── @types/node@16.11.52 deduped │ │ ├── @types/tough-cookie@4.0.2 │ │ └─┬ form-data@2.5.1 │ │ ├── asynckit@0.4.0 │ │ ├── combined-stream@1.0.8 deduped │ │ └── mime-types@2.1.35 deduped │ ├── coffeescript@1.12.7 │ ├── jsonata@1.8.6 │ ├─┬ jszip@3.10.0 │ │ ├─┬ lie@3.3.0 │ │ │ └── immediate@3.0.6 │ │ ├── pako@1.0.11 │ │ ├─┬ readable-stream@2.3.7 │ │ │ ├── core-util-is@1.0.3 │ │ │ ├── inherits@2.0.4 │ │ │ ├── isarray@1.0.0 │ │ │ ├── process-nextick-args@2.0.1 │ │ │ ├── safe-buffer@5.1.2 deduped │ │ │ ├─┬ string_decoder@1.1.1 │ │ │ │ └── safe-buffer@5.1.2 deduped │ │ │ └── util-deprecate@1.0.2 │ │ └── setimmediate@1.0.5 │ ├── node-inspect@2.0.0 │ ├─┬ node-schedule@2.1.0 │ │ ├─┬ cron-parser@3.5.0 │ │ │ ├─┬ is-nan@1.3.2 │ │ │ │ ├── call-bind@1.0.2 │ │ │ │ └── define-properties@1.1.4 │ │ │ └── luxon@1.28.0 │ │ ├── long-timeout@0.1.1 │ │ └── sorted-array-functions@1.3.0 │ ├─┬ puppeteer@16.2.0 │ │ ├─┬ cross-fetch@3.1.5 │ │ │ └─┬ node-fetch@2.6.7 │ │ │ ├── encoding@0.1.13 deduped │ │ │ └── whatwg-url@5.0.0 │ │ ├─┬ debug@4.3.4 │ │ │ └── ms@2.1.2 │ │ ├── devtools-protocol@0.0.1019158 │ │ ├─┬ extract-zip@2.0.1 │ │ │ ├─┬ @types/yauzl@2.10.0 │ │ │ │ └── @types/node@16.11.52 deduped │ │ │ ├── debug@4.3.4 deduped │ │ │ ├─┬ get-stream@5.2.0 │ │ │ │ └── pump@3.0.0 │ │ │ └─┬ yauzl@2.10.0 │ │ │ ├── buffer-crc32@0.2.13 │ │ │ └── fd-slicer@1.1.0 │ │ ├─┬ https-proxy-agent@5.0.1 │ │ │ ├─┬ agent-base@6.0.2 │ │ │ │ └── debug@4.3.4 deduped │ │ │ └── debug@4.3.4 deduped │ │ ├── progress@2.0.3 │ │ ├── proxy-from-env@1.1.0 │ │ ├─┬ rimraf@3.0.2 │ │ │ └─┬ glob@7.2.0 │ │ │ ├── fs.realpath@1.0.0 │ │ │ ├── inflight@1.0.6 │ │ │ ├── inherits@2.0.4 deduped │ │ │ ├── minimatch@3.1.2 │ │ │ ├── once@1.4.0 │ │ │ └── path-is-absolute@1.0.1 │ │ ├─┬ tar-fs@2.1.1 │ │ │ ├── chownr@1.1.4 │ │ │ ├── mkdirp-classic@0.5.3 │ │ │ ├─┬ pump@3.0.0 │ │ │ │ ├── end-of-stream@1.4.4 │ │ │ │ └── once@1.4.0 deduped │ │ │ └─┬ tar-stream@2.2.0 │ │ │ ├── bl@4.1.0 │ │ │ ├── end-of-stream@1.4.4 deduped │ │ │ ├── fs-constants@1.0.0 │ │ │ ├── inherits@2.0.4 deduped │ │ │ └── readable-stream@3.6.0 │ │ ├─┬ unbzip2-stream@1.4.3 │ │ │ ├─┬ buffer@5.7.1 │ │ │ │ ├── base64-js@1.5.1 │ │ │ │ └── ieee754@1.2.1 │ │ │ └── through@2.3.8 │ │ └─┬ ws@8.8.1 │ │ ├── UNMET OPTIONAL DEPENDENCY bufferutil@^4.0.1 │ │ └── UNMET OPTIONAL DEPENDENCY utf-8-validate@^5.0.2 │ ├─┬ request@2.88.2 │ │ ├── aws-sign2@0.7.0 │ │ ├── aws4@1.11.0 │ │ ├── caseless@0.12.0 │ │ ├─┬ combined-stream@1.0.8 │ │ │ └── delayed-stream@1.0.0 │ │ ├── extend@3.0.2 │ │ ├── forever-agent@0.6.1 │ │ ├─┬ form-data@2.3.3 │ │ │ ├── asynckit@0.4.0 deduped │ │ │ ├── combined-stream@1.0.8 deduped │ │ │ └── mime-types@2.1.35 deduped │ │ ├─┬ har-validator@5.1.5 │ │ │ ├─┬ ajv@6.12.6 │ │ │ │ ├── fast-deep-equal@3.1.3 │ │ │ │ ├── fast-json-stable-stringify@2.1.0 │ │ │ │ ├── json-schema-traverse@0.4.1 │ │ │ │ └── uri-js@4.4.1 │ │ │ └── har-schema@2.0.0 │ │ ├─┬ http-signature@1.2.0 │ │ │ ├── assert-plus@1.0.0 │ │ │ ├─┬ jsprim@1.4.2 │ │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ │ ├── extsprintf@1.3.0 │ │ │ │ ├── json-schema@0.4.0 │ │ │ │ └── verror@1.10.0 │ │ │ └─┬ sshpk@1.17.0 │ │ │ ├── asn1@0.2.6 │ │ │ ├── assert-plus@1.0.0 deduped │ │ │ ├── bcrypt-pbkdf@1.0.2 │ │ │ ├── dashdash@1.14.1 │ │ │ ├── ecc-jsbn@0.1.2 │ │ │ ├── getpass@0.1.7 │ │ │ ├── jsbn@0.1.1 │ │ │ ├── safer-buffer@2.1.2 │ │ │ └── tweetnacl@0.14.5 │ │ ├── is-typedarray@1.0.0 │ │ ├── isstream@0.1.2 │ │ ├── json-stringify-safe@5.0.1 │ │ ├─┬ mime-types@2.1.35 │ │ │ └── mime-db@1.52.0 │ │ ├── oauth-sign@0.9.0 │ │ ├── performance-now@2.1.0 │ │ ├── qs@6.5.3 │ │ ├── safe-buffer@5.1.2 │ │ ├─┬ tough-cookie@2.5.0 │ │ │ ├── psl@1.9.0 │ │ │ └── punycode@2.1.1 │ │ ├─┬ tunnel-agent@0.6.0 │ │ │ └── safe-buffer@5.1.2 deduped │ │ └── uuid@3.4.0 │ ├─┬ semver@7.3.7 │ │ └─┬ lru-cache@6.0.0 │ │ └── yallist@4.0.0 │ ├── suncalc2@1.8.1 │ ├── typescript@4.7.4 │ ├─┬ virtual-tsc@0.6.2 │ │ ├── @types/node@16.11.52 deduped │ │ ├── debug@4.3.4 deduped │ │ ├── picocolors@1.0.0 │ │ └── typescript@4.7.4 deduped │ └─┬ wake_on_lan@1.0.0 │ └── minimist@1.2.6 ├─┬ iobroker.js-controller@4.0.23 │ ├─┬ @alcalzone/esbuild-register@2.5.1-1 │ │ ├── esbuild@0.11.23 │ │ └── jsonc-parser@3.0.0 │ ├─┬ @iobroker/db-objects-file@4.0.23 │ │ ├─┬ @iobroker/db-base@4.0.23 │ │ │ ├── @iobroker/js-controller-common@4.0.23 deduped │ │ │ ├── deep-clone@3.0.3 deduped │ │ │ ├── fs-extra@10.0.0 deduped │ │ │ └── respjs@4.2.0 │ │ ├── @iobroker/db-objects-redis@4.0.23 deduped │ │ ├── deep-clone@3.0.3 deduped │ │ └── fs-extra@10.0.0 deduped │ ├─┬ @iobroker/db-objects-jsonl@4.0.23 │ │ ├─┬ @alcalzone/jsonl-db@2.5.1 │ │ │ ├─┬ alcalzone-shared@4.0.1 │ │ │ │ └── debug@4.3.4 │ │ │ ├── fs-extra@10.0.0 deduped │ │ │ └─┬ proper-lockfile@4.1.2 │ │ │ ├── graceful-fs@4.2.6 deduped │ │ │ ├── retry@0.12.0 │ │ │ └── signal-exit@3.0.7 deduped │ │ ├── @iobroker/db-base@4.0.23 deduped │ │ ├── @iobroker/db-objects-file@4.0.23 deduped │ │ ├── @iobroker/db-objects-redis@4.0.23 deduped │ │ ├── deep-clone@3.0.3 deduped │ │ └── fs-extra@10.0.0 deduped │ ├─┬ @iobroker/db-objects-redis@4.0.23 │ │ ├── @iobroker/db-base@4.0.23 deduped │ │ ├── deep-clone@3.0.3 deduped │ │ ├─┬ ioredis@4.28.5 │ │ │ ├── cluster-key-slot@1.1.0 │ │ │ ├─┬ debug@4.3.4 │ │ │ │ └── ms@2.1.2 │ │ │ ├── denque@1.5.1 │ │ │ ├── lodash.defaults@4.2.0 │ │ │ ├── lodash.flatten@4.4.0 │ │ │ ├── lodash.isarguments@3.1.0 │ │ │ ├── p-map@2.1.0 │ │ │ ├── redis-commands@1.7.0 │ │ │ ├── redis-errors@1.2.0 │ │ │ ├─┬ redis-parser@3.0.0 │ │ │ │ └── redis-errors@1.2.0 deduped │ │ │ └── standard-as-callback@2.1.0 │ │ ├─┬ node.extend@2.0.2 │ │ │ ├─┬ has@1.0.3 │ │ │ │ └── function-bind@1.1.1 deduped │ │ │ └── is@3.3.0 │ │ └── semver@7.3.5 deduped │ ├─┬ @iobroker/db-states-file@4.0.23 │ │ ├── @iobroker/db-base@4.0.23 deduped │ │ └── @iobroker/db-states-redis@4.0.23 deduped │ ├─┬ @iobroker/db-states-jsonl@4.0.23 │ │ ├── @alcalzone/jsonl-db@2.5.1 deduped │ │ ├── @iobroker/db-base@4.0.23 deduped │ │ ├── @iobroker/db-states-file@4.0.23 deduped │ │ └── @iobroker/db-states-redis@4.0.23 deduped │ ├─┬ @iobroker/db-states-redis@4.0.23 │ │ ├── @iobroker/db-base@4.0.23 deduped │ │ └── ioredis@4.28.5 deduped │ ├─┬ @iobroker/js-controller-adapter@4.0.23 │ │ ├─┬ @alcalzone/pak@0.7.0 │ │ │ ├─┬ axios@0.21.4 │ │ │ │ └── follow-redirects@1.14.9 deduped │ │ │ ├─┬ execa@5.1.1 │ │ │ │ ├── cross-spawn@7.0.3 │ │ │ │ ├── get-stream@6.0.1 │ │ │ │ ├── human-signals@2.1.0 │ │ │ │ ├── is-stream@2.0.0 deduped │ │ │ │ ├── merge-stream@2.0.0 │ │ │ │ ├── npm-run-path@4.0.1 │ │ │ │ ├── onetime@5.1.2 │ │ │ │ ├── signal-exit@3.0.7 deduped │ │ │ │ └── strip-final-newline@2.0.0 │ │ │ └─┬ fs-extra@9.1.0 │ │ │ ├── at-least-node@1.0.0 │ │ │ ├── graceful-fs@4.2.6 deduped │ │ │ ├── jsonfile@6.1.0 deduped │ │ │ └── universalify@2.0.0 deduped │ │ ├── @iobroker/db-objects-file@4.0.23 deduped │ │ ├── @iobroker/db-objects-jsonl@4.0.23 deduped │ │ ├── @iobroker/db-objects-redis@4.0.23 deduped │ │ ├── @iobroker/db-states-file@4.0.23 deduped │ │ ├── @iobroker/db-states-jsonl@4.0.23 deduped │ │ ├── @iobroker/db-states-redis@4.0.23 deduped │ │ ├── @iobroker/js-controller-common@4.0.23 deduped │ │ ├── @iobroker/plugin-base@1.2.1 deduped │ │ ├── @iobroker/plugin-sentry@1.2.0 deduped │ │ ├── deep-clone@3.0.3 deduped │ │ ├── fs-extra@10.0.0 deduped │ │ ├── jsonwebtoken@8.5.1 deduped │ │ ├── node-schedule@2.1.0 deduped │ │ ├── node.extend@2.0.2 deduped │ │ ├── pidusage@3.0.0 deduped │ │ ├── readline@1.3.0 │ │ └── semver@7.3.5 deduped │ ├─┬ @iobroker/js-controller-cli@4.0.23 │ │ ├── @iobroker/js-controller-common-db@4.0.23 deduped │ │ ├── @iobroker/js-controller-common@4.0.23 deduped │ │ ├─┬ chokidar@3.5.3 │ │ │ ├─┬ anymatch@3.1.2 │ │ │ │ ├── normalize-path@3.0.0 deduped │ │ │ │ └── picomatch@2.3.1 │ │ │ ├─┬ braces@3.0.2 │ │ │ │ └── fill-range@7.0.1 │ │ │ ├── UNMET OPTIONAL DEPENDENCY fsevents@~2.3.2 │ │ │ ├─┬ glob-parent@5.1.2 │ │ │ │ └── is-glob@4.0.3 deduped │ │ │ ├─┬ is-binary-path@2.1.0 │ │ │ │ └── binary-extensions@2.2.0 │ │ │ ├─┬ is-glob@4.0.3 │ │ │ │ └── is-extglob@2.1.1 │ │ │ ├── normalize-path@3.0.0 │ │ │ └─┬ readdirp@3.6.0 │ │ │ └── picomatch@2.3.1 deduped │ │ ├── daemonize2@0.4.2 deduped │ │ ├─┬ debug@4.3.4 │ │ │ └── ms@2.1.2 │ │ ├── deep-clone@3.0.3 deduped │ │ ├─┬ event-stream@4.0.1 │ │ │ ├── duplexer@0.1.2 │ │ │ ├── from@0.1.7 │ │ │ ├── map-stream@0.0.7 │ │ │ ├─┬ pause-stream@0.0.11 │ │ │ │ └── through@2.3.8 deduped │ │ │ ├─┬ split@1.0.1 │ │ │ │ └── through@2.3.8 deduped │ │ │ ├─┬ stream-combiner@0.2.2 │ │ │ │ ├── duplexer@0.1.2 deduped │ │ │ │ └── through@2.3.8 deduped │ │ │ └── through@2.3.8 │ │ ├── fs-extra@10.0.0 deduped │ │ └── readline-sync@1.4.10 deduped │ ├─┬ @iobroker/js-controller-common-db@4.0.23 │ │ ├── @iobroker/db-objects-file@4.0.23 deduped │ │ ├── @iobroker/db-objects-jsonl@4.0.23 deduped │ │ ├── @iobroker/db-objects-redis@4.0.23 deduped │ │ ├── @iobroker/db-states-file@4.0.23 deduped │ │ ├── @iobroker/db-states-jsonl@4.0.23 deduped │ │ ├── @iobroker/db-states-redis@4.0.23 deduped │ │ ├── @iobroker/js-controller-common@4.0.23 deduped │ │ ├── fs-extra@10.0.0 deduped │ │ ├─┬ winston-seq-updated@1.0.4 │ │ │ ├── seq-logging@0.4.6 │ │ │ └─┬ winston-transport@4.5.0 │ │ │ ├── logform@2.4.0 deduped │ │ │ ├── readable-stream@3.6.0 │ │ │ └── triple-beam@1.3.0 deduped │ │ └─┬ winston-syslog@2.5.0 │ │ ├── glossy@0.1.7 │ │ ├─┬ unix-dgram@2.0.4 │ │ │ ├── bindings@1.5.0 │ │ │ └── nan@2.16.0 deduped │ │ └── winston@3.7.2 deduped │ ├─┬ @iobroker/js-controller-common@4.0.23 │ │ ├── @alcalzone/pak@0.7.0 deduped │ │ ├─┬ @datalust/winston-seq@1.0.2 │ │ │ ├── seq-logging@1.1.1 │ │ │ ├── winston-transport@4.5.0 deduped │ │ │ └── winston@3.7.2 deduped │ │ ├─┬ axios@0.26.1 │ │ │ └── follow-redirects@1.14.9 deduped │ │ ├── ci-info@3.3.0 │ │ ├── deep-clone@3.0.3 deduped │ │ ├── event-stream@4.0.1 deduped │ │ ├── fs-extra@10.0.0 deduped │ │ ├── jsonwebtoken@8.5.1 deduped │ │ ├── node-forge@1.3.1 │ │ ├── node.extend@2.0.2 deduped │ │ ├── promisify-child-process@4.1.1 deduped │ │ ├── readline@1.3.0 deduped │ │ ├── request@2.88.2 deduped │ │ ├── semver@7.3.5 deduped │ │ ├─┬ winston-daily-rotate-file@4.6.1 │ │ │ ├─┬ file-stream-rotator@0.6.1 │ │ │ │ └── moment@2.29.1 deduped │ │ │ ├── object-hash@2.2.0 deduped │ │ │ ├── triple-beam@1.3.0 │ │ │ ├── winston-transport@4.5.0 deduped │ │ │ └── winston@3.7.2 deduped │ │ ├── winston-syslog@2.5.0 deduped │ │ └─┬ winston@3.7.2 │ │ ├─┬ @dabh/diagnostics@2.0.3 │ │ │ ├── colorspace@1.1.4 │ │ │ ├── enabled@2.0.0 │ │ │ └── kuler@2.0.0 │ │ ├── async@3.2.3 │ │ ├── is-stream@2.0.0 deduped │ │ ├─┬ logform@2.4.0 │ │ │ ├── @colors/colors@1.5.0 deduped │ │ │ ├── fecha@4.2.3 │ │ │ ├── ms@2.1.3 │ │ │ ├── safe-stable-stringify@2.3.1 deduped │ │ │ └── triple-beam@1.3.0 deduped │ │ ├─┬ one-time@1.0.0 │ │ │ └── fn.name@1.1.0 │ │ ├─┬ readable-stream@3.6.0 │ │ │ ├── inherits@2.0.3 deduped │ │ │ ├── string_decoder@1.3.0 │ │ │ └── util-deprecate@1.0.2 deduped │ │ ├── safe-stable-stringify@2.3.1 │ │ ├── stack-trace@0.0.10 │ │ ├── triple-beam@1.3.0 deduped │ │ └── winston-transport@4.5.0 deduped │ ├── @iobroker/plugin-base@1.2.1 │ ├─┬ @iobroker/plugin-sentry@1.2.0 │ │ ├── @iobroker/plugin-base@1.2.1 deduped │ │ ├─┬ @sentry/integrations@6.19.7 │ │ │ ├── @sentry/types@6.19.7 │ │ │ ├─┬ @sentry/utils@6.19.7 │ │ │ │ ├── @sentry/types@6.19.7 deduped │ │ │ │ └── tslib@1.14.1 deduped │ │ │ ├── localforage@1.10.0 deduped │ │ │ └── tslib@1.14.1 deduped │ │ ├─┬ @sentry/node@6.18.2 │ │ │ ├─┬ @sentry/core@6.18.2 │ │ │ │ ├── @sentry/hub@6.18.2 deduped │ │ │ │ ├── @sentry/minimal@6.18.2 │ │ │ │ ├── @sentry/types@6.18.2 deduped │ │ │ │ ├── @sentry/utils@6.18.2 deduped │ │ │ │ └── tslib@1.14.1 deduped │ │ │ ├─┬ @sentry/hub@6.18.2 │ │ │ │ ├── @sentry/types@6.18.2 deduped │ │ │ │ ├── @sentry/utils@6.18.2 deduped │ │ │ │ └── tslib@1.14.1 deduped │ │ │ ├── @sentry/types@6.18.2 │ │ │ ├─┬ @sentry/utils@6.18.2 │ │ │ │ ├── @sentry/types@6.18.2 deduped │ │ │ │ └── tslib@1.14.1 deduped │ │ │ ├── cookie@0.4.2 │ │ │ ├── https-proxy-agent@5.0.0 deduped │ │ │ ├── lru_map@0.3.3 deduped │ │ │ └── tslib@1.14.1 deduped │ │ └── source-map-support@0.5.21 deduped │ ├─┬ axios@0.24.0 │ │ └── follow-redirects@1.14.9 deduped │ ├── daemonize2@0.4.2 │ ├─┬ debug@4.3.4 │ │ └── ms@2.1.2 │ ├─┬ decache@4.6.1 │ │ └── callsite@1.0.0 │ ├── deep-clone@3.0.3 │ ├─┬ diskusage@1.1.3 │ │ ├── es6-promise@4.2.8 │ │ └── nan@2.16.0 deduped │ ├─┬ fs-extra@10.0.0 │ │ ├── graceful-fs@4.2.6 deduped │ │ ├── jsonfile@6.1.0 deduped │ │ └── universalify@2.0.0 deduped │ ├─┬ greenlock-express@4.0.3 │ │ ├─┬ @root/greenlock-express@4.0.4 │ │ │ ├── @root/greenlock@4.0.5 deduped │ │ │ └── redirect-https@1.3.1 deduped │ │ ├─┬ @root/greenlock@4.0.5 │ │ │ ├── @greenlock/manager@3.1.0 deduped │ │ │ ├── @root/acme@3.1.0 deduped │ │ │ ├── @root/csr@0.8.1 deduped │ │ │ ├─┬ @root/keypairs@0.10.3 │ │ │ │ ├── @root/encoding@1.0.1 deduped │ │ │ │ ├── @root/pem@1.0.4 deduped │ │ │ │ └── @root/x509@0.7.2 deduped │ │ │ ├── @root/mkdirp@1.0.0 deduped │ │ │ ├── @root/request@1.8.1 deduped │ │ │ ├── acme-http-01-standalone@3.0.5 deduped │ │ │ ├── cert-info@1.5.1 deduped │ │ │ ├── greenlock-store-fs@3.2.2 deduped │ │ │ └── safe-replace@1.1.0 deduped │ │ └─┬ redirect-https@1.3.1 │ │ └── escape-html@1.0.3 deduped
-
@foxriver76 sagte in Puppeteer: Screenshots PhantomJS Alternative:
Komisch, dass er nur top level zeigt
Das ist seit npm8 so.
-
@jojo182 Unter Javascript liegt nach wie vor ein Puppeteer 16.2.0. Ich vermute nach wie vor, dass sich da irgendetwas beißt.
Evtl. hilft
cd /opt/iobroker/node_modules/iobroker.javascript npm uninstall puppeteer
-
@foxriver76 Leider kein Erfolg, immernoch die gleiche Fehlermeldung. Da wird wohl mehr im Argen liegen
npm ls --depth=4 | grep "pup" ├─┬ iobroker.puppeteer@0.2.6 │ └─┬ puppeteer@13.7.0
-
@jojo182 Scheint als ist da noch was mit ARM + Puppeteer nicht out of the box kompatibel. Ich schaue es mir nochmal an.
-
@foxriver76 Von mir ein kleines Update. Ich habe von meinem Raspi Backup Image von letzter Woche das puppeteer module kopiert, jetzt geht es zumindest wieder direkt über Javascript, der Puppeteer Adapter mag wohl diese Version gar nicht. Fehlermeldung teilweise sehr cryptisch. Weiß nicht ob für dich relevant.
-
@jojo182 Zeig mal gerne jetzt die Version via dem vorherigen Kommando.
Und zeig mir gerne mal wie du im Skript Puppeteer startest. Wenn der mitgelieferte Browser dort funktioniert ist es komisch.
-
@foxriver76 Gerne:
npm ls --depth=4 | grep "pup" ├─┬ iobroker.puppeteer@0.2.6 │ └─┬ puppeteer@13.1.1 invalid: "^13.7.0" from node_modules/iobroker.puppeteer │ ├── devtools-protocol@0.0.981744 invalid: "0.0.948846" from node_modules/puppeteer │ ├─┬ https-proxy-agent@5.0.1 invalid: "5.0.0" from node_modules/puppeteer npm ERR! code ELSPROBLEMS npm ERR! extraneous: cross-fetch@3.1.5 /opt/iobroker/node_modules/cross-fetch npm ERR! invalid: puppeteer@13.1.1 /opt/iobroker/node_modules/puppeteer npm ERR! invalid: devtools-protocol@0.0.981744 /opt/iobroker/node_modules/devtools-protocol npm ERR! invalid: https-proxy-agent@5.0.1 /opt/iobroker/node_modules/puppeteer/node_modules/https-proxy-agent
const puppeteer = require("puppeteer"); async function run () { var url = "https://...."; const browser = await puppeteer.launch({executablePath: '/usr/bin/chromium-browser'}); const page = await browser.newPage(); await page.goto(url); await sleep(10000) await page.mouse.click(210, 210) await sleep(10000) await page.screenshot({path: '/opt/iobroker/wetter.png'}); browser.close(); }
puppeteer ist in der JS Adapter Admin Seite nicht hinzugefügt, damit es nicht wieder überschrieben wird beim nächsten Update.
-
@jojo182 Hm ja, du gibst den executable path an, das habe ich auch gelesen für Pi's
https://chsamii.medium.com/puppeteer-on-raspbian-nodejs-3425ccea470e
Ich überlege mir mal wie ich das am nutzerfreundlichsten lösen kann.
-
Das schleppt halt nur eine komplette X bzw. Desktopumgebung an.
-
Hallo,
gibt es eine Möglichkeit, wie ich im blocky skript den nächsten Schritt erst ausführen kann, wenn Puppeteer das Bild erstellt hat und das zurückmeldet?
VIelen Dank und Gruß
-
Habs gefunden.
Einfach den Haken bei Ergebniss setzen und dann kann ich das Result abfragen....;-)
-
EIDt - hat sich eredigt
statt minütlich war ein stern zuviel in cron- habe das sekündlich aufgerufen
-
@liv-in-sky LastTest für Dein System?
-
@apollon77 das darfst du glauben - da ging garnix mehr und nur wegen einem kleinen sternchen
das fiese war, das am anfang nur den js-controller bei 136.% gesehen habe und ich nur merkte, das ich keine admin tabs mehr bedienen kann - dann dachte ich , evtl hat sich mein admin adapter irgendwie verabschiedet. bis ich auf die idee kam, mein letzt-erstelltes script mal zu deaktivieren -
@foxriver76
Wollte nur mal Danke sagen für diesen funktionellen Adapter.
Damit ist es mir sehr schnell gelungen, von PhantomJS auf Puppeteer umzustellen und meine images für emails wieder zu erzeugen, nachdem der PhantomJS vor einer Woche aus unbekannten Gründen nicht mehr wollte.
Du hast mir den Tag gerettet, Danke.
Gruß Jens -
Ich muß mich noch mal melden.
Ab und zu passiert es immer noch, daß Images nicht korrekt erzeugt werden.
Sind vielleicht manchmal die Flot Ladezeiten zu lang?
Was kann man noch versuchen?
Hier im Beispiel ist eine von vier Graphiken nicht in Ordnung. Und das passiert auch wirklich sehr selten, vielleicht alle paar Tage mal, wo ich mir am Tag zu jeder Stunde emails mit Graphiken generiere.
Ärgerlich ist es trotzdem.
ich hab jetzt mal renderTime: 500 eingefügt, mal schauen, ob's hilft
-
@jensen mache das mit größerer wait time - hatte nie ein thema damit
-
@liv-in-sky
ok, danke, ist einen versuch Wert -
ich hätte da ein Problem
direkt frisch installiert
iobroker läuft in VM auf proxmox