Skip to content

Commit ba206db

Browse files
committed
Fix virtualenv package overrides for system markers
1 parent 8ca6a62 commit ba206db

3 files changed

Lines changed: 22 additions & 2 deletions

File tree

xinference/core/tests/test_utils.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
build_replica_model_uid,
1717
build_subpool_envs_for_virtual_env,
1818
iter_replica_model_uid,
19+
merge_virtual_env_packages,
1920
parse_replica_model_uid,
2021
)
2122
from ..virtual_env_manager import (
@@ -85,6 +86,25 @@ def test_get_xllamacpp_cuda_index_url():
8586
assert get_xllamacpp_cuda_index_url("unknown") is None
8687

8788

89+
def test_merge_virtual_env_packages_user_package_overrides_system_marker():
90+
base_packages = [
91+
"funasr==1.2.7",
92+
"#system_torch#",
93+
"#system_torchaudio#",
94+
"#system_numpy#",
95+
]
96+
extra_packages = ["torchaudio==2.13.0", "numpy==2.1.0"]
97+
98+
merged = merge_virtual_env_packages(base_packages, extra_packages)
99+
100+
assert merged == [
101+
"funasr==1.2.7",
102+
"#system_torch#",
103+
"torchaudio==2.13.0",
104+
"numpy==2.1.0",
105+
]
106+
107+
88108
def _run_prepare_virtual_env(
89109
cuda_version, inherited_index_url, skip_installed=True, cuda_available=True
90110
):

xinference/core/tests/test_worker.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,6 @@ def test_merge_virtual_env_packages_override_and_append():
243243
assert merged == [
244244
"transformers==5.0.0.dev0", # user-specified overrides default
245245
"accelerate>=0.34.2",
246-
"#system_numpy#",
247246
"numpy==2.1.0",
248247
]
249248

xinference/core/utils.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,9 @@ def merge_virtual_env_packages(
261261
"""
262262

263263
def get_key(package: str) -> str:
264+
if package.startswith("#system_") and package.endswith("#"):
265+
return package[len("#system_") : -1].lower()
264266
if package.startswith("#"):
265-
# special placeholders like #system_torch#
266267
return package
267268
try:
268269
return Requirement(package).name.lower()

0 commit comments

Comments
 (0)