Skip to content

Latest commit

 

History

History
81 lines (55 loc) · 2.3 KB

File metadata and controls

81 lines (55 loc) · 2.3 KB

Contributing

If you find errors, omissions, inconsistencies or other things that need improvement, please create an issue or a pull request at https://github.com/sfstoolbox/sfs-python/. Contributions are always welcome!

Development Installation

Instead of installing the latest release from PyPI, you should get the newest development version from Github:

git clone https://github.com/sfstoolbox/sfs-python.git
cd sfs-python
uv sync

Building the Documentation

If you make changes to the documentation, you can re-create the HTML pages using Sphinx. From the main sfs-python directory, run:

uv run sphinx-build doc _build

The generated files will be available in the directory _build/.

Running the Tests

You'll need pytest, which will be installed automatically. To execute the tests, simply run:

uv run pytest

Editable Installation

If you want to work in a different directory on your own files, but using the latest development version (or a custom branch) of the sfs module, you can switch to a directory of your choice and enter this:

uv init --bare
uv add --editable --no-workspace path/to/your/sfs/repo

You can install further packages with uv add and then run whatever you need with uv run.

Creating a New Release

These steps for creating a new release are proposed to be taken only after ensuring that CI (unit tests, sphinx for RTD, build of wheel and source distribution) raised no errors.

  1. Bump version number in sfs/__init__.py
  2. Update NEWS.rst
  3. Commit those changes as "Release x.y.z"
  4. Create an (annotated) tag with git tag -a x.y.z
  5. Push the commit and the tag to Github
  6. The workflow .github/workflows/publish.yml will handle the build and the upload to PyPI
  7. Add release notes containing a link to PyPI and the bullet points from the updated NEWS.rst
  8. Select the new release as the default on RTD