34 Commits

Author SHA1 Message Date
Matthias Urlichs
c25ada8dcb Propagate errors when testing
Testing with Mocha requires errors raised within flows to propagate
to the test runner, not getting swallowed by Node.

This commit tests whether Mocha's global functions exist and,
if they do, propagates exceptions that are raised there.
2024-11-13 16:37:56 +01:00
Rotzbua
9b86874c2d
chore: migrate deprecated util.isArray
Deprecated: Use Array.isArray() instead.

Source: https://nodejs.org/docs/latest-v18.x/api/util.html#utilisarrayobject
2024-05-25 22:55:09 +02:00
Nick O'Leary
ee2d91fb4a
Handle nodes with multiple input handlers properly
Fixes #4330
2023-09-08 16:26:10 +01:00
Nick O'Leary
a40e5dbcd4
Add check that node sends object rather than primitive type
Fixes #3876
2022-10-04 11:49:49 +01:00
Steve-Mcl
efd8c1229d improve "Unexpected Node Error" logging
- fixes #3389
- adds additional info to aid sourcing the issue
- removes lots of undefined info when node type is incorrect
- stores and reports original stack before internal try/catch exception
- ensure this._flow is something before attempting to call `handleError`
2022-02-15 10:51:18 +00:00
Nick O'Leary
703c5adba7
Add _path property to nodes and expose as node.path in Function node 2022-01-25 21:32:28 +00:00
Nick O'Leary
c801bc5e6b
Add error logging if Node.log throws an error
Part of #3327
2022-01-12 11:13:29 +00:00
Nick O'Leary
ea43729063
Add _module to Node object to provide module info 2022-01-12 11:07:25 +00:00
Hiroyasu Nishiyama
6aecc3915c add support of environtment variable for tab & group 2021-08-19 21:15:13 +09:00
Nick O'Leary
001f066769
Remove all input event listeners on a node once it is closed
This prevents in-flight messages being passed to the node after
it has closed.
2021-05-13 13:37:21 +01:00
Nick O'Leary
ed351eee54
Move hooks to util package 2021-04-15 15:12:30 +01:00
Nick O'Leary
0c9fd25d3e
Nodes log via parent flow to allow flow-info to be added 2021-01-07 11:10:34 +00:00
Nick O'Leary
08148a07b2
Update Node/Flow to trigger msg routing hooks 2020-09-29 12:19:27 +01:00
Nick O'Leary
d57ec0cd53
Refactor lib/flows code to include initial router component 2020-09-29 12:19:26 +01:00
Nick O'Leary
b7243c2226
Merge branch 'master' into dev 2020-09-16 11:54:34 +01:00
Melvin Groenhoff
d84c2b780b Fix this context when calling multiple event listeners (fixes #2692). 2020-09-04 10:20:30 +02:00
Kunihiko Toumura
0c5586ddfb Add 'done' metric log for message tracing 2020-08-18 09:28:50 +09:00
Nick O'Leary
80d100f3f9
Move receive metric position to better reflect async changes
Fixes #2444
2020-02-07 16:49:41 +00:00
Nick O'Leary
95a51aafdc
Add path property to debug messages
Fixes #2358

This property can be used to identify the full path to the node that
logged a given message. If the node is inside a subflow (and maybe
nested many levels deep), this path can be used to help find the
node, rather than just the top-level subflow instance node.

A side-effect of this change is the Debug sidebar is now able to
show the message tools for a message coming from a deeply nested
subflow
2020-01-17 16:56:30 +00:00
TJKoury
cb8deab1f9
Update packages/node_modules/@node-red/runtime/lib/nodes/Node.js
Co-Authored-By: Nick O'Leary <nick.oleary@gmail.com>
2019-10-17 07:42:11 -04:00
TJKoury
e5c27d0236
Remove msg
`msg` not defined in scope.
2019-10-16 20:00:11 -04:00
Nick O'Leary
c1c694035d
Allow node.status() to be passed number/bool types
Adds to the existing support for string types. Also
adds unit tests for all three cases
2019-10-14 13:06:59 +01:00
Nick O'Leary
547e7a1b21
Allow node emitted events to have multiple arguments
This is fixing a regression introduced in 1.0 where a custom
`Node.emit` function was added that could only handle a single
argument.
2019-10-10 16:35:12 +01:00
Nick O'Leary
b734097d16
Merge pull request #2227 from node-red/node-done
Adds Done callback to Input event handler
2019-08-21 11:15:00 +01:00
Nick O'Leary
e5255b0c7c
Ensure 2nd arg to node.error is an object
Fixes #2228
2019-08-12 14:36:26 +01:00
Nick O'Leary
fb9828badc
Update Function node to add node.done 2019-08-06 14:27:56 +01:00
Nick O'Leary
f52289b2c3
Add send to input handler signature 2019-07-09 11:40:55 +01:00
Nick O'Leary
3b5ea0f15f
Add node done API 2019-07-08 23:23:33 +01:00
Dave Conway-Jones
0c13603185
let status be simple text if wanted 2019-04-07 16:23:17 +01:00
Nick O'Leary
85de227003
Make Node._flow a writeable property
This is needed so an existing node constructor that does:

   Object.assign(this,config);

works when it tries to replace this._flow with config._flow.
2019-01-30 10:50:29 +00:00
Nick O'Leary
54c863d48f
Make Node._flow non-enumerable to avoid circular refs 2019-01-21 14:19:19 +00:00
Nick O'Leary
490903ca25
Tidy up when usage in Flow and Node 2019-01-17 13:18:26 +00:00
Nick O'Leary
81f4e0de56
Refactor Subflow logic into own class 2019-01-16 16:27:19 +00:00
Nick O'Leary
e57d8ba0ef
pull out editor-client and editor-api 2018-08-17 22:10:54 +01:00