Skip to content

Latest commit

 

History

History
57 lines (34 loc) · 1.37 KB

dev_notes.org

File metadata and controls

57 lines (34 loc) · 1.37 KB

To make a release:

Increment version number

Currently the version number is hard-coded in the following locations:

./doc/conf.py ./pyproject.toml ./meson.build ./skfmm/__init__.py ./README.txt

The version number format is YYYY.MM.DD with leading zeros

Tag the release

$ git tag YYYY.MM.DD $ git push –tags origin master

Build the documentation

To build the documentation you need Sphinx and the numpydoc Sphinx extension

$ make html

check that everything looks ok by opening build/html/index.html

the documentation should build automatically on RTD.

Check https://scikit-fmm.readthedocs.io/en/latest/ trigger a build if needed.

Upload to PyPI

make sure you have twine installed with:

$ pip install twine

One the final commit has been made, wait for the GitHub workflow builds to finish. Make sure all the tests pass on all the platforms.

Copy the build artifacts from the GitHub actions to dist/

$ twine upload dist/*

Cython Wrapper for heap class

The binary min heap C++ class has a Cython wrapper to expose it to Python. Cython is not required to build this module as the c++ files created by Cython are checked into the git repo. If changes are made to skfmm/heap.h or skfmm/heap.cpp the Cython c++ file pheap.cpp needs to be updated. This is done with the command:

$ cython3 –cplus -3 pheap.pyx

The updates pheap.cpp should also be checked into the git repo