Installation¶
Requirements¶
pysiphon requires Python 3.10 or higher.
Installing from Source¶
Clone the repository and install:
# Clone the repository
git clone https://github.com/dhmnr/pysiphon.git
cd pysiphon
# Install with pip
pip install -e .
# Or with uv (recommended)
uv pip install -e .
Installing with Documentation Tools¶
If you want to build the documentation locally:
Verifying Installation¶
Test that pysiphon is installed correctly:
Dependencies¶
pysiphon has the following runtime dependencies:
| Package | Version | Purpose |
|---|---|---|
| grpcio | ≥1.59.0 | gRPC framework |
| grpcio-tools | ≥1.59.0 | Protobuf compiler |
| tomli | ≥2.0.1 | TOML config parsing |
| Pillow | ≥10.0.0 | Image handling |
| click | ≥8.1.0 | CLI framework |
Optional Dependencies¶
For building documentation:
| Package | Version | Purpose |
|---|---|---|
| mkdocs | ≥1.5.0 | Documentation generator |
| mkdocs-material | ≥9.4.0 | Material theme |
| mkdocstrings | ≥0.24.0 | API documentation |
| pymdown-extensions | ≥10.0 | Markdown extensions |
Regenerating gRPC Code¶
If you modify siphon_service.proto, regenerate the Python code:
python -m grpc_tools.protoc -I. \
--python_out=pysiphon/generated \
--grpc_python_out=pysiphon/generated \
siphon_service.proto
Import Fix
After regenerating, update pysiphon/generated/siphon_service_pb2_grpc.py:
Change:
To:
Troubleshooting¶
Import Errors¶
If you get import errors:
- Make sure you're running from the project root, or
- The package is properly installed with
-eflag
gRPC Version Conflicts¶
If you encounter gRPC version warnings:
Windows Path Issues¶
On Windows, if you have issues with long paths, enable long path support:
- Run
regedit - Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem - Set
LongPathsEnabledto1
Next Steps¶
- Quick Start Guide - Get started in 5 minutes
- Configuration - Set up your config file
- Python API Guide - Learn the API