Contributing

Contributors and contributions are welcome. Please read these guidelines first.

Git

The project homepage is on GitHub.

Contributors can open pull requests from a fork targeting the parent main branch. But it may be a good first step to create an issue or open a discussion topic.

Repo

Setting up the project should be fairly simply once you’re cloned the repo. A minimum of Python 3.10 is recommended.

It is necessary to have an API username and key from the FCA developer portal first.

Dependencies

The only external dependency is requests.

Development dependencies are specified in the [tool.pdm.dev-dependencies] section of the project TOML, but these are purely indicative.

Tests

Tests are located in the tests folder and can be run directly or via there Makefile which provides a unittests target. Linting is done via Ruff (make lint) and there are also doctests (make doctests).

The unit and doctests require the API username (API_USERNAME) and key (API_KEY) to be available in the environment.

Documentation

This documentation site is written, built and deployed using reStructuredText, Sphinx, and Read the Docs (RTD) respectively. The Sphinx theme used is Furo.

CI

The CI workflows are defined here and there is also a separate CodeQL workflow.

Releases

The package is currently at version 1.3.0.

Releases are created and published (to PyPI and GitHub) manually.