Thank you for your interest in contributing to the Venice AI Python Client!
If you encounter a bug or have an issue with the library:
- Search Existing Issues: Before submitting a new issue, please check if a similar one has already been reported by searching on GitHub under Issues.
- Open a New Issue: If you can't find an existing issue that addresses your problem, please open a new one.
- Provide a clear and descriptive title.
- Include a detailed description of the issue.
- If applicable, provide a code sample or an executable test case that demonstrates the problem.
- Mention your Python version, library version, and operating system.
This project uses Poetry for dependency management and requires Python ≥3.13.
# Install dependencies (including dev extras)
poetry install --all-extras
# Activate the virtual environment (Poetry 2.0+)
eval "$(poetry env activate)"# Run all unit tests
poetry run pytest tests/unit/
# Run with coverage
poetry run pytest tests/unit/ --cov=src/venice_ai --cov-report=term-missing
# Run integration tests (may require API credentials)
poetry run pytest tests/integration/
# Use the custom test runner for full suite orchestration
poetry run python tests/run_tests.py --helpThis project enforces code style with ruff and type correctness with mypy.
# Lint and auto-fix
poetry run ruff check src/ tests/ --fix
# Format
poetry run ruff format src/ tests/
# Type check
poetry run mypy src/All checks must pass before a PR can be merged. You can run the full check suite via:
make lint # runs ruff lint
make type-check # runs mypy
make test # runs the test suite- Branch naming: use descriptive names such as
fix/issue-descriptionorfeat/short-feature-name. - Keep PRs focused — one logical change per PR makes review easier.
- Add or update tests to cover your changes.
- Ensure
make lintandmake testpass locally before opening the PR. - Update
CHANGELOG.mdunder the[Unreleased]section if your change is user-visible.
If you have general questions about using the library that aren't bug reports, you can open an issue for discussion.
Your contributions are valuable!