0.0.2 • Published 1 year ago

8cc v0.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

Features

  • Built-in support for monorepos
  • No installation required — npx 8c
  • Safe by default — updates in the version range you are allowed

Usage

By default, 8c will only bump versions in the ranges you specified in package.json (which is safe and the default behavior of npm install)

To ignore the ranges, explicitly set the maximum allowed version change.

For example 8c major will check all changes and bump to the latest stable changes including majors (breaking changes), or 8c minor that bump to latest minor changes within the same major version.

Monorepo

8c has the built-in first-class monorepo support. Simply adding -r will scan the subdirectories that contain package.json and update them together. It will handle local private packages automatically.

Configures

See 8c --help for more details

Filters

You can filter out packages you want to check for upgrades by --include or --exclude; they accept string and regex, separated by commas (,).

8c --include lodash,webpack
8c --include /react/ --exclude react-dom # regex is also supported

Config file

With 8c.config.js file, you can configure the same options the command has.

import { defineConfig } from '8c'

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,
  // override with different bumping mode for each package
  packageMode: {
    'typescript': 'major',
    'unocss': 'ignore',
    // regex starts and ends with '/'
    '/vue/': 'latest'
  }
})

Alternatives

8c is inspired by the following tools.