skillfed

whool

whool - build backend for Odoo addons

whool v1.3 154.6K downloads/30d#10,849 on PyPI33
Permissive license Active released

What it is and what it does

whool is a standards-compliant Python build backend designed specifically for packaging Odoo addons as distributable wheels and source distributions. It replaces the older setuptools-odoo project by implementing PEP 517 and PEP 660, making it compatible with modern Python build frontends like build and pip. Instead of requiring setup.py and setup.cfg files, whool uses a minimal pyproject.toml configuration at the root of each addon, making it less intrusive and easier to manage.

The package works by packaging only files under git control, automatically managing dependencies from addon manifests, and supporting editable installs so developers can work on addons in place without modifying Odoo's addons-path. It includes a command-line tool (whool init) to initialize pyproject.toml in addon directories, and integrates with standard Python packaging workflows. For multi-addon projects or customer deployments, the documentation recommends using hatch-odoo instead.

Use it for:

  • Package individual Odoo addons as wheels for distribution to PyPI or private repositories.
  • Set up editable installs of Odoo addons in development environments without modifying Odoo configuration.
  • Migrate from setuptools-odoo to a standards-compliant build backend while maintaining addon compatibility.
  • Automate dependency resolution from addon manifests during the build process.
  • Initialize pyproject.toml configuration across multiple addon directories with whool init.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

whool is a PEP 517 and PEP 660 compliant build backend that packages individual Odoo addons as Python distributions, replacing the deprecated setuptools-odoo.

Yes, if you are packaging individual Odoo addons for distribution. whool is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and offers low installation friction. It is the modern successor to setuptools-odoo and is standards-compliant with PEP 517/660. Not suitable for multi-addon projects (use hatch-odoo instead) or if your addons are not under git control.

Install

whool on PyPI

pip

pip install whool

uv

uv add whool

poetry

poetry add whool

Installing whool

Before you install

Low friction: pure Python wheel with four runtime dependencies (importlib-metadata, manifestoo-core, tomli, wheel). Active maintenance with last commit 2026-08-10 and a release on 2025-07-26.

License in practice

MIT license (permissive) means you can use whool in commercial and proprietary projects with minimal restrictions, provided you include the license notice.

Quickstart

pip install whool

# In your addon directory, create pyproject.toml:
[build-system]
requires = ["whool"]
build-backend = "whool.buildapi"

# Then build:
pip wheel --no-deps --wheel-dir /tmp/dist/ .

Requires git control of addon files (whool packages only files under git control). Editable installs on Windows require symbolic link support to be enabled.

Verify before relying

  • Whether version numbering is automatically derived from git commit history as mentioned in the description but not fully documented.
  • How configuration options in [tool.whool] (depends_override, external_dependencies_override, post_version_strategy_override, odoo_series_override) are actually used in practice.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 4 — importlib-metadata, manifestoo-core, tomli, wheel
Maintenance actively maintained — 384 days since the last release
Last repo commit
First released
Downloads 154,597/month — #10,849 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: whool-1.3-py3-none-any.whl

Development Status :: 5 - Production/StableFramework :: OdooLicense :: OSI Approved :: MIT License

Tags

odoo addon build backendodoo package builderpep 517 build backendodoo wheel packagingodoo addon distributionpython build backend odooodoo addon pyproject.toml
odoo-addonbuild-backendpackaging

More Build Tools packages