Clean up Python dependencies; document uv usage#8694
Merged
alexreinking merged 2 commits intomainfrom Jul 24, 2025
Merged
Conversation
1. We don't appear to use scipy anywhere (anymore?) 2. Pillow is a transitive dependency of imageio, but we don't appear to use it anywhere directly. 3. Move tools to their own dependency group 4. Export the full set to requirements.txt Use `[dependency-groups]` rather than `[project.optional-dependencies]` because the former is excluded from package metadata. The latter is meant to list dependencies whose presence enables optional _features_. The former is therefore a more appropriate place to list development dependencies. Also document some useful information on using ccache with `pip install .`.
There was a problem hiding this comment.
Pull Request Overview
This PR cleans up Python dependencies by removing unused dependencies and reorganizes development dependencies into proper dependency groups. The changes also add comprehensive documentation for using uv and ccache with pip builds to improve the development experience.
- Remove unused dependencies (scipy, pillow) from development dependencies
- Migrate from
[project.optional-dependencies]to[dependency-groups]and organize build tools into separate groups - Add documentation for
uvusage and ccache configuration for faster pip builds
Reviewed Changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| pyproject.toml | Reorganizes build system requirements order, adjusts numpy version constraint, removes unused dependencies, and restructures dependency groups |
| doc/Python.md | Adds documentation for using uv as an alternative to pip for Python environment management |
| doc/BuildingHalideWithCMake.md | Removes scipy from system dependencies and adds comprehensive ccache configuration documentation |
Contributor
Did we turn on this Copilot nonsense on purpose? |
Member
Author
I clicked the button by mistake, but at least it caught a typo 🤷♂️ |
steven-johnson
approved these changes
Jul 24, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Clean up Python dependencies
Use
[dependency-groups]rather than[project.optional-dependencies]because the former is excluded from package metadata. The latter is meant to list dependencies whose presence enables optional features. The former is therefore a more appropriate place to list development dependencies.Also document some useful information on using ccache with
pip install ..