add default-groups = "all" sugar to pyproject.toml (#12289)

Suggested by @zanieb in #10934

* [x] agree we want to do this
* [x] add docs

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
This commit is contained in:
Aria Desires 2025-03-18 14:42:06 -04:00 committed by GitHub
parent 43966f57ab
commit 26cad18635
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
14 changed files with 341 additions and 38 deletions

View file

@ -23,7 +23,7 @@ use uv_distribution_types::{Index, IndexName};
use uv_fs::{relative_to, PortablePathBuf};
use uv_git_types::GitReference;
use uv_macros::OptionsMetadata;
use uv_normalize::{ExtraName, GroupName, PackageName};
use uv_normalize::{DefaultGroups, ExtraName, GroupName, PackageName};
use uv_pep440::{Version, VersionSpecifiers};
use uv_pep508::MarkerTree;
use uv_pypi_types::{
@ -343,14 +343,16 @@ pub struct ToolUv {
pub package: Option<bool>,
/// The list of `dependency-groups` to install by default.
///
/// Can also be the literal "all" to default enable all groups.
#[option(
default = r#"["dev"]"#,
value_type = "list[str]",
value_type = r#"str | list[str]"#,
example = r#"
default-groups = ["docs"]
"#
)]
pub default_groups: Option<Vec<GroupName>>,
pub default_groups: Option<DefaultGroups>,
/// The project's development dependencies.
///