Standardize workspace on headless OpenCV#383
Conversation
|
Hi @Arison591, thanks for the PR. Can you mark it "Ready for review" so that we can land it? |
Greptile SummaryThis PR standardizes the workspace on
Confidence Score: 5/5Safe to merge — changes are confined to dependency metadata and a new policy test with no runtime behaviour impact. The diff removes an unused direct dependency, switches one dev-extra to the headless variant with an appropriate upper bound, and adds a CI test that catches regressions. Both lockfiles resolve to the same OpenCV version (4.13.0.92). No application logic is touched. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Workspace packages] -->|before PR| B[opencv-python\nGUI-enabled]
A -->|before PR| C[opencv-python-headless\nheadless]
B -. conflict .-> C
A -->|after PR| D[opencv-python-headless\nheadless only]
subgraph "Policy enforcement"
E[tests/test_dependency_policy.py\nci_cpu marker]
E -->|scans| F[all workspace pyproject.toml files]
F -->|fails if found| G[opencv-python\nopencv-contrib-python\nopencv-contrib-python-headless]
end
D --> E
Reviews (3): Last reviewed commit: "Address OpenCV review feedback" | Re-trigger Greptile |
|
/ok to test 55980b2 |
|
Thanks, this looks directionally good to me. Standardizing on One thing I think we should address before merge: the standalone Minor follow-up: the new dependency policy test currently scans workspace member |
Signed-off-by: Haoran Qian <haoran@hust.edu.cn>
Signed-off-by: Haoran Qian <haoran@hust.edu.cn>
8f714d3 to
bef892d
Compare
|
/ok to test bef892d |
Summary
opencv-pythondistributionopencv-python-headlessWhy
The
opencv-pythonandopencv-python-headlessdistributions install the samecv2namespace and should not coexist in one environment. FlashDreams already standardizes on the headless distribution for server and CI use, but FlashVSR and ludus-renderer's development extra could still bring the GUI distribution into the shared workspace.FlashVSR does not import
cv2directly, so its extra direct dependency is unnecessary. The renderer's development dependency still provides the same Python API through the headless build.This does not add a new third-party component:
opencv-python-headlessis already used throughout the workspace and recorded inTHIRD-PARTY-NOTICES.Validation
PYTHONPATH=flashdreams python -m pytest tests/test_dependency_policy.py -m ci_cpu -q— 1 passeduv lock --check— passeduv lock --check --project integrations/omnidreams/ludus-renderer— passedruff check tests/test_dependency_policy.py— passedruff format --check tests/test_dependency_policy.py— passeduvx ty check tests/test_dependency_policy.py— passeduvx --from reuse reuse lint— REUSE 3.3 compliant, 508/508 files coveredGPU inference was not run because this change only affects dependency metadata and its CPU policy test.
The commit is signed off under the Developer Certificate of Origin.