@brillout/release-me

0.4.3 • Public • Published

@brillout/release-me

Publish your npm packages.

Used by:

Features
Installation
Usage

[!WARNING] Don't use this: it's only meant for Vike's team & friends. That said, feel free to fork this project.


Features

  • Generates CHANGELOG.md.
  • Supports monorepos.
  • Generates Git release tags.
  • Pre-release support. (For example 0.4.177-commit-ff3d6cd.)
  • Asks for confirmation before publishing and shows a preview of the changes made to package.json and CHANGELOG.md, enabling you to double check before publishing.

Installation

Basics

// package.json
{
  "name": "my-package",
  "version": "0.1.2",
  "scripts": {
    "build": "echo 'Some build step (release-me runs the build script before releasing)'"
  },
  "devDependencies": {
    "@brillout/release-me": "^0.4.0"
  }
}

That's all @brillout/release-me needs: you can now use pnpm exec release-me patch to release a new patch version.

Scripts

It's optional but we recommend adding package.json#scripts:

 // package.json
 {
   "name": "my-package",
   "version": "0.1.2",
   "scripts": {
     "build": "echo 'Some build step (release-me runs the build script before releasing)'"
+    "release": "release-me patch",
+    "release:minor": "release-me minor",
+    "release:major": "release-me major",
+    "release:commit": "release-me commit"
   },
   "devDependencies": {
     "@brillout/release-me": "^0.4.0"
   }
 }

It's a ubiquitous convention: it communicates how new versions are released to anyone who's discovering your project.

Conventional Commits

For proper CHANGELOG.md generation make sure to follow Conventional Commits.

In other words:

  • fix: => bug fix or some polishing (e.g. improved error message).
  • feat: => new feature, i.e. new functionality.

For breaking changes append BREAKING CHANGE: to the commit message:

fix: make someFunction() take an argument object

BREAKING CHANGE: Replace `someFunction(someArg)` with `someFunction({ someArg })`.

[!NOTE] When introducing a breaking change, in order to respect the semver convention, don't pnpm exec release-me patch but do pnpm exec release-me major instead (or pnpm exec release-me minor if your package's version is 0.y.z).


Usage

Release a new patch/minor/major version:

pnpm exec release-me patch
pnpm exec release-me minor
pnpm exec release-me major

[!NOTE] We recommend defining package.json#scripts (see above) and use $ pnpm run instead of $ pnpm exec.

Release specific version:

pnpm exec release-me v0.1.2

You can also publish pre-releases such as 0.4.177-commit-ff3d6cd:

pnpm exec release-me commit

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.4.361latest

Version History

VersionDownloads (Last 7 Days)Published
0.4.361
0.4.21,169
0.4.11
0.4.02
0.3.105
0.3.92
0.3.82
0.3.73
0.3.6-commit-45281ff1
0.3.6-commit-db34d602
0.3.62
0.3.52
0.3.43
0.3.32
0.3.23
0.3.14
0.3.02
0.2.42
0.2.33
0.2.22
0.2.13
0.2.04
0.1.152
0.1.142
0.1.132
0.1.122
0.1.112
0.1.102
0.1.93
0.1.82
0.1.71
0.1.61
0.1.51
0.1.41
0.1.31
0.1.21
0.1.11
0.1.01
0.0.82
0.0.71
0.0.62
0.0.52
0.0.42
0.0.32
0.0.22

Package Sidebar

Install

npm i @brillout/release-me

Weekly Downloads

1,318

Version

0.4.3

License

MIT

Unpacked Size

39.3 kB

Total Files

14

Last publish

Collaborators

  • brillout