A full version history of the yup package with size, number of distributed files and dependency evolution.
Yup, a JavaScript schema builder for value parsing and validation, has undergone significant evolution since its initial release. Early versions (0.1.0 - 0.4.2) in 2014 focused on basic object schema validation, relying on dependencies like Lodash and Case. The description remained consistent: "Object schema validation" or "Dead Simple Object schema validation." Versions 0.5.0 – 0.9.2 introduced es6-promise and promise library, and saw the addition of testing tools like Chai-as-promised, Karma, and Webpack, indicating a growing emphasis on robust asynchronous validation and testing.
The 0.6.0 and the 0.7.x series to 0.17.x (2015-2016) marked a period of stabilization, improvements in promise handling and adding toposort. Universal-promise and lodash replaces lodash-es. Dev dependencies saw Eslint and babel added. As of 0.19.0 Dependecies where updated to lodash 4.13.1.
The versions 0.18 - 0.27 add more robust testing and new dependencies. From versions 0.28 - 0.32 switched from javascript to typescript by adding "@babel/preset-typescript, "@typescript-eslint/eslint-plugin" + increasing lodash and other dependencies version and replacing eslint for @typescript-eslint/parser". With 1.0 version yup is rewriting the entire package. The newest version 1.7.0` is more stable then ever.