fix(vision): dichiara le dipendenze del worker, pin numerico HTTP vs runner
Ruling R9: separa l'extra vision (runner: 4 pacchetti VisionSuite + numpy) da vision-worker (fastapi, uvicorn, pillow, python-multipart, sopra vision). Prima il worker risolveva solo perche' vs-pm2d le lista per conto suo; un domani lo stub di stazione dovra' incorporare il runner senza trascinarsi dietro un server web che non gli serve. Aggiorna Dockerfile.vision e README.md al nuovo extra; il test del worker ora pinna anche il valore numerico del diametro (non solo la chiave), agganciato alla stessa tolleranza del test in-process del runner. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014BBnuACZSCJqXrMYC3LUMU
This commit is contained in:
@@ -1975,6 +1975,18 @@ server = [
|
||||
{ name = "weasyprint" },
|
||||
]
|
||||
vision = [
|
||||
{ name = "numpy", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "visionsuite", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "vs-measure", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "vs-pm2d", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "vs-task", marker = "python_full_version >= '3.13'" },
|
||||
]
|
||||
vision-worker = [
|
||||
{ name = "fastapi", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "numpy", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "pillow", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "python-multipart", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "uvicorn", extra = ["standard"], marker = "python_full_version >= '3.13'" },
|
||||
{ name = "visionsuite", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "vs-measure", marker = "python_full_version >= '3.13'" },
|
||||
{ name = "vs-pm2d", marker = "python_full_version >= '3.13'" },
|
||||
@@ -1988,6 +2000,7 @@ requires-dist = [
|
||||
{ name = "asyncmy", marker = "extra == 'server'", specifier = ">=0.2.0" },
|
||||
{ name = "bcrypt", marker = "extra == 'server'", specifier = ">=4.0.0" },
|
||||
{ name = "coverage", marker = "extra == 'dev'", specifier = ">=7.0.0" },
|
||||
{ name = "fastapi", marker = "python_full_version >= '3.13' and extra == 'vision-worker'", specifier = ">=0.110.0" },
|
||||
{ name = "fastapi", marker = "extra == 'server'", specifier = ">=0.110.0" },
|
||||
{ name = "flask", marker = "extra == 'client'", specifier = ">=3.0.0" },
|
||||
{ name = "flask-babel", marker = "extra == 'client'", specifier = ">=4.0.0" },
|
||||
@@ -1997,7 +2010,9 @@ requires-dist = [
|
||||
{ name = "httpx", marker = "extra == 'server'", specifier = ">=0.27.0" },
|
||||
{ name = "jinja2", marker = "extra == 'server'", specifier = ">=3.1.0" },
|
||||
{ name = "kaleido", marker = "extra == 'server'", specifier = ">=0.2.0" },
|
||||
{ name = "numpy", marker = "python_full_version >= '3.13' and extra == 'vision'" },
|
||||
{ name = "pdfplumber", marker = "extra == 'server'", specifier = ">=0.10.0" },
|
||||
{ name = "pillow", marker = "python_full_version >= '3.13' and extra == 'vision-worker'", specifier = ">=10.0.0" },
|
||||
{ name = "pillow", marker = "extra == 'server'", specifier = ">=10.0.0" },
|
||||
{ name = "plotly", marker = "extra == 'server'", specifier = ">=5.0.0" },
|
||||
{ name = "pydantic", specifier = ">=2.0.0" },
|
||||
@@ -2005,10 +2020,13 @@ requires-dist = [
|
||||
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=8.0.0" },
|
||||
{ name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.23.0" },
|
||||
{ name = "python-dotenv", specifier = ">=1.0.0" },
|
||||
{ name = "python-multipart", marker = "python_full_version >= '3.13' and extra == 'vision-worker'", specifier = ">=0.0.6" },
|
||||
{ name = "python-multipart", marker = "extra == 'server'", specifier = ">=0.0.6" },
|
||||
{ name = "requests", marker = "extra == 'client'", specifier = ">=2.31.0" },
|
||||
{ name = "sqlalchemy", extras = ["asyncio"], marker = "extra == 'server'", specifier = ">=2.0.0" },
|
||||
{ name = "tiemeasureflow", extras = ["vision"], marker = "extra == 'vision-worker'" },
|
||||
{ name = "urllib3", marker = "extra == 'client'", specifier = ">=2.0.0" },
|
||||
{ name = "uvicorn", extras = ["standard"], marker = "python_full_version >= '3.13' and extra == 'vision-worker'", specifier = ">=0.30.0" },
|
||||
{ name = "uvicorn", extras = ["standard"], marker = "extra == 'server'", specifier = ">=0.30.0" },
|
||||
{ name = "visionsuite", marker = "python_full_version >= '3.13' and extra == 'vision'", editable = "vendor/visionsuite/packages/vs-core" },
|
||||
{ name = "vs-measure", marker = "python_full_version >= '3.13' and extra == 'vision'", editable = "vendor/visionsuite/packages/vs-measure" },
|
||||
@@ -2016,7 +2034,7 @@ requires-dist = [
|
||||
{ name = "vs-task", marker = "python_full_version >= '3.13' and extra == 'vision'", editable = "vendor/visionsuite/packages/vs-task" },
|
||||
{ name = "weasyprint", marker = "extra == 'server'", specifier = ">=62.0" },
|
||||
]
|
||||
provides-extras = ["server", "client", "dev", "vision"]
|
||||
provides-extras = ["server", "client", "dev", "vision", "vision-worker"]
|
||||
|
||||
[[package]]
|
||||
name = "tinycss2"
|
||||
|
||||
Reference in New Issue
Block a user