@@ -59,14 +59,16 @@ py-discovery detects this and resolves it to the real binary.
5959 style Use fill:#4a9f4a,stroke:#2a6f2a,color:#fff
6060 style Skip fill:#d94a4a,stroke:#8f2a2a,color:#fff
6161
62- For mise and asdf, the ``MISE_DATA_DIR `` and ``ASDF_DATA_DIR `` directories are searched. The shim directory is
63- identified via the ``PYENV_ROOT ``, ``MISE_DATA_DIR ``, or ``ASDF_DATA_DIR `` environment variables.
62+ For `mise <https://mise.jdx.dev/ >`_ and `asdf <https://asdf-vm.com/ >`_, the ``MISE_DATA_DIR `` and ``ASDF_DATA_DIR ``
63+ directories are searched. The shim directory is identified via the ``PYENV_ROOT ``, ``MISE_DATA_DIR ``, or
64+ ``ASDF_DATA_DIR `` environment variables.
6465
6566Cache design
6667------------
6768
6869The :class: `~py_discovery.DiskCache ` stores interpreter metadata as JSON files under
69- ``<root>/py_info/4/<sha256>.json ``, where the hash is derived from the interpreter path. File locking via ``filelock ``
70+ ``<root>/py_info/4/<sha256>.json ``, where the hash is derived from the interpreter path. File locking via
71+ `filelock <https://py-filelock.readthedocs.io/ >`_
7072ensures safe concurrent access.
7173
7274.. mermaid ::
@@ -86,7 +88,7 @@ ensures safe concurrent access.
8688The cache layer uses a :class: `typing.Protocol ` (:class: `~py_discovery.PyInfoCache `), so any object with the right
8789method signatures works as a cache backend -- no inheritance required. Two built-in implementations are provided:
8890
89- - :class: `~py_discovery.DiskCache ` -- persistent JSON + filelock storage.
91+ - :class: `~py_discovery.DiskCache ` -- persistent JSON + ` filelock < https://py-filelock.readthedocs.io/ >`_ storage.
9092- ``cache=None `` -- disables caching, useful for one-shot scripts or testing.
9193
9294Spec format
0 commit comments