Development =========== | Welcome to contributing to ``pgmq-sqlalchemy`` ! | This document will guide you through the process of contributing to the project. How to Contribute ----------------- 1. Fork the repository - Click the `Fork` button in the upper right corner of the repository page. 2. Clone the repository - Clone the repository to your local machine. .. code-block:: bash git clone https://github.com/your-username/pgmq-sqlalchemy.git 3. Create a new branch - Create a new branch for your changes. .. code-block:: bash git checkout -b feature/your-feature-name 4. Make your changes - Make your changes to the codebase. - Add tests for your changes. - Add documentation if changes are user-facing. 5. Commit your changes * Commit your changes with meaningful commit messages. * `ref: conventional git commit messages `_ .. code-block:: bash git commit -m "feat: your feature description" 6. Push your changes - Push your changes to your forked repository. .. code-block:: bash git push origin feature/your-feature-name 7. Create a Pull Request - Create a Pull Request from your forked repository to the ``develop`` branch of the original repository. Development Setup ----------------- Setup ~~~~~ Install dependencies and `ruff` pre-commit hooks. .. code-block:: bash make install Prerequisites: **Docker** and **Docker Compose** installed. Start development PostgreSQL .. code-block:: bash make start-db Stop development PostgreSQL .. code-block:: bash make stop-db Makefile utility ~~~~~~~~~~~~~~~~ .. code-block:: bash make help # will show all available commands and their descriptions. Linting ~~~~~~~ We use `pre-commit `_ hook with `ruff `_ to automatically lint the codebase before committing. Testing ------- Run tests locally .. code-block:: bash make test-local Run tests in docker .. code-block:: bash make test-docker Documentation ------------- Serve documentation .. code-block:: bash make doc-serve Clean documentation build .. code-block:: bash make doc-clean