Contributing
๐ผ Contributing to PandasAI
Hi there! Weโre thrilled that youโd like to contribute to this project. Your help is essential for keeping it great.
๐ค How to submit a contribution
To make a contribution, follow the following steps:
- Fork and clone this repository
- Do the changes on your fork
- If you modified the code (new feature or bug-fix), please add tests for it
- Check the linting see below
- Ensure that all tests pass see below
- Submit a pull request
For more details about pull requests, please read GitHubโs guides.
๐ฆ Package manager
We use poetry
as our package manager. You can install poetry by following the instructions here.
Please DO NOT use pip or conda to install the dependencies. Instead, use poetry:
poetry install --all-extras --with dev
๐ Pre-commit
To ensure our standards, make sure to install pre-commit before starting to contribute.
pre-commit install
๐งน Linting
We use ruff
to lint our code. You can run the linter by running the following command:
make format_diff
Make sure that the linter does not report any errors or warnings before submitting a pull request.
Code Format with ruff-format
We use ruff
to reformat the code by running the following command:
make format
Spell check
We usee codespell
to check the spelling of our code. You can run codespell by running the following command:
make spell_fix
๐งช Testing
We use pytest
to test our code. You can run the tests by running the following command:
make tests
Make sure that all tests pass before submitting a pull request.
๐ Release Process
At the moment, the release process is manual. We try to make frequent releases. Usually, we release a new version when we have a new feature or bugfix. A developer with admin rights to the repository will create a new release on GitHub, and then publish the new version to PyPI.
Was this page helpful?