Commit Graph

1168 Commits (9c526e23b29308df7674125e798edb816ee057cd)

Author SHA1 Message Date
Gauthier Dandele 9c526e23b2
Merge 5085558cb2 into ce5fe9079e 2026-03-24 10:15:08 -04:00
Nick O'Leary 764cad772b
Merge branch 'master' into sync-master 2026-03-24 13:12:33 +00:00
Nick O'Leary ed07f2f5a9
Add badges to func node tabs with code in 2026-03-24 11:09:42 +00:00
Nick O'Leary 9d46b2970f
Merge pull request #5484 from marcows/log-connected
Fix "connected to ..." log string in tcp in/out nodes using TLS
2026-03-24 10:22:57 +00:00
Mauricio Bonani fab90d20c3 Improve the `user-select` CSS code usage 2026-03-13 09:40:26 -04:00
Nick O'Leary 6a74428edd
Various CSS tidy-ups 2026-02-26 10:31:57 +00:00
Nick O'Leary c9f86d18ff
Merge branch 'master' into sync-to-dev 2026-02-26 10:20:31 +00:00
Steve-Mcl 7ab239a50d Add debug message pre and post hooks 2026-02-23 11:25:59 +00:00
Markus Heidelberg 9b3e9ee4b7 Fix "connected to ..." log string in tcp in/out nodes using TLS
It was wrongly displayed as "status.connected"
instead of e.g. "connected to 127.0.0.1:6789"

Also remove the separator spaces from function invocation to be equal to
the invocation in non-TLS mode in the else path below.
2026-02-13 15:08:42 +01:00
Nick O'Leary f6707c8d6d
Merge branch 'master' into sync-rel414-dev 2026-01-26 11:37:26 +00:00
Nick O'Leary 89b10a0a9d
Merge pull request #5457 from Dennis-SEG/fix/delay-node-race-condition
fix: prevent incorrect array modification in delay node
2026-01-26 09:50:18 +00:00
Dennis-SEG d0cabaf740 fix: prevent race condition in delay node idList splice
Check indexOf result before splicing to prevent removing wrong element
when clearDelayList() runs between timeout registration and execution.

If indexOf returns -1 (id already removed), splice(-1, 1) would incorrectly
remove the last element. Now we skip the splice if id is not found.

Fixes: Dennis-SEG/node-red#3
2026-01-24 23:00:46 +01:00
Nick O'Leary 8e45561e9b
Merge pull request #5390 from node-red/Add-pause-button-to-debug-sidebar
Add pause button to debug sidebar
2026-01-21 11:22:56 +00:00
Nick O'Leary 764731efa6
Add inline debug paused message 2026-01-21 11:19:31 +00:00
Nick O'Leary 8faebae4bc
Merge pull request #5391 from node-red/add-burst-mode-to-delay-node
add burst mode to delay node
2026-01-21 09:49:02 +00:00
Nick O'Leary 736bc30277
Merge branch 'master' into master-rebase 2026-01-20 17:12:55 +00:00
Dennis-SEG fa5943b235 style: fix indentation in tcpin.js try-catch block 2026-01-18 15:51:44 +01:00
Dennis Bosmans 96bef841a0 fix: prevent uncaught exceptions in core node event handlers
Added try-catch blocks and null checks to event handlers in core nodes
to prevent uncaught exceptions from crashing the Node-RED runtime.

Changes per node:

**TCP (31-tcpin.js)**
- Wrapped all `on('data')` handlers in try-catch (TcpIn client/server, TcpGet)

**UDP (32-udp.js)**
- Wrapped `on('message')` handler in try-catch

**Exec (90-exec.js)**
- Wrapped stdout/stderr `on('data')` handlers in try-catch

**WebSocket (22-websocket.js)**
- Wrapped send() loop in handleEvent() with try-catch

**MQTT (10-mqtt.js)**
- Added null check for packet parameter in subscriptionHandler()
- Wrapped subscription handler callback in try-catch
- Added null check for mpacket.properties

Without these protections, malformed data or unexpected errors in async
event handlers could cause uncaught exceptions that crash the entire
Node-RED process.
2026-01-16 22:22:11 +01:00
Nick O'Leary 721bdbc9aa
Merge pull request #5392 from Dennis-SEG/fix/http-request-uncaught-exceptions
fix(http-request): prevent uncaught exceptions in async hooks
2026-01-07 15:37:36 +00:00
Nick O'Leary bc4f5feede
Merge pull request #5382 from node-red/fix-delay-node-variable-mode-error
Fix flushing when in variable delay mode
2026-01-07 15:16:04 +00:00
Nick O'Leary 60b3569edd
Apply suggestions from code review 2026-01-07 15:07:54 +00:00
Dave Conway-Jones 82a1f12179
Just fix file nodes for now 2026-01-07 15:07:54 +00:00
Nick O'Leary 8287a0aaab
Merge pull request #5412 from kazuhitoyokoi/master-fixstatusnode
Fix status node to retrieve status from all nodes
2026-01-05 17:28:24 +00:00
Nick O'Leary 27ce7cd84d
Merge pull request #5410 from kazuhitoyokoi/master-fixtooltip
Add tooltip to delete button in node property UI
2026-01-05 17:21:26 +00:00
Kazuhito Yokoi cc1662ab5c Fix status node to retrieve status from all nodes 2026-01-04 16:17:16 +09:00
Kazuhito Yokoi bcbd364ddd Add tooltip to delete button 2026-01-03 17:04:01 +09:00
Kazuhito Yokoi 8c594ac627 Decrement count of http requests after error 2026-01-03 14:31:46 +09:00
Dennis-SEG f1b56dc6fa refactor: remove unused getHeaderValue() function 2025-12-24 00:46:07 +01:00
Dennis-SEG 2355709040 fix(http-request): prevent uncaught exceptions in async hooks
This PR fixes several issues that can cause uncaught exceptions and crash Node-RED:

1. Fixed typo: `toLowercase()` -> `toLowerCase()` in getHeaderValue()
2. Added try-catch to beforeRequest hook
3. Added try-catch to beforeRedirect hook
4. Added try-catch to afterResponse hook (digest auth)
5. Added input validation to extractCookies() with array check
6. Added input validation to buildDigestHeader() for nonce/realm

These changes ensure that malformed responses or invalid data from servers
don't crash the entire Node-RED runtime.

Fixes: Uncaught exceptions in HTTP request node
2025-12-23 21:32:49 +01:00
Dave Conway-Jones 6c39735051
add burst mode to delay node
and tests
2025-12-21 19:36:58 +00:00
Dave Conway-Jones 3fa7ad9d3a
Add Paused label to footer to make it more obvious 2025-12-18 11:05:40 +00:00
Dave Conway-Jones 183326a685
Add pause button to debug sidebar 2025-12-17 19:31:42 +00:00
Dave Conway-Jones 636089b586
Fix flushing when in variable delay mode
to close #5381
2025-12-12 22:42:46 +00:00
Ben Hardill 55d08ba79e
Move localfiles checkbox 2025-12-08 17:39:25 +00:00
Ben Hardill c17b6bfde8
Add TLS certs/keys from Env Vars 2025-12-07 12:48:33 +00:00
Nick O'Leary d5558dd6da
Merge pull request #4907 from node-red/Add-pfxp12-to-tls-options
Add ability to use pfx or p12 file for TLS connection settings option
2025-12-04 17:33:24 +00:00
GogoVega 5085558cb2
Ensure global-config is not selectable 2025-10-30 12:44:06 +01:00
GogoVega 59d8568af0
Highlight config nodes on mouse over 2025-10-30 12:43:33 +01:00
GogoVega 61d0e29269
WIP: Allow catch node to catch any error from any node 2025-10-26 18:46:08 +01:00
Nick O'Leary c9b7263e21
Merge pull request #5300 from node-red/5287-fix-httpin-middleware-handling
Do not assume rawBody middleware is last in stack when moving it
2025-10-13 11:17:20 +01:00
Nick O'Leary 471f0d8bea
Do not assume rawBody middleware is last in stack when moving it 2025-10-10 11:35:27 +01:00
Nick O'Leary 0519b94786
Fix jsonata error reporting in Inject node
Fixes #5270
2025-10-09 14:50:52 +01:00
Nick O'Leary 1813a5791d
Merge pull request #5290 from node-red/5283-fix-ui-lockup-for-typed-arrays
Fix UI lock-up when typed arrays are expanded in debug window
2025-10-09 11:24:43 +01:00
Steve-Mcl 36f98133bf Fix UI lock-up when typed arrays are expanded in debug window
closes #5283
2025-10-05 12:18:18 +01:00
Dave Conway-Jones 4ae8fcbc45
Fix range node to handle input min > max
and add tests
and add pin hover to show confiog
2025-08-29 15:08:23 +01:00
Dave Conway-Jones 7b51f30d11
Fix rounding errors for range node when using float inputs and integer outputs
And add extra tests
2025-08-28 15:18:02 +01:00
Nick O'Leary 65785be169
Merge pull request #5241 from kazuhitoyokoi/master-fixhttprequest
Show requesting status correctly in http request node when multiple processes are working
2025-08-28 13:52:30 +01:00
Ben Hardill 54849e9e62
fix test 2025-08-20 19:12:09 +01:00
Ben Hardill b7cef0bce7
Update packages/node_modules/@node-red/nodes/core/sequence/17-split.js 2025-08-20 18:45:26 +01:00
Ben Hardill 22a3f47060
Speed up split node
fixes #5251

The code changed from 4.0.x to 4.1.x

This change to to prevent making changes to the orginial input `msg`
object incase any values were stored in context (pass by refernce).

The change meant that for every output message the whole original
input `msg` was being cloned, which could be huge, causing a big
performance regresion.

This fix ensures the clone of the orginial `msg` is only done once
and the much smaller output message is then cloned again to update
`msg.parts` object for each output. This results in lots of small
clones rather than lots of very large clones.
2025-08-20 18:40:19 +01:00