Skip to content

Changelog

v6.7.0 (2026-07-16)

Feat

  • nix: mkOdooVenv now can add binaries

v6.6.0 (2026-07-02)

Feat

  • ph: expose .default attribute on resolved override methods

Fix

  • rename mkdocs.yml to properdocs.yml and add missing nav entries
  • resolve mkdocs build warnings and improve ph.rel error handling

v6.5.0 (2026-07-01)

Feat

  • add @ph.override decorator for version-conditional method overrides

v6.4.0 (2026-06-22)

Feat

  • cache: default to /var/cache/polytropos when writable

v6.3.0 (2026-06-19)

Feat

  • cli: new polytropos gc command to remove editable build cache
  • support POLYTROPOS_CACHE_DIR env var to override cache location
  • support POLYTROPOS_EDITABLE_IN_SOURCE env var for legacy in-source behavior
  • build: stale symlink cleanup

Fix

  • translations: Odoo translations won't output long and ugly paths
  • autoupdate: pass project path directly after --project flag
  • include file path and context in XML render error messages

Refactor

  • whool: remove dependency; use manifestoo-core directly for metadata
  • editable symlinks created in $XDG_CACHE_HOME/polytropos/editable/$module instead of $module/build/ by default

v6.2.0 (2026-06-15)

Feat

  • build: add prepare_metadata_for_build_editable PEP 660 hook
  • support array of glob patterns in src_files

v6.1.0 (2026-06-12)

Feat

  • render: add XML render operation for release-conditional content

Fix

  • build: validate data files after applying file maps

v6.0.2 (2026-06-04)

v6.0.1 (2026-06-03)

Fix

  • nix: remove addon version from test names

v6.0.0 (2026-06-03)

BREAKING CHANGE

  • polytropos.build.primitives moved to polytropos.primitives
  • The old .#default nix flake output moved to .#default.pythonSet.polytropos

Feat

  • nix: venv addon test names include version
  • devshell: include polytropos CLI

Fix

  • sdist: include PKG-INFO always, even if git-ignored
  • sdist: make sure PKG-INFO file is included
  • cli: allow building without [build] extra

Refactor

  • nix-flake: default output is now the CLI application

v5.0.0 (2026-05-19)

BREAKING CHANGE

  • Nix build and check system is now based on uv2nix.
  • Flake packages odoo* are no longer provided.
  • Many lib functions are removed.
  • New lib functions for working with uv2nix are provided.

Feat

  • nix: support extra addons paths
  • cli: add build-all-releases command
  • nix: add lib.getLastAttrByPrefix

Fix

  • exclude PKG-INFO from addon directory during build
  • nix: allow overriding meta-less polytropos derivations

Refactor

  • nix: produce polytropenv packages
  • nix: make example packages depend directly only on odoo
  • nix: support external addon dependencies with uv2nix

v4.0.0 (2026-05-08)

BREAKING CHANGE

  • src and dst keys are no longer supported in [[tool.polytropos.files]]. Use src_files (with glob pattern) or src_dir instead, combined with dst_dir.

Feat

  • rename file map keys from src/dst to src_files/src_dir + dst_dir

Fix

  • editable: remove stale symlinks when building for different Odoo releases

v3.6.0 (2026-05-04)

Feat

  • files: allow mapping sources to paths on build

v3.5.0 (2026-04-24)

Feat

  • manifest: add maintainers auto-population from project.maintainers

v3.4.0 (2026-04-22)

Feat

  • support Python 3.10 and Odoo 15-16

v3.3.0 (2026-04-15)

Feat

  • unified logging

Fix

  • detect installed odoo series appropriately in Odoo 19

v3.2.2 (2026-04-14)

Fix

  • nix: build modules for the same python version as Odoo

v3.2.1 (2026-04-13)

Fix

  • nix: build addons without specific default odoo version
  • nix: allow building with insecure pypdf2

Refactor

  • nix: share as most code as possible and change the way lib builds packages

v3.2.0 (2026-04-01)

Feat

  • build: rewrite image paths in manifest descriptions for Odoo UI
  • convert README.md into description inside __manifest__.py in RST format

v3.1.0 (2026-03-30)

Feat

  • build: validate readme is included in wheel METADATA
  • warn when version is not declared as dynamic
  • support ./src subfolder layout
  • docs: easy way to run docs in any past version (from this one)
  • nix: add odoo19 package
  • nix: add devshell module

Fix

  • pep517: make editable builds produce valid .pth file
  • pep517: use src directory as base for data file validation in editable builds
  • combine split odoo version specifiers during compatibility check
  • nix: addon packages get proper version number
  • nix: infer addon name correctly from package name
  • nix: make sure we can build one addon

Refactor

  • nix: lib with helpers to package addons

v3.0.2 (2026-03-25)

Fix

  • process .gitignore appropriately

v3.0.1 (2026-03-25)

Refactor

  • remove warning for a perfectly valid use case
  • remove duplicate methods

v3.0.0 (2026-03-24)

BREAKING CHANGE

  • Import paths changed:
    • polytropos.manifest -> polytropos.build.manifest
    • polytropos.version -> polytropos.build.primitives
    • polytropos.cond -> merged into polytropos.build.primitives
  • [tool.polytropos.manifest] must now be specified as [[tool.polytropos.manifest]] (list of tables). Existing single-table configurations will fail with a clear error message.
  • Automatic dependency population may change manifest contents for existing projects
  • Odoo version constraints in [project].dependencies now prevent building for incompatible releases
  • you need to set build-system.requires = ["polytropos[build]"] now in your addons
  • cannot build sdist and wheel with a single uv build call
  • addon version must have at least 3 parts
  • sdist builds contain no __manifest__.py
  • sdist builds without release in their version number, because they are no longer tied to a specific Odoo version

Feat

  • automatic dependency population and Odoo version validation
  • helpers module

Fix

  • manifest: never include odoo as a dependency
  • sdists are release-agnostic

Refactor

  • consolidate build-time code into build/ package
  • manifest: reduce AI nonsense
  • simplify manifest config handling
  • build: only backend functions are public now
  • make build backend dependencies optional
  • use whool for wheel builds

v2.0.4 (2026-03-19)

Fix

  • docs: favicon

v2.0.3 (2026-03-19)

Fix

  • wrong wheel auto-deployment

v2.0.2 (2026-03-19)

Fix

  • use only uv version provider

v2.0.1 (2026-03-19)

Fix

  • dumb commit to test automatic wheel publishing

v2.0.0 (2026-03-19)

v1.0.0 (2026-03-19)

v1.0.0 (2026-03-19)

  • claim pypi namespace

v0.1.1 (2026-03-19)

Fix

  • correct pypi user name

v0.1.0 (2026-03-19)

Feat

  • it's alive!