From 2c471cfbe752fe229f74d625b56a8076961446dd Mon Sep 17 00:00:00 2001 From: Zanie Date: Wed, 10 Jan 2024 10:45:00 -0600 Subject: [PATCH] Fix installation of packages in Poetry which requires "==*" to not auto-pin --- scripts/scenarios/compare.py | 10 ++++++++-- scripts/scenarios/templates/compare.mustache | 6 +++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/scripts/scenarios/compare.py b/scripts/scenarios/compare.py index cf8481a51..1ea36890e 100644 --- a/scripts/scenarios/compare.py +++ b/scripts/scenarios/compare.py @@ -189,9 +189,15 @@ for scenario in data["scenarios"]: for scenario in data["scenarios"]: requires_packages = scenario["root"]["requires_packages"] = [] for requirement in scenario["root"]["requires"]: - package = packaging.requirements.Requirement(requirement).name + parsed = packaging.requirements.Requirement(requirement) requires_packages.append( - {"package": package, "package_module": package.replace("-", "_")} + { + "package": parsed.name, + "package_module": parsed.name.replace("-", "_"), + "specifier": ( + str(parsed.specifier) if len(parsed.specifier) > 0 else "==*" + ), + } ) diff --git a/scripts/scenarios/templates/compare.mustache b/scripts/scenarios/templates/compare.mustache index e9e756499..579a575c8 100644 --- a/scripts/scenarios/templates/compare.mustache +++ b/scripts/scenarios/templates/compare.mustache @@ -133,9 +133,9 @@ echo "" >> "$SCENARIO_OUTPUT" echo '```' >> "$SCENARIO_OUTPUT" VIRTUAL_ENV=$VENV \ run poetry --directory="$PROJECT" add \ - {{#root.requires}} - "{{prefix}}-{{.}}" \ - {{/root.requires}} + {{#root.requires_packages}} + "{{prefix}}-{{package}}{{specifier}}" \ + {{/root.requires_packages}} {{#environment.prereleases}} --allow-prereleases {{/environment.prereleases}}