Automatically keep your yarn and pipenv dependencies in sync with git changes.
- Due to limitations in husky
only do this with
package.json
in your git root (but auto-sync-deps will update other package trees as well) yarn add --dev auto-sync-deps
- Edit root
package.json
and add the following to the top-level:{ "name": "...", "...": "...", "husky": { "hooks": { "post-checkout": "yarn sync-deps", "post-merge": "yarn sync-deps", "post-rewrite": "yarn sync-deps" } } }
- To manage python Pipfile's both
pipenv
andpyenv
need to be installed
When a change to a package tree (as in a change to a yarn.lock
or Pipfile.lock
)
is pulled, merged, rebased, or checked out then update that package tree.
No more wondering why things aren't working because someone has
committed a package change, but you still have an older version installed.
You can also force a manual update of all package trees with yarn sync-deps
- Multiple
package.json
,Pipenv
, andPoetry
package trees (but only install this package in the root one) - Form the git hooks the installation is only run when that particular lock file has changed
- Install the latest version of the python specified in the Pipfile using
pyenv
- In a Meteor project use the Meteor version of node to ensure binary compatibility of compiled modules
- Make it work with npm's
package-lock.json
(could know to useyarn
ornpm
based offnpm_config_user_agent
env var)
yarn publish --major
or yarn publish --minor
or yarn publish --patch
depending on the change