blob: 27dbdbd0fcac160836143c1f2b76510c4c1a90c0 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
[tool.poetry]
name = "apache-skywalking"
version = "1.0.0"
description = "The Python Agent for Apache SkyWalking, which provides the native tracing/metrics/logging/profiling abilities for Python projects."
license = "Apache-2.0"
authors = ["Apache Software Foundation <dev@skywalking.apache.org>"]
maintainers = ["Apache SkyWalking Community <dev@skywalking.apache.org>"]
readme = "README.md"
homepage = "https://skywalking.apache.org/"
repository = "https://github.com/apache/skywalking-python"
documentation = "https://skywalking.apache.org/docs/skywalking-python/next/readme/"
keywords = [
"skywalking", "tracing", "metrics", "logging", "profiling",
"observability", "distributed-tracing", "apm",
"python"
]
classifiers=[
'License :: OSI Approved :: Apache Software License',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'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',
'Topic :: System :: Monitoring',
'Topic :: Software Development',
]
packages = [
{ include = "skywalking" },
{ include = "sw_python" }
]
# poetry will ignore generated files as .gitignore, but we need them in package
include = ['skywalking/protocol/**/*']
exclude = ['tests']
[tool.poetry.build]
generate-setup-file = true
[tool.poetry.urls]
"Bug Tracker" = "https://github.com/apache/skywalking/issues"
[tool.poetry.scripts]
sw-python = 'skywalking.bootstrap.cli.sw_python:start'
[tool.poetry.dependencies]
python = ">=3.7, <3.12"
grpcio = '*'
grpcio-tools = '*'
packaging = '*'
wrapt = '*'
psutil = '*'
requests = { version = ">=2.26.0", optional = true }
kafka-python = { version = "*", optional = true }
[tool.poetry.extras]
all=[
'requests',
'kafka-python',
]
http= [
'requests',
]
kafka=[
'kafka-python',
]
[tool.poetry.group.dev.dependencies]
pkginfo = "^1.8.3"
testcontainers = "*"
pyyaml = "*"
pytest = "*"
uwsgi = "*"
gunicorn = "*"
uvicorn = "*"
kafka-python = "*"
requests = "*"
[tool.poetry.group.plugins.dependencies]
urllib3 = "1.26.7"
aiohttp = "3.7.4"
celery = "5.1.2"
django = "3.2.8"
elasticsearch = "7.15.1"
flask = "2.0.2"
gevent = "22.8.0"
hug = "2.6.1"
pika = "1.2.0"
psycopg = {extras = ["binary"], version = "^3.1.7"}
psycopg2-binary = "^2.9"
pymongo = "3.12.0"
pymysql = "1.0.2"
mysqlclient = "^2.1.1"
pyramid = "2.0"
pyyaml = "6.0"
redis = "3.5.3"
sanic = "21.9.1"
tornado = "6.1"
werkzeug = "2.0.2"
fastapi = "0.89.1"
uvicorn = "0.16.0"
gunicorn = "20.1.0"
bottle = "0.12.21"
aioredis = "^2.0.1"
aiormq = "^6.4.2"
asyncpg = "^0.27.0"
happybase = "1.2.0"
websockets = "^10.4"
loguru = "^0.6.0"
httpx = "^0.23.3"
confluent-kafka = "^2.0.2"
[tool.poetry.group.lint.dependencies]
pylint = '2.13.9'
flake8 = "^5.0.4"
# isort = "^5.10.1"
unify = "^0.5"
flynt = "^0.76"
flake8-quotes = "^3.3.1"
flake8-use-fstring = "^1.4"
pep8-naming = "^0.13.2"
darglint = "^1.8.1"
flake8-eradicate = "^1.4.0"
flake8-docstrings = "^1.6.0"
flake8-bugbear = "^22.9.23"
flake8-comprehensions = "^3.10.0"
flake8-2020 = "^1.7.0"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"