Installation Guide¶
This guide will help you install Zenoo RPC and its dependencies for different use cases.
Requirements¶
- Python 3.8+ (Python 3.11+ recommended for best performance)
- Odoo 18.0 (currently tested version)
- Other Odoo versions (12.0-17.0) - compatibility not yet verified
Basic Installation¶
Install from PyPI¶
This installs the core dependencies:
- httpx>=0.25.0 - Modern async HTTP client
- h2>=4.0.0 - HTTP/2 support for better performance
- pydantic>=2.0.0 - Data validation and type safety
- typing-extensions>=4.0.0 - Enhanced type hints
Verify Installation¶
Optional Dependencies¶
Redis Support¶
For production caching with Redis:
This adds:
- redis[hiredis]>=5.0.0 - Redis client with high-performance parser
Development Dependencies¶
For development and testing:
This includes:
- pytest>=7.0.0 - Testing framework
- pytest-asyncio>=0.21.0 - Async testing support
- pytest-cov>=4.0.0 - Coverage reporting
- black>=23.0.0 - Code formatting
- ruff>=0.1.0 - Fast linting
- mypy>=1.0.0 - Static type checking
- pre-commit>=3.0.0 - Git hooks
Documentation Dependencies¶
For building documentation:
This includes:
- mkdocs>=1.5.0 - Documentation generator
- mkdocs-material>=9.0.0 - Material theme
- mkdocstrings[python]>=0.23.0 - API documentation
All Dependencies¶
Install everything:
Installation Methods¶
Using pip¶
Standard installation:
Upgrade to latest version:
Install specific version:
Using Poetry¶
Add to your pyproject.toml:
[tool.poetry.dependencies]
zenoo-rpc = "^0.1.7"
# Optional dependencies
redis = {extras = ["hiredis"], version = "^5.0.0", optional = true}
Then install:
Using pipenv¶
With optional dependencies:
From Source¶
For the latest development version:
With development dependencies:
Docker Installation¶
Using Official Python Image¶
FROM python:3.11-slim
# Install Zenoo RPC
RUN pip install zenoo-rpc[redis]
# Copy your application
COPY . /app
WORKDIR /app
CMD ["python", "main.py"]
Docker Compose Example¶
version: '3.8'
services:
app:
build: .
environment:
- ODOO_HOST=odoo
- ODOO_PORT=8069
- REDIS_URL=redis://redis:6379
depends_on:
- odoo
- redis
odoo:
image: odoo:17
ports:
- "8069:8069"
environment:
- HOST=db
- USER=odoo
- PASSWORD=odoo
depends_on:
- db
db:
image: postgres:15
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=odoo
redis:
image: redis:7-alpine
ports:
- "6379:6379"
Virtual Environment Setup¶
Using venv¶
# Create virtual environment
python -m venv zenoo-env
# Activate (Linux/Mac)
source zenoo-env/bin/activate
# Activate (Windows)
zenoo-env\Scripts\activate
# Install Zenoo RPC
pip install zenoo-rpc[redis]
Using conda¶
# Create environment
conda create -n zenoo python=3.11
# Activate environment
conda activate zenoo
# Install Zenoo RPC
pip install zenoo-rpc[redis]
Troubleshooting¶
Common Issues¶
ImportError: No module named 'zenoo_rpc'
- Ensure you're in the correct virtual environment
- Verify installation: pip list | grep zenoo-rpc
SSL Certificate Issues
Permission Denied (Linux/Mac)
Outdated pip
Version Conflicts¶
Check for conflicts:
Resolve conflicts:
Performance Issues¶
For better performance, install with optimized dependencies:
Next Steps¶
After installation, continue with:
- Quick Start Tutorial - Get up and running in 5 minutes
- Migration Guide - Migrate from odoorpc
- Basic CRUD Tutorial - Learn the fundamentals
Getting Help¶
If you encounter issues:
- Check the Troubleshooting Guide
- Search GitHub Issues
- Ask questions in GitHub Discussions
- Read the FAQ