Skip to content

Add 'xorq' install extra to match BuckarooConfig::xorq() preset #750

@paddymul

Description

@paddymul

Problem

buckaroo-tauri exposes BuckarooConfig::xorq() as a first-class backend preset (crates/buckaroo-tauri/src/config.rs:38-44) and its README tells users to install the matching Python deps via:

pip install 'buckaroo[xorq]'

But buckaroo has no xorq extra. pip/uv silently install base buckaroo, then python -m buckaroo.server crashes with ModuleNotFoundError: No module named 'tornado'.

Available extras on buckaroo==0.13.5: dev, jupyterlab, marimo, mcp, notebook, packaging-tools, polars, test. The server deps (tornado) only ship under [mcp].

Proposal

Add an xorq extra in pyproject.toml:

[project.optional-dependencies]
xorq = [
    "tornado>=6.0",
    "xorq",
    # any xorq-specific bridges buckaroo needs at runtime
]

And, while we're there, consider whether [pandas] should exist for symmetry with the existing BuckarooConfig::pandas() preset — same install-time gotcha.

Why this matters

The BuckarooConfig Rust API and the Python install extras should be 1:1. Today a user who follows the buckaroo-tauri README ends up with a broken sidecar and no clear error attribution — the install command "succeeds" with only a single-line warning that's easy to miss in CI output.

Companion docs issue filed at buckaroo-data/buckaroo-tauri covering the short-term README fix; this issue covers the long-term alignment.

Bonus consideration: the [mcp] extra name

mcp is overloaded with Model Context Protocol elsewhere. The contents are actually generic server deps (tornado). If the rename is cheap, [server] or [tauri] (or both, as aliases) would reduce confusion. Not blocking — happy to file separately if you'd prefer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions