Buckets:
MisterAI/LocalAI_Demo_backends / cpu-diffusers.upgrade-tmp /venv /lib /python3.10 /site-packages /annotated_doc-0.0.4.dist-info /METADATA
| Metadata-Version: 2.4 | |
| Name: annotated-doc | |
| Version: 0.0.4 | |
| Summary: Document parameters, class attributes, return types, and variables inline, with Annotated. | |
| Author-Email: =?utf-8?q?Sebasti=C3=A1n_Ram=C3=ADrez?= <tiangolo@gmail.com> | |
| License-Expression: MIT | |
| License-File: LICENSE | |
| Classifier: Intended Audience :: Information Technology | |
| Classifier: Intended Audience :: System Administrators | |
| Classifier: Operating System :: OS Independent | |
| Classifier: Programming Language :: Python :: 3 | |
| Classifier: Programming Language :: Python | |
| Classifier: Topic :: Internet | |
| Classifier: Topic :: Software Development :: Libraries :: Application Frameworks | |
| Classifier: Topic :: Software Development :: Libraries :: Python Modules | |
| Classifier: Topic :: Software Development :: Libraries | |
| Classifier: Topic :: Software Development | |
| Classifier: Typing :: Typed | |
| Classifier: Development Status :: 4 - Beta | |
| Classifier: Intended Audience :: Developers | |
| Classifier: Programming Language :: Python :: 3 :: Only | |
| Classifier: Programming Language :: Python :: 3.8 | |
| Classifier: Programming Language :: Python :: 3.9 | |
| 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 | |
| Project-URL: Homepage, https://github.com/fastapi/annotated-doc | |
| Project-URL: Documentation, https://github.com/fastapi/annotated-doc | |
| Project-URL: Repository, https://github.com/fastapi/annotated-doc | |
| Project-URL: Issues, https://github.com/fastapi/annotated-doc/issues | |
| Project-URL: Changelog, https://github.com/fastapi/annotated-doc/release-notes.md | |
| Requires-Python: >=3.8 | |
| Description-Content-Type: text/markdown | |
| # Annotated Doc | |
| Document parameters, class attributes, return types, and variables inline, with `Annotated`. | |
| <a href="https://github.com/fastapi/annotated-doc/actions?query=workflow%3ATest+event%3Apush+branch%3Amain" target="_blank"> | |
| <img src="https://github.com/fastapi/annotated-doc/actions/workflows/test.yml/badge.svg?event=push&branch=main" alt="Test"> | |
| </a> | |
| <a href="https://coverage-badge.samuelcolvin.workers.dev/redirect/fastapi/annotated-doc" target="_blank"> | |
| <img src="https://coverage-badge.samuelcolvin.workers.dev/fastapi/annotated-doc.svg" alt="Coverage"> | |
| </a> | |
| <a href="https://pypi.org/project/annotated-doc" target="_blank"> | |
| <img src="https://img.shields.io/pypi/v/annotated-doc?color=%2334D058&label=pypi%20package" alt="Package version"> | |
| </a> | |
| <a href="https://pypi.org/project/annotated-doc" target="_blank"> | |
| <img src="https://img.shields.io/pypi/pyversions/annotated-doc.svg?color=%2334D058" alt="Supported Python versions"> | |
| </a> | |
| ## Installation | |
| ```bash | |
| pip install annotated-doc | |
| ``` | |
| Or with `uv`: | |
| ```Python | |
| uv add annotated-doc | |
| ``` | |
| ## Usage | |
| Import `Doc` and pass a single literal string with the documentation for the specific parameter, class attribute, return type, or variable. | |
| For example, to document a parameter `name` in a function `hi` you could do: | |
| ```Python | |
| from typing import Annotated | |
| from annotated_doc import Doc | |
| def hi(name: Annotated[str, Doc("Who to say hi to")]) -> None: | |
| print(f"Hi, {name}!") | |
| ``` | |
| You can also use it to document class attributes: | |
| ```Python | |
| from typing import Annotated | |
| from annotated_doc import Doc | |
| class User: | |
| name: Annotated[str, Doc("The user's name")] | |
| age: Annotated[int, Doc("The user's age")] | |
| ``` | |
| The same way, you could document return types and variables, or anything that could have a type annotation with `Annotated`. | |
| ## Who Uses This | |
| `annotated-doc` was made for: | |
| * [FastAPI](https://fastapi.tiangolo.com/) | |
| * [Typer](https://typer.tiangolo.com/) | |
| * [SQLModel](https://sqlmodel.tiangolo.com/) | |
| * [Asyncer](https://asyncer.tiangolo.com/) | |
| `annotated-doc` is supported by [griffe-typingdoc](https://github.com/mkdocstrings/griffe-typingdoc), which powers reference documentation like the one in the [FastAPI Reference](https://fastapi.tiangolo.com/reference/). | |
| ## Reasons not to use `annotated-doc` | |
| You are already comfortable with one of the existing docstring formats, like: | |
| * Sphinx | |
| * numpydoc | |
| * Keras | |
| Your team is already comfortable using them. | |
| You prefer having the documentation about parameters all together in a docstring, separated from the code defining them. | |
| You care about a specific set of users, using one specific editor, and that editor already has support for the specific docstring format you use. | |
| ## Reasons to use `annotated-doc` | |
| * No micro-syntax to learn for newcomers, it’s **just Python** syntax. | |
| * **Editing** would be already fully supported by default by any editor (current or future) supporting Python syntax, including syntax errors, syntax highlighting, etc. | |
| * **Rendering** would be relatively straightforward to implement by static tools (tools that don't need runtime execution), as the information can be extracted from the AST they normally already create. | |
| * **Deduplication of information**: the name of a parameter would be defined in a single place, not duplicated inside of a docstring. | |
| * **Elimination** of the possibility of having **inconsistencies** when removing a parameter or class variable and **forgetting to remove** its documentation. | |
| * **Minimization** of the probability of adding a new parameter or class variable and **forgetting to add its documentation**. | |
| * **Elimination** of the possibility of having **inconsistencies** between the **name** of a parameter in the **signature** and the name in the docstring when it is renamed. | |
| * **Access** to the documentation string for each symbol at **runtime**, including existing (older) Python versions. | |
| * A more formalized way to document other symbols, like type aliases, that could use Annotated. | |
| * **Support** for apps using FastAPI, Typer and others. | |
| * **AI Accessibility**: AI tools will have an easier way understanding each parameter as the distance from documentation to parameter is much closer. | |
| ## History | |
| I ([@tiangolo](https://github.com/tiangolo)) originally wanted for this to be part of the Python standard library (in [PEP 727](https://peps.python.org/pep-0727/)), but the proposal was withdrawn as there was a fair amount of negative feedback and opposition. | |
| The conclusion was that this was better done as an external effort, in a third-party library. | |
| So, here it is, with a simpler approach, as a third-party library, in a way that can be used by others, starting with FastAPI and friends. | |
| ## License | |
| This project is licensed under the terms of the MIT license. | |
Xet Storage Details
- Size:
- 6.57 kB
- Xet hash:
- 4c8e080540f1ea53c19f96f3af37ff9ecf01ecf3bb57d87ce697c71447957ae2
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.