JavaScript Projects Were Broken After Left-Pad Was Unpublished
Gareth Andrews / 9 years ago
Tuesday afternoon and you start running your brand new JavaScript for the website you’re working on. You’ve been working on it for days and have been enjoying it working only to find it breaks. The reason your project, among hundreds of JavaScript Projects, was broken for hours because someone unpublished a piece of their work known as Left-pad.
As people create more and more complex programs they often rely on code written by others in modules or tools, in this case, the module was titled left-pad and was taken down my creator Azer Koçulu after lawyers representing instant messaging app, Kik, targeted one of Koçulu’s many modules for having the same name. While this wouldn’t cause problems for many, left-pad whose sole purpose is to pad the left-hand side of strings (or sentences) with zeroes or spaces, is used in projects like Node and Babel, most popular pieces of work that are used in many other projects themselves.
With left-pad removed from NPM (a packet manager that helps developers organise their use of other modules or packages), the projects suddenly found themselves unable to retrieve the code, ultimately falling over in style. With just under 2.5 million downloads in the last month alone according to NPM you can tell just how many projects could have been broken by a single action.
In order to solve this problem Laurie Voss, CTO and co-founder of NPM took a step that many consider unprecedented and republished the previously removed left-pad 0.0.3. This action was apparently prompted by the new owner and allowed Voss to end the day knowing that he was “sleeping fine tonight”.