[build-system]
requires = ["maturin>=0.12,<0.13"]
build-backend = "maturin"

[project]
name = "robyn"
version = "0.33.0"
description = "A web server that is fast!"
authors = [{ name = "Sanskar Jethi", email = "sansyrox@gmail.com" }]
dependencies = [
  'watchdog == 2.2.1',
  'multiprocess == 0.70.14',
  'nestd == 0.3.1',
# conditional
  'uvloop == 0.17.0; sys_platform == "darwin"',
  'uvloop == 0.17.0; platform_machine == "aarch_64"',
  'uvloop == 0.17.0; platform_machine == "x86_64"',
  'uvloop == 0.17.0; platform_machine == "i686"',
]
classifiers = [
  "Development Status :: 3 - Alpha",
  "Environment :: Web Environment",
  "Intended Audience :: Developers",
  "License :: OSI Approved :: BSD License",
  "Operating System :: OS Independent",
  "Topic :: Internet :: WWW/HTTP",
  "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",
  "Programming Language :: Python :: Implementation :: CPython",
]


[project.urls]
"Source Code" = "https://github.com/sansyrox/robyn"
Issues = "https://github.com/sansyrox/robyn/issues"
Documentation = "https://robyn.tech/"
Changelog = "https://github.com/sansyrox/robyn/blob/main/CHANGELOG.md"

[project.optional-dependencies]
"templating" = ["jinja2 == 3.0.1"]

[tool.ruff]
line-length = 160
exclude = ["src/*", ".git", "docs"]


[tool.ruff.mccabe]
max-complexity = 10

[tool.maturin]
module-name = "robyn"
