-
Notifications
You must be signed in to change notification settings - Fork 1
Release Management
Econ-ARK aims to provide development releases biweekly, if changes have been made in the preceding two weeks. We aim to make final (non-development) releases every 3-6 months, depending on demand for new features and our availability to thoroughly test the new stable/default release for bugs and breaking changes.
Our releases are hosted on PyPI.
Econ-ARK uses a variation on semantic versioning to number our releases. Our releases take the form of Major.Minor for regular releases and Major.Minor.Patch.Dev for development releases. The 0 in the "Major" position indicates that the project as a whole is in its early stages and thus we have a higher likelihood of pushing both intentional and unintentional breaking changes. Please reach out to us if you are having trouble using our releases or are confused by our processes. (Also, please note that our oldest releases do not match this naming schema.)
A typical release order for us looks like:
- 0.4.0
- 0.4.0.dev1
- 0.4.0.dev2
- 0.4.0.dev3
- 0.5 <--- contains the changes found in 0.4.0.dev1, 0.4.0.dev2, 0.4.0.dev3
The .dev nomenclature prevents these releases from being installed by default on PyPI. So a typical user will install 0.4.0 even while 0.4.0.dev1 etc are available - once we release 0.5, that will become the release installed by default.
All version releases, however small, will include release notes. Release notes will be grouped by major features, minor features, and other changes, and will specify any known/potential breaking changes.
In order for a pull request to be merged, it should include a summary line to go in the release notes. People should indicate if whether the pull request should be categorized as 'major features', 'minor features' or 'other changes'. If the pull request introduces known breaking changes, it should also include a description of how to adapt your code to fix the breaking change, illustrated with an example.
All pull requests, immediately after merging, should be given the label "add to release notes". When a new release occurs, the summaries from the pull requests will be incorporated into the release notes and the label will be removed.
- In addition to being uploaded to PyPI, all releases after 0.9.1 are available through HARK's github releases page and are tagged with their release name, for example
0.10.0.dev1
.