Skip to content

Latest commit

 

History

History
72 lines (47 loc) · 2.35 KB

DEVELOPMENT.md

File metadata and controls

72 lines (47 loc) · 2.35 KB

Welcome to the guppyft development guide

This guide is intended to help you get started with developing guppyft.

If you find any errors or omissions in this document, please open an issue!

🌐 Contributing to guppyft

Note

By submitting a contribution to this project, you certify that you have the right to submit it and agree that your contribution is licensed under the Apache License, Version 2.0, under the same terms as the rest of the project.

Contributions to guppyft are welcomed! Please open an issue or pull request if you have any questions or suggestions.

PRs should be made against the main branch, and should pass all CI checks before being merged. This includes using the conventional commits format in the PR title.

#️⃣ Setting up the development environment

To set up the development environment, you will need:

Once installed, you can install all Python dependencies and enable the pre-commit hooks by running:

just setup

To see a list of all available commands, run:

just

💅 Coding style

The Python code in this repository is formatted using ruff and the Rust code using rustfmt to ensure a consistent style. Most IDEs will provide automatic formatting on save, but you can also run the formatter manually with:

just format

We also use various linters to catch common mistakes and enforce best practices. To run these, use:

just check

To quickly fix some common issues, run:

just fix

This may not be able to fix all issues, and some manual inspection will be required to address any outstanding errors.

🏃 Running the tests

To quickly compile and run all the tests, you can use:

just test

To run only the Rust or Python tests, use:

just test-rust
just test-python