Make sure that you edit the source files in TypeScript (*.ts
) files.
You can build TypeScript to JavaScript using the TypeScript compiler
(and run it with npm script: npm run tsc
).
Make sure that you commit changes to both ts
and js
files.
- Testing json-patch.js
- Load
test/SpecRunner.html
in your web browser
- Testing json-patch-duplex.js
- Load
test/SpecRunnerDuplex.html
in your web browser
Each of the test suite files contains Jasmine unit test suite and Benchmark.js performance test suite.
To run Benchmark.js performance tests, press "Run Tests" button.
- Go to directory where you have cloned the repo
- Install dev dependencies (Jasmine Node.js module) by running command
npm install
- Run test
npm run test
- Testing json-patch.js only:
npm run test-core
- Testing json-patch-duplex.js only:
npm run test-duplex
The release is done from master
branch.
- Don't break too much. See how many projects depend on this.
- Make sure that the browser tests pass in Chrome, Firefox, Edge and IE
- Make sure that the NodeJS tests pass
npm install && npm run test
- Call
grunt uglify
. This updates the minified files in thedist
directory. - Call
git status
to verify that the only pending changes in the repo are the result of the previous step - Call
grunt bump:patch
,grunt bump:minor
orgrunt bump:major
. This command:
- increments the version number in the relevant files
- commits changes to Git with the version number as the commit message
- creates a Git tag wit the version
- Call
git push
to push the changes toorigin master
- Call
git push --tags
to push the tag toorigin master
- Call
npm publish
to push the new version to NPM. Read more - Call
npm view fast-json-patch dist-tags
to verify that the new version was published in NPM. - Explain the changes (at least an summary of the commit log) in GitHub Releases.
- Merge
master
branch togh-pages
branch to update the static website.