whool
whool - build backend for Odoo addons
Decision gist · record as of 2026-08-14
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.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires git control of addon files (whool packages only files under git control).
- Editable installs on Windows require symbolic link support to be enabled.
- Low friction: pure Python wheel with four runtime dependencies (importlib-metadata, manifestoo-core, tomli, wheel).
License · maintenance · safety
permissive license (permissive) — MIT license (permissive) means you can use whool in commercial and proprietary projects with minimal restrictions, provided you include the license notice.
last release 2025-07-26 (384 days) · last repo commit 2026-08-10 · 33 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 154,597 downloads/mo, #10,849 on PyPI
Alternatives
Verify before relying
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/ .- 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.
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 on it.
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
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.
Requires git control of addon files (whool packages only files under git control). Editable installs on Windows require symbolic link support to be enabled.
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/ .
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 | permissive license permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagesimportlib-metadatamanifestoo-coretomliwheel |
| 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 |
| Classifiers | Development Status :: 5 - Production/StableFramework :: OdooLicense :: OSI Approved :: MIT License |
Evidence: whool-1.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “odoo addon build backend”
- whoolwhool is a PEP 517 and PEP 660 compliant build backend that packages…
- setuptools-odooSetuptools-odoo automates packaging of Odoo addons by extracting…
- manifestoo-coreParses and reasons about Odoo addon manifests, detecting Odoo series…
Give your agent the search over MCP, or paste the wish link into any chat.
More Build Tools packages
Provides reusable utilities for Python packaging interoperability, including version handling, specifiers, markers, requirements, tags, and metadata parsing according to standards like PEP 440 and PEP 425.
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
pip is the standard installer for Python packages, enabling you to download and install packages from the Python Package Index and other indexes into your Python environment.
Hatchling is a standards-compliant Python build backend that handles packaging, metadata, and distribution of Python projects when configured in a project's pyproject.toml file.
Generates Python gRPC service stubs and message classes from Protocol Buffer definitions, enabling developers to build gRPC clients and servers.
pre-commit is a framework for installing and running git hooks written in any language before commits are made, automating code quality and validation checks across multi-language projects.
Install it if your team needs consistent, automated validation at commit time.
See also setuptools-odoo · manifestoo-core · OdooRPC · whey · cmeel · ERPpeek · pep517 · pylint-odoo · wheel-stub · openupgradelib