Jasmine Core Maintainers Only
Follow the instructions in CONTRIBUTING.md during development.
Please work on feature branches.
Please attempt to keep commits to master small, but cohesive. If a feature is contained in a bunch of small commits (e.g., it has several wip commits or small work), please squash them when merging back to master.
We attempt to stick to Semantic Versioning. Most of the time, development should be against a new minor version - fixing bugs and adding new features that are backwards compatible.
The current version lives in the file /package.json. This file should be set to the version that is currently under development. That is, if version 1.0.0 is the current release then version should be incremented say, to 1.1.0.
This version is used by both jasmine.js and the jasmine-core Ruby gem.
Note that Jasmine should not use the "patch" version number. Let downstream projects rev their patch versions as needed, keeping their major and minor version numbers in sync with Jasmine core.
When ready to release - specs are all green and the stories are done:
release_notes - use the Anchorman gem to generate the markdown file and edit accordinglypackage.json to a release candidategrunt buildStandaloneDistpython setup.py register sdist upload You will need pypi credentials to upload the egg.grunt build:copyVersionToGemrake release - tags the repo with the version, builds the jasmine-core gem, pushes the gem to Rubygems.org. In order to release you will have to ensure you have rubygems creds locally.npm adduser to save your credentials locallynpm publish . to publish what's in package.jsonThere should be a post to Pivotal Labs blog and a tweet to that link.