Contributing
First, thank you for considering to make a contribution to this project. Spending your valuable time helping make this project better is deeply appreciated. All kinds of contributions are helpful and welcome.
Report issues https://github.com/nackjicholson/aiosql/issues
Review or make your own pull requests https://github.com/nackjicholson/aiosql/pulls
Write documentation https://github.com/nackjicholson/aiosql/tree/master/docs
Whether you have an idea for a feature improvement or have found a troubling bug, thank you for being here.
Packaging & Distribution
This aiosql repository uses the python standard packaging tools. Read about them in more detail at the following links.
Development Setup
Create a virtual environment
git clone git@github.com:nackjicholson/aiosql.git
cd aiosql
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
All subsequent steps will assume you are using python within your activated virtual environment.
Install your environment to the dependencies defined in
dev-requirements.txt
Note: different versions of Python may install different versions of dependencies. As aiosql is more or less expected to work with all these module versions, the bare minimum version pinning is done in the requirements file.
pip install -r dev-requirements.txt
Run tests
pytest
Alternatively, there is a Makefile to automate some of the above tasks:
make venv.dev # install dev virtualenv
source venv/bin/activate
make check # run all checks: pytest, black, flake8, coverage…
Also, there is a working poetry setup in pyproject.toml.
Dependency Management
There is no dependency for using aiosql
.
For development you need to test with various databases and even more drivers, see above for generating a working python environment.