🐼 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
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
To ensure our standards, make sure to install pre-commit before starting to contribute.
ruff to lint our code. You can run the linter by running the following command:
Make sure that the linter does not report any errors or warnings before submitting a pull request.
Code Format with
ruff to reformat the code by running the following command:
codespell to check the spelling of our code. You can run codespell by running the following command:
pytest to test our code. You can run the tests by running the following command:
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.