content: [tool.poetry]
  name = "turbulette"
  version = "0.5.1"
  description = "A batteries-included framework to build high performance, async GraphQL APIs"
  license = "BSD-3-Clause"
  authors = ["Matthieu MN <matthieu.macnab@pm.me>"]
  maintainers = ["Matthieu MN <matthieu.macnab@pm.me>"]
  homepage = "https://github.com/turbulette/turbulette/"
  documentation = "https://turbulette.github.io/turbulette/"
  repository = "https://github.com/turbulette/turbulette/"
  keywords = ["grapql", "api", "asyncio", "gino", "ariadne"]
  readme = "README.md"
  classifiers = [
    "Development Status :: 4 - Beta",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: BSD License",
    "Operating System :: OS Independent",
    "Natural Language :: English",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3.6",
    "Programming Language :: Python :: 3.7",
    "Programming Language :: Python :: 3.8",
    "Typing :: Typed",
    "Topic :: Internet :: WWW/HTTP",
    "Topic :: Software Development :: Libraries :: Application Frameworks",
  ]
  
  [tool.poetry.urls]
  "Ariadne" = "https://ariadnegraphql.org/"
  "GINO" = "https://python-gino.org/docs/en/master/index.html"
  "Starlette" = "https://www.starlette.io/"
  "Pydantic" = "https://pydantic-docs.helpmanual.io/"
  "Alembic" = "https://alembic.sqlalchemy.org/en/latest/"
  
  [tool.poetry.dependencies]
  python = "^3.6"
  ariadne = ">=0.11,<0.13"
  alembic = "^1.4.2"
  pydantic = { extras = ["email"], version = "^1.6.1" }
  passlib = { extras = ["bcrypt"], version = "^1.7.2" }
  simple-settings = ">=0.19.1,<1.1.0"
  python-jwt = "^3.2.6"
  gino = { extras = ["starlette"], version = "^1.0.1" }
  click = "^7.1.2"
  psycopg2 = "^2.8.5"
  async-caches = "^0.3.0"
  ciso8601 = "^2.1.3"
  argon2-cffi = { version = "^20.1.0", optional = true }
  
  # Test extras
  pytest = { version = "^6.2.1", optional = true }
  pytest-cov = { version = "^2.11.1", optional = true }
  pytest-asyncio = { version = ">=0.14,<0.16", optional = true }
  async-asgi-testclient = { version = "^1.4.5", optional = true }
  python-multipart = { version = "^0.0.5", optional = true }
  coverage = { version = "^5.3", extras = ["toml"], optional = true }
  
  # Docs extras
  mkdocs-material = { version = ">=6.0.1,<8.0.0", optional = true }
  mkdocs-git-revision-date-plugin = { version = "^0.3", optional = true }
  mkdocstrings = { version = ">=0.14,<0.16", optional = true }
  pygments-graphql-lexer = { version = "^0.1.0", optional = true }
  pymdown-extensions = { version = "^8.0.1", optional = true }
  
  # Profiling extras
  tuna = { version = "^0.5.0", optional = true }
  memory_profiler = { version = "^0.58.0", optional = true }
  
  # Lint extras
  black = { version = "^20.8b1", optional = true }
  pylint-pytest = { version = ">=0.3,<1.2", optional = true }
  prospector = { extras = ["with_mypy", "with_bandit"], version = "^1.3.1", optional = true }
  
  [tool.poetry.dev-dependencies]
  uvicorn = { extras = ["watchgodreload"], version = "^0.13.3" }
  debugpy = "^1.2.0"
  
  [tool.poetry.extras]
  dev_test = [
    "pytest",
    "pytest-cov",
    "pytest-asyncio",
    "async-asgi-testclient",
    "python-multipart",
    "coverage",
  ]
  dev_lint = ["prospector", "black", "pylint-pytest"]
  dev_doc = [
    "mkdocs-material",
    "mkdocs-git-revision-date-plugin",
    "mkdocstrings",
    "pygments-graphql-lexer",
    "pymdown-extensions",
  ]
  dev_profiling = ["tuna", "memory_profiler"]
  argon2 = ["argon2-cffi"]
  
  [tool.poetry.plugins."pytest11"]
  "turbulette" = "turbulette.test.pytest_plugin"
  
  [tool.poetry.scripts]
  "turb" = "turbulette.management.cli:cli"
  
  [tool.coverage.run]
  omit = ["turbulette/test/pytest_plugin.py"]
  source = ["turbulette/"]
  
  [tool.black]
  line-length = 88
  disable = ["C0330", "C0326"]
  target-version = ['py36', 'py37', 'py38']
  include = '(?<!get-poetry)\.pyi?$'
  exclude = '''
  /(
      \.eggs
    | \.git
    | \.hg
    | \.mypy_cache
    | \.tox
    | \.venv
    | _build
    | buck-out
    | build
    | dist
    | snapshots
  )/
  '''
  
  [tool.isort]
  skip_glob = "**migrations/*.py, **/__init__.py"
  profile = "black"
  multi_line_output = 3
  include_trailing_comma = true
  force_grid_wrap = 0
  use_parentheses = true
  ensure_newline_before_comments = true
  line_length = 88
  
  [build-system]
  requires = ["poetry>=0.12"]
  build-backend = "poetry.masonry.api"
  