funkwhale/api/pyproject.toml

171 wiersze
4.0 KiB
TOML

[tool.poetry]
name = "funkwhale-api"
version = "1.2.9"
description = "Funkwhale API"
authors = ["Funkwhale Collective"]
homepage = "https://funkwhale.audio"
repository = "https://dev.funkwhale.audio/funkwhale/funkwhale"
documentation = "https://docs.funkwhale.audio"
license = "AGPL-3.0-only"
packages = [
{ include = "funkwhale_api" },
{ include = "config" },
]
include = [
{ path = "*.html" },
{ path = "*.json" },
{ path = "*.png" },
{ path = "*.txt" },
]
exclude = ["tests"]
[tool.poetry.scripts]
funkwhale-manage = 'funkwhale_api.main:main'
[tool.poetry.dependencies]
python = "^3.7"
Django = "==3.2.16"
django-environ = "==0.9.0"
Pillow = "==9.3.0"
django-allauth = "==0.42.0"
psycopg2 = "==2.9.5"
pytz = "==2022.7"
django-redis = "==5.2.0"
redis = "==4.4.0"
kombu = "==5.2.4"
celery = "==5.2.7"
django-cors-headers = "==3.13.0"
musicbrainzngs = "==0.7.1"
djangorestframework = "==3.14.0"
arrow = "==1.2.3"
persisting-theory = "==1.0"
django-versatileimagefield = "==2.2"
django-filter = "==22.1"
mutagen = "==1.46.0"
django-dynamic-preferences = "==1.14.0"
python-magic = "==0.4.27"
channels = {extras = ["daphne"], version = "==4.0.0"}
channels-redis = "==4.0.0"
gunicorn = "==20.1.0"
cryptography = "==38.0.4"
django-cleanup = "==6.0.0"
requests = "==2.28.1"
pydub = "==0.25.1"
PyLD = "==2.0.3"
aiohttp = "==3.8.3"
django-oauth-toolkit = "2.2.0"
django-storages = "==1.13.1"
boto3 = "==1.26.32"
unicode-slugify = "==0.1.5"
django-cacheops = "==6.1"
service-identity = "==21.1.0"
click = "==8.1.3"
Markdown = "==3.4.1"
bleach = "==5.0.1"
feedparser = "==6.0.10"
watchdog = "==2.2.0"
asgiref = "==3.5.2" #1516
ipython = "==7.34.0"
python-ldap = "==3.4.3"
django-auth-ldap = "==4.1.0"
uvicorn = {version = "==0.20.0", extras = ["standard"]}
django-cache-memoize = "0.1.10"
requests-http-message-signatures = "==0.3.1"
drf-spectacular = "==0.25.1"
sentry-sdk = "==1.12.0"
pluralizer = "==1.2.0"
importlib_metadata = {version = "==4.13.0", python = "<=3.7"} # Keep support python 3.7, can be removed if we drop support
dj-rest-auth = {extras = ["with_social"], version = "2.2.5"}
[tool.poetry.dev-dependencies]
flake8 = "==3.9.2"
pytest = "==7.2.0"
pytest-cov = "==4.0.0"
pytest-django = "==4.5.2"
pytest-env = "==0.8.1"
pytest-mock = "==3.10.0"
pytest-randomly = "==3.12.0"
pytest-sugar = "==0.9.6"
pytest-asyncio = "==0.20.3"
requests-mock = "==1.10.0"
Faker = "==15.3.4"
coverage = { version = "==6.5.0", extras = ["toml"] }
django-coverage-plugin = "==3.0.0"
factory-boy = "==3.2.1"
django-debug-toolbar = "==3.8.1"
asynctest = "==0.13.0"
aioresponses = "==0.7.4"
prompt-toolkit = "==3.0.36"
black = "==22.12.0"
ipdb = "==0.13.11"
debugpy = "==1.6.4"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.pylint.master]
load-plugins = [
"pylint_common",
"pylint_django",
"pylint_celery",
]
[tool.pylint.messages_control]
disable = [
"invalid-name",
"missing-class-docstring",
"missing-function-docstring",
"missing-module-docstring",
]
[tool.pylint.design]
max-parents = 13
[tool.pylint.format]
max-line-length = 120
[tool.pytest.ini_options]
python_files = [
"tests.py",
"test_*.py",
"*_tests.py",
]
testpaths = ["tests"]
addopts = "-p no:warnings"
env = [
"SECRET_KEY=test",
"EMAIL_CONFIG=consolemail://",
"CELERY_BROKER_URL=memory://",
"CELERY_TASK_ALWAYS_EAGER=True",
"FUNKWHALE_HOSTNAME_SUFFIX=",
"FUNKWHALE_HOSTNAME_PREFIX=",
"FUNKWHALE_HOSTNAME=test.federation",
"FEDERATION_HOSTNAME=test.federation",
"FUNKWHALE_URL=https://test.federation",
"DEBUG_TOOLBAR_ENABLED=False",
"DEBUG=False",
"WEAK_PASSWORDS=True",
"CREATE_IMAGE_THUMBNAILS=False",
"FORCE_HTTPS_URLS=False",
"FUNKWHALE_SPA_HTML_ROOT=http://noop/",
"PROXY_MEDIA=true",
"MUSIC_USE_DENORMALIZATION=true",
"EXTERNAL_MEDIA_PROXY_ENABLED=true",
"DISABLE_PASSWORD_VALIDATORS=false",
"DISABLE_PASSWORD_VALIDATORS=false",
"FUNKWHALE_PLUGINS=",
"MUSIC_DIRECTORY_PATH=/music",
]
[tool.coverage.run]
plugins = ["django_coverage_plugin"]
include = ["funkwhale_api/*"]
omit = [
"*migrations*",
"*tests*",
"funkwhale_api/schema.py",
]