Not strictly a Node-RED question, but I would be curious to hear opinions on how semver is or should be used in the NR environment. While revising nodes that I contributed a few years ago, I started thinking about some specific issues, so with apologies to any "old hands" who find them trivial, these are my first thoughts.
When should I release version 1.0.0?
The classic semver question, but I noticed that about 2/3 of the contributed nodes in my pallet are at major version zero (0.y.z). Do the authors really mean that these nodes are still under (rapid?) development and may change, even in breaking ways, without warning? (I tend to doubt that.) Some of these nodes may actually have been abandoned at version zero, but I hesitate to think of 0.x.y as a red flag telling me to avoid using a node until it is stable. On the other hand, do NR users expect a certain level of support (bug fixes, at least) once a node is at version 1.0.0? If so, are developers discouraged, perhaps subconsciously, from releasing 1.0.0? Should there be some discussion of this in the Creating Nodes section of the documentation?
Can I start with version 0.0.1?
Many developers, including myself, have done this at times. Technically, this is a patch version, and development should start with 0.1.0. Does anyone care?
Do I need to worry about (or document) which versions of Node-RED or node.js my node has been tested against? Do I need to be concerned that my node might be broken by new major versions of libraries that are loaded by NR or other nodes and that I am using implicitly, without a dependency declared in the package.json?
Other tiny questions are not worth listing, but may appear if anyone responds.