Skip to content

Commit 6b7595c

Browse files
committed
Revert "docs: replace non existent pip intersphinx usage with extlink"
This reverts commit 3fbc5f1.
1 parent c4b87f2 commit 6b7595c

File tree

5 files changed

+8
-7
lines changed

5 files changed

+8
-7
lines changed

docs/conf.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@
113113

114114
intersphinx_mapping = {
115115
"python": ("https://docs.python.org/3", None),
116+
"pip": ("https://pip.pypa.io/en/stable/", None),
116117
}
117118

118119
html_theme = "furo"

docs/topics/02_dependency-management.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ This section evaluates different tools and approaches for managing project depen
2626

2727
We evaluated the most prominent options for managing Python project dependencies:
2828

29-
### Option 1: :pip:`pip` + :python:venv-tutorial) / [:term:`virtualenv`](virtualenv:`venv` (+ :pip-tools:`pip-tools`)
29+
### Option 1: [pip](pip-documentation) + :python:venv-tutorial) / [:term:`virtualenv`](virtualenv:`venv` (+ :pip-tools:`pip-tools`)
3030

3131
- **Description:** The traditional standard using `pip` for installation within isolated virtual environments created by `venv` (stdlib) or `virtualenv`. `pip-tools` (`pip-compile`, `pip-sync`) is often added to manage dependencies via `requirements.in` and generate reproducible `requirements.txt` lock files.
3232
- **Evaluation:**
33-
- **PEP Compliance:** Moderate. :pip:`pip` understands PEP 621 for installing from `pyproject.toml`. :pip-tools:`pip-tools` can read from `pyproject.toml`. No native support for standard lock file formats (PEP 665), relies on generated `requirements.txt` which is a common convention but lacks richer metadata.
33+
- **PEP Compliance:** Moderate. [pip](pip-documentation) understands PEP 621 for installing from `pyproject.toml`. :pip-tools:`pip-tools` can read from `pyproject.toml`. No native support for standard lock file formats (PEP 665), relies on generated `requirements.txt` which is a common convention but lacks richer metadata.
3434
- **Reproducibility:** High _with `pip-tools`_. `requirements.txt` generated by `pip-tools` provides strong pinning. Pure `pip` relies on `pip freeze` which is less deterministic.
3535
- **OS Interoperability:** Excellent. Core tools are foundational Python utilities robust across OSs. :pip-tools:`pip-tools` is pure Python and cross-platform.
36-
- **Performance:** Moderate. :pip:`pip`'s dependency resolver can be slow for large/complex graphs. `pip-compile` adds time. :python:venv-tutorial)/[:term:`virtualenv`](virtualenv:`venv` creation/activation faster than some, slower than others (like uv).
36+
- **Performance:** Moderate. [pip](pip-documentation)'s dependency resolver can be slow for large/complex graphs. `pip-compile` adds time. :python:venv-tutorial)/[:term:`virtualenv`](virtualenv:`venv` creation/activation faster than some, slower than others (like uv).
3737
- **Developer Experience (DX):** Moderate. Requires multi-step workflow: create env, activate, manually edit requirement files, run `pip-compile`, run `pip-sync`/`pip install -r`. No single command for `add` or `remove`.
3838
- **Dependency Group Management:** Achieved by manually managing multiple `.in` / `.txt` files or leveraging `[project.optional-dependencies]` via `pip-tools`, less integrated than other tools.
3939
- **Integration:** Excellent. As the standard, most ecosystem tools inherently understand [:term:`venv`](python:venv-tutorial)s, `pip install`, and `requirements.txt`. Highest compatibility score.
@@ -110,7 +110,7 @@ We evaluated the most prominent options for managing Python project dependencies
110110
- **Performance:** Excellent. Inherits `uv`'s speed for core dependency operations.
111111
- **Developer Experience (DX):** Very High. Provides a very clean, unified CLI (`rye init`, `rye add`, `rye run`, `rye build`, `rye publish`). Opinionated but can simplify workflow buy-in.
112112
- **Dependency Group Management:** Excellent. Supports standard `[project.optional-dependencies]`.
113-
- **Integration:** Moderate (Growing). As an all-in-one, tools need to interact with `rye run` or be compatible with its env structure. Less explicit support yet than for :pdm:`PDM`/:poetry:`Poetry`/:pip:`pip`+[:term:`venv`](python:venv-tutorial).
113+
- **Integration:** Moderate (Growing). As an all-in-one, tools need to interact with `rye run` or be compatible with its env structure. Less explicit support yet than for :pdm:`PDM`/:poetry:`Poetry`/[pip](pip-documentation)+[:term:`venv`](python:venv-tutorial).
114114
- **Maturity & Stability:** Low (Experimental). **Explicitly labeled experimental**. Subject to breaking changes and design evolution. This is the most significant factor for a foundation template.
115115
- **Community & Documentation:** High (Active, niche). Very active development due to creator profile. Rapid adoption among early adopters.
116116
- **Conclusion:** Highly promising unified workflow tool built on :uv:`uv`'s performance. However, its **experimental status** makes it too high-risk for a template aiming to provide a _robust_ foundation based on current, albeit rapidly developing, _stable_ tooling. A tool marked "experimental" should not be the default cornerstone of a widely used template unless the user explicitly opts into that level of risk.

docs/topics/09_packaging-build.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ This section evaluates the tools and approaches for creating standard Python dis
1414
## Evaluation Criteria
1515

1616
- **PEP Compliance (Build System & Metadata):** Strict adherence to PEP 517 (build frontends/backends) and PEP 621 (metadata in pyproject.toml). Adherence to PEP 427 (Wheel specification).
17-
- **Standard Artifacts:** Does it produce standard `.sdist` and `.whl` files consumable by tools like :pip:`pip` and :twine:`twine`?
17+
- **Standard Artifacts:** Does it produce standard `.sdist` and `.whl` files consumable by tools like [pip](pip-documentation) and :twine:`twine`?
1818
- **OS Interoperability (Build Process):** Does the tool and its backend enable building packages reliably across Linux, macOS, and Windows, particularly for projects with native extensions?
1919
- **Support for Native Extensions:** How well does it support including and compiling code written in other languages (e.g., Rust, C, C++) into the built wheel?
2020
- **Reproducible Builds:** Does the build process ensure the same inputs reliably produce the same outputs (within acceptable build system variations)? Relies on PEP 518 (build requires isolation).

docs/topics/10_packaging-publish.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This section evaluates tools and approaches for uploading Python distribution pa
88
- Handle authentication with the package index securely.
99
- Integrate seamlessly into automated workflows (Task Automation, CI/CD).
1010
- Ensure the publishing process is OS-interoperable.
11-
- Produce packages compatible with installation by standard tools like :pip:`pip`. (Addressed in Area 09's Build Process).
11+
- Produce packages compatible with installation by standard tools like [:py:mod:`pip`](pip-documentation). (Addressed in Area 09's Build Process).
1212

1313
## Evaluation Criteria
1414

docs/topics/11_container-build.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ This section evaluates the process and tools for building application container
3232

3333
- **Standardization (Format):** Excellent. `Dockerfile` is the **industry standard** text-based format for defining container images, widely understood and universally compatible across container runtimes.
3434
- **Best Practice Support:** Excellent. The `Dockerfile` syntax explicitly supports crucial best practices like **multistage builds** (`FROM ... AS <name>`), using the `USER` instruction for non-root users, selecting minimal base images (e.g., `python:3.x-slim`, Alpine, Distroless), managing dependency caching layers effectively via step ordering, copying standard artifacts (like built wheels from Area 09) instead of source. The tool (`docker build`/`podman build`) implements these features.
35-
- **Packaging Integration:** Excellent. A standard `Dockerfile` workflow involves **copying the project's built wheel** (Area 09) into the image and installing it with :pip:`pip` or the project's chosen manager ([`uv`](uv-documentation)). Alternatively, it can copy source/lock files and install dependencies with the manager directly _inside_ the build. This directly leverages the output of packaging and dependency management steps.
35+
- **Packaging Integration:** Excellent. A standard `Dockerfile` workflow involves **copying the project's built wheel** (Area 09) into the image and installing it with [:py:mod:`pip`](pip-documentation) or the project's chosen manager ([`uv`](uv-documentation)). Alternatively, it can copy source/lock files and install dependencies with the manager directly _inside_ the build. This directly leverages the output of packaging and dependency management steps.
3636
- **Reproducibility:** High (Process). Given the same `Dockerfile`, build context files, and base image, the `docker build`/`podman build` process is highly reproducible layer-by-layer. Reliability of layer caching aids consistent builds.
3737
- **OS Interoperability (Tool):** Moderate (Runtime Dependency), Excellent (CLI). The `docker build` or `podman build` command-line tools are **OS-interoperable**. However, they require the :docker:`Docker` or :podman:`Podman` daemon/runtime to be installed and running on the host machine, which is an external dependency.
3838
- **CLI Usability:** Excellent. Simple command (`docker build . -t <image_name>`) is intuitive and standard.

0 commit comments

Comments
 (0)