Skip to content

Releasing

rocky edited this page Jan 20, 2025 · 1 revision

Table of Contents

Get latest sources:

$ git pull

Change version in trepan/version.py:

$ emacs pymathics/trepan/version.py
$ source pymathics/trepan/version.py
$ echo $__version__
$ git commit -m"Get ready for release $__version__" .

Update ChangeLog:

$ make ChangeLog
$ codespell ChangeLog

Update NEWS.md from ChangeLog:

$ git commit --amend .
$ git push origin HEAD # get CI testing going early

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.12.6  # or some other non-current version
$ pip install -e git+https://github.com/Mathics3/Mathics3-trepan.git#egg=Mathics3-trepan
$ mathics
$ LoadModule["pymathics.trepan"]
$ pip uninstall Mathics3-trepan
$ popd

Make packages and check

$ ./admin-tools/make-dist-newest.sh

Check packages

$ twine check dist/mathics3_trepan-$__version__*

Release on github

Goto https://github.com/Mathics3/Mathics3-trepan/releases/new

Set version, copy in CHANGES.rst item, upload binaries.

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+https://github.com/rocky/python3-trepan.git@${__version__}#egg=trepan3k
$ trepan3k --version
$ trepan3k trepan3k
$ pip uninstall trepan3k
$ popd

Get on PyPI

$ twine upload dist/Mathics3_trepan-${__version__}*.{whl,gz}

Check on https://pypi.org/project/trepan3k/

Push and Pull tags:

$ git pull --tags

Move dist files to uploaded

$ mv -v dist/trepan3k-${__version__}* dist/uploaded

Bump version do dev

In trepan/version.py bump number and add .dev0`.