content: [project]
  name = "Flask"
  version = "3.1.0.dev"
  description = "A simple framework for building complex web applications."
  readme = "README.md"
  license = {file = "LICENSE.txt"}
  maintainers = [{name = "Pallets", email = "contact@palletsprojects.com"}]
  classifiers = [
      "Development Status :: 5 - Production/Stable",
      "Environment :: Web Environment",
      "Framework :: Flask",
      "Intended Audience :: Developers",
      "License :: OSI Approved :: BSD License",
      "Operating System :: OS Independent",
      "Programming Language :: Python",
      "Topic :: Internet :: WWW/HTTP :: Dynamic Content",
      "Topic :: Internet :: WWW/HTTP :: WSGI",
      "Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
      "Topic :: Software Development :: Libraries :: Application Frameworks",
      "Typing :: Typed",
  ]
  requires-python = ">=3.8"
  dependencies = [
      "Werkzeug>=3.0.0",
      "Jinja2>=3.1.2",
      "itsdangerous>=2.1.2",
      "click>=8.1.3",
      "blinker>=1.6.2",
      "importlib-metadata>=3.6.0; python_version < '3.10'",
  ]
  
  [project.urls]
  Donate = "https://palletsprojects.com/donate"
  Documentation = "https://flask.palletsprojects.com/"
  Changes = "https://flask.palletsprojects.com/changes/"
  Source = "https://github.com/pallets/flask/"
  Chat = "https://discord.gg/pallets"
  
  [project.optional-dependencies]
  async = ["asgiref>=3.2"]
  dotenv = ["python-dotenv"]
  
  [project.scripts]
  flask = "flask.cli:main"
  
  [build-system]
  requires = ["flit_core<4"]
  build-backend = "flit_core.buildapi"
  
  [tool.flit.module]
  name = "flask"
  
  [tool.flit.sdist]
  include = [
      "docs/",
      "examples/",
      "requirements/",
      "tests/",
      "CHANGES.rst",
      "CONTRIBUTING.rst",
      "tox.ini",
  ]
  exclude = [
      "docs/_build/",
  ]
  
  [tool.pytest.ini_options]
  testpaths = ["tests"]
  filterwarnings = [
      "error",
  ]
  
  [tool.coverage.run]
  branch = true
  source = ["flask", "tests"]
  
  [tool.coverage.paths]
  source = ["src", "*/site-packages"]
  
  [tool.mypy]
  python_version = "3.8"
  files = ["src/flask", "tests/typing"]
  show_error_codes = true
  pretty = true
  strict = true
  
  [[tool.mypy.overrides]]
  module = [
      "asgiref.*",
      "dotenv.*",
      "cryptography.*",
      "importlib_metadata",
  ]
  ignore_missing_imports = true
  
  [tool.pyright]
  pythonVersion = "3.8"
  include = ["src/flask", "tests"]
  typeCheckingMode = "basic"
  
  [tool.ruff]
  src = ["src"]
  fix = true
  show-fixes = true
  output-format = "full"
  
  [tool.ruff.lint]
  select = [
      "B",  # flake8-bugbear
      "E",  # pycodestyle error
      "F",  # pyflakes
      "I",  # isort
      "UP",  # pyupgrade
      "W",  # pycodestyle warning
  ]
  ignore-init-module-imports = true
  
  [tool.ruff.lint.isort]
  force-single-line = true
  order-by-type = false
  