Installation

This guide covers installing Tablassert on your system.

Prerequisites

  • Python 3.11 or higher: Tablassert requires Python 3.11+ for compatibility with modern tooling
  • UV package manager: Recommended for fast, reliable dependency management

Installing UV

See the official UV installation guide for your platform:

# On Linux/macOS with curl
curl -LsSf https://astral.sh/uv/install.sh | sh

# On Linux/macOS with pip
pip install uv

# On Windows with PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Installation Methods

Best for development, testing, and active work on Tablassert.

# Clone the repository
git clone https://github.com/SkyeAv/Tablassert.git
cd Tablassert

# Install dependencies with UV
uv sync

# Run Tablassert
uv run tablassert --help

This creates a virtual environment in .venv/ and installs all dependencies. The tablassert command is available through uv run.

Method 2: Install from PyPI

Recommended for most users who just need the CLI. All dependencies (ML, web, Excel support) are included in the base install.

# Option A: Install from PyPI with UV
uv tool install tablassert

# Option B: Install from PyPI with pip
pip install tablassert

Optional Extras

Extra Description Includes
rtcompat Runtime-compatible Polars build polars[rtcompat]
rt Alias for rtcompat Same as rtcompat
# Install with runtime-compatible Polars
# (for CPUs without the required Polars instructions)
uv tool install "tablassert[rtcompat]"
# or use the shorter alias
uv tool install "tablassert[rt]"

# pip equivalents
pip install "tablassert[rtcompat]"

Tablassert CLI is now available:

tablassert --help

Method 3: Docker

Pre-built Docker images are available from GitHub Container Registry for containerized usage without a local Python installation.

docker pull ghcr.io/skyeav/tablassert:latest

# Run CLI
docker run --rm ghcr.io/skyeav/tablassert:latest --help

See the Docker documentation for full usage details including volume mounts and CI/CD integration.

Method 4: Install from GitHub main

Use this when you want the latest main-branch build.

# Install from main branch
uv tool install git+https://github.com/SkyeAv/Tablassert.git@main

# Tablassert CLI is now available
tablassert --help

Method 5: Install from local source

For contributors testing local repository changes.

# Clone the repository
git clone https://github.com/SkyeAv/Tablassert.git
cd Tablassert

# Install Tablassert CLI tool from local source
uv tool install .

# Tablassert CLI is now available
tablassert --help

Verifying Installation

After installation, verify that Tablassert is working correctly:

# If using UV
uv run tablassert --help

# If installed as a UV tool
tablassert --help

You should see the Tablassert CLI help message with available commands.

Development Setup

For contributing to Tablassert or running tests, follow these additional steps:

# Install development dependencies (includes pre-commit hooks)
uv sync --dev

# Install pre-commit hooks
pre-commit install

# Run tests
uv run pytest

# Run type checking
uv run pyright

# Run linting
uv run ruff check .

Upgrading Development Installation

To upgrade to the latest version:

# Pull latest changes
git pull origin main

# Update dependencies
uv sync

Troubleshooting

Python Version Issues

Tablassert requires Python 3.11 or higher. If you encounter version errors:

# Check your Python version
python --version

# Use UV to manage Python versions
uv python install 3.11
uv python pin 3.11

Dependency Installation Issues

If you encounter dependency installation issues, try:

# Clear UV cache and reinstall
uv cache clean
uv sync --reinstall

Polars CPU Instruction Issues

If your machine does not support the CPU instructions required by default Polars builds, install Tablassert with the runtime-compat extra from pyproject.toml:

uv tool install "tablassert[rtcompat]"
# or use the shorter alias
uv tool install "tablassert[rt]"
# or
pip install "tablassert[rtcompat]"