A full version history of the async package with size, number of distributed files and dependency evolution.
Async is a widely-used JavaScript library designed to simplify working with asynchronous code, particularly in Node.js and the browser. Developed by Caolan McMahon, Async offers a rich set of higher-order functions that streamline common asynchronous patterns, mitigating the complexities of callbacks and promises.
Initially released in December 2010, the early versions (0.1.x) laid the foundation with core asynchronous utilities. The 0.2.x and 0.3.0 versions saw incremental improvements in functionality and refinements. Version 0.9.2 marked a significant step introducing the MIT license allowing for more open use of the package.
The package went through a significant rewrite at versin 3, which removes the lodash dependancy and reduces the package size. It aims ot resolve many of these issues without introducing breaking changes, and reduces installation sizes for projects which do not already depend on lodash.
The 1.x releases from 2015 focused on stability and performance, with added features and enhanced testing. Version 2.0.0 in 2016 brought major changes including new dependencies like Lodash, and substantial updates to development dependencies for improved build and testing processes. Later 2.x versions refined the functionality, incorporating Lodash for optimized operations and updating development dependencies, aiming for improved performance and compatibility.
The 3.x versions, starting in 2019, transitioned away from Lodash. The latest versions such as 3.2.6 continue enhancing the library, introducing new features and updating development dependencies like nyc, chai, and mocha to ensure Async remains modern, performant, and reliable solution for asynchronous programming in JavaScript.