Metadata-Version: 2.5
Name: nab-index
Version: 0.0.21
Summary: PyPI Simple-API client and on-disk cache for nab
Project-URL: Homepage, https://github.com/notatallshaw/nab
Project-URL: Documentation, https://nab.readthedocs.io/
Project-URL: Issues, https://github.com/notatallshaw/nab/issues
Project-URL: Source, https://github.com/notatallshaw/nab
Project-URL: Changelog, https://github.com/notatallshaw/nab/releases
Author-email: Damian Shaw <damian.peter.shaw@gmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: nab-provider==0.0.21
Requires-Dist: packaging>=24.0
Requires-Dist: truststore>=0.10
Requires-Dist: typing-extensions>=4.6
Requires-Dist: urllib3>=2.0
Provides-Extra: httpx
Requires-Dist: httpx[http2]>=0.28; extra == 'httpx'
Provides-Extra: httpx2
Requires-Dist: httpx2[http2]>=2.0; extra == 'httpx2'
Description-Content-Type: text/markdown

# nab-index

Fetch package listings and metadata from Python package indexes. This package implements the PyPI
Simple API and caches responses on disk for [`nab-project`](https://pypi.org/project/nab-project/)
and [`nab`](https://pypi.org/project/nab/).

It provides:

- An asynchronous HTTP interface with `urllib3` by default and optional `httpx` and `httpx2`
  backends.
- A Simple-API client with JSON and HTML decoders.
- A disk cache for project listings and file metadata responses.
- A multi-index router (ordered named indexes plus per-package overrides that pin a package to one
  index).
- A small VCS clone helper used by the higher-level VCS policy.

## When to use it

Use `nab-index` if you need a typed PyPI Simple-API client with an on-disk cache. Most users want
[`nab`](https://pypi.org/project/nab/) instead.

The API is currently under rapid experimentation, if you use it pin to an exact version.
