uv_configuration/
project_build_backend.rs

1/// Available project build backends for use in `pyproject.toml`.
2#[derive(Clone, Copy, Debug, PartialEq, serde::Deserialize)]
3#[serde(deny_unknown_fields, rename_all = "kebab-case")]
4#[cfg_attr(feature = "clap", derive(clap::ValueEnum))]
5#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
6pub enum ProjectBuildBackend {
7    #[cfg_attr(feature = "clap", value(alias = "uv-build", alias = "uv_build"))]
8    /// Use uv as the project build backend.
9    Uv,
10    #[serde(alias = "hatchling")]
11    #[cfg_attr(feature = "clap", value(alias = "hatchling"))]
12    /// Use [hatchling](https://pypi.org/project/hatchling) as the project build backend.
13    Hatch,
14    /// Use [flit-core](https://pypi.org/project/flit-core) as the project build backend.
15    #[serde(alias = "flit-core")]
16    #[cfg_attr(feature = "clap", value(alias = "flit-core"))]
17    Flit,
18    /// Use [pdm-backend](https://pypi.org/project/pdm-backend) as the project build backend.
19    #[serde(alias = "pdm-backend")]
20    #[cfg_attr(feature = "clap", value(alias = "pdm-backend"))]
21    PDM,
22    /// Use [poetry-core](https://pypi.org/project/poetry-core) as the project build backend.
23    #[serde(alias = "poetry-core")]
24    #[cfg_attr(feature = "clap", value(alias = "poetry-core", alias = "poetry_core"))]
25    Poetry,
26    /// Use [setuptools](https://pypi.org/project/setuptools) as the project build backend.
27    Setuptools,
28    /// Use [maturin](https://pypi.org/project/maturin) as the project build backend.
29    Maturin,
30    /// Use [scikit-build-core](https://pypi.org/project/scikit-build-core) as the project build backend.
31    #[serde(alias = "scikit-build-core")]
32    #[cfg_attr(feature = "clap", value(alias = "scikit-build-core"))]
33    Scikit,
34}