syncpack
Consistent dependency versions in large JavaScript Monorepos.
Installation
npm install --save-dev syncpack
Documentation
Full information can be found in the documentation at https://jamiemason.github.io/syncpack/.
Commands
fix-mismatches
Ensure that multiple packages requiring the same dependency define the same
version, so that every package requires eg. [email protected]
, instead of a
combination of [email protected]
, [email protected]
, and [email protected]
.
format
Organise package.json files according to a conventional format, where fields
appear in a predictable order and nested fields are ordered alphabetically.
Shorthand properties are used where available, such as the "repository"
and
"bugs"
fields.
lint-semver-ranges
Check whether dependency versions used within "dependencies", "devDependencies", etc follow a consistent format.
list
List all dependencies required by your packages.
list-mismatches
List dependencies which are required by multiple packages, where the version is not the same across every package.
set-semver-ranges
Ensure dependency versions used within "dependencies"
, "devDependencies"
etc
follow a consistent format.
Breaking Changes
Version 9.0.0
required some breaking API changes to add support for a new
customTypes
feature, but they are very simple to make.