458a492ed9
* ✨ Add support for PEP-593 `Annotated` for specifying options and arguments Implements #184 * Revert things I did to get a 3.6 virtualenv 😅 A lot of the dev dependency packages weren't installable on 3.6, so I had to remove them from the pyproject.toml. This commit adds them back * Fix mypy/lint errors * Skip coverage on test lines that shouldn't execute * Missed a spot * ♻️ Tweak examples and tests with Annotated, add extra examples and tests * 🔥 Remove Pydantic-specific logic from _typing.py * 📝 Update docs to use new Annotated examples * 📝 Add docs introducing Annotated and previous versions * 🔧 Add commented out MkDocs config for highlighting docs examples * ✅ Fix tests for Click 7 --------- Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
96 lines
2.9 KiB
TOML
96 lines
2.9 KiB
TOML
[build-system]
|
|
requires = ["flit_core >=2,<3"]
|
|
build-backend = "flit_core.buildapi"
|
|
|
|
[tool.flit.metadata]
|
|
module = "typer"
|
|
author = "Sebastián Ramírez"
|
|
author-email = "tiangolo@gmail.com"
|
|
home-page = "https://github.com/tiangolo/typer"
|
|
classifiers = [
|
|
"Intended Audience :: Information Technology",
|
|
"Intended Audience :: System Administrators",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python",
|
|
"Topic :: Software Development :: Libraries :: Application Frameworks",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
"Topic :: Software Development :: Libraries",
|
|
"Topic :: Software Development",
|
|
"Typing :: Typed",
|
|
"Development Status :: 4 - Beta",
|
|
"Intended Audience :: Developers",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Programming Language :: Python :: 3.6",
|
|
"Programming Language :: Python :: 3.7",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"License :: OSI Approved :: MIT License"
|
|
]
|
|
requires = [
|
|
"click >= 7.1.1, <9.0.0",
|
|
"typing-extensions >= 3.7.4.3",
|
|
]
|
|
description-file = "README.md"
|
|
requires-python = ">=3.6"
|
|
|
|
[tool.flit.metadata.urls]
|
|
Documentation = "https://typer.tiangolo.com/"
|
|
|
|
[tool.flit.metadata.requires-extra]
|
|
test = [
|
|
"shellingham >=1.3.0,<2.0.0",
|
|
"pytest >=4.4.0,<8.0.0",
|
|
"pytest-cov >=2.10.0,<5.0.0",
|
|
"coverage >=6.2,<7.0",
|
|
"pytest-xdist >=1.32.0,<4.0.0",
|
|
"pytest-sugar >=0.9.4,<0.10.0",
|
|
"mypy ==0.910",
|
|
"black >=22.3.0,<23.0.0",
|
|
"isort >=5.0.6,<6.0.0",
|
|
"rich >=10.11.0,<14.0.0",
|
|
]
|
|
doc = [
|
|
"mkdocs >=1.1.2,<2.0.0",
|
|
"mkdocs-material >=8.1.4,<9.0.0",
|
|
"mdx-include >=1.4.1,<2.0.0",
|
|
"pillow >=9.3.0,<10.0.0",
|
|
"cairosvg >=2.5.2,<3.0.0",
|
|
]
|
|
dev = [
|
|
"autoflake >=1.3.1,<2.0.0",
|
|
"flake8 >=3.8.3,<4.0.0",
|
|
"pre-commit >=2.17.0,<3.0.0",
|
|
]
|
|
all = [
|
|
"colorama >=0.4.3,<0.5.0",
|
|
"shellingham >=1.3.0,<2.0.0",
|
|
"rich >=10.11.0,<14.0.0",
|
|
]
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
known_third_party = ["typer", "click"]
|
|
skip_glob = [
|
|
"docs_src/subcommands/tutorial001/main.py",
|
|
"docs_src/subcommands/tutorial003/lands.py",
|
|
"docs_src/subcommands/tutorial003/main.py",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
addopts = [
|
|
"--strict-config",
|
|
"--strict-markers",
|
|
]
|
|
xfail_strict = true
|
|
junit_family = "xunit2"
|
|
filterwarnings = [
|
|
"error",
|
|
# TODO: until I refactor completion to use the new shell_complete
|
|
"ignore:'autocompletion' is renamed to 'shell_complete'. The old name is deprecated and will be removed in Click 8.1. See the docs about 'Parameter' for information about new behavior.:DeprecationWarning:typer",
|
|
'ignore:starlette.middleware.wsgi is deprecated and will be removed in a future release\..*:DeprecationWarning:starlette',
|
|
# For pytest-xdist
|
|
'ignore::DeprecationWarning:xdist',
|
|
]
|