A full version history of the jest-environment-jsdom package with size, number of distributed files and dependency evolution.
The jest-environment-jsdom package has undergone significant evolution since its initial release, reflecting the changing landscape of web development and testing. The early versions, starting with 1.0.0 in 2016, were relatively basic, providing a foundational JSDOM environment for Jest tests. As Jest matured, so did jest-environment-jsdom.
The 10.x, 11.x and 12.x versions were focused on improving the integration of jsdom and jest-utils. Versions 16-27 saw more advanced features implemented, along with several updates to its dependencies such as jest-mock being implemented.
Later, from version 24 onwards, the package started adopting @jest/* scoped packages as dependencies signalling the increasing modularization of the Jest framework. The peer dependency canvas was also introduced. The jsdom dependency went from version 11 to version 20.
The 30.x versions represent a move towards more abstract and decoupled architecture, relying on @jest/environment-jsdom-abstract. The jsdom dependency version was reverted to 26, and @types/jsdom was upgraded. The move to JSDOM version 26 is to solve a bug with newer versions of JSDOM.
Throughout its history, jest-environment-jsdom has strived to provide a reliable and up-to-date environment for testing JavaScript code that interacts with the DOM, making it a crucial component of the Jest ecosystem. These frequent releases show the project's commitment to stability.