A full version history of the chai package with size, number of distributed files and dependency evolution.
Chai, a widely-used BDD/TDD assertion library for Node.js and browsers, has undergone significant evolution since its initial release. The early versions, from 0.0.1 in December 2011 to the 0.5.x series, laid the groundwork with basic assertion capabilities and focused on being test-framework agnostic. Noticeably, they were primarily authored by Jake Luer.
Version 1.0.0 in May 2012 marked a significant milestone by officially adopting the MIT license and moving the repository under the chaijs organization. This period also saw increased use of development dependencies like Mocha. The 1.x series continued enhancing features while maintaining core functionality.
The 2.x and 3.x releases introduced dependencies like deep-eql and assertion-error, modernizing the library's internal architecture. By version 4.0.0, newer dependencies such as pathval, type-detect,check-error, and get-func-name were integrated. Development dependencies also increased, incorporating tools like Karma for testing.
Later versions, particularly in the 4.x line, saw continued refinements and updates. The 5.x releases marked a change with new dependencies such as loupe while refactoring other packages to newer major versions signifying a modern approach to assertion libraries. Versions 6.x have also been released bumping dev dependencies for better maintenance. This steady progression reflects Chai's commitment to staying current with the JavaScript ecosystem and providing robust, reliable assertion tools for developers.