From 5a9b0f020b306be6bffa4c3d770fabbbf703208d Mon Sep 17 00:00:00 2001 From: phpmypython Date: Thu, 17 Jul 2025 16:44:16 -0400 Subject: [PATCH] fix: prevent matching package names starting with 'uv' in dependency parsing The previous regex would match any package starting with 'uv' (like 'uvicorn', 'uvloop', etc.) and incorrectly parse them as uv version specifications. This fix ensures we only match the actual 'uv' package by requiring a version specifier character immediately after 'uv'. Fixes the issue where 'uvicorn==0.35.0' was being parsed as 'icorn==0.35.0'. --- src/version/requirements-file.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/version/requirements-file.ts b/src/version/requirements-file.ts index 8db9697..1a8b722 100644 --- a/src/version/requirements-file.ts +++ b/src/version/requirements-file.ts @@ -15,8 +15,8 @@ function getUvVersionFromAllDependencies( allDependencies: string[], ): string | undefined { return allDependencies - .find((dep: string) => dep.startsWith("uv")) - ?.match(/^uv([^A-Z0-9._-]+.*)$/)?.[1] + .find((dep: string) => dep.match(/^uv[=<>~!]/)) + ?.match(/^uv([=<>~!]+.*)$/)?.[1] .trim(); }