Skip to content

Releasing

R. Bernstein edited this page Aug 1, 2021 · 24 revisions

Get latest sources:

$ git pull

Change version in mathics_django/version.py

Update __version__ in mathics_django/version.py.

$ source mathics_django/version.py # to set in POSIX shell
$ echo $__version__
$ git commit -m"Get ready for release $__version__" .

Update Changes

$ make ChangeLog

Update CHANGES.rst from ChangeLog.

$ make check
$ git commit --amend .
$ git push   # get CI testing going early

http://rst.ninjs.org/ can be used for checking the RsT.

Check package from github

Todo: turn this into a script in admin-tools

    $ [[ ! -d /tmp/gittest ]] && mkdir /tmp/gittest; pushd /tmp/gittest
    $ pyenv local 3.7.9
    $ pip install -e git://github.com/Mathics3/mathics-django.git#egg=Mathics_Django
    $ cd src/mathics-django
    $ mathicsserver --version # see that new version appears
    $ mathicsserver
    $ pip uninstall Mathics_Django
    $ popd

Make packages and check

    $ make dist
    $ twine check dist/Mathics_Django-$__version__*

Release on Github

Goto https://github.com/Mathics3/mathics-django/releases/new

Now check the tagged release. (Checking the untagged release was previously done).

Todo: turn this into a script in admin-tools

    $ git pull # to pull down new tag
    $ pushd /tmp/gittest
    $ pip install -e git://github.com/Mathics3/Mathics-django.git@${__version__}#egg=Mathics_Django
    $ cd src/mathicsserver
    $ mathicsserver --version # see that new version appears
    $ mathicsserver
    $ pip uninstall Mathics-Django
    $ popd

Upload the release to PyPI

Upload it to PyPI with twine

$ twine upload dist/Mathics_Django-${__version__}*

Move uploaded versiosn to dist/uploaded.

Post-Release

Clone this wiki locally