Yargs version 18.0.0 represents a significant update to the popular command-line argument parsing library. One notable change is the updated dependencies. The newer version uses cliui v9.0.1, string-width v7.2.0, and yargs-parser v22.0.0, while v17.7.2 relied on older versions such as cliui v8.0.1, string-width v4.2.3, and yargs-parser v21.1.1. These dependency upgrades likely bring performance improvements, bug fixes, and new features to the underlying argument parsing and UI rendering.
Another key difference is the development environment and tooling. Version 18.0.0 showcases a more modern TypeScript-focused setup, with updated devDependencies including TypeScript v5.8.3, @typescript-eslint/eslint-plugin v8.26.1, and @babel/preset-typescript v7.26.0. This contrasts with v17.7.2, which used older versions of TypeScript (v4.0.2) and related tools. The upgrade to more recent tooling suggests a commitment to maintaining code quality, leveraging the latest language features, and improving developer experience. Also, version 18.0.0 introduces the use of "@babel/eslint-parser" and "eslint-plugin-prettier" improving linting and code formatting, and the removal of rollup build system and related tools, suggesting a change to the build process.
Finally, it's important to check for breaking changes or deprecations outlined in the release notes for version 18.0.0. While these changes generally indicate improvements and modernization, developers should thoroughly test their applications when upgrading to ensure compatibility and prevent unexpected behavior. Package size is smaller in the version 18.0.0 than in version 17.7.2.
The are not vulnerabilities for the version 18.0.0 of the package yargs