= Odoo Wheel Builder
:manifest: __manifest__.py

A standards-compliant Python build backend to package individual Odoo addons.
The main idea and the code is taken from https://github.com/sbidoul/whool[sbidoul/whool].


[NOTE]
====
If you are looking at packaging a customer project or a collection of addons, you
may want to consider the [hatch-odoo](https://pypi.org/project/hatch-odoo) project.
Because it is a wrapper around whool for internal {company-name} use, every version can break behavior.
====

== Odoo Addon Wheeler vs whool

. Allow to change version of the final wheel without following the version of the addon `{manifest}`.
. Allow to distribute the final wheel with a different name (no `odoo-addon-` prefix).
. Allow to distribute a addon without the `odoo` as depends.
. Allow to add custom classifier to the `PKG-INFO` file.
. Allow to add custom dependencies to the `PKG-INFO` file.

The drawback is it's manifestoo based dependency resolver don't support this addons.
In other words, you need to manually add the python package and the addon in your manifest.


== Quick Start

Create a file named `pyproject.toml` next to the addon's `{manifest}` with the
following content:

.pyproject.toml
[source,toml]
----
[build-system]
requires = ["addon-odoo-wheel"]
build-backend = "addon_odoo_wheel.builder"

[project]
name = "awesome-odoo-addon"
dynamic = ["version"]
dependencies = []
----
