(/ta:zei/, frais en persan)
Un outil CLI moderne qui garde vos dépôts à jour
npx taze
ou de manière récursive pour les monorepos
npx taze -r
npx taze
Par défaut, taze
ne supprimera que les versions dans les plages que vous avez spécifiées dans package.json
(ce qui est sûr et constitue le comportement par défaut de npm install
)
Pour ignorer les plages, définissez explicitement le changement de version maximum autorisé.
Par exemple, taze major
vérifiera toutes les modifications et passera aux dernières modifications stables, y compris les modifications majeures (modifications de rupture), ou taze minor
qui passera aux dernières modifications mineures dans la même version majeure.
Rechercher des mises à jour majeures
Vérifiez les mises à jour mineures
Vérifiez les mises à jour des correctifs
taze
dispose du support monorepo intégré de première classe. L'ajout simple -r
analysera les sous-répertoires contenant package.json
et les mettra à jour ensemble. Il gérera automatiquement les packages privés locaux.
Voir taze --help
pour plus de détails
Vous pouvez filtrer les packages dont vous souhaitez vérifier les mises à niveau par --include
ou --exclude
; ils acceptent les chaînes et les expressions régulières, séparées par des virgules (,).
taze --include lodash,webpack
taze --include /react/ --exclude react-dom # regex is also supported
Les packages verrouillés (version corrigée sans ^
ou ~
) sont ignorés par défaut, utilisez taze --include-locked
ou taze -l
pour les afficher.
Avec le fichier taze.config.js
, vous pouvez configurer les mêmes options que la commande.
import { defineConfig } from 'taze'
export default defineConfig ( {
// ignore packages from bumping
exclude : [
'webpack'
] ,
// fetch latest package info from registry without cache
force : true ,
// write to package.json
write : true ,
// run `npm install` or `yarn install` right after bumping
install : true ,
// ignore paths for looking for package.json in monorepo
ignorePaths : [
'**/node_modules/**' ,
'**/test/**' ,
] ,
// override with different bumping mode for each package
packageMode : {
'typescript' : 'major' ,
'unocss' : 'ignore' ,
// regex starts and ends with '/'
'/vue/' : 'latest'
} ,
// disable checking for "overrides" package.json field
depFields : {
overrides : false
}
} )
taze
s'inspire des outils suivants.
Ils fonctionnent bien mais ont des objectifs et des fonctionnalités différents, essayez-les également :)
Un grand merci à @sinoon qui a beaucoup aidé avec le brainstorming d'idées et la discussion des commentaires.
Licence MIT © 2020 Anthony Fu