mirror of
https://github.com/pocketpy/pocketpy
synced 2026-08-05 05:37:10 +08:00
* Initial plan * docs: add contributing guide and link from README --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
1.3 KiB
1.3 KiB
Contributing to pocketpy
Thank you for your interest in contributing to pocketpy.
Development Environment
Prerequisites
- Python 3
- CMake 3.10+
- A C11 compiler
- Linux/macOS:
clangorgcc - Windows: MSVC (recommended)
- Linux/macOS:
Clone the repository
git clone --recursive https://github.com/pocketpy/pocketpy.git
cd pocketpy
Build from Source
A standard local build:
python cmake_build.py Release
A build with optional modules (same style as CI):
python cmake_build.py Release -DPK_BUILD_MODULE_LZ4=ON -DPK_BUILD_MODULE_CUTE_PNG=ON -DPK_BUILD_MODULE_MSGPACK=ON
Build outputs are copied to the repository root (main, and libpocketpy.so/pocketpy.dll/libpocketpy.dylib when available).
Run Tests
Run unit tests:
python scripts/run_tests.py
Run benchmarks:
python scripts/run_tests.py benchmark
On Linux, you can run the existing coverage script:
bash run_tests.sh
Notes for Contributors
python cmake_build.pyandbash run_tests.shrunpython prebuild.pyautomatically.- If you edit files under
python/, regenerate embedded sources with:
python prebuild.py
Pull Requests
- Keep changes focused and minimal.
- Add/update tests when code behavior changes.
- Open a PR with a clear summary of what changed and why.