@@ -28,9 +28,10 @@ bird-feeder = { path = "./packages/bird-feeder" }
28
28
## Project dependencies
29
29
30
30
The ` project.dependencies ` table represents the dependencies that are used when uploading to PyPI or
31
- building a wheel. Individual dependencies are specified using [ PEP 508] ( #pep-508 ) syntax, and the
32
- table follows the [ PEP 621] ( https://packaging.python.org/en/latest/specifications/pyproject-toml/ )
33
- standard.
31
+ building a wheel. Individual dependencies are specified using
32
+ [ dependency specifiers] ( https://packaging.python.org/en/latest/specifications/dependency-specifiers/ )
33
+ syntax, and the table follows the
34
+ [ PEP 621] ( https://packaging.python.org/en/latest/specifications/pyproject-toml/ ) standard.
34
35
35
36
` project.dependencies ` defines the list of packages that are required for the project, along with
36
37
the version constraints that should be used when installing them. Each entry includes a dependency
@@ -248,8 +249,8 @@ members = [
248
249
### Platform-specific sources
249
250
250
251
You can limit a source to a given platform or Python version by providing
251
- [ PEP 508 ] ( https://peps .python.org/pep-0508/#environment-markers ) -compatible environment markers for
252
- the source.
252
+ [ dependency specifiers ] ( https://packaging .python.org/en/latest/specifications/dependency-specifiers/ ) -compatible
253
+ environment markers for the source.
253
254
254
255
For example, to pull ` httpx ` from GitHub, but only on macOS, use the following:
255
256
@@ -320,7 +321,8 @@ installation of Excel parsers and `matplotlib` unless someone explicitly require
320
321
requested with the ` package[<extra>] ` syntax, e.g., ` pandas[plot, excel] ` .
321
322
322
323
Optional dependencies are specified in ` [project.optional-dependencies] ` , a TOML table that maps
323
- from extra name to its dependencies, following [ PEP 508] ( #pep-508 ) syntax.
324
+ from extra name to its dependencies, following
325
+ [ dependency specifiers] ( #dependency-specifiers-pep-508 ) syntax.
324
326
325
327
Optional dependencies can have entries in ` tool.uv.sources ` the same as normal dependencies.
326
328
@@ -437,10 +439,12 @@ Or, to opt-out of using an editable dependency in a workspace:
437
439
$ uv add --no-editable ./path/foo
438
440
```
439
441
440
- ## PEP 508
442
+ ## Dependency specifiers ( PEP 508)
441
443
442
- [ PEP 508] ( https://peps.python.org/pep-0508/ ) defines a syntax for dependency specification. It is
443
- composed of, in order:
444
+ uv uses
445
+ [ dependency specifiers] ( https://packaging.python.org/en/latest/specifications/dependency-specifiers/ ) ,
446
+ previously known as [ PEP 508] ( https://peps.python.org/pep-0508/ ) . A dependency specifier is composed
447
+ of, in order:
444
448
445
449
- The dependency name
446
450
- The extras you want (optional)
0 commit comments