1.0.2 • Published 6 months ago

@chronus/chronus v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

Chronus

Chronus is a tool to help manage the versioning of a monorepo. Each PR can be setup to require a change description for each package with chronus verify. At release time chronus version will bump the version of the packages and generate a changelog based on the change descriptions.

Installation

# Locally (recommended)
npm install -D @chronus/chronus
# Or globally
npm install -g @chronus/chronus

Usage

NpmPnpmYarnGlobal
npx chronuspnpx chronusyarn chronuschronus

chronus add [packages...]

Add a new change description. Optionally specify the packages that the change applies to. By default it will prompt for which package to apply the change to.

Options:

  • --since Only compute changes since the specified branch.

chronus verify

Verify that the packages with changes from the baseBranch have all been described.

Options:

  • --since Only compute changes since the specified branch.

chronus status

This command will show the current status of the changes in the workspace. This is basically a summary of what chronus version will do if run.

This command takes the same options as chronus version.

chronus version

Apply the change description and bump version of packages. By default this will respect the version policies configured(see version policies).

chronus changelog

Generate the changelog to stdout without bumping the version of the packages.

Options:

  • --package to generate the changelog for a specific package.
  • --policy to generate an aggregated changelog for a specific policy.

Options

--ignore-policies

This allows to ignore the version policies and bump the packages independently. This can be useful in the lockStep policies when doing a hotfix.

--only

Only bumps the packages specified. This can be useful if wanting to only release certain packages. This command will extract the change descriptions for the specified packages and bump the version of those packages. If a change applied to a package is not specified in the --only option it will be ignored. If a change is specified in both it will be applied and the packages included in the only array will be removed from the change description file.

$ chronus version --only @my-scope/my-package1 --only @my-scope/my-package2

chronus pack

Pack all the packages configured for the workspace.

By default it will have the same effect as npm pack run in each package directory.

Options

--pack-destination

Directory where the packed packages will be placed. By default each tar file will be placed in the package directory.

$ chronus pack --pack-destination /temp/artifacts

✔ @chronus/chronus packed in chronus-chronus-0.7.0.tgz (94.5 kB)
✔ @chronus/github-pr-commenter packed in chronus-github-pr-commenter-0.3.0.tgz (5.49 kB)
1.0.2

6 months ago

1.0.1

7 months ago

1.0.0

7 months ago

0.14.0

9 months ago

0.15.0

8 months ago

0.14.1

9 months ago

0.16.0

8 months ago

0.17.0

8 months ago

0.13.0

1 year ago

0.12.1

1 year ago

0.11.0

1 year ago

0.12.0

1 year ago

0.10.2

1 year ago

0.10.0

2 years ago

0.10.1

2 years ago

0.9.0

2 years ago

0.8.3

2 years ago

0.8.2

2 years ago

0.8.1

2 years ago

0.8.0

2 years ago

0.7.0

2 years ago

0.6.1

2 years ago

0.6.0

2 years ago

0.5.1

2 years ago

0.5.0

2 years ago

0.4.0

2 years ago

0.3.0

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.1.0

2 years ago