From 8968a2098c130f912b4cd3192f71ef72dc1678d5 Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Tue, 25 Nov 2025 23:39:04 -0500 Subject: [PATCH] [FIX] poetry update use ignore requirement from erplibre version --- script/poetry/poetry_update.py | 24 ++++++++++++++++++++---- script/version/update_env_version.py | 9 --------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/script/poetry/poetry_update.py b/script/poetry/poetry_update.py index d25b67a..f0dac88 100755 --- a/script/poetry/poetry_update.py +++ b/script/poetry/poetry_update.py @@ -415,7 +415,7 @@ def combine_requirements(config): print(f"Internal error, missing result for {lst_requirement}.") # Support ignored requirements - lst_ignore = get_list_ignored() + lst_ignore, ignore_requirement_file = get_list_ignored() lst_ignored_key = [] for key in dct_requirements.keys(): for ignored in lst_ignore: @@ -423,6 +423,9 @@ def combine_requirements(config): lst_ignored_key.append(key) for key in lst_ignored_key: del dct_requirements[key] + print( + f"{Fore.YELLOW}WARNING{Style.RESET_ALL} - Ignore '{key}' from '{ignore_requirement_file}'" + ) venv_dir = f".venv.{config.set_version_erplibre}" with open(f"./{venv_dir}/build_dependency.txt", "w") as f: @@ -521,9 +524,22 @@ def call_poetry_add_build_dependency(): def get_list_ignored(): - with open("./requirement/ignore_requirements.txt", "r") as f: - lst_ignore_requirements = [a.strip() for a in f.readlines()] - return lst_ignore_requirements + odoo_erplibre_version = "" + with open("./.erplibre-version", "r", encoding="utf-8") as fichier: + odoo_erplibre_version = fichier.read().strip() + if not odoo_erplibre_version: + _logger.warning( + "Missing ./.erplibre-version file to determine which requirement/ignore_requirement to use." + ) + return [] + ignore_requirement_file = ( + f"./requirement/ignore_requirements.{odoo_erplibre_version}.txt" + ) + with open(ignore_requirement_file, "r") as f: + lst_ignore_requirements = [ + a.strip() for a in f.readlines() if a.strip() + ] + return lst_ignore_requirements, ignore_requirement_file def main(): diff --git a/script/version/update_env_version.py b/script/version/update_env_version.py index d63b9db..5ad8d05 100755 --- a/script/version/update_env_version.py +++ b/script/version/update_env_version.py @@ -34,9 +34,6 @@ POETRY_LOCK_FILE = os.path.join("poetry.lock") POETRY_LOCK_TEMPLATE_FILE = "poetry.%s.lock" # PIP_REQUIREMENT_FILE = os.path.join("requirements.txt") PIP_REQUIREMENT_TEMPLATE_FILE = "requirements.%s.txt" -PIP_IGNORE_REQUIREMENT_FILE = os.path.join( - "requirement", "ignore_requirements.txt" -) PIP_IGNORE_REQUIREMENT_TEMPLATE_FILE = "ignore_requirements.%s.txt" ADDONS_TEMPLATE_FILE = "odoo%s/addons" ODOO_TEMPLATE_FILE = "odoo%s" @@ -373,12 +370,6 @@ class Update: self.expected_poetry_lock_path, do_delete_source=True, ) - status &= self.update_link_file( - "Pip ignore_requirement.txt", - PIP_IGNORE_REQUIREMENT_FILE, - self.expected_pip_ignore_requirement_path, - do_delete_source=True, - ) if not os.path.isdir(self.expected_addons_name): status = False return status