Leonidas-from-XIV / node-xml2js

XML to JavaScript object converter.
MIT License
4.88k stars 602 forks source link

Node requirement changed as minor version #530

Closed GDreyV closed 5 years ago

GDreyV commented 5 years ago

I know it's too late for such issue but what was the point of changing required node version from 4 to 8 as minor version update (0.4.20 to 0.4.21)? https://github.com/Leonidas-from-XIV/node-xml2js/commit/f2a3f802945ce629e2d27bb44ea36418c845d356#diff-b9cfc7f2cdf78a7f4b91a753d10865a2 Please check comment under the commit! Minor version supposed to be used for not breaking changes, e.g. improvements or bug fixes. Node dependency is definitely breaking modifications which requires a lot of impact for everybody who uses current library. In my case current library was used as sub-sub-sub dependency with soft version like ~0.4.5.

Leonidas-from-XIV commented 5 years ago

Looks like someone else noted the issue as well just now:

https://github.com/Leonidas-from-XIV/node-xml2js/commit/f2a3f802945ce629e2d27bb44ea36418c845d356

The problem is that there is not really a way forward or back, I can't roll back the release. I will most likely have to sacrifice this evening to revert compatibility to Node 4.

runderworld commented 5 years ago

@Leonidas-from-XIV I understand you've addressed such questions before: https://github.com/Leonidas-from-XIV/node-xml2js/commit/51ce146d8555276ff4869336943d29a2f05fdcac#comments

and since it's pre-1.0, I respect the author's decision either way.

Leonidas-from-XIV commented 5 years ago

The lesson for me is to stop doing minor releases, since it is very easy to break one of the 871851 dependencies even with an extensive test suite.

runderworld commented 5 years ago

You carry a great burden, sir. 😉 And now the GH interface includes the "Used by" count at the top, so you're unfortunately always reminded.

Leonidas-from-XIV commented 5 years ago

Just released 0.4.22, which works again on Node 4. I don't really think there is a way to pull 0.4.20 and 0.4.21, but oh well.