Zone.js is a crucial library for Angular developers and others building complex JavaScript applications, providing an execution context that helps manage asynchronous operations and detect changes efficiently. Comparing version 0.10.0 with its predecessor, 0.9.1, reveals some significant shifts. While both versions maintain the core "Zones for JavaScript" description and MIT license, there are notable differences in their development dependencies.
Version 0.10.0 streamlines its devDependencies, focusing on essential testing and TypeScript tools such as mocha, domino, typescript and mock-require. The use of promises-aplus-tests ensures promise implementation compliance. It's worth noting the bump in the typescript version to ~3.4.2. Version 0.9.1, by contrast, utilized a much broader range of development tools, related to tasks such as gulp based builds, testing, linting, and automation, indicating a more complex build and test pipeline. Version 0.9.1 depended on an older Typescript version: ^3.2.2.
The repository URL also changed subtly, indicating that version 0.10.0 is now contained within the angular repository in Github, while 0.9.1 used to have its own repository.
Package size is also notably different. Version 0.9.1 has 128 files and weighs 1,924,458 unpacked. Version 0.10.0 has 195 files and weighs 3,266,040 when unpacked. This could be a good or bad thing, depending on the context: bigger package could mean more features or better test coverage; but it could also mean there is some unnecessary bloating of the library.
A key takeaway for developers is that the newer version represents a leaner development environment, potentially easier to contribute to and maintain, focusing on the core tools.
The are not vulnerabilities for the version 0.10.0 of the package zone.js