It's even worse than it appears.
Wednesday September 29, 2021; 9:37 AM EDT
  • A story about the Node.js ecosystem. #
  • Yesterday I noticed that one of my server apps had restarted 21 hours ago, so I looked at the log, saw where it should have checked if something was undefined, added the check, published a new release, then went to the app, updated it, tried to restart it, and it failed. The source of the failure was a very small module known as dateformat that had updated, which is fine, maybe they have bugs. So I went to their repo, and saw a reference to a breaking change, which sounded like it might be the thing that broke my app (not well documented imho), and I found a version before the breaking change, released on Jan 30, and updated the package.json for the app at the beginning of this tale to require the earlier version, rebuilt it, and it worked. #
  • Sounds painless enough, but each step involved me figuring out how this or that worked. A tiny area of one app that I had long ago forgot about because you figure once date formatting is done, it's done. Right. It's not like there's any great technological breakthroughs in date formatting, btw. #
  • It turned out that the maintainers of the dateformat module wanted to use a feature that wasn't in the version of Node my server was running. As far as I can tell the feature had nothing to do with its mission, formatting dates. What they were saying is I should accept their change and upgrade to the version of Node they require. if I were to do that, I'd have to shut down the server, upgrade Node, and then test all of the apps running on the server to see whether the new version of Node broke them, which imho is much more likely than dateformat breaking them. #
  • This is the culture of development these days. Breaking changes for stylistic reasons are fine. It's the reward for maintaining a useful little module -- you can force the attention of developers all over the place. This is just one module, add it up and the half-life of a Node app is very short indeed. Not a good situation imho. #

copyright 1994-2021 Dave Winer.

Last update: Wednesday September 29, 2021; 8:11 PM EDT.

You know those obnoxious sites that pop up dialogs when they think you're about to leave, asking you to subscribe to their email newsletter? Well that won't do for Scripting News readers who are a discerning lot, very loyal, but that wouldn't last long if I did rude stuff like that. So here I am at the bottom of the page quietly encouraging you to sign up for the nightly email. It's got everything from the previous day on Scripting, plus the contents of the linkblog and who knows what else we'll get in there. People really love it. I wish I had done it sooner. And every email has an unsub link so if you want to get out, you can, easily -- no questions asked, and no follow-ups. Go ahead and do it, you won't be sorry! :-)