Installation
Rugo can be installed from PyPI or built from source. Choose the method that best fits your needs.
Installing from PyPI
The easiest way to install Rugo is via pip:
Optional Extras
Rugo offers optional extras for additional functionality:
Orso Integration
Install with Orso support for schema conversion helpers:
Development Tools
Install development dependencies for contributing:
Installing from Source
If you need the latest development version or want to contribute, install from source:
# Clone the repository
git clone https://github.com/mabel-dev/rugo.git
cd rugo
# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install build dependencies and compile
make update
make compile
# Install in development mode
pip install -e .
Requirements
Runtime Requirements
- Python: 3.9 or newer
- Dependencies: None (stdlib only)
Build Requirements
When building from source, you'll need:
- C++ Compiler: C++17 compatible compiler
- Linux: GCC 7+ or Clang 5+
- macOS: Clang (Xcode Command Line Tools)
- Windows: MSVC 2017+ or MinGW-w64
- Build Tools: Cython and setuptools (installed by
make update)
Verifying Installation
After installation, verify everything is working:
import rugo.parquet as parquet_meta
# Check version
print(rugo.__version__)
# Try reading metadata (you'll need a Parquet file)
# metadata = parquet_meta.read_metadata("your_file.parquet")
Troubleshooting
Compiler Errors
If you encounter compiler errors during installation:
- Ensure you have a C++17 compatible compiler installed
- On Linux:
sudo apt-get install build-essential python3-dev - On macOS:
xcode-select --install - On Windows: Install Visual Studio Build Tools
Import Errors
If you get import errors:
- Verify Python version:
python --version(should be 3.9+) - Check installation:
pip show rugo - Reinstall:
pip uninstall rugo && pip install rugo
Platform-Specific Issues
- macOS M1/M2: Ensure you're using native Python (not Rosetta)
- Windows: May need to set environment variables for compiler
Next Steps
- Quickstart Guide - Start using Rugo
- Reading Metadata - Learn the basics