From 827998e99ad5100ade9104d1827cadb8c78a2ad8 Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Sun, 23 Aug 2026 01:00:43 -0400 Subject: [PATCH] [FIX] odoo 15: declare xlsxwriter, which report_xlsx has always needed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 15 bump died on Unable to upgrade module "report_xlsx" because an external dependency is not met: Python library not installed: xlsxwriter report_xlsx declares {"python": ["xlsxwriter", "xlrd"]} and the 15 pyproject held xlrd alone: the pair arrived half. Every other version from 12 to 18 declares it -- 15 was the only gap. Version 1.4.5, as in 16 and 17, and well within what Python 3.8 supports. poetry lock --no-update touched exactly one package: nothing else moved. --- FR --- Le palier 15 mourait sur « Python library not installed: xlsxwriter ». report_xlsx déclare {"python": ["xlsxwriter", "xlrd"]} et le pyproject de la 15 ne portait que xlrd : la paire est arrivée à moitié. Toutes les autres versions de 12 à 18 le déclarent — la 15 était le seul trou. Version 1.4.5, comme en 16 et 17, largement dans ce que Python 3.8 supporte. poetry lock --no-update n'a touché qu'un paquet : rien d'autre n'a bougé. Assisted-by: Claude Opus 5 --- requirement/poetry.odoo15.0_python3.8.20.lock | 13 ++++++++++++- requirement/pyproject.odoo15.0_python3.8.20.toml | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/requirement/poetry.odoo15.0_python3.8.20.lock b/requirement/poetry.odoo15.0_python3.8.20.lock index c363fb7..e050fab 100644 --- a/requirement/poetry.odoo15.0_python3.8.20.lock +++ b/requirement/poetry.odoo15.0_python3.8.20.lock @@ -6322,6 +6322,17 @@ files = [ {file = "xlrd-1.2.0.tar.gz", hash = "sha256:546eb36cee8db40c3eaa46c351e67ffee6eeb5fa2650b71bc4c758a29a1b29b2"}, ] +[[package]] +name = "xlsxwriter" +version = "1.4.5" +description = "A Python module for creating Excel XLSX files." +optional = false +python-versions = "*" +files = [ + {file = "XlsxWriter-1.4.5-py2.py3-none-any.whl", hash = "sha256:f9335f1736e2c4fd80e940fe1b6d92d967bf454a1e5d639b0b7a4459ade790cc"}, + {file = "XlsxWriter-1.4.5.tar.gz", hash = "sha256:0956747859567ec01907e561a7d8413de18a7aae36860f979f9da52b9d58bc19"}, +] + [[package]] name = "xlwt" version = "1.3.0" @@ -6620,4 +6631,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = ">=3.8.20,<3.9" -content-hash = "660feb736151a54776a49b047a9dcf428145a2add97c89dddca2178be2c9d542" +content-hash = "b627b33459aa69db80c29e21da288e828d4f7f2e002bb14565d050010c1bb12b" diff --git a/requirement/pyproject.odoo15.0_python3.8.20.toml b/requirement/pyproject.odoo15.0_python3.8.20.toml index 196fac9..ac0a857 100644 --- a/requirement/pyproject.odoo15.0_python3.8.20.toml +++ b/requirement/pyproject.odoo15.0_python3.8.20.toml @@ -166,6 +166,7 @@ werkzeug = "0.16.1" wheel = "^0.45.1" win-unicode-console = "^0.5" xlrd = "1.2.0" +xlsxwriter = "1.4.5" xlwt = "1.3.0" xmlformatter = "^0.2.8" xmlrunner = "^1.7.7"