node-red/node-red-nodes

Another editor bug when checking misconfigured nodes occurs with the email node

mickym2 opened this issue · 5 comments

The editor complains that node isn't configured correctly - but it works well.

I had a similar problem after NodeRed Version 3.1.1. with the switch node.

Current version of NodeRed - with this error: 3.1.3
Current verson of the email node is: 2.1.0

Which node are you talking about? Can you provide an example flow that demonstrates the issue?

It is the email node (see version above) - i dont think it helps if i post the flow

image

When I try to deploy I get this error window - even if the node runs properly:
image

However when I refresh the editor window and deploy again - then the error disappeared and I have not to confirm that I want to deploy with errors. Strange.

As I am not the only one with this error (see https://discourse.nodered.org/t/email-node-shows-invalid-properties-token-but-works/84401) - I thought it is the same problem which was fixed with the switch node (node-red/node-red#4464) in version 3.1.1 - but here it seems that the error remains only as long as the browser is not refreshed.

After browser refresh - I can even move the email node and can deploy without errors. Only when I change something within the node (i.e. the name of the node) then I got an error again. Then I need to refresh the browser and then the node will be accepted without errors. - So maybe it is not a big issue - but strange behavior.

I'm experiencing the same behavior on my new node-red instance.
UI complains about configuration issues, triangle shown on email-node, but emails are being sent.

  • node-red-node-email: 2.1.0
  • Node-RED version: 3.1.3
  • node.js version: v18.19.0
  • npm version: 10.2.3
colinl commented

Here is an export of an email node that shows the problem. Import the flow and open and close the email node. The red triangle shows and hovering over the triangle says that the token is invalid. To remove the error I had to enable Oauth2 authorisation and add a token, then switch the authorisation back

[
    {
        "id": "be8e3686.b3db4",
        "type": "e-mail",
        "z": "04f488a07d354b8a",
        "server": "smtp.gmail.com",
        "port": "465",
        "authtype": "BASIC",
        "saslformat": false,
        "token": "",
        "secure": true,
        "tls": true,
        "name": "",
        "dname": "",
        "x": 430,
        "y": 200,
        "wires": []
    }
]