0.1.0-beta.4 • Published 6 years ago
mono-semantic v0.1.0-beta.4
mono-semantic
Semantic Release for individual packages of a monorepo.
- Pulls package versions from npm meaning you can leave your packages at
0.0.0
- Resolves inter-dependent packages linked via
link:../linked-package
- Uses the angular commit style to assign commits to packages
- Manage package versions independently
- Create git tags
- Generate individual changelogs for each package
Installation
npm install -g mono-semantic
Usage
# Do your normal CI stuff
yarn install
yarn lerna bootstrap
yarn lerna run test
# Publish your mono-repo
npm mono-semantic pre
npm mono-semantic publish
npm mono-semantic post
# Update git
git commit -a -m "Update changelogs"
git push --tags && git push
PRE
- updates each package with the currently-released version
- resolves any inter-dependent packages i.e.
{ "package2": "link:../package2" }
is resolved to{ "package2": "^1.0.1" }
- finds all commits that mention the current package (i.e.
fix(package2): foo
) and updates the major/minor/patch version
PUBLISH
1.
POST
make sure that all git tags have been fetched in order to generate an accurate change log