the node email verification mail is not recognized as a known node. it appears installed in the community nodes section of the settings.
Node: n8n-nodes-listmonk
when i import a workflow including this community node it fails, even after installing the community package. This works fine with local npm based n8n install. I am using this package in docker instance of n8n, where it fails. i tried installing other community nodes and they seem to be working fine in this instance.
Please share your workflow
Share the output returned by the last node
Information on your n8n setup
n8n version: * (tried all versions from 1.31.1 till latest ... all the versions show the same symptoms.)
I had to uninstall this community node and install as a custom package under .n8n/custom to make it usable. Which made this node available in the list, but since it is now recognised as a CUSTOM.listmonk I had to replace n8n-nodes-listmonk.listmonk with CUSTOM.listmonk in the workflow.json before importing it.
Hi @aag, thanks for reaching out and being a part of the community! Thatās not a desired experience. You shouldnāt have to uninstall the community node and then reinstall is as a custom package to make it usable.
I have another item around custom nodes that Iām going to be working on this evening so Iāll try to replicate the issue you described as well and see if thereās an obvious cause.
Version 1.46.0 completely broke the module n8n-nodes-listmonk. I believe that it has gone out of hands of the community team to manage n8n at all and minor versions releases are also introducing breaking changes and becoming hard on the community nodes, which should be assumed as the backbone of the ecosystems like n8n.
today, i upgraded to v1.49.0 and found that my node installed as custom node also got missing. So I started installing older versions of n8n with no luck till version down to 1.41.0. then i installed the module using the GUI from the npn repository and it worked till version 1.45.1 and broke after that. Broke mean, it was recognised by n8n but was not functioning for any node which used the post or put methods.
For anyone wondering, n8n-nodes-listmonk is a declarative type of module.
Requestimg the maintainers and developers of the n8n, to please fix the issues or atleast update the documents for the developers to understand the breaking changes, so that people who are maintaining the community modules are not stranded and start regretting the use of n8n in their projects.
I apologize to everyone affected by this. Weāre (slowly) working on refactoring our code that handles nodes-loading, to be able to add exhaustive tests for it all.
Once this is merged, weād have better guarantees that community nodes will continue to work as expected, as the tests would prevent us from accidentally breaking this code.
This code is really old and convoluted, so the PR is taking longer than I thought, but Iām hopeful that we can get this out over the next 2 weeks
Meanwhile, I have started creating a new module for listmonk integration, as the maintainer of the previous one seems to be occupied otherwise. I know it is not ethical to surpass a fellow community supporter and doing the same thing which they have already started and I should have contributed to his (@LucasSovre) code, but I am not sure why his node is breaking in the new versions of n8n. If anyone else can figure out and tell us what is the reason of the functionality to break, that will be great.
Though I was not able to setup the proper debug environment of n8n, I saw that the nodes are loading in the new version and rendering in the UI, however, while evaluating the routing ā request ā body: '={{ <some code here' }}' (declarative style node), it is getting overwritten by request / node defaults and setting it as empty object {}, where the request / node default is not containing the request body definition at all. this is causing the node to send the requests like POST and PUT as empty, which is breaking the functionality as per my understanding.
When I wrote the new module from scratch, it is not loading in the older versions of n8n (at least I know that not installing in v1.45.1 and is installing successfully in v1.46.0).
here is the error message while installing the newly written module on v1.45.1:
Error loading package "n8n-nodes-listmonk-service" :The specified package could not be loaded Cause: _a.startsWith is not a function.
Which clearly shows that there is a breaking change in the n8n nodes development APIs and this change was unannounced.
other breaking changes observed:
editor no longer has option named 'code' and there is no deprecation warning or document to replace the functionality with alternate.
to summarize
old module works till v1.45.1 and breaks in functionality in any version of n8n beyond that (tested till v1.50.0-beta).
new module works from v1.46.0 onwards.
links for these n8n node packages:
n8n-nodes-listmonk: [old] seems fully baked but not working anymore and no idea what is causing it to break.
n8n-nodes-listmonk-service [new] started development a fresh as I needed the functionality quickly fixed (only implemented a few operations and actions which were needed immedialty in my project). PRs and maintainers are welcome (github link).
I just installed n8n-nodes-listmonk on a fresh n8n installation, and the read operations that I tested seem to all work without any issues for me. Can you please share with us the operations that are failing for you? Even better would be a workflow that creates all the data on listmonk, and before using it in the workflow, since the data Iām using so far is the demo data from their repo.
Can you please link to some code using this option? Iām not familiar enough with this, and donāt know what to start looking for.
Hi @netroy thanks for diverting your attention towards this thread.
As I have mentioned in my previous message, it is an issue in the methods where the node is calling a PUT or POST method on the APIs which includes a body in the requests (example code from repository). All the GET and DELETE methods are working fine. During my limited debugging I stepped through and found that the body property is getting overwritten in some loop when it is evaluating the request. You can try with a simple action like Create a New Subscriber for the subscribers resource with any listmonk installation while providing only required properties like name and email. it will immediately throw error pointing out the missing information in the request received by listmonk, indicating that the body was submitted EMPTY {}. With my limited knowledge on debugging the n8n with this custom module I was not able to pinpoint the issue causing that behaviour.
here is the sample workflow
And for the ācodeā option in the editor property for the typeOptions is removed. here is the reference to the code from repository. this shows error when i update the npm packages for this module and try to update this community module to support latest n8n.
I wasnāt aware that this was part of the public contract, and community nodes were using this.
The code editor was split into specific types a while ago, and this particular line needs to be editor: 'htmlEditor'.
Thanks. That does help narrow down the scope. Iāll try to debug this later, and I manage to fix it, weāll add tests to prevent this from breaking again.
Not sure if this is the exact issue I had with a node of mine. But was triggered by the conversation. I had the text field be broken as well. Luckily I could simple swap it to the json type and everything worked fine again.
See the node code for what I did.
Hope this is also a simple solution for this node.
I had this exact error show up after a day or two of my ā@splainez/n8n-nodes-phonenumber-parserā community node installation (i run a local npm based n8n install).
What did the trick for me is to clear the cache of the browser, shift + refresh btn (on mac)
This issue when i opened was something where the refreshing could have solved in certain cases because of the browser cache. But not in my case. However now it has transformed into another issue of disfunctional community node because of newer versions and mostly unpredicted API changes by n8n team. As i explained previously in my messages, fresh built nodes (from the templates) works in the version beyond 1.46.0 and the node in question, built with the older n8n core stopes working in certain cases in new n8n releases.
I am hoping that this is an isolated issue and community get a stable transition version over version with a proper and predictable changes in the future.