# Copyright (c) 2022-2023, NVIDIA CORPORATION. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. [project] name = "nvidia-pytriton" readme = "docs/pypi.rst" description = "PyTriton - Flask/FastAPI-like interface to simplify Triton's deployment in Python environments." dynamic = ["version"] classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "Intended Audience :: Developers", "Topic :: Software Development", "Topic :: Scientific/Engineering", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Operating System :: Unix", ] authors = [] maintainers = [] keywords = [] license = {text = "Apache 2.0"} requires-python = ">=3.8,<4" dependencies = [ "numpy ~= 1.21", "protobuf>=3.7.0", "pyzmq ~= 23.0", "sh ~= 1.14", "tritonclient[all] ~= 2.39", "typing_inspect ~= 0.6.0", "wrapt >= 1.11.0", ] [project.urls] "Documentation" = "https://triton-inference-server.github.io/pytriton" "Source" = "https://github.com/triton-inference-server/pytriton" "Tracker" = "https://github.com/triton-inference-server/pytriton/issues" [project.optional-dependencies] test = [ "pytest ~= 7.2", "pytest-codeblocks ~= 0.16", "pytest-mock ~= 3.8", "pytest-timeout ~= 2.1", # timeouts for non-asyncio tests "alt-pytest-asyncio ~= 0.7", # timeout for asyncio tests "pytype!=2021.11.18,!=2022.2.17", "pre-commit >= 2.20.0", "tox >= 3.23.1", "tqdm >= 4.64.1", "psutil ~= 5.1", "py-spy ~= 0.3", ] doc = [ "GitPython >= 3.1.30", "mike >= 2.0.0", "mkdocs-htmlproofer-plugin >= 0.8.0", "mkdocs-material >= 8.5.6", "mkdocstrings[python] >= 0.19.0", ] dev = [ "nvidia-pytriton[test]", "nvidia-pytriton[doc]", "black >= 22.8", "build >= 0.8, <1.0.0", # to support --plat-name for multiarch build "ipython >= 7.16", "isort >= 5.10", "pudb >= 2022.1.3", "pip >= 21.3", # to support editable installation "twine >= 4.0", ] [build-system] requires = [ "setuptools>=65.3.0", "setuptools_scm[toml]>=6.2", "wheel>=0.37.1", ] build-backend = "setuptools.build_meta" [tool.setuptools] include-package-data = true license-files = ["LICENSE"] [tool.setuptools.packages.find] namespaces = false include = ["pytriton"] [tool.setuptools.package-data] pytriton = [ "**/*", ] [tool.setuptools.exclude-package-data] pytriton = [ "tritonserver/external_libs/*", ] [tool.setuptools_scm] [tool.distutils.bdist_wheel] plat-name = "linux_x86_64" [tool.black] line-length = 120 target-version = ['py38'] include = '\.pyi?$' exclude = ''' ( /( \.eggs # exclude a few common directories in the | \.git # root of the project | \.hg | \.mypy_cache | \.tox | \.venv | _build | buck-out | build | dist )/ ) ''' [tool.isort] profile = "black" line_length = 120 [tool.vulture] exclude = [] ignore_decorators = [] ignore_names = [] make_whitelist = true min_confidence = 80 paths = ["pytriton"] sort_by_size = true verbose = false