Files
turnstone/CONTRIBUTING.md
T
Patrick Buckley 81a3eaecce chore: relicense BUSL-1.1 → Apache 2.0 for 1.6.0 (#651)
* chore: relicense BUSL-1.1 -> Apache 2.0 for 1.6.0

Flips every license artifact in the tree; 1.5.x and earlier remain
BUSL-1.1 per their release-time LICENSE files. Contributor consent
record: #548 (rationale: #546).

- LICENSE: canonical Apache 2.0 text
- NOTICE: new; copyright line + pointer to THIRD-PARTY-NOTICES
- pyproject.toml: SPDX expression + explicit license-files trio
- Dockerfile: COPY the license trio (hatchling needs them at build)
- THIRD-PARTY-NOTICES: BUSL line reworded; bundled-version drift
  fixed (KaTeX 0.17.0, Mermaid 11.15.0, hls.js 1.6.16)
- README badge + License section, CONTRIBUTING inbound-license line,
  TS SDK package(+lock), example pyproject
- docs/pgbouncer.md: drop stray ':' introduced in #353

* docs: add CONTRIBUTORS.md

* chore: drop LICENSE leading blank line

The apache.org LICENSE-2.0.txt begins with a newline; the SPDX
canonical text and GitHub license templates do not. Use the
conventional form — detection is whitespace-normalized either way.
2026-06-10 21:03:16 -07:00

60 lines
1.4 KiB
Markdown

# Contributing to Turnstone
Thanks for your interest in contributing! Here's what you need to know.
## Contributor License Agreement
All contributors must agree to the [Contributor License Agreement](CLA.md)
before their pull request can be merged. When you open your first PR, the CLA
Assistant bot will ask you to sign by commenting on the PR. This is a one-time
process.
The CLA allows us to distribute Turnstone under both open-source and commercial
licenses. Your contributions remain your own — you are granting a license, not
transferring ownership.
## Getting Started
1. Fork the repository
2. Create a branch for your change
3. Make your changes
4. Run the tests: `pytest`
5. Open a pull request
## Development Setup
```
python -m venv .venv
source .venv/bin/activate
pip install -e ".[test,dev]"
```
The `dev` extra installs `ruff` and `mypy`. Before pushing, run:
```
ruff check turnstone tests
mypy turnstone
pytest
```
## Guidelines
- Keep pull requests focused — one change per PR
- Add tests for new functionality
- Follow existing code style and patterns
- Update documentation if your change affects user-facing behavior
## Reporting Issues
Open an issue at https://github.com/turnstonelabs/turnstone/issues with:
- What you expected to happen
- What actually happened
- Steps to reproduce
- Python version and OS
## License
By contributing, you agree that your contributions will be licensed under the
project's [Apache License 2.0](LICENSE).