Development

Contributing to fiddy

We welcome contributions from the community. If you’re interested in contributing to the project, please follow these steps:

  1. Fork the repository on GitHub.

  2. Create a new branch for your feature or bug fix.

  3. Make your changes and commit them with clear messages.

  4. Push your changes to your forked repository.

  5. Open a pull request against the main repository.

Before submitting a pull request, please ensure that your code adheres to the project’s coding standards and includes appropriate tests.

Development setup

We use pre-commit to run linters and formatters on the codebase. To enable pre-commit hooks in your development environment, run:

pip install pre-commit
pre-commit install

Python compatibility

fiddy follows NEP 29.

Running tests

We use pytest for testing.

To run the test suite, execute the following command in the project root directory:

pytest

Release process

Releases are managed via GitHub releases.

To create a new release:

  1. Go to the “Releases” section of the GitHub repository.

  2. Click on “Draft a new release”.

  3. Fill in the tag version, release title, and description.

    Version & tag: We follow Semantic Versioning. The tag should be in the format vX.Y.Z (e.g., v1.0.0). The release title is fiddy vX.Y.Z. The package version will be automatically inferred from the tag via setuptools_scm.

    Description: Include a summary of changes, new features, bug fixes, and any other relevant information.

  4. Publish the release.

    A GitHub Action workflow will automatically build and upload the package to PyPI. Ensure that the action completes successfully.