npm

npm’s 2019 JavaScript ecosystem survey analysis is now available! Get your copy here »

This package has been deprecated

Author message:

heroku-version-infer has been renamed to @quarterto/git-version-infer

@quarterto/heroku-version-infer

4.0.1 • Public • Published

heroku-version-infer

infers app versions for automatic heroku deploys

npm install --save @quarterto/heroku-version-infer
{
  "name": "my-awesome-heroku-app",
  "version": "0.0.0-development",
  "scripts": {
    "postinstall": "heroku-version-infer"
  }
}

why

because you want to tag versions for things like error reporting, QA, Tim writing on whiteboards, but you don't want to manually tag things. heroku-version-infer comes up with an arbitrary monotonically increasing version number automatically, so you don't have to.

how

the version number is the number of merge commits into the history of the deployed commit. if you have Github branch protection, there will be no code changes on master without an associated merge, so a particular version will always contain the same code. this number will increase if and only if there are code changes, which is exactly what we need from a version number.

this assumption breaks down with Heroku review apps, where multiple concurrent branches with the same number of merges may be deployed at the same time. to disambiguate in this case, the first 7 characters of the commit hash are appended to the version.

the inferred version is written to the version field in package.json. you're probably already used to writing require('../package.json').version.

licence

mit

Keywords

none

install

npm i @quarterto/heroku-version-infer

Downloadsweekly downloads

17

version

4.0.1

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability