[[package]] name = "aiofiles" version = "0.7.0" description = "File support for asyncio." category = "main" optional = false python-versions = ">=3.6,<4.0" [[package]] name = "anyio" version = "3.3.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" category = "main" optional = false python-versions = ">=3.6.2" [package.dependencies] idna = ">=2.8" sniffio = ">=1.1" [package.extras] doc = ["sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"] test = ["coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "pytest (>=6.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (<0.15)", "mock (>=4)", "uvloop (>=0.15)"] trio = ["trio (>=0.16)"] [[package]] name = "asgi-csrf" version = "0.9" description = "ASGI middleware for protecting against CSRF attacks" category = "main" optional = false python-versions = "*" [package.dependencies] itsdangerous = "*" python-multipart = "*" [package.extras] test = ["asgi-lifespan", "pytest-cov", "starlette", "httpx (>=0.16)", "pytest-asyncio", "pytest"] [[package]] name = "asgiref" version = "3.3.4" description = "ASGI specs, helper code, and adapters" category = "main" optional = false python-versions = ">=3.6" [package.extras] tests = ["pytest", "pytest-asyncio", "mypy (>=0.800)"] [[package]] name = "certifi" version = "2021.5.30" description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false python-versions = "*" [[package]] name = "charset-normalizer" version = "2.0.4" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "main" optional = false python-versions = ">=3.5.0" [package.extras] unicode_backport = ["unicodedata2"] [[package]] name = "click" version = "8.0.1" description = "Composable command line interface toolkit" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} [[package]] name = "click-default-group" version = "1.2.2" description = "Extends click.Group to invoke a command without explicit subcommand name" category = "main" optional = false python-versions = "*" [package.dependencies] click = "*" [[package]] name = "colorama" version = "0.4.4" description = "Cross-platform colored terminal text." category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "datasette" version = "0.57.1" description = "An open source multi-tool for exploring and publishing data" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] aiofiles = ">=0.4,<0.8" asgi-csrf = ">=0.6" asgiref = ">=3.2.10,<3.4.0" click = ">=7.1.1,<8.1.0" click-default-group = ">=1.2.2,<1.3.0" httpx = ">=0.17" hupper = ">=1.9,<2.0" itsdangerous = ">=1.1,<3.0" janus = ">=0.4,<0.7" Jinja2 = ">=2.10.3,<3.1.0" mergedeep = ">=1.1.1,<1.4.0" pint = ">=0.9,<1.0" pluggy = ">=0.13.0,<0.14.0" python-baseconv = "1.2.2" PyYAML = ">=5.3,<6.0" uvicorn = ">=0.11,<1.0" [package.extras] docs = ["sphinx-rtd-theme", "sphinx-autobuild"] test = ["pytest (>=5.2.2,<6.3.0)", "pytest-xdist (>=2.2.1,<2.3)", "pytest-asyncio (>=0.10,<0.16)", "beautifulsoup4 (>=4.8.1,<4.10.0)", "black (==21.5b2)", "pytest-timeout (>=1.4.2,<1.5)", "trustme (>=0.7,<0.8)"] [[package]] name = "h11" version = "0.12.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" category = "main" optional = false python-versions = ">=3.6" [[package]] name = "httpcore" version = "0.13.6" description = "A minimal low-level HTTP client." category = "main" optional = false python-versions = ">=3.6" [package.dependencies] anyio = ">=3.0.0,<4.0.0" h11 = ">=0.11,<0.13" sniffio = ">=1.0.0,<2.0.0" [package.extras] http2 = ["h2 (>=3,<5)"] [[package]] name = "httpx" version = "0.19.0" description = "The next generation HTTP client." category = "main" optional = false python-versions = ">=3.6" [package.dependencies] certifi = "*" charset-normalizer = "*" httpcore = ">=0.13.3,<0.14.0" rfc3986 = {version = ">=1.3,<2", extras = ["idna2008"]} sniffio = "*" [package.extras] brotli = ["brotlicffi", "brotli"] http2 = ["h2 (>=3,<5)"] [[package]] name = "hupper" version = "1.10.3" description = "Integrated process monitor for developing and reloading daemons." category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" [package.extras] docs = ["watchdog", "sphinx", "pylons-sphinx-themes"] testing = ["watchdog", "pytest", "pytest-cov", "mock"] [[package]] name = "idna" version = "3.2" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false python-versions = ">=3.5" [[package]] name = "itsdangerous" version = "2.0.1" description = "Safely pass data to untrusted environments and back." category = "main" optional = false python-versions = ">=3.6" [[package]] name = "janus" version = "0.6.1" description = "Mixed sync-async queue to interoperate between asyncio tasks and classic threads" category = "main" optional = false python-versions = ">=3.6" [[package]] name = "jinja2" version = "3.0.1" description = "A very fast and expressive template engine." category = "main" optional = false python-versions = ">=3.6" [package.dependencies] MarkupSafe = ">=2.0" [package.extras] i18n = ["Babel (>=2.7)"] [[package]] name = "markupsafe" version = "2.0.1" description = "Safely add untrusted strings to HTML/XML markup." category = "main" optional = false python-versions = ">=3.6" [[package]] name = "mergedeep" version = "1.3.4" description = "A deep merge function for 🐍." category = "main" optional = false python-versions = ">=3.6" [[package]] name = "packaging" version = "21.0" description = "Core utilities for Python packages" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] pyparsing = ">=2.0.2" [[package]] name = "pint" version = "0.17" description = "Physical quantities module" category = "main" optional = false python-versions = ">=3.6" [package.dependencies] packaging = "*" [package.extras] numpy = ["numpy (>=1.14)"] test = ["pytest", "pytest-mpl", "pytest-cov", "pytest-subtests"] uncertainties = ["uncertainties (>=3.0)"] [[package]] name = "pluggy" version = "0.13.1" description = "plugin and hook calling mechanisms for python" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [package.extras] dev = ["pre-commit", "tox"] [[package]] name = "pyparsing" version = "2.4.7" description = "Python parsing module" category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" [[package]] name = "python-baseconv" version = "1.2.2" description = "Convert numbers from base 10 integers to base X strings and back again." category = "main" optional = false python-versions = "*" [[package]] name = "python-multipart" version = "0.0.5" description = "A streaming multipart parser for Python" category = "main" optional = false python-versions = "*" [package.dependencies] six = ">=1.4.0" [[package]] name = "pyyaml" version = "5.4.1" description = "YAML parser and emitter for Python" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" [[package]] name = "rfc3986" version = "1.5.0" description = "Validating URI References per RFC 3986" category = "main" optional = false python-versions = "*" [package.dependencies] idna = {version = "*", optional = true, markers = "extra == \"idna2008\""} [package.extras] idna2008 = ["idna"] [[package]] name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" [[package]] name = "sniffio" version = "1.2.0" description = "Sniff out which async library your code is running under" category = "main" optional = false python-versions = ">=3.5" [[package]] name = "uvicorn" version = "0.14.0" description = "The lightning-fast ASGI server." category = "main" optional = false python-versions = "*" [package.dependencies] asgiref = ">=3.3.4" click = ">=7" h11 = ">=0.8" [package.extras] standard = ["websockets (>=9.1)", "httptools (>=0.2.0,<0.3.0)", "watchgod (>=0.6)", "python-dotenv (>=0.13)", "PyYAML (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "colorama (>=0.4)"] [metadata] lock-version = "1.1" python-versions = "^3.8" content-hash = "ecf55618d1187c855f6a04af210b87d0114c25eb4f80749986713fb46735b5bc" [metadata.files] aiofiles = [] anyio = [] asgi-csrf = [] asgiref = [] certifi = [] charset-normalizer = [] click = [] click-default-group = [] colorama = [ {file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"}, {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, ] datasette = [] h11 = [] httpcore = [] httpx = [] hupper = [] idna = [] itsdangerous = [] janus = [] jinja2 = [] markupsafe = [] mergedeep = [] packaging = [] pint = [] pluggy = [ {file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"}, {file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"}, ] pyparsing = [] python-baseconv = [] python-multipart = [] pyyaml = [] rfc3986 = [] six = [ {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, ] sniffio = [ {file = "sniffio-1.2.0-py3-none-any.whl", hash = "sha256:471b71698eac1c2112a40ce2752bb2f4a4814c22a54a3eed3676bc0f5ca9f663"}, {file = "sniffio-1.2.0.tar.gz", hash = "sha256:c4666eecec1d3f50960c6bdf61ab7bc350648da6c126e3cf6898d8cd4ddcd3de"}, ] uvicorn = []