Skip to content

Latest commit

 

History

History
79 lines (57 loc) · 2.25 KB

File metadata and controls

79 lines (57 loc) · 2.25 KB

Contributing

We welcome contributions to zLMDB! This guide explains how to get involved.

Getting in Touch

Reporting Issues

When reporting issues, please include:

  1. Python version (python --version)
  2. zLMDB version (python -c "import zlmdb; print(zlmdb.__version__)")
  3. Operating system and version
  4. LMDB version if relevant
  5. Minimal code example reproducing the issue
  6. Full traceback if applicable

Contributing Code

  1. Fork the repository on GitHub
  2. Create a feature branch from master
  3. Make your changes following the code style
  4. Add tests for new functionality
  5. Add a changelog entry to docs/changelog.rst for any user-visible change (kept in the PR so the branch is self-contained)
  6. Run the test suite to ensure nothing is broken
  7. Submit a pull request referencing any related issues

Development Setup

git clone https://github.com/crossbario/zlmdb.git
cd zlmdb
pip install -e .[dev]

Running Tests

# Run all tests
just test

# Run tests in specific venv
just test cpy312

Code Style

  • Follow PEP 8
  • Use meaningful variable and function names
  • Add docstrings for public APIs
  • Keep lines under 100 characters

Versioning

This project uses CalVer with PEP 440 development releases: YY.M.PATCH[.devN] — for example, 26.7.1 for a stable release and 26.7.1.dev1 while in development. Between releases the working tree always carries a .devN suffix.

The version is stored in two files kept in sync — pyproject.toml and src/zlmdb/_version.py — and managed with just:

  • just file-version — show the current version (from both files)
  • just bump-dev — bump to the next dev version for the current month (YY.M.1.dev1)
  • just bump-next 26.7.2.dev1 — set a specific next dev version
  • just prep-release — strip the .devN suffix to cut a stable release

Git tags and releases are created by maintainers only.

License

By contributing to zLMDB, you agree that your contributions will be licensed under the MIT License.