Add support for PEP735-style dependency groups
- Dominant language
- Python
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 40
Description
### What is the problem or limitation you are having?
Currently, Briefcase ignores [PEP-735](https://peps.python.org/pep-0735/)-style dependency groups.
[PEP-735](https://peps.python.org/pep-0735/) added support for dependency groups that are not published to PyPI and is now the standard way that [PDM](https://pdm-project.org/latest/usage/dependency/#add-development-only-dependencies) and [uv](https://docs.astral.sh/uv/concepts/projects/dependencies/#adding-dependencies) adds dependencies. Briefcase might want to support using those for test dependencies as well.
By default, these tools use the `dev` dependency group, but users can also specify a specific group name, like `test` to store the dependencies in as well.
### Describe the solution you'd like
Supporting dependency groups as test dependencies in Briefcase.
### Describe alternatives you've considered
Don't support it
### Additional context
_No response_
Contributor guide
Research direction
No files, tests, or entry points are named. Start by locating how Briefcase currently reads test dependencies and compare that behavior with PEP 735 dependency-group semantics, including the default dev group and user-selected group names. Done means dependency groups can be used as test dependencies without publishing them to PyPI.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100