json-bump

1.0.2 • Public • Published

json-bump

bumps the "version" entry for a JSON file

Version 1.0.0 note

With version 1.0.0, the node.js version returns a promise. Use async/await to ensure package.json gets properly written.

rationale

An easy to use component to bump the semver version of a JSON file. Includes both an exported package and a CLI.

installation

npm i json-bump

programmatic example

const bump = require('json-bump')
 
async function update() {
    await bump('package.json', { replace: '1.0.1' })
}
update()

command-line example

$ json-bump package.json
Updated package.json version from 0.1.2 to 0.1.3

$ json-bump data.json --minor
Updated data.json version from 1.0.5 to 1.1.0

$ json-bump

Usage: json-bump FILENAME [FLAGS]
Bumps the version in a json file using semver (MAJOR.MINOR.PATCH)

--replace=semver   this replaces the entire semver with the given string

--major=1          increment the major version (increments by 1 if flagged but not specified)
--minor=1          increment the minor version (increments by 1 if flagged but not specified)
--patch=1          increment the patch version (increments by 1 if flagged but not specified)
--entry=name       change entry updated (defaults is "version")
--spaces=4          number of spaces to format the .json file (set to 0 to remove spaces)

If no FLAGS are specified, increments PATCH by 1

API

async function version(filename, options)

bumps the "version" entry for a .json file

  • {string} filename
  • {object} [options] defaults to incrementing PATCH by 1 if no options are provided
  • {string="version"} [entry] name of entry to change
  • {number} [major] increment major by number (resetting MINOR and PATCH to 0)
  • {number} [minor] increment minor by number (resetting PATCH to 0)
  • {number} [patch] increment patch by number
  • {string} [replace] replace entry with this string
  • {number} [spaces=4] number of spaces to format the .json file (set to 0 to remove spaces)
  • returns: { updated: string, original: string, major: number, minor: number, patch: number }

license

MIT License (c) 2020 YOPEY YOPEY LLC by David Figatner

Readme

Keywords

Package Sidebar

Install

npm i json-bump

Weekly Downloads

854

Version

1.0.2

License

MIT

Unpacked Size

15.8 kB

Total Files

11

Last publish

Collaborators

  • davidfig