Skip to content

Commit

Permalink
Merge d9894b7 into 822434b
Browse files Browse the repository at this point in the history
  • Loading branch information
desilinguist committed Feb 24, 2020
2 parents 822434b + d9894b7 commit 5d9530c
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 107 deletions.
2 changes: 1 addition & 1 deletion README.rst
Expand Up @@ -9,7 +9,7 @@ Rater Scoring Modeling Tool
:target: https://coveralls.io/r/EducationalTestingService/rsmtool
:alt: Coverage status

.. image:: https://img.shields.io/conda/v/desilinguist/rsmtool.svg
.. image:: https://img.shields.io/conda/v/ets/rsmtool.svg
:target: https://anaconda.org/desilinguist/rsmtool
:alt: Conda package for SKLL

Expand Down
54 changes: 37 additions & 17 deletions doc/internal/release_process.rst
Expand Up @@ -5,37 +5,57 @@ This process is only meant for the project administrators, not users and develop

1. Run the ``tests/update_files.py`` script with the appropriate arguments to make sure that all test data in the new release have correct experiment ids and filenames. If any (non-model) files need to be changed this should be investigated before the branch is released.

2. Create a release branch on GitHub.
2. Create a release branch ``release/XX`` on GitHub.

3. In that release branch, update the version numbers in ``version.py``, update the conda-recipe, and update the README, if necessary. You should also run `make linkcheck` on the documentation to fix and update any broken/redirected links.
3. In the release branch:

4. Upload source and wheel packages to PyPI using ``python setup.py sdist upload`` and ``python setup.py bdist_wheel upload``
a. update the version numbers in ``version.py``.

5. Build the new generic conda package locally on your mac using the following command::
b. update the conda recipe.

conda build -c conda-forge rsmtool
c. update the documentation with any new features or details about changes.

6. Upload the built package to anaconda.org using ``anaconda upload --user ets <package tarball>``.
d. run ``make linkcheck`` on the documentation and fix any redirected/broken links.

7. Create pull requests on the `rsmtool-conda-tester <https://github.com/EducationalTestingService/rsmtool-conda-tester/>`_ and `rsmtool-pip-tester <https://github.com/EducationalTestingService/rsmtool-pip-tester/>`_ repositories to test the conda and PyPI packages on Linux and Windows.
e. update the README and this release documentation, if necessary.

8. Draft a release on GitHub while the Linux and Windows builds are running.
4. Build the PyPI source distribution using ``python setup.py sdist build``.

9. Once both builds have passed, make a pull request with the release branch to be merged into ``master`` and request code review.
5. Upload the source distribution to TestPyPI using ``twine upload --repository testpypi dist/*``. You will need to have the ``twine`` package installed and set up your ``$HOME/.pypirc`` correctly. See details `here <https://packaging.python.org/guides/using-testpypi/>`__.

10. Once the build for the PR passes and the reviewers approve, merge the release branch into ``master``.
6. Install the TestPyPI package as follows::

11. Make sure that the ReadTheDocs build for ``master`` passes.
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple rsmtool

12. Tag the latest commit in ``master`` with the appropriate release tag and publish the release on GitHub.
7. Then run some tests from a RSMTool working copy. If the TestPyPI package works, then move on to the next step. If it doesn't, figure out why and rebuild and re-upload the package.

13. Make another PR to merge ``master`` branch into ``stable`` so that the ``stable`` ReadTheDocs build always points to the latest release.
8. Build the new generic conda package by running the following command in the ``conda-recipe`` directory::

14. Update the CI plan for RSMExtra (only needed for ETS users) to use this newly built RSMTool conda package. Do any other requisite changes for RSMExtra. Once everything is done, do a release of RSMExtra.
conda build -c conda-forge -c ets .

15. Update the RSMTool conda environment on the ETS linux servers with the latest packages for both RSMTool and RSMExtra.
9. Upload the package to anaconda.org using ``anaconda upload --user ets <package tarball>``. You will need to have the appropriate permissions for the ``ets`` organization.

16. Send an email around at ETS announcing the release and the changes.
10. Create pull requests on the `rsmtool-conda-tester <https://github.com/EducationalTestingService/rsmtool-conda-tester/>`_ and `rsmtool-pip-tester <https://github.com/EducationalTestingService/rsmtool-pip-tester/>`_ repositories to test the conda and TestPyPI packages on Linux and Windows.

17. Create a `Dash <https://kapeli.com/dash>`_ docset from the documentation by following the instructions :ref:`here <dash_docset>`.
11. Draft a release on GitHub while the Linux and Windows package tester builds are running.

12. Once both builds have passed, make a pull request with the release branch to be merged into ``master`` and request code review.

13. Once the build for the PR passes and the reviewers approve, merge the release branch into ``master``.

14. Upload source and wheel packages to PyPI using ``python setup.py sdist upload`` and ``python setup.py bdist_wheel upload``

15. Make sure that the ReadTheDocs build for ``master`` passes.

16. Tag the latest commit in ``master`` with the appropriate release tag and publish the release on GitHub.

17. Make another PR to merge ``master`` branch into ``stable`` so that the ``stable`` ReadTheDocs build always points to the latest release.

18. Update the CI plan for RSMExtra (only needed for ETS users) to use this newly built RSMTool conda package. Do any other requisite changes for RSMExtra. Once everything is done, do a release of RSMExtra.

19. Update the RSMTool conda environment on the ETS linux servers with the latest packages for both RSMTool and RSMExtra.

20. Send an email around at ETS announcing the release and the changes.

21. Create a `Dash <https://kapeli.com/dash>`_ docset from the documentation by following the instructions :ref:`here <dash_docset>`.

2 changes: 1 addition & 1 deletion rsmtool/version.py
Expand Up @@ -3,5 +3,5 @@
in one place. Based on the suggestion `here. <http://bit.ly/16LbuJF>`_
"""

__version__ = '7.0.0'
__version__ = '7.1.0'
VERSION = tuple(int(x) for x in __version__.split('.'))

This file was deleted.

This file was deleted.

This file was deleted.

@@ -0,0 +1,2 @@
,FEATURE1,FEATURE2,FEATURE3,FEATURE4,FEATURE5,FEATURE6,FEATURE7,FEATURE8,sc1
SingleResponse,,,,,,,,,

0 comments on commit 5d9530c

Please sign in to comment.