[project] name = "materia-server" version = "0.1.1" description = "Materia is a file server" authors = [ {name = "L-Nafaryus", email = "l.nafaryus@gmail.com"}, ] dependencies = [ "fastapi<1.0.0,>=0.111.0", "uvicorn[standard]<1.0.0,>=0.29.0", "psycopg2-binary<3.0.0,>=2.9.9", "toml<1.0.0,>=0.10.2", "sqlalchemy[asyncio]<3.0.0,>=2.0.30", "asyncpg<1.0.0,>=0.29.0", "eventlet<1.0.0,>=0.36.1", "bcrypt==4.1.2", "pyjwt<3.0.0,>=2.8.0", "requests<3.0.0,>=2.31.0", "pillow<11.0.0,>=10.3.0", "sqids<1.0.0,>=0.4.1", "alembic<2.0.0,>=1.13.1", "authlib<2.0.0,>=1.3.0", "cryptography<43.0.0,>=42.0.7", "redis[hiredis]<6.0.0,>=5.0.4", "aiosmtplib<4.0.0,>=3.0.1", "emails<1.0,>=0.6", "pydantic-settings<3.0.0,>=2.2.1", "email-validator<3.0.0,>=2.1.1", "pydanclick<1.0.0,>=0.2.0", "loguru<1.0.0,>=0.7.2", "alembic-postgresql-enum<2.0.0,>=1.2.0", "gunicorn>=22.0.0", "uvicorn-worker>=0.2.0", ] requires-python = "<3.12,>=3.10" readme = "README.md" license = {text = "MIT"} [tool.pdm.build] includes = ["src/materia_server"] [build-system] requires = ["pdm-backend"] build-backend = "pdm.backend" [project.scripts] materia-server = "materia_server.main:server" [tool.pdm.scripts] start-server.cmd = "python ./src/materia_server/main.py {args:start --app-mode development --log-level debug}" db-upgrade.cmd = "alembic -c ./src/materia_server/alembic.ini upgrade {args:head}" db-downgrade.shell = "alembic -c ./src/materia_server/alembic.ini downgrade {args:base}" db-revision.cmd = "alembic revision {args:--autogenerate}" remove-revisions.shell = "rm -v ./src/materia_server/models/migrations/versions/*.py" [tool.pyright] reportGeneralTypeIssues = false [tool.pytest.ini_options] pythonpath = ["."] testpaths = ["tests"] [tool.pdm] distribution = true [tool.pdm.dev-dependencies] dev = [ "black<24.0.0,>=23.3.0", "pytest<8.0.0,>=7.3.2", "pyflakes<4.0.0,>=3.0.1", "pyright<2.0.0,>=1.1.314", ]