Skip to content

Commit 9411c21

Browse files
Add steps for making a new release (#94)
* Add steps for making a new release * Add PR link to release notes * Indent * Updates based on review comments
1 parent 712670f commit 9411c21

File tree

3 files changed

+44
-0
lines changed

3 files changed

+44
-0
lines changed

docs/index.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,9 @@ up of :py:class:`cftime.datetime` dates with any calendar type.
2222

2323
release-notes
2424
api
25+
26+
.. toctree::
27+
:caption: Maintenance
28+
:maxdepth: 1
29+
30+
releases

docs/release-notes.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ Documentation
5151
* Added a start on Read the Docs documentation. Added examples, release notes,
5252
and NumPy-style docstrings to nc-time-axis classes (:issue:`62`, :pull:`87`).
5353
By `Spencer Clark <https://github.com/spencerkclark>`_.
54+
* Added some basic instructions for making a new release (:pull:`94`). By
55+
`Spencer Clark <https://github.com/spencerkclark>`_.
5456

5557

5658
v1.3.1 (June 14th, 2021)

docs/releases.rst

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
.. _releases:
2+
3+
Making a new release
4+
====================
5+
6+
When making a new release of ``nc-time-axis``, it is best to follow these steps.
7+
Note these are a trimmed-down version of the `release steps for the Iris package
8+
<https://scitools-iris.readthedocs.io/en/stable/developers_guide/release.html>`_.
9+
10+
1. Create a release branch in the `SciTools/nc-time-axis repository
11+
<https://github.com/SciTools/nc-time-axis>`_ with the
12+
name ``v{major release number}.{minor release number}.x``. This branch will
13+
be used to make any final changes prior to the release. It will be merged
14+
back into the ``main`` branch once the release is complete.
15+
2. Check that the :ref:`release_notes` have been fully updated for the new
16+
release. This includes adding a date for the new release where it currently
17+
says "unreleased." This can also include formatting and other minor content
18+
updates.
19+
3. `Create a new tag in the GitHub
20+
<https://github.com/SciTools/nc-time-axis/releases/new>`_ repository for the
21+
new release. This should have the same name as the release branch.
22+
4. Upload the release to `PyPI <https://pypi.org>`_. A nice set of instructions
23+
for this can be found in the `Iris documentation
24+
<https://scitools-iris.readthedocs.io/en/stable/developers_guide/release.html#update-pypi>`_.
25+
5. Uploading the release to PyPI should trigger an automatic pull request to the
26+
`conda-forge/nc_time_axis-feedstock
27+
<https://github.com/conda-forge/nc_time_axis-feedstock>`_ repository. Review
28+
this pull request, make changes if necessary, and then merge it.
29+
6. Ensure the documentation has been built properly on `Read the Docs
30+
<https://readthedocs.org>`_ and that the new release is an "active version."
31+
7. Update the :ref:`release_notes` page to include a blank section for the next
32+
release.
33+
8. Merge the release branch into ``main``, but leave it available in case any
34+
point releases are needed.
35+
9. Only delete / archive this release branch once no more bug fixes are needed
36+
and the next minor release is being planned using a new branch.

0 commit comments

Comments
 (0)