From 98ed4e06bbf45a8d5e2909aaa576975e25c8c6ba Mon Sep 17 00:00:00 2001 From: Thomas Werkmeister Date: Tue, 8 Nov 2022 09:48:55 +0100 Subject: [PATCH 1/9] Upgraded numpy and scikit learn dependencies (#11732) * upgraded numpy, scikit learn, and scipy, to higher versions --- poetry.lock | 1454 ++++------------- pyproject.toml | 15 +- rasa/core/evaluation/marker_stats.py | 11 +- .../featurizers/single_state_featurizer.py | 3 +- rasa/core/policies/ted_policy.py | 18 +- .../core/policies/unexpected_intent_policy.py | 11 +- rasa/nlu/classifiers/diet_classifier.py | 24 +- .../classifiers/sklearn_intent_classifier.py | 10 +- .../dense_featurizer/dense_featurizer.py | 5 +- .../dense_featurizer/lm_featurizer.py | 3 +- rasa/nlu/test.py | 4 +- rasa/shared/nlu/training_data/features.py | 8 +- rasa/utils/common.py | 3 + rasa/utils/plotting.py | 33 +- rasa/utils/tensorflow/data_generator.py | 4 +- rasa/utils/tensorflow/model_data.py | 25 +- rasa/utils/tensorflow/model_data_utils.py | 5 +- rasa/utils/tensorflow/models.py | 3 +- 18 files changed, 361 insertions(+), 1278 deletions(-) diff --git a/poetry.lock b/poetry.lock index cdad3d99fb43..6356a6c21286 100644 --- a/poetry.lock +++ b/poetry.lock @@ -126,7 +126,7 @@ test = ["mock (==2.0.0)", "pylint (==1.9.3)", "flake8 (==3.7.9)"] [[package]] name = "anyio" -version = "3.6.1" +version = "3.6.2" description = "High level compatibility layer for multiple asynchronous event loop implementations" category = "dev" optional = false @@ -140,7 +140,7 @@ typing-extensions = {version = "*", markers = "python_version < \"3.8\""} [package.extras] doc = ["packaging", "sphinx-rtd-theme", "sphinx-autodoc-typehints (>=1.2.0)"] test = ["coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "contextlib2", "uvloop (<0.15)", "mock (>=4)", "uvloop (>=0.15)"] -trio = ["trio (>=0.16)"] +trio = ["trio (>=0.16,<0.22)"] [[package]] name = "apscheduler" @@ -222,7 +222,7 @@ tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (> [[package]] name = "azure-core" -version = "1.26.0" +version = "1.26.1" description = "Microsoft Azure Core Library for Python" category = "dev" optional = false @@ -331,7 +331,7 @@ uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "blis" -version = "0.7.8" +version = "0.7.9" description = "The Blis BLAS-like linear algebra library, as a self-contained C-extension." category = "main" optional = true @@ -342,14 +342,14 @@ numpy = ">=1.15.0" [[package]] name = "boto3" -version = "1.24.89" +version = "1.26.3" description = "The AWS SDK for Python" category = "main" optional = false python-versions = ">= 3.7" [package.dependencies] -botocore = ">=1.27.89,<1.28.0" +botocore = ">=1.29.3,<1.30.0" jmespath = ">=0.7.1,<2.0.0" s3transfer = ">=0.6.0,<0.7.0" @@ -358,7 +358,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] [[package]] name = "botocore" -version = "1.27.89" +version = "1.29.3" description = "Low-level, data-driven core of boto 3." category = "main" optional = false @@ -471,11 +471,11 @@ python-versions = ">=3.6" [[package]] name = "colorama" -version = "0.4.5" +version = "0.4.6" description = "Cross-platform colored terminal text." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" [[package]] name = "colorclass" @@ -552,7 +552,7 @@ yaml = ["PyYAML (>=3.10)"] [[package]] name = "cryptography" -version = "38.0.1" +version = "38.0.3" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." category = "main" optional = false @@ -579,7 +579,7 @@ python-versions = ">=3.6" [[package]] name = "cymem" -version = "2.0.6" +version = "2.0.7" description = "Manage calls to calloc/free through Cython" category = "main" optional = true @@ -660,7 +660,7 @@ requests = ">=2.6.0" [[package]] name = "datadog-api-client" -version = "2.4.0" +version = "2.5.0" description = "Collection of all Datadog Public endpoints" category = "dev" optional = false @@ -747,6 +747,17 @@ python-versions = ">=3.6" [package.extras] test = ["pytest", "black"] +[[package]] +name = "exceptiongroup" +version = "1.0.1" +description = "Backport of PEP 654 (exception groups)" +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.extras] +test = ["pytest (>=6)"] + [[package]] name = "execnet" version = "1.9.0" @@ -760,7 +771,7 @@ testing = ["pre-commit"] [[package]] name = "fakeredis" -version = "1.9.3" +version = "1.10.0" description = "Fake implementation of redis API for testing purposes." category = "dev" optional = false @@ -837,7 +848,7 @@ pydocstyle = ">=2.1" [[package]] name = "flatbuffers" -version = "22.9.24" +version = "22.10.26" description = "The FlatBuffers serialization format for Python" category = "main" optional = false @@ -845,7 +856,7 @@ python-versions = "*" [[package]] name = "fonttools" -version = "4.37.4" +version = "4.38.0" description = "Tools to manipulate font files" category = "main" optional = false @@ -886,7 +897,7 @@ python-versions = ">=3.7" [[package]] name = "fsspec" -version = "2022.8.2" +version = "2022.10.0" description = "File-system specification" category = "main" optional = false @@ -962,7 +973,7 @@ test = ["betamax (>=0.8.0)", "pytest (>2.3.5)", "betamax-matchers (>=0.1.0)", "u [[package]] name = "gitpython" -version = "3.1.28" +version = "3.1.29" description = "GitPython is a python library used to interact with Git repositories" category = "dev" optional = false @@ -993,7 +1004,7 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0dev)"] [[package]] name = "google-auth" -version = "2.12.0" +version = "2.14.0" description = "Google Authentication Library" category = "main" optional = false @@ -1112,18 +1123,19 @@ grpc = ["grpcio (>=1.0.0,<2.0.0dev)"] [[package]] name = "greenlet" -version = "1.1.3" +version = "2.0.0.post0" description = "Lightweight in-process concurrent programming" category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" [package.extras] -docs = ["sphinx"] +docs = ["sphinx", "docutils (<0.18)"] +test = ["objgraph", "faulthandler"] [[package]] name = "grpcio" -version = "1.49.1" +version = "1.50.0" description = "HTTP/2-based RPC framework" category = "main" optional = false @@ -1133,7 +1145,7 @@ python-versions = ">=3.7" six = ">=1.5.2" [package.extras] -protobuf = ["grpcio-tools (>=1.49.1)"] +protobuf = ["grpcio-tools (>=1.50.0)"] [[package]] name = "h11" @@ -1205,7 +1217,7 @@ socks = ["socksio (>=1.0.0,<2.0.0)"] [[package]] name = "huggingface-hub" -version = "0.10.0" +version = "0.10.1" description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub" category = "main" optional = true @@ -1221,14 +1233,14 @@ tqdm = "*" typing-extensions = ">=3.7.4.3" [package.extras] -torch = ["torch"] -testing = ["soundfile", "pytest-cov", "pytest", "jinja2", "jedi", "isort (>=5.5.4)", "InquirerPy (==0.3.4)"] -tensorflow = ["graphviz", "pydot", "tensorflow"] -quality = ["mypy", "isort (>=5.5.4)", "flake8-bugbear", "flake8 (>=3.8.3)", "black (==22.3)"] -fastai = ["fastcore (>=1.3.27)", "fastai (>=2.4)", "toml"] -dev = ["mypy", "flake8-bugbear", "flake8 (>=3.8.3)", "black (==22.3)", "soundfile", "pytest-cov", "pytest", "jinja2", "jedi", "isort (>=5.5.4)", "InquirerPy (==0.3.4)"] +all = ["InquirerPy (==0.3.4)", "isort (>=5.5.4)", "jedi", "jinja2", "pytest", "pytest-cov", "soundfile", "black (==22.3)", "flake8 (>=3.8.3)", "flake8-bugbear", "mypy"] cli = ["InquirerPy (==0.3.4)"] -all = ["mypy", "flake8-bugbear", "flake8 (>=3.8.3)", "black (==22.3)", "soundfile", "pytest-cov", "pytest", "jinja2", "jedi", "isort (>=5.5.4)", "InquirerPy (==0.3.4)"] +dev = ["InquirerPy (==0.3.4)", "isort (>=5.5.4)", "jedi", "jinja2", "pytest", "pytest-cov", "soundfile", "black (==22.3)", "flake8 (>=3.8.3)", "flake8-bugbear", "mypy"] +fastai = ["toml", "fastai (>=2.4)", "fastcore (>=1.3.27)"] +quality = ["black (==22.3)", "flake8 (>=3.8.3)", "flake8-bugbear", "isort (>=5.5.4)", "mypy"] +tensorflow = ["tensorflow", "pydot", "graphviz"] +testing = ["InquirerPy (==0.3.4)", "isort (>=5.5.4)", "jedi", "jinja2", "pytest", "pytest-cov", "soundfile"] +torch = ["torch"] [[package]] name = "humanfriendly" @@ -1283,13 +1295,14 @@ testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "flake8 [[package]] name = "incremental" -version = "21.3.0" -description = "A small library that versions your Python projects." +version = "22.10.0" +description = "\"A small library that versions your Python projects.\"" category = "dev" optional = false python-versions = "*" [package.extras] +mypy = ["click (>=6.0)", "twisted (>=16.4.0)", "mypy (==0.812)"] scripts = ["click (>=6.0)", "twisted (>=16.4.0)"] [[package]] @@ -1369,9 +1382,9 @@ python-versions = ">=2.7" importlib-metadata = {version = "*", markers = "python_version < \"3.8\""} [package.extras] -testing = ["pytest-flake8 (>=1.1.1)", "jsonlib", "enum34", "pytest-flake8 (<1.1.0)", "sqlalchemy", "scikit-learn", "pymongo", "pandas", "numpy", "feedparser", "ecdsa", "pytest-cov", "pytest-black-multipy", "pytest-checkdocs (>=1.2.3)", "pytest (>=3.5,!=3.7.3)"] -"testing.libs" = ["yajl", "ujson", "simplejson"] -docs = ["rst.linker (>=1.9)", "jaraco.packaging (>=3.2)", "sphinx"] +docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"] +testing = ["pytest (>=3.5,!=3.7.3)", "pytest-checkdocs (>=1.2.3)", "pytest-black-multipy", "pytest-cov", "ecdsa", "feedparser", "numpy", "pandas", "pymongo", "scikit-learn", "sqlalchemy", "pytest-flake8 (<1.1.0)", "enum34", "jsonlib", "pytest-flake8 (>=1.1.1)"] +"testing.libs" = ["simplejson", "ujson", "yajl"] [[package]] name = "jsonschema" @@ -1569,7 +1582,7 @@ python-versions = "*" [[package]] name = "moto" -version = "4.0.7" +version = "4.0.9" description = "A library that allows your python tests to easily mock out the boto library" category = "dev" optional = false @@ -1586,11 +1599,10 @@ python-dateutil = ">=2.1,<3.0.0" pytz = "*" requests = ">=2.5" responses = ">=0.13.0" -werkzeug = ">=0.5,<2.2.0" +werkzeug = ">=0.5,<2.2.0 || >2.2.0,<2.2.1 || >2.2.1" xmltodict = "*" [package.extras] -ssm = ["PyYAML (>=5.1)", "dataclasses"] all = ["PyYAML (>=5.1)", "python-jose[cryptography] (>=3.1.0,<4.0.0)", "ecdsa (!=0.15)", "docker (>=2.5.1)", "graphql-core", "jsondiff (>=1.1.2)", "aws-xray-sdk (>=0.93,!=0.96)", "idna (>=2.5,<4)", "cfn-lint (>=0.4.0)", "sshpubkeys (>=3.1.0)", "pyparsing (>=3.0.7)", "openapi-spec-validator (>=0.2.8)", "setuptools"] apigateway = ["PyYAML (>=5.1)", "python-jose[cryptography] (>=3.1.0,<4.0.0)", "ecdsa (!=0.15)", "openapi-spec-validator (>=0.2.8)"] apigatewayv2 = ["PyYAML (>=5.1)"] @@ -1610,7 +1622,8 @@ glue = ["pyparsing (>=3.0.7)"] iotdata = ["jsondiff (>=1.1.2)"] route53resolver = ["sshpubkeys (>=3.1.0)"] s3 = ["PyYAML (>=5.1)"] -server = ["PyYAML (>=5.1)", "python-jose[cryptography] (>=3.1.0,<4.0.0)", "ecdsa (!=0.15)", "docker (>=2.5.1)", "graphql-core", "jsondiff (>=1.1.2)", "aws-xray-sdk (>=0.93,!=0.96)", "idna (>=2.5,<4)", "cfn-lint (>=0.4.0)", "sshpubkeys (>=3.1.0)", "pyparsing (>=3.0.7)", "openapi-spec-validator (>=0.2.8)", "setuptools", "flask (<2.2.0)", "flask-cors"] +server = ["PyYAML (>=5.1)", "python-jose[cryptography] (>=3.1.0,<4.0.0)", "ecdsa (!=0.15)", "docker (>=2.5.1)", "graphql-core", "jsondiff (>=1.1.2)", "aws-xray-sdk (>=0.93,!=0.96)", "idna (>=2.5,<4)", "cfn-lint (>=0.4.0)", "sshpubkeys (>=3.1.0)", "pyparsing (>=3.0.7)", "openapi-spec-validator (>=0.2.8)", "setuptools", "flask (!=2.2.0,!=2.2.1)", "flask-cors"] +ssm = ["PyYAML (>=5.1)", "dataclasses"] xray = ["aws-xray-sdk (>=0.93,!=0.96)", "setuptools"] [[package]] @@ -1649,7 +1662,7 @@ python-versions = ">=3.6" [[package]] name = "murmurhash" -version = "1.0.8" +version = "1.0.9" description = "Cython bindings for MurmurHash" category = "main" optional = true @@ -1670,9 +1683,9 @@ typed-ast = {version = ">=1.4.0,<2", markers = "python_version < \"3.8\""} typing-extensions = ">=3.10" [package.extras] -reports = ["lxml"] -python2 = ["typed-ast (>=1.4.0,<2)"] dmypy = ["psutil (>=4.0)"] +python2 = ["typed-ast (>=1.4.0,<2)"] +reports = ["lxml"] [[package]] name = "mypy-extensions" @@ -1717,9 +1730,25 @@ category = "main" optional = false python-versions = ">=3.7,<3.11" +[[package]] +name = "numpy" +version = "1.22.4" +description = "NumPy is the fundamental package for array computing with Python." +category = "main" +optional = false +python-versions = ">=3.8" + +[[package]] +name = "numpy" +version = "1.23.4" +description = "NumPy is the fundamental package for array computing with Python." +category = "main" +optional = false +python-versions = ">=3.8" + [[package]] name = "oauthlib" -version = "3.2.1" +version = "3.2.2" description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" category = "main" optional = false @@ -1781,7 +1810,7 @@ locket = "*" toolz = "*" [package.extras] -complete = ["blosc", "pyzmq", "pandas (>=0.19.0)", "numpy (>=1.9.0)"] +complete = ["numpy (>=1.9.0)", "pandas (>=0.19.0)", "pyzmq", "blosc"] [[package]] name = "pathspec" @@ -1811,7 +1840,7 @@ test = ["pytest", "pytest-coverage", "mock", "typer-cli"] [[package]] name = "pbr" -version = "5.10.0" +version = "5.11.0" description = "Python Build Reasonableness" category = "dev" optional = false @@ -1830,7 +1859,7 @@ packaging = ">=20.3,<21.0" [[package]] name = "pillow" -version = "9.2.0" +version = "9.3.0" description = "Python Imaging Library (Fork)" category = "main" optional = false @@ -1850,15 +1879,15 @@ python-versions = ">=3.6" [[package]] name = "platformdirs" -version = "2.5.2" -description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +version = "2.5.3" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "dev" optional = false python-versions = ">=3.7" [package.extras] -docs = ["furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx-autodoc-typehints (>=1.12)", "sphinx (>=4)"] -test = ["appdirs (==1.4.4)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)", "pytest (>=6)"] +docs = ["furo (>=2022.9.29)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.19.4)", "sphinx (>=5.3)"] +test = ["appdirs (==1.4.4)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.2)"] [[package]] name = "pluggy" @@ -1877,7 +1906,7 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "preshed" -version = "3.0.7" +version = "3.0.8" description = "Cython hash table that trusts the keys are pre-hashed" category = "main" optional = true @@ -1908,7 +1937,7 @@ python-versions = ">=3.5" [[package]] name = "psutil" -version = "5.9.2" +version = "5.9.3" description = "Cross-platform lib for process and system monitoring in Python." category = "dev" optional = false @@ -1919,7 +1948,7 @@ test = ["ipaddress", "mock", "enum34", "pywin32", "wmi"] [[package]] name = "psycopg2-binary" -version = "2.9.4" +version = "2.9.5" description = "psycopg2 - Python-PostgreSQL Database Adapter" category = "main" optional = false @@ -1970,14 +1999,14 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "pydantic" -version = "1.9.2" +version = "1.10.2" description = "Data validation and settings management using python type hints" category = "main" optional = true -python-versions = ">=3.6.1" +python-versions = ">=3.7" [package.dependencies] -typing-extensions = ">=3.7.4.3" +typing-extensions = ">=4.1.0" [package.extras] dotenv = ["python-dotenv (>=0.10.4)"] @@ -2041,19 +2070,18 @@ python-versions = ">=3.6" [[package]] name = "pyjwt" -version = "2.5.0" +version = "2.6.0" description = "JSON Web Token implementation in Python" category = "main" optional = false python-versions = ">=3.7" [package.dependencies] -cryptography = {version = ">=3.3.1", optional = true, markers = "extra == \"crypto\""} -types-cryptography = {version = ">=3.3.21", optional = true, markers = "extra == \"crypto\""} +cryptography = {version = ">=3.4.0", optional = true, markers = "extra == \"crypto\""} [package.extras] -crypto = ["cryptography (>=3.3.1)", "types-cryptography (>=3.3.21)"] -dev = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface", "cryptography (>=3.3.1)", "types-cryptography (>=3.3.21)", "pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)", "pre-commit"] +crypto = ["cryptography (>=3.4.0)"] +dev = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface", "cryptography (>=3.4.0)", "pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)", "pre-commit"] docs = ["sphinx (>=4.5.0,<5.0.0)", "sphinx-rtd-theme", "zope.interface"] tests = ["pytest (>=6.0.0,<7.0.0)", "coverage[toml] (==5.0.4)"] @@ -2119,7 +2147,7 @@ python-versions = "*" [[package]] name = "pyrsistent" -version = "0.18.1" +version = "0.19.2" description = "Persistent/Functional/Immutable data structures" category = "main" optional = false @@ -2127,7 +2155,7 @@ python-versions = ">=3.7" [[package]] name = "pytest" -version = "7.1.3" +version = "7.2.0" description = "pytest: simple powerful testing with Python" category = "dev" optional = false @@ -2136,12 +2164,12 @@ python-versions = ">=3.7" [package.dependencies] attrs = ">=19.2.0" colorama = {version = "*", markers = "sys_platform == \"win32\""} +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""} iniconfig = "*" packaging = "*" pluggy = ">=0.12,<2.0" -py = ">=1.8.2" -tomli = ">=1.0.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} [package.extras] testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] @@ -2265,12 +2293,12 @@ optional = false python-versions = ">=3.6" [package.extras] -client = ["websocket-client (>=0.54.0)", "requests (>=2.21.0)"] asyncio_client = ["aiohttp (>=3.4)"] +client = ["requests (>=2.21.0)", "websocket-client (>=0.54.0)"] [[package]] name = "python-socketio" -version = "5.7.1" +version = "5.7.2" description = "Socket.IO server and client for Python" category = "main" optional = false @@ -2286,7 +2314,7 @@ client = ["requests (>=2.21.0)", "websocket-client (>=0.54.0)"] [[package]] name = "pytz" -version = "2022.4" +version = "2022.6" description = "World timezone definitions, modern and historical" category = "main" optional = false @@ -2414,7 +2442,7 @@ rsa = ["oauthlib[signedtoken] (>=3.0.0)"] [[package]] name = "requests-toolbelt" -version = "0.10.0" +version = "0.10.1" description = "A utility belt for advanced users of python-requests" category = "main" optional = false @@ -2492,7 +2520,7 @@ jinja2 = ["ruamel.yaml.jinja2 (>=0.2)"] [[package]] name = "ruamel.yaml.clib" -version = "0.2.6" +version = "0.2.7" description = "C version of reader, parser and emitter for ruamel.yaml derived from libyaml" category = "main" optional = false @@ -2545,11 +2573,11 @@ uvloop = {version = ">=0.5.3", markers = "sys_platform != \"win32\" and implemen websockets = ">=10.0" [package.extras] -test = ["types-ujson", "uvicorn (<0.15.0)", "pygments", "docutils", "mypy (>=0.901,<0.910)", "bandit", "isort (>=5.0.0)", "black", "flake8", "chardet (>=3.0.0,<4.0.0)", "pytest-benchmark", "pytest-sugar", "pytest-sanic", "beautifulsoup4", "pytest-cov", "gunicorn (==20.0.4)", "coverage (==5.3)", "pytest (==6.2.5)", "sanic-testing (>=0.7.0)"] +dev = ["gunicorn (==20.0.4)", "sanic-testing (>=0.7.0)", "pytest (==6.2.5)", "coverage (==5.3)", "pytest-cov", "beautifulsoup4", "pytest-sanic", "pytest-sugar", "pytest-benchmark", "chardet (>=3.0.0,<4.0.0)", "flake8", "black", "isort (>=5.0.0)", "bandit", "mypy (>=0.901,<0.910)", "docutils", "pygments", "uvicorn (<0.15.0)", "cryptography", "tox", "towncrier", "types-ujson"] +all = ["sphinx-rtd-theme (>=0.4.3)", "isort (>=5.0.0)", "chardet (>=3.0.0,<4.0.0)", "black", "gunicorn (==20.0.4)", "cryptography", "uvicorn (<0.15.0)", "docutils", "pytest-cov", "pytest-sugar", "pytest-benchmark", "mypy (>=0.901,<0.910)", "tox", "mistune (<2.0.0)", "sanic-testing (>=0.7.0)", "flake8", "beautifulsoup4", "pytest (==6.2.5)", "sphinx (>=2.1.2)", "pygments", "pytest-sanic", "coverage (==5.3)", "m2r2", "bandit", "towncrier", "types-ujson"] +docs = ["sphinx (>=2.1.2)", "sphinx-rtd-theme (>=0.4.3)", "docutils", "pygments", "m2r2", "mistune (<2.0.0)"] ext = ["sanic-ext"] -docs = ["mistune (<2.0.0)", "m2r2", "pygments", "docutils", "sphinx-rtd-theme (>=0.4.3)", "sphinx (>=2.1.2)"] -dev = ["types-ujson", "towncrier", "tox", "cryptography", "uvicorn (<0.15.0)", "pygments", "docutils", "mypy (>=0.901,<0.910)", "bandit", "isort (>=5.0.0)", "black", "flake8", "chardet (>=3.0.0,<4.0.0)", "pytest-benchmark", "pytest-sugar", "pytest-sanic", "beautifulsoup4", "pytest-cov", "gunicorn (==20.0.4)", "coverage (==5.3)", "pytest (==6.2.5)", "sanic-testing (>=0.7.0)"] -all = ["types-ujson", "towncrier", "bandit", "m2r2", "coverage (==5.3)", "pytest-sanic", "pygments", "sphinx (>=2.1.2)", "pytest (==6.2.5)", "beautifulsoup4", "flake8", "sanic-testing (>=0.7.0)", "mistune (<2.0.0)", "tox", "mypy (>=0.901,<0.910)", "pytest-benchmark", "pytest-sugar", "pytest-cov", "docutils", "uvicorn (<0.15.0)", "cryptography", "gunicorn (==20.0.4)", "black", "chardet (>=3.0.0,<4.0.0)", "isort (>=5.0.0)", "sphinx-rtd-theme (>=0.4.3)"] +test = ["sanic-testing (>=0.7.0)", "pytest (==6.2.5)", "coverage (==5.3)", "gunicorn (==20.0.4)", "pytest-cov", "beautifulsoup4", "pytest-sanic", "pytest-sugar", "pytest-benchmark", "chardet (>=3.0.0,<4.0.0)", "flake8", "black", "isort (>=5.0.0)", "bandit", "mypy (>=0.901,<0.910)", "docutils", "pygments", "uvicorn (<0.15.0)", "types-ujson"] [[package]] name = "sanic-cors" @@ -2611,10 +2639,30 @@ scipy = ">=1.1.0" threadpoolctl = ">=2.0.0" [package.extras] -tests = ["pyamg (>=4.0.0)", "mypy (>=0.770)", "black (>=21.6b0)", "flake8 (>=3.8.2)", "pytest-cov (>=2.9.0)", "pytest (>=5.0.1)", "pandas (>=0.25.0)", "scikit-image (>=0.14.5)", "matplotlib (>=2.2.3)"] -examples = ["seaborn (>=0.9.0)", "pandas (>=0.25.0)", "scikit-image (>=0.14.5)", "matplotlib (>=2.2.3)"] -docs = ["sphinxext-opengraph (>=0.4.2)", "sphinx-prompt (>=1.3.0)", "Pillow (>=7.1.2)", "numpydoc (>=1.0.0)", "sphinx-gallery (>=0.7.0)", "sphinx (>=4.0.1)", "memory-profiler (>=0.57.0)", "seaborn (>=0.9.0)", "pandas (>=0.25.0)", "scikit-image (>=0.14.5)", "matplotlib (>=2.2.3)"] -benchmark = ["memory-profiler (>=0.57.0)", "pandas (>=0.25.0)", "matplotlib (>=2.2.3)"] +benchmark = ["matplotlib (>=2.2.3)", "pandas (>=0.25.0)", "memory-profiler (>=0.57.0)"] +docs = ["matplotlib (>=2.2.3)", "scikit-image (>=0.14.5)", "pandas (>=0.25.0)", "seaborn (>=0.9.0)", "memory-profiler (>=0.57.0)", "sphinx (>=4.0.1)", "sphinx-gallery (>=0.7.0)", "numpydoc (>=1.0.0)", "Pillow (>=7.1.2)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=2.2.3)", "scikit-image (>=0.14.5)", "pandas (>=0.25.0)", "seaborn (>=0.9.0)"] +tests = ["matplotlib (>=2.2.3)", "scikit-image (>=0.14.5)", "pandas (>=0.25.0)", "pytest (>=5.0.1)", "pytest-cov (>=2.9.0)", "flake8 (>=3.8.2)", "black (>=21.6b0)", "mypy (>=0.770)", "pyamg (>=4.0.0)"] + +[[package]] +name = "scikit-learn" +version = "1.1.3" +description = "A set of python modules for machine learning and data mining" +category = "main" +optional = false +python-versions = ">=3.8" + +[package.dependencies] +joblib = ">=1.0.0" +numpy = ">=1.17.3" +scipy = ">=1.3.2" +threadpoolctl = ">=2.0.0" + +[package.extras] +benchmark = ["matplotlib (>=3.1.2)", "pandas (>=1.0.5)", "memory-profiler (>=0.57.0)"] +docs = ["matplotlib (>=3.1.2)", "scikit-image (>=0.16.2)", "pandas (>=1.0.5)", "seaborn (>=0.9.0)", "memory-profiler (>=0.57.0)", "sphinx (>=4.0.1)", "sphinx-gallery (>=0.7.0)", "numpydoc (>=1.2.0)", "Pillow (>=7.1.2)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=3.1.2)", "scikit-image (>=0.16.2)", "pandas (>=1.0.5)", "seaborn (>=0.9.0)"] +tests = ["matplotlib (>=3.1.2)", "scikit-image (>=0.16.2)", "pandas (>=1.0.5)", "pytest (>=5.0.1)", "pytest-cov (>=2.9.0)", "flake8 (>=3.8.2)", "black (>=22.3.0)", "mypy (>=0.961)", "pyamg (>=4.0.0)", "numpydoc (>=1.2.0)"] [[package]] name = "scipy" @@ -2627,6 +2675,17 @@ python-versions = ">=3.7,<3.11" [package.dependencies] numpy = ">=1.16.5,<1.23.0" +[[package]] +name = "scipy" +version = "1.8.1" +description = "SciPy: Scientific Library for Python" +category = "main" +optional = false +python-versions = ">=3.8,<3.11" + +[package.dependencies] +numpy = ">=1.17.3,<1.25.0" + [[package]] name = "sentencepiece" version = "0.1.97" @@ -2778,7 +2837,7 @@ python-versions = "*" [[package]] name = "spacy" -version = "3.4.1" +version = "3.4.2" description = "Industrial-strength Natural Language Processing (NLP) in Python" category = "main" optional = true @@ -2794,9 +2853,9 @@ numpy = ">=1.15.0" packaging = ">=20.0" pathy = ">=0.3.5" preshed = ">=3.0.2,<3.1.0" -pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<1.10.0" +pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<1.11.0" requests = ">=2.13.0,<3.0.0" -spacy-legacy = ">=3.0.9,<3.1.0" +spacy-legacy = ">=3.0.10,<3.1.0" spacy-loggers = ">=1.0.0,<2.0.0" srsly = ">=2.4.3,<3.0.0" thinc = ">=8.1.0,<8.2.0" @@ -2807,24 +2866,26 @@ wasabi = ">=0.9.1,<1.1.0" [package.extras] apple = ["thinc-apple-ops (>=0.1.0.dev0,<1.0.0)"] -cuda = ["cupy (>=5.0.0b4,<11.0.0)"] -cuda100 = ["cupy-cuda100 (>=5.0.0b4,<11.0.0)"] -cuda101 = ["cupy-cuda101 (>=5.0.0b4,<11.0.0)"] -cuda102 = ["cupy-cuda102 (>=5.0.0b4,<11.0.0)"] -cuda110 = ["cupy-cuda110 (>=5.0.0b4,<11.0.0)"] -cuda111 = ["cupy-cuda111 (>=5.0.0b4,<11.0.0)"] -cuda112 = ["cupy-cuda112 (>=5.0.0b4,<11.0.0)"] -cuda113 = ["cupy-cuda113 (>=5.0.0b4,<11.0.0)"] -cuda114 = ["cupy-cuda114 (>=5.0.0b4,<11.0.0)"] -cuda115 = ["cupy-cuda115 (>=5.0.0b4,<11.0.0)"] -cuda116 = ["cupy-cuda116 (>=5.0.0b4,<11.0.0)"] -cuda117 = ["cupy-cuda117 (>=5.0.0b4,<11.0.0)"] -cuda80 = ["cupy-cuda80 (>=5.0.0b4,<11.0.0)"] -cuda90 = ["cupy-cuda90 (>=5.0.0b4,<11.0.0)"] -cuda91 = ["cupy-cuda91 (>=5.0.0b4,<11.0.0)"] -cuda92 = ["cupy-cuda92 (>=5.0.0b4,<11.0.0)"] +cuda = ["cupy (>=5.0.0b4,<12.0.0)"] +cuda-autodetect = ["cupy-wheel (>=11.0.0,<12.0.0)"] +cuda100 = ["cupy-cuda100 (>=5.0.0b4,<12.0.0)"] +cuda101 = ["cupy-cuda101 (>=5.0.0b4,<12.0.0)"] +cuda102 = ["cupy-cuda102 (>=5.0.0b4,<12.0.0)"] +cuda110 = ["cupy-cuda110 (>=5.0.0b4,<12.0.0)"] +cuda111 = ["cupy-cuda111 (>=5.0.0b4,<12.0.0)"] +cuda112 = ["cupy-cuda112 (>=5.0.0b4,<12.0.0)"] +cuda113 = ["cupy-cuda113 (>=5.0.0b4,<12.0.0)"] +cuda114 = ["cupy-cuda114 (>=5.0.0b4,<12.0.0)"] +cuda115 = ["cupy-cuda115 (>=5.0.0b4,<12.0.0)"] +cuda116 = ["cupy-cuda116 (>=5.0.0b4,<12.0.0)"] +cuda117 = ["cupy-cuda117 (>=5.0.0b4,<12.0.0)"] +cuda11x = ["cupy-cuda11x (>=11.0.0,<12.0.0)"] +cuda80 = ["cupy-cuda80 (>=5.0.0b4,<12.0.0)"] +cuda90 = ["cupy-cuda90 (>=5.0.0b4,<12.0.0)"] +cuda91 = ["cupy-cuda91 (>=5.0.0b4,<12.0.0)"] +cuda92 = ["cupy-cuda92 (>=5.0.0b4,<12.0.0)"] ja = ["sudachipy (>=0.5.2,!=0.6.1)", "sudachidict-core (>=20211220)"] -ko = ["natto-py (==0.9.0)"] +ko = ["natto-py (>=0.9.0)"] lookups = ["spacy-lookups-data (>=1.0.3,<1.1.0)"] ray = ["spacy-ray (>=0.1.0,<1.0.0)"] th = ["pythainlp (>=2.0)"] @@ -2851,7 +2912,7 @@ wasabi = ">=0.8.1,<1.1.0" [[package]] name = "sqlalchemy" -version = "1.4.41" +version = "1.4.43" description = "Database Abstraction Library" category = "main" optional = false @@ -2884,7 +2945,7 @@ sqlcipher = ["sqlcipher3-binary"] [[package]] name = "srsly" -version = "2.4.4" +version = "2.4.5" description = "Modern high-performance serialization utilities for Python" category = "main" optional = true @@ -2895,7 +2956,7 @@ catalogue = ">=2.0.3,<2.1.0" [[package]] name = "stevedore" -version = "3.5.0" +version = "3.5.2" description = "Manage dynamic plugins for Python applications" category = "dev" optional = false @@ -3105,14 +3166,14 @@ tests = ["absl-py", "pytest", "tensorflow-datasets (>=3.2.0)"] [[package]] name = "termcolor" -version = "2.0.1" +version = "2.1.0" description = "ANSI color formatting for output in terminal" category = "main" optional = false python-versions = ">=3.7" [package.extras] -tests = ["pytest-cov", "pytest"] +tests = ["pytest", "pytest-cov"] [[package]] name = "terminaltables" @@ -3132,7 +3193,7 @@ python-versions = "*" [[package]] name = "thinc" -version = "8.1.3" +version = "8.1.5" description = "A refreshing functional take on deep learning, compatible with your favorite libraries" category = "main" optional = true @@ -3369,14 +3430,6 @@ dev = ["autoflake (>=1.3.1,<2.0.0)", "flake8 (>=3.8.3,<4.0.0)", "pre-commit (>=2 doc = ["mkdocs (>=1.1.2,<2.0.0)", "mkdocs-material (>=8.1.4,<9.0.0)", "mdx-include (>=1.4.1,<2.0.0)"] test = ["shellingham (>=1.3.0,<2.0.0)", "pytest (>=4.4.0,<5.4.0)", "pytest-cov (>=2.10.0,<3.0.0)", "coverage (>=5.2,<6.0)", "pytest-xdist (>=1.32.0,<2.0.0)", "pytest-sugar (>=0.9.4,<0.10.0)", "mypy (==0.910)", "black (>=22.3.0,<23.0.0)", "isort (>=5.0.6,<6.0.0)"] -[[package]] -name = "types-cryptography" -version = "3.3.23" -description = "Typing stubs for cryptography" -category = "main" -optional = false -python-versions = "*" - [[package]] name = "types-pkg-resources" version = "0.1.3" @@ -3387,7 +3440,7 @@ python-versions = "*" [[package]] name = "types-python-dateutil" -version = "2.8.19" +version = "2.8.19.2" description = "Typing stubs for python-dateutil" category = "dev" optional = false @@ -3395,7 +3448,7 @@ python-versions = "*" [[package]] name = "types-pytz" -version = "2022.4.0.0" +version = "2022.6.0.1" description = "Typing stubs for pytz" category = "dev" optional = false @@ -3403,7 +3456,7 @@ python-versions = "*" [[package]] name = "types-redis" -version = "4.3.21.1" +version = "4.3.21.3" description = "Typing stubs for redis" category = "dev" optional = false @@ -3422,7 +3475,7 @@ types-urllib3 = "<1.27" [[package]] name = "types-setuptools" -version = "65.4.0.0" +version = "65.5.0.2" description = "Typing stubs for setuptools" category = "dev" optional = false @@ -3430,7 +3483,7 @@ python-versions = "*" [[package]] name = "types-urllib3" -version = "1.26.25" +version = "1.26.25.1" description = "Typing stubs for urllib3" category = "dev" optional = false @@ -3457,7 +3510,7 @@ test = ["pytest"] [[package]] name = "tzdata" -version = "2022.4" +version = "2022.6" description = "Provider of IANA time zone data" category = "main" optional = false @@ -3565,7 +3618,7 @@ requests-toolbelt = "*" [[package]] name = "websockets" -version = "10.3" +version = "10.4" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" category = "main" optional = false @@ -3573,12 +3626,15 @@ python-versions = ">=3.7" [[package]] name = "werkzeug" -version = "2.1.2" +version = "2.2.2" description = "The comprehensive WSGI web application library." category = "main" optional = false python-versions = ">=3.7" +[package.dependencies] +MarkupSafe = ">=2.1.1" + [package.extras] watchdog = ["watchdog"] @@ -3621,7 +3677,7 @@ typing-extensions = {version = ">=3.7.4", markers = "python_version < \"3.8\""} [[package]] name = "zipp" -version = "3.9.0" +version = "3.10.0" description = "Backport of pathlib-compatible object wrapper for zip files" category = "main" optional = false @@ -3642,7 +3698,7 @@ transformers = ["transformers", "sentencepiece"] [metadata] lock-version = "1.1" python-versions = ">=3.7,<3.10" -content-hash = "718db43075c25ca3d9f14cc5da6ea8ef4f9590e7f5fe41b3d60a8ee284a8a44c" +content-hash = "0d01b6848ff850ce06e976b7a800cca3ad4ed580f9c5e0b9510345e9637b6d0f" [metadata.files] absl-py = [] @@ -3650,1035 +3706,255 @@ aio-pika = [] aiofiles = [] aiogram = [] aiohttp = [] -aioresponses = [ - {file = "aioresponses-0.7.3-py2.py3-none-any.whl", hash = "sha256:7b1897169062c92fa87d6ecc503ac566ac87fbfacb2504f8ca81c8035a2eb068"}, - {file = "aioresponses-0.7.3.tar.gz", hash = "sha256:2c64ed5710ee8cb4e958c569184dad12f4c9cd5939135cb38f88c6a8261cceb3"}, -] +aioresponses = [] aiormq = [] aiosignal = [] -analytics-python = [ - {file = "analytics-python-1.4.0.tar.gz", hash = "sha256:a65141ab6e47db396f5bc5708b1db93ff9a99882d81fe808228afd5ebb6dfe5f"}, - {file = "analytics_python-1.4.0-py2.py3-none-any.whl", hash = "sha256:3bff972beeb8a3f26607ccd9153484aa4f12eeeea4a693be685bf45aa66ddf99"}, -] -anyio = [ - {file = "anyio-3.6.1-py3-none-any.whl", hash = "sha256:cb29b9c70620506a9a8f87a309591713446953302d7d995344d0d7c6c0c9a7be"}, - {file = "anyio-3.6.1.tar.gz", hash = "sha256:413adf95f93886e442aea925f3ee43baa5a765a64a0f52c6081894f9992fdd0b"}, -] +analytics-python = [] +anyio = [] apscheduler = [] -astunparse = [ - {file = "astunparse-1.6.3-py2.py3-none-any.whl", hash = "sha256:c2652417f2c8b5bb325c885ae329bdf3f86424075c4fd1a128674bc6fba4b8e8"}, - {file = "astunparse-1.6.3.tar.gz", hash = "sha256:5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872"}, -] -async-generator = [ - {file = "async_generator-1.10-py3-none-any.whl", hash = "sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b"}, - {file = "async_generator-1.10.tar.gz", hash = "sha256:6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144"}, -] +astunparse = [] +async-generator = [] async-timeout = [] asynctest = [] attrs = [] azure-core = [] -azure-storage-blob = [ - {file = "azure-storage-blob-12.11.0.zip", hash = "sha256:49535b3190bb69d0d9ff7a383246b14da4d2b1bdff60cae5f9173920c67ca7ee"}, - {file = "azure_storage_blob-12.11.0-py3-none-any.whl", hash = "sha256:f3dfa605aefb453e7489328b76811a937a411761d7a1613a58c3975c556ec778"}, -] +azure-storage-blob = [] babel = [] -backoff = [ - {file = "backoff-1.10.0-py2.py3-none-any.whl", hash = "sha256:5e73e2cbe780e1915a204799dba0a01896f45f4385e636bcca7a0614d879d0cd"}, - {file = "backoff-1.10.0.tar.gz", hash = "sha256:b8fba021fac74055ac05eb7c7bfce4723aedde6cd0a504e5326bcb0bdd6d19a4"}, -] +backoff = [] "backports.zoneinfo" = [] -bandit = [ - {file = "bandit-1.7.4-py3-none-any.whl", hash = "sha256:412d3f259dab4077d0e7f0c11f50f650cc7d10db905d98f6520a95a18049658a"}, - {file = "bandit-1.7.4.tar.gz", hash = "sha256:2d63a8c573417bae338962d4b9b06fbc6080f74ecd955a092849e1e65c717bd2"}, -] -bidict = [ - {file = "bidict-0.22.0-py3-none-any.whl", hash = "sha256:415126d23a0c81e1a8c584a8fb1f6905ea090c772571803aeee0a2242e8e7ba0"}, - {file = "bidict-0.22.0.tar.gz", hash = "sha256:5c826b3e15e97cc6e615de295756847c282a79b79c5430d3bfc909b1ac9f5bd8"}, -] +bandit = [] +bidict = [] black = [] blis = [] boto3 = [] botocore = [] cachecontrol = [] -cachetools = [ - {file = "cachetools-5.2.0-py3-none-any.whl", hash = "sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db"}, - {file = "cachetools-5.2.0.tar.gz", hash = "sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757"}, -] +cachetools = [] catalogue = [] certifi = [] cffi = [] charset-normalizer = [] -click = [ - {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, - {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, -] -click-default-group = [ - {file = "click-default-group-1.2.2.tar.gz", hash = "sha256:d9560e8e8dfa44b3562fbc9425042a0fd6d21956fcc2db0077f63f34253ab904"}, -] +click = [] +click-default-group = [] cloudpickle = [] -colorama = [ - {file = "colorama-0.4.5-py2.py3-none-any.whl", hash = "sha256:854bf444933e37f5824ae7bfc1e98d5bce2ebe4160d46b5edf346a89358e99da"}, - {file = "colorama-0.4.5.tar.gz", hash = "sha256:e6c6b4334fc50988a639d9b98aa429a0b57da6e17b9a44f0451f930b6967b7a4"}, -] -colorclass = [ - {file = "colorclass-2.2.2-py2.py3-none-any.whl", hash = "sha256:6f10c273a0ef7a1150b1120b6095cbdd68e5cf36dfd5d0fc957a2500bbf99a55"}, - {file = "colorclass-2.2.2.tar.gz", hash = "sha256:6d4fe287766166a98ca7bc6f6312daf04a0481b1eda43e7173484051c0ab4366"}, -] -coloredlogs = [ - {file = "coloredlogs-15.0.1-py2.py3-none-any.whl", hash = "sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934"}, - {file = "coloredlogs-15.0.1.tar.gz", hash = "sha256:7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0"}, -] +colorama = [] +colorclass = [] +coloredlogs = [] colorhash = [] confection = [] coverage = [] -coveralls = [ - {file = "coveralls-3.3.1-py2.py3-none-any.whl", hash = "sha256:f42015f31d386b351d4226389b387ae173207058832fbf5c8ec4b40e27b16026"}, - {file = "coveralls-3.3.1.tar.gz", hash = "sha256:b32a8bb5d2df585207c119d6c01567b81fba690c9c10a753bfe27a335bfc43ea"}, -] +coveralls = [] cryptography = [] -cycler = [ - {file = "cycler-0.11.0-py3-none-any.whl", hash = "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3"}, - {file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"}, -] -cymem = [ - {file = "cymem-2.0.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:700540b68e96a7056d0691d467df2bbaaf0934a3e6fe2383669998cbee19580a"}, - {file = "cymem-2.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:971cf0a8437dfb4185c3049c086e463612fe849efadc0f5cc153fc81c501da7d"}, - {file = "cymem-2.0.6-cp310-cp310-win_amd64.whl", hash = "sha256:6b0d1a6b0a1296f31fa9e4b7ae5ea49394084ecc883b1ae6fec4844403c43468"}, - {file = "cymem-2.0.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b8e1c18bb00800425576710468299153caad20c64ddb6819d40a6a34e21ee21c"}, - {file = "cymem-2.0.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:492084aef23ac2ff3da3729e9d36340bc91a96c2dc8c3a82a1926e384ab52412"}, - {file = "cymem-2.0.6-cp36-cp36m-win_amd64.whl", hash = "sha256:af3c01e6b20f9e6c07c7d7cdb7f710e49889d3906c9a3e039546ee6636a34b9a"}, - {file = "cymem-2.0.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:d7a59cef8f2fa25d12e2c30138f8623acbd43ad2715e730a709e49c5eef8e1b0"}, - {file = "cymem-2.0.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd52d8a81881804625df88453611175ab7e0099b34f52204da1f6940cf2e83c9"}, - {file = "cymem-2.0.6-cp37-cp37m-win_amd64.whl", hash = "sha256:4749f220e4c06ec44eb10de13794ff0508cdc4f8eff656cf49cab2cdb3122c0c"}, - {file = "cymem-2.0.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2aa3fa467d906cd2c27fa0a2e2952dd7925f5fcc7973fab6d815ef6acb25aad8"}, - {file = "cymem-2.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea535f74ab6024e7416f93de564e5c81fb7c0964b96280de66f60aeb05f0cf53"}, - {file = "cymem-2.0.6-cp38-cp38-win_amd64.whl", hash = "sha256:4f87fe087f2ae36c3e20e2b1a29d7f76a28c035372d0a97655f26223d975235a"}, - {file = "cymem-2.0.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a93fba62fe79dbf6fc4d5b6d804a6e114b44af3ff3d40a28833ee39f21bd336b"}, - {file = "cymem-2.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:04676d696596b0db3f3c5a3936bab12fb6f24278921a6622bb185e61765b2b4d"}, - {file = "cymem-2.0.6-cp39-cp39-win_amd64.whl", hash = "sha256:c59293b232b53ebb47427f16cf648e937022f489cff36c11d1d8a1f0075b6609"}, - {file = "cymem-2.0.6.tar.gz", hash = "sha256:169725b5816959d34de2545b33fee6a8021a6e08818794a426c5a4f981f17e5e"}, -] -dask = [ - {file = "dask-2022.2.0-py3-none-any.whl", hash = "sha256:feaf838faa23150faadaeb2483e8612cfb8fed51f62e635a1a6dd55d1d793ba4"}, - {file = "dask-2022.2.0.tar.gz", hash = "sha256:cefb5c63d1e26f6dfa650ddd1eb1a53e0cef623141b838820c6b34e6534ea409"}, -] +cycler = [] +cymem = [] +dask = [] databind = [] "databind.core" = [] "databind.json" = [] datadog = [] datadog-api-client = [] -deprecated = [ - {file = "Deprecated-1.2.13-py2.py3-none-any.whl", hash = "sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d"}, - {file = "Deprecated-1.2.13.tar.gz", hash = "sha256:43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d"}, -] -dnspython = [ - {file = "dnspython-1.16.0-py2.py3-none-any.whl", hash = "sha256:f69c21288a962f4da86e56c4905b49d11aba7938d3d740e80d9e366ee4f1632d"}, - {file = "dnspython-1.16.0.zip", hash = "sha256:36c5e8e38d4369a08b6780b7f27d790a292b2b08eea01607865bf0936c558e01"}, -] -docopt = [ - {file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"}, -] +deprecated = [] +dnspython = [] +docopt = [] docspec = [] docspec-python = [] docstring-parser = [] -execnet = [ - {file = "execnet-1.9.0-py2.py3-none-any.whl", hash = "sha256:a295f7cc774947aac58dde7fdc85f4aa00c42adf5d8f5468fc630c1acf30a142"}, - {file = "execnet-1.9.0.tar.gz", hash = "sha256:8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5"}, -] +exceptiongroup = [] +execnet = [] fakeredis = [] -fbmessenger = [ - {file = "fbmessenger-6.0.0-py2.py3-none-any.whl", hash = "sha256:82cffd6e2fe02bfcf8ed083c59bdddcfdaa594dd0040f0c49eabbaf0e58d974c"}, - {file = "fbmessenger-6.0.0.tar.gz", hash = "sha256:6e42c4588a4c942547be228886278bbc7a084e0b34799c7e6ebd786129f021e6"}, -] +fbmessenger = [] filelock = [] -fire = [ - {file = "fire-0.4.0.tar.gz", hash = "sha256:c5e2b8763699d1142393a46d0e3e790c5eb2f0706082df8f647878842c216a62"}, -] +fire = [] flake8 = [] -flake8-docstrings = [ - {file = "flake8-docstrings-1.6.0.tar.gz", hash = "sha256:9fe7c6a306064af8e62a055c2f61e9eb1da55f84bb39caef2b84ce53708ac34b"}, - {file = "flake8_docstrings-1.6.0-py2.py3-none-any.whl", hash = "sha256:99cac583d6c7e32dd28bbfbef120a7c0d1b6dde4adb5a9fd441c4227a6534bde"}, -] +flake8-docstrings = [] flatbuffers = [] fonttools = [] freezegun = [] frozenlist = [] fsspec = [] -future = [ - {file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"}, -] +future = [] gast = [] -gitdb = [ - {file = "gitdb-4.0.9-py3-none-any.whl", hash = "sha256:8033ad4e853066ba6ca92050b9df2f89301b8fc8bf7e9324d412a63f8bf1a8fd"}, - {file = "gitdb-4.0.9.tar.gz", hash = "sha256:bac2fd45c0a1c9cf619e63a90d62bdc63892ef92387424b855792a6cabe789aa"}, -] -"github3.py" = [ - {file = "github3.py-1.3.0-py2.py3-none-any.whl", hash = "sha256:50833b5da35546b8cced0e8d7ff4c50a9afc2c8e46cc4d07dc4b66d26467c708"}, - {file = "github3.py-1.3.0.tar.gz", hash = "sha256:15a115c18f7bfcf934dfef7ab103844eb9f620c586bad65967708926da47cbda"}, -] +gitdb = [] +"github3.py" = [] gitpython = [] google-api-core = [] google-auth = [] -google-auth-oauthlib = [ - {file = "google-auth-oauthlib-0.4.6.tar.gz", hash = "sha256:a90a072f6993f2c327067bf65270046384cda5a8ecb20b94ea9a687f1f233a7a"}, - {file = "google_auth_oauthlib-0.4.6-py2.py3-none-any.whl", hash = "sha256:3f2a6e802eebbb6fb736a370fbf3b055edcb6b52878bf2f26330b5e041316c73"}, -] +google-auth-oauthlib = [] google-cloud-core = [] google-cloud-storage = [] google-crc32c = [] -google-pasta = [ - {file = "google-pasta-0.2.0.tar.gz", hash = "sha256:c9f2c8dfc8f96d0d5808299920721be30c9eec37f2389f28904f454565c8a16e"}, - {file = "google_pasta-0.2.0-py2-none-any.whl", hash = "sha256:4612951da876b1a10fe3960d7226f0c7682cf901e16ac06e473b267a5afa8954"}, - {file = "google_pasta-0.2.0-py3-none-any.whl", hash = "sha256:b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed"}, -] +google-pasta = [] google-resumable-media = [] googleapis-common-protos = [] greenlet = [] grpcio = [] -h11 = [ - {file = "h11-0.12.0-py3-none-any.whl", hash = "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6"}, - {file = "h11-0.12.0.tar.gz", hash = "sha256:47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042"}, -] -h5py = [ - {file = "h5py-3.7.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d77af42cb751ad6cc44f11bae73075a07429a5cf2094dfde2b1e716e059b3911"}, - {file = "h5py-3.7.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:63beb8b7b47d0896c50de6efb9a1eaa81dbe211f3767e7dd7db159cea51ba37a"}, - {file = "h5py-3.7.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:04e2e1e2fc51b8873e972a08d2f89625ef999b1f2d276199011af57bb9fc7851"}, - {file = "h5py-3.7.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f73307c876af49aa869ec5df1818e9bb0bdcfcf8a5ba773cc45a4fba5a286a5c"}, - {file = "h5py-3.7.0-cp310-cp310-win_amd64.whl", hash = "sha256:f514b24cacdd983e61f8d371edac8c1b780c279d0acb8485639e97339c866073"}, - {file = "h5py-3.7.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:43fed4d13743cf02798a9a03a360a88e589d81285e72b83f47d37bb64ed44881"}, - {file = "h5py-3.7.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c038399ce09a58ff8d89ec3e62f00aa7cb82d14f34e24735b920e2a811a3a426"}, - {file = "h5py-3.7.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03d64fb86bb86b978928bad923b64419a23e836499ec6363e305ad28afd9d287"}, - {file = "h5py-3.7.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e5b7820b75f9519499d76cc708e27242ccfdd9dfb511d6deb98701961d0445aa"}, - {file = "h5py-3.7.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a9351d729ea754db36d175098361b920573fdad334125f86ac1dd3a083355e20"}, - {file = "h5py-3.7.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6776d896fb90c5938de8acb925e057e2f9f28755f67ec3edcbc8344832616c38"}, - {file = "h5py-3.7.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0a047fddbe6951bce40e9cde63373c838a978c5e05a011a682db9ba6334b8e85"}, - {file = "h5py-3.7.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0798a9c0ff45f17d0192e4d7114d734cac9f8b2b2c76dd1d923c4d0923f27bb6"}, - {file = "h5py-3.7.0-cp38-cp38-win_amd64.whl", hash = "sha256:0d8de8cb619fc597da7cf8cdcbf3b7ff8c5f6db836568afc7dc16d21f59b2b49"}, - {file = "h5py-3.7.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f084bbe816907dfe59006756f8f2d16d352faff2d107f4ffeb1d8de126fc5dc7"}, - {file = "h5py-3.7.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1fcb11a2dc8eb7ddcae08afd8fae02ba10467753a857fa07a404d700a93f3d53"}, - {file = "h5py-3.7.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ed43e2cc4f511756fd664fb45d6b66c3cbed4e3bd0f70e29c37809b2ae013c44"}, - {file = "h5py-3.7.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e7535df5ee3dc3e5d1f408fdfc0b33b46bc9b34db82743c82cd674d8239b9ad"}, - {file = "h5py-3.7.0-cp39-cp39-win_amd64.whl", hash = "sha256:9e2ad2aa000f5b1e73b5dfe22f358ca46bf1a2b6ca394d9659874d7fc251731a"}, - {file = "h5py-3.7.0.tar.gz", hash = "sha256:3fcf37884383c5da64846ab510190720027dca0768def34dd8dcb659dbe5cbf3"}, -] +h11 = [] +h5py = [] httpcore = [] httptools = [] httpx = [] huggingface-hub = [] -humanfriendly = [ - {file = "humanfriendly-10.0-py2.py3-none-any.whl", hash = "sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477"}, - {file = "humanfriendly-10.0.tar.gz", hash = "sha256:6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc"}, -] +humanfriendly = [] idna = [] -importlib-metadata = [ - {file = "importlib_metadata-4.2.0-py3-none-any.whl", hash = "sha256:057e92c15bc8d9e8109738a48db0ccb31b4d9d5cfbee5a8670879a30be66304b"}, - {file = "importlib_metadata-4.2.0.tar.gz", hash = "sha256:b7e52a1f8dec14a75ea73e0891f3060099ca1d8e6a462a4dff11c3e119ea1b31"}, -] +importlib-metadata = [] importlib-resources = [] -incremental = [ - {file = "incremental-21.3.0-py2.py3-none-any.whl", hash = "sha256:92014aebc6a20b78a8084cdd5645eeaa7f74b8933f70fa3ada2cfbd1e3b54321"}, - {file = "incremental-21.3.0.tar.gz", hash = "sha256:02f5de5aff48f6b9f665d99d48bfc7ec03b6e3943210de7cfc88856d755d6f57"}, -] -iniconfig = [ - {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, - {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, -] -ipaddress = [ - {file = "ipaddress-1.0.23-py2.py3-none-any.whl", hash = "sha256:6e0f4a39e66cb5bb9a137b00276a2eff74f93b71dcbdad6f10ff7df9d3557fcc"}, - {file = "ipaddress-1.0.23.tar.gz", hash = "sha256:b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2"}, -] -isodate = [ - {file = "isodate-0.6.1-py2.py3-none-any.whl", hash = "sha256:0751eece944162659049d35f4f549ed815792b38793f07cf73381c1c87cbed96"}, - {file = "isodate-0.6.1.tar.gz", hash = "sha256:48c5881de7e8b0a0d648cb024c8062dc84e7b840ed81e864c7614fd3c127bde9"}, -] -jieba = [ - {file = "jieba-0.42.1.tar.gz", hash = "sha256:055ca12f62674fafed09427f176506079bc135638a14e23e25be909131928db2"}, -] -jinja2 = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, -] +incremental = [] +iniconfig = [] +ipaddress = [] +isodate = [] +jieba = [] +jinja2 = [] jmespath = [] joblib = [] jsonpickle = [] jsonschema = [] jwcrypto = [] -kafka-python = [ - {file = "kafka-python-2.0.2.tar.gz", hash = "sha256:04dfe7fea2b63726cd6f3e79a2d86e709d608d74406638c5da33a01d45a9d7e3"}, - {file = "kafka_python-2.0.2-py2.py3-none-any.whl", hash = "sha256:2d92418c7cb1c298fa6c7f0fb3519b520d0d7526ac6cb7ae2a4fc65a51a94b6e"}, -] +kafka-python = [] keras = [] -keras-preprocessing = [ - {file = "Keras_Preprocessing-1.1.2-py2.py3-none-any.whl", hash = "sha256:7b82029b130ff61cc99b55f3bd27427df4838576838c5b2f65940e4fcec99a7b"}, - {file = "Keras_Preprocessing-1.1.2.tar.gz", hash = "sha256:add82567c50c8bc648c14195bf544a5ce7c1f76761536956c3d2978970179ef3"}, -] +keras-preprocessing = [] kiwisolver = [] -langcodes = [ - {file = "langcodes-3.3.0-py3-none-any.whl", hash = "sha256:4d89fc9acb6e9c8fdef70bcdf376113a3db09b67285d9e1d534de6d8818e7e69"}, - {file = "langcodes-3.3.0.tar.gz", hash = "sha256:794d07d5a28781231ac335a1561b8442f8648ca07cd518310aeb45d6f0807ef6"}, -] +langcodes = [] libclang = [] -locket = [ - {file = "locket-1.0.0-py2.py3-none-any.whl", hash = "sha256:b6c819a722f7b6bd955b80781788e4a66a55628b858d347536b7e81325a3a5e3"}, - {file = "locket-1.0.0.tar.gz", hash = "sha256:5c0d4c052a8bbbf750e056a8e65ccd309086f4f0f18a2eac306a8dfa4112a632"}, -] -markdown = [ - {file = "Markdown-3.3.5-py3-none-any.whl", hash = "sha256:0d2d09f75cb8d1ffc6770c65c61770b23a61708101f47bda416a002a0edbc480"}, - {file = "Markdown-3.3.5.tar.gz", hash = "sha256:26e9546bfbcde5fcd072bd8f612c9c1b6e2677cb8aadbdf65206674f46dde069"}, -] -markupsafe = [ - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, - {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, -] +locket = [] +markdown = [] +markupsafe = [] matplotlib = [] -mattermostwrapper = [ - {file = "mattermostwrapper-2.2.tar.gz", hash = "sha256:df17c4224b15c54d959addb12e83e3f1ada34bdb1fbed1048b7b9900d9cff53e"}, -] +mattermostwrapper = [] mccabe = [] memory-profiler = [] mongomock = [] -monotonic = [ - {file = "monotonic-1.6-py2.py3-none-any.whl", hash = "sha256:68687e19a14f11f26d140dd5c86f3dba4bf5df58003000ed467e0e2a69bca96c"}, - {file = "monotonic-1.6.tar.gz", hash = "sha256:3a55207bcfed53ddd5c5bae174524062935efed17792e9de2ad0205ce9ad63f7"}, -] +monotonic = [] moto = [] -msgpack = [ - {file = "msgpack-1.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4ab251d229d10498e9a2f3b1e68ef64cb393394ec477e3370c457f9430ce9250"}, - {file = "msgpack-1.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:112b0f93202d7c0fef0b7810d465fde23c746a2d482e1e2de2aafd2ce1492c88"}, - {file = "msgpack-1.0.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:002b5c72b6cd9b4bafd790f364b8480e859b4712e91f43014fe01e4f957b8467"}, - {file = "msgpack-1.0.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35bc0faa494b0f1d851fd29129b2575b2e26d41d177caacd4206d81502d4c6a6"}, - {file = "msgpack-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4733359808c56d5d7756628736061c432ded018e7a1dff2d35a02439043321aa"}, - {file = "msgpack-1.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb514ad14edf07a1dbe63761fd30f89ae79b42625731e1ccf5e1f1092950eaa6"}, - {file = "msgpack-1.0.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c23080fdeec4716aede32b4e0ef7e213c7b1093eede9ee010949f2a418ced6ba"}, - {file = "msgpack-1.0.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:49565b0e3d7896d9ea71d9095df15b7f75a035c49be733051c34762ca95bbf7e"}, - {file = "msgpack-1.0.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:aca0f1644d6b5a73eb3e74d4d64d5d8c6c3d577e753a04c9e9c87d07692c58db"}, - {file = "msgpack-1.0.4-cp310-cp310-win32.whl", hash = "sha256:0dfe3947db5fb9ce52aaea6ca28112a170db9eae75adf9339a1aec434dc954ef"}, - {file = "msgpack-1.0.4-cp310-cp310-win_amd64.whl", hash = "sha256:4dea20515f660aa6b7e964433b1808d098dcfcabbebeaaad240d11f909298075"}, - {file = "msgpack-1.0.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e83f80a7fec1a62cf4e6c9a660e39c7f878f603737a0cdac8c13131d11d97f52"}, - {file = "msgpack-1.0.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c11a48cf5e59026ad7cb0dc29e29a01b5a66a3e333dc11c04f7e991fc5510a9"}, - {file = "msgpack-1.0.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1276e8f34e139aeff1c77a3cefb295598b504ac5314d32c8c3d54d24fadb94c9"}, - {file = "msgpack-1.0.4-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6c9566f2c39ccced0a38d37c26cc3570983b97833c365a6044edef3574a00c08"}, - {file = "msgpack-1.0.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:fcb8a47f43acc113e24e910399376f7277cf8508b27e5b88499f053de6b115a8"}, - {file = "msgpack-1.0.4-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:76ee788122de3a68a02ed6f3a16bbcd97bc7c2e39bd4d94be2f1821e7c4a64e6"}, - {file = "msgpack-1.0.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:0a68d3ac0104e2d3510de90a1091720157c319ceeb90d74f7b5295a6bee51bae"}, - {file = "msgpack-1.0.4-cp36-cp36m-win32.whl", hash = "sha256:85f279d88d8e833ec015650fd15ae5eddce0791e1e8a59165318f371158efec6"}, - {file = "msgpack-1.0.4-cp36-cp36m-win_amd64.whl", hash = "sha256:c1683841cd4fa45ac427c18854c3ec3cd9b681694caf5bff04edb9387602d661"}, - {file = "msgpack-1.0.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a75dfb03f8b06f4ab093dafe3ddcc2d633259e6c3f74bb1b01996f5d8aa5868c"}, - {file = "msgpack-1.0.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9667bdfdf523c40d2511f0e98a6c9d3603be6b371ae9a238b7ef2dc4e7a427b0"}, - {file = "msgpack-1.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11184bc7e56fd74c00ead4f9cc9a3091d62ecb96e97653add7a879a14b003227"}, - {file = "msgpack-1.0.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ac5bd7901487c4a1dd51a8c58f2632b15d838d07ceedaa5e4c080f7190925bff"}, - {file = "msgpack-1.0.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1e91d641d2bfe91ba4c52039adc5bccf27c335356055825c7f88742c8bb900dd"}, - {file = "msgpack-1.0.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2a2df1b55a78eb5f5b7d2a4bb221cd8363913830145fad05374a80bf0877cb1e"}, - {file = "msgpack-1.0.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:545e3cf0cf74f3e48b470f68ed19551ae6f9722814ea969305794645da091236"}, - {file = "msgpack-1.0.4-cp37-cp37m-win32.whl", hash = "sha256:2cc5ca2712ac0003bcb625c96368fd08a0f86bbc1a5578802512d87bc592fe44"}, - {file = "msgpack-1.0.4-cp37-cp37m-win_amd64.whl", hash = "sha256:eba96145051ccec0ec86611fe9cf693ce55f2a3ce89c06ed307de0e085730ec1"}, - {file = "msgpack-1.0.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:7760f85956c415578c17edb39eed99f9181a48375b0d4a94076d84148cf67b2d"}, - {file = "msgpack-1.0.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:449e57cc1ff18d3b444eb554e44613cffcccb32805d16726a5494038c3b93dab"}, - {file = "msgpack-1.0.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d603de2b8d2ea3f3bcb2efe286849aa7a81531abc52d8454da12f46235092bcb"}, - {file = "msgpack-1.0.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48f5d88c99f64c456413d74a975bd605a9b0526293218a3b77220a2c15458ba9"}, - {file = "msgpack-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6916c78f33602ecf0509cc40379271ba0f9ab572b066bd4bdafd7434dee4bc6e"}, - {file = "msgpack-1.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:81fc7ba725464651190b196f3cd848e8553d4d510114a954681fd0b9c479d7e1"}, - {file = "msgpack-1.0.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d5b5b962221fa2c5d3a7f8133f9abffc114fe218eb4365e40f17732ade576c8e"}, - {file = "msgpack-1.0.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:77ccd2af37f3db0ea59fb280fa2165bf1b096510ba9fe0cc2bf8fa92a22fdb43"}, - {file = "msgpack-1.0.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b17be2478b622939e39b816e0aa8242611cc8d3583d1cd8ec31b249f04623243"}, - {file = "msgpack-1.0.4-cp38-cp38-win32.whl", hash = "sha256:2bb8cdf50dd623392fa75525cce44a65a12a00c98e1e37bf0fb08ddce2ff60d2"}, - {file = "msgpack-1.0.4-cp38-cp38-win_amd64.whl", hash = "sha256:26b8feaca40a90cbe031b03d82b2898bf560027160d3eae1423f4a67654ec5d6"}, - {file = "msgpack-1.0.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:462497af5fd4e0edbb1559c352ad84f6c577ffbbb708566a0abaaa84acd9f3ae"}, - {file = "msgpack-1.0.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2999623886c5c02deefe156e8f869c3b0aaeba14bfc50aa2486a0415178fce55"}, - {file = "msgpack-1.0.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f0029245c51fd9473dc1aede1160b0a29f4a912e6b1dd353fa6d317085b219da"}, - {file = "msgpack-1.0.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed6f7b854a823ea44cf94919ba3f727e230da29feb4a99711433f25800cf747f"}, - {file = "msgpack-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0df96d6eaf45ceca04b3f3b4b111b86b33785683d682c655063ef8057d61fd92"}, - {file = "msgpack-1.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a4192b1ab40f8dca3f2877b70e63799d95c62c068c84dc028b40a6cb03ccd0f"}, - {file = "msgpack-1.0.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0e3590f9fb9f7fbc36df366267870e77269c03172d086fa76bb4eba8b2b46624"}, - {file = "msgpack-1.0.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:1576bd97527a93c44fa856770197dec00d223b0b9f36ef03f65bac60197cedf8"}, - {file = "msgpack-1.0.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:63e29d6e8c9ca22b21846234913c3466b7e4ee6e422f205a2988083de3b08cae"}, - {file = "msgpack-1.0.4-cp39-cp39-win32.whl", hash = "sha256:fb62ea4b62bfcb0b380d5680f9a4b3f9a2d166d9394e9bbd9666c0ee09a3645c"}, - {file = "msgpack-1.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:4d5834a2a48965a349da1c5a79760d94a1a0172fbb5ab6b5b33cbf8447e109ce"}, - {file = "msgpack-1.0.4.tar.gz", hash = "sha256:f5d869c18f030202eb412f08b28d2afeea553d6613aee89e200d7aca7ef01f5f"}, -] -msrest = [ - {file = "msrest-0.7.1-py3-none-any.whl", hash = "sha256:21120a810e1233e5e6cc7fe40b474eeb4ec6f757a15d7cf86702c369f9567c32"}, - {file = "msrest-0.7.1.zip", hash = "sha256:6e7661f46f3afd88b75667b7187a92829924446c7ea1d169be8c4bb7eeb788b9"}, -] -multidict = [ - {file = "multidict-5.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3822c5894c72e3b35aae9909bef66ec83e44522faf767c0ad39e0e2de11d3b55"}, - {file = "multidict-5.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:28e6d883acd8674887d7edc896b91751dc2d8e87fbdca8359591a13872799e4e"}, - {file = "multidict-5.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b61f85101ef08cbbc37846ac0e43f027f7844f3fade9b7f6dd087178caedeee7"}, - {file = "multidict-5.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9b668c065968c5979fe6b6fa6760bb6ab9aeb94b75b73c0a9c1acf6393ac3bf"}, - {file = "multidict-5.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:517d75522b7b18a3385726b54a081afd425d4f41144a5399e5abd97ccafdf36b"}, - {file = "multidict-5.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1b4ac3ba7a97b35a5ccf34f41b5a8642a01d1e55454b699e5e8e7a99b5a3acf5"}, - {file = "multidict-5.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:df23c83398715b26ab09574217ca21e14694917a0c857e356fd39e1c64f8283f"}, - {file = "multidict-5.2.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e58a9b5cc96e014ddf93c2227cbdeca94b56a7eb77300205d6e4001805391747"}, - {file = "multidict-5.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f76440e480c3b2ca7f843ff8a48dc82446b86ed4930552d736c0bac507498a52"}, - {file = "multidict-5.2.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cfde464ca4af42a629648c0b0d79b8f295cf5b695412451716531d6916461628"}, - {file = "multidict-5.2.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0fed465af2e0eb6357ba95795d003ac0bdb546305cc2366b1fc8f0ad67cc3fda"}, - {file = "multidict-5.2.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:b70913cbf2e14275013be98a06ef4b412329fe7b4f83d64eb70dce8269ed1e1a"}, - {file = "multidict-5.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a5635bcf1b75f0f6ef3c8a1ad07b500104a971e38d3683167b9454cb6465ac86"}, - {file = "multidict-5.2.0-cp310-cp310-win32.whl", hash = "sha256:77f0fb7200cc7dedda7a60912f2059086e29ff67cefbc58d2506638c1a9132d7"}, - {file = "multidict-5.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:9416cf11bcd73c861267e88aea71e9fcc35302b3943e45e1dbb4317f91a4b34f"}, - {file = "multidict-5.2.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:fd77c8f3cba815aa69cb97ee2b2ef385c7c12ada9c734b0f3b32e26bb88bbf1d"}, - {file = "multidict-5.2.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:98ec9aea6223adf46999f22e2c0ab6cf33f5914be604a404f658386a8f1fba37"}, - {file = "multidict-5.2.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e5283c0a00f48e8cafcecadebfa0ed1dac8b39e295c7248c44c665c16dc1138b"}, - {file = "multidict-5.2.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5f79c19c6420962eb17c7e48878a03053b7ccd7b69f389d5831c0a4a7f1ac0a1"}, - {file = "multidict-5.2.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e4a67f1080123de76e4e97a18d10350df6a7182e243312426d508712e99988d4"}, - {file = "multidict-5.2.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:94b117e27efd8e08b4046c57461d5a114d26b40824995a2eb58372b94f9fca02"}, - {file = "multidict-5.2.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2e77282fd1d677c313ffcaddfec236bf23f273c4fba7cdf198108f5940ae10f5"}, - {file = "multidict-5.2.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:116347c63ba049c1ea56e157fa8aa6edaf5e92925c9b64f3da7769bdfa012858"}, - {file = "multidict-5.2.0-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:dc3a866cf6c13d59a01878cd806f219340f3e82eed514485e094321f24900677"}, - {file = "multidict-5.2.0-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:ac42181292099d91217a82e3fa3ce0e0ddf3a74fd891b7c2b347a7f5aa0edded"}, - {file = "multidict-5.2.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:f0bb0973f42ffcb5e3537548e0767079420aefd94ba990b61cf7bb8d47f4916d"}, - {file = "multidict-5.2.0-cp36-cp36m-win32.whl", hash = "sha256:ea21d4d5104b4f840b91d9dc8cbc832aba9612121eaba503e54eaab1ad140eb9"}, - {file = "multidict-5.2.0-cp36-cp36m-win_amd64.whl", hash = "sha256:e6453f3cbeb78440747096f239d282cc57a2997a16b5197c9bc839099e1633d0"}, - {file = "multidict-5.2.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:d3def943bfd5f1c47d51fd324df1e806d8da1f8e105cc7f1c76a1daf0f7e17b0"}, - {file = "multidict-5.2.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35591729668a303a02b06e8dba0eb8140c4a1bfd4c4b3209a436a02a5ac1de11"}, - {file = "multidict-5.2.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8cacda0b679ebc25624d5de66c705bc53dcc7c6f02a7fb0f3ca5e227d80422"}, - {file = "multidict-5.2.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:baf1856fab8212bf35230c019cde7c641887e3fc08cadd39d32a421a30151ea3"}, - {file = "multidict-5.2.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:a43616aec0f0d53c411582c451f5d3e1123a68cc7b3475d6f7d97a626f8ff90d"}, - {file = "multidict-5.2.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:25cbd39a9029b409167aa0a20d8a17f502d43f2efebfe9e3ac019fe6796c59ac"}, - {file = "multidict-5.2.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0a2cbcfbea6dc776782a444db819c8b78afe4db597211298dd8b2222f73e9cd0"}, - {file = "multidict-5.2.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:3d2d7d1fff8e09d99354c04c3fd5b560fb04639fd45926b34e27cfdec678a704"}, - {file = "multidict-5.2.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:a37e9a68349f6abe24130846e2f1d2e38f7ddab30b81b754e5a1fde32f782b23"}, - {file = "multidict-5.2.0-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:637c1896497ff19e1ee27c1c2c2ddaa9f2d134bbb5e0c52254361ea20486418d"}, - {file = "multidict-5.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9815765f9dcda04921ba467957be543423e5ec6a1136135d84f2ae092c50d87b"}, - {file = "multidict-5.2.0-cp37-cp37m-win32.whl", hash = "sha256:8b911d74acdc1fe2941e59b4f1a278a330e9c34c6c8ca1ee21264c51ec9b67ef"}, - {file = "multidict-5.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:380b868f55f63d048a25931a1632818f90e4be71d2081c2338fcf656d299949a"}, - {file = "multidict-5.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e7d81ce5744757d2f05fc41896e3b2ae0458464b14b5a2c1e87a6a9d69aefaa8"}, - {file = "multidict-5.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2d1d55cdf706ddc62822d394d1df53573d32a7a07d4f099470d3cb9323b721b6"}, - {file = "multidict-5.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a4771d0d0ac9d9fe9e24e33bed482a13dfc1256d008d101485fe460359476065"}, - {file = "multidict-5.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da7d57ea65744d249427793c042094c4016789eb2562576fb831870f9c878d9e"}, - {file = "multidict-5.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cdd68778f96216596218b4e8882944d24a634d984ee1a5a049b300377878fa7c"}, - {file = "multidict-5.2.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ecc99bce8ee42dcad15848c7885197d26841cb24fa2ee6e89d23b8993c871c64"}, - {file = "multidict-5.2.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:067150fad08e6f2dd91a650c7a49ba65085303fcc3decbd64a57dc13a2733031"}, - {file = "multidict-5.2.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:78c106b2b506b4d895ddc801ff509f941119394b89c9115580014127414e6c2d"}, - {file = "multidict-5.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e6c4fa1ec16e01e292315ba76eb1d012c025b99d22896bd14a66628b245e3e01"}, - {file = "multidict-5.2.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:b227345e4186809d31f22087d0265655114af7cda442ecaf72246275865bebe4"}, - {file = "multidict-5.2.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:06560fbdcf22c9387100979e65b26fba0816c162b888cb65b845d3def7a54c9b"}, - {file = "multidict-5.2.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7878b61c867fb2df7a95e44b316f88d5a3742390c99dfba6c557a21b30180cac"}, - {file = "multidict-5.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:246145bff76cc4b19310f0ad28bd0769b940c2a49fc601b86bfd150cbd72bb22"}, - {file = "multidict-5.2.0-cp38-cp38-win32.whl", hash = "sha256:c30ac9f562106cd9e8071c23949a067b10211917fdcb75b4718cf5775356a940"}, - {file = "multidict-5.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:f19001e790013ed580abfde2a4465388950728861b52f0da73e8e8a9418533c0"}, - {file = "multidict-5.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c1ff762e2ee126e6f1258650ac641e2b8e1f3d927a925aafcfde943b77a36d24"}, - {file = "multidict-5.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bd6c9c50bf2ad3f0448edaa1a3b55b2e6866ef8feca5d8dbec10ec7c94371d21"}, - {file = "multidict-5.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fc66d4016f6e50ed36fb39cd287a3878ffcebfa90008535c62e0e90a7ab713ae"}, - {file = "multidict-5.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9acb76d5f3dd9421874923da2ed1e76041cb51b9337fd7f507edde1d86535d6"}, - {file = "multidict-5.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dfc924a7e946dd3c6360e50e8f750d51e3ef5395c95dc054bc9eab0f70df4f9c"}, - {file = "multidict-5.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:32fdba7333eb2351fee2596b756d730d62b5827d5e1ab2f84e6cbb287cc67fe0"}, - {file = "multidict-5.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b9aad49466b8d828b96b9e3630006234879c8d3e2b0a9d99219b3121bc5cdb17"}, - {file = "multidict-5.2.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:93de39267c4c676c9ebb2057e98a8138bade0d806aad4d864322eee0803140a0"}, - {file = "multidict-5.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f9bef5cff994ca3026fcc90680e326d1a19df9841c5e3d224076407cc21471a1"}, - {file = "multidict-5.2.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:5f841c4f14331fd1e36cbf3336ed7be2cb2a8f110ce40ea253e5573387db7621"}, - {file = "multidict-5.2.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:38ba256ee9b310da6a1a0f013ef4e422fca30a685bcbec86a969bd520504e341"}, - {file = "multidict-5.2.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3bc3b1621b979621cee9f7b09f024ec76ec03cc365e638126a056317470bde1b"}, - {file = "multidict-5.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6ee908c070020d682e9b42c8f621e8bb10c767d04416e2ebe44e37d0f44d9ad5"}, - {file = "multidict-5.2.0-cp39-cp39-win32.whl", hash = "sha256:1c7976cd1c157fa7ba5456ae5d31ccdf1479680dc9b8d8aa28afabc370df42b8"}, - {file = "multidict-5.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:c9631c642e08b9fff1c6255487e62971d8b8e821808ddd013d8ac058087591ac"}, - {file = "multidict-5.2.0.tar.gz", hash = "sha256:0dd1c93edb444b33ba2274b66f63def8a327d607c6c790772f448a53b6ea59ce"}, -] +msgpack = [] +msrest = [] +multidict = [] murmurhash = [] mypy = [] -mypy-extensions = [ - {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, - {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, -] -networkx = [ - {file = "networkx-2.6.3-py3-none-any.whl", hash = "sha256:80b6b89c77d1dfb64a4c7854981b60aeea6360ac02c6d4e4913319e0a313abef"}, - {file = "networkx-2.6.3.tar.gz", hash = "sha256:c0946ed31d71f1b732b5aaa6da5a0388a345019af232ce2f49c766e2d6795c51"}, -] +mypy-extensions = [] +networkx = [] "nr.util" = [] numpy = [] oauthlib = [] -opt-einsum = [ - {file = "opt_einsum-3.3.0-py3-none-any.whl", hash = "sha256:2455e59e3947d3c275477df7f5205b30635e266fe6dc300e3d9f9646bfcea147"}, - {file = "opt_einsum-3.3.0.tar.gz", hash = "sha256:59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549"}, -] -packaging = [ - {file = "packaging-20.9-py2.py3-none-any.whl", hash = "sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a"}, - {file = "packaging-20.9.tar.gz", hash = "sha256:5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5"}, -] +opt-einsum = [] +packaging = [] pamqp = [] partd = [] pathspec = [] pathy = [] pbr = [] -pep440-version-utils = [ - {file = "pep440-version-utils-0.3.0.tar.gz", hash = "sha256:ceb8c8da63b54cc555946d91829f72fe323f8d635b22fa54ef0a9800c37f50df"}, - {file = "pep440_version_utils-0.3.0-py3-none-any.whl", hash = "sha256:73780b2c31adad5ca35c89eb008f51c2a47aee0318debe31391b673b90577e1b"}, -] +pep440-version-utils = [] pillow = [] pkgutil-resolve-name = [] -platformdirs = [ - {file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"}, - {file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"}, -] -pluggy = [ - {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, - {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, -] +platformdirs = [] +pluggy = [] preshed = [] prompt-toolkit = [] protobuf = [] psutil = [] psycopg2-binary = [] -py = [ - {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, - {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, -] -pyasn1 = [ - {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, - {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, - {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, - {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, - {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, - {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, - {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, - {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, - {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, - {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, - {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, - {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, - {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, -] -pyasn1-modules = [ - {file = "pyasn1-modules-0.2.8.tar.gz", hash = "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"}, - {file = "pyasn1_modules-0.2.8-py2.4.egg", hash = "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199"}, - {file = "pyasn1_modules-0.2.8-py2.5.egg", hash = "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"}, - {file = "pyasn1_modules-0.2.8-py2.6.egg", hash = "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb"}, - {file = "pyasn1_modules-0.2.8-py2.7.egg", hash = "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8"}, - {file = "pyasn1_modules-0.2.8-py2.py3-none-any.whl", hash = "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74"}, - {file = "pyasn1_modules-0.2.8-py3.1.egg", hash = "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d"}, - {file = "pyasn1_modules-0.2.8-py3.2.egg", hash = "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45"}, - {file = "pyasn1_modules-0.2.8-py3.3.egg", hash = "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4"}, - {file = "pyasn1_modules-0.2.8-py3.4.egg", hash = "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811"}, - {file = "pyasn1_modules-0.2.8-py3.5.egg", hash = "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed"}, - {file = "pyasn1_modules-0.2.8-py3.6.egg", hash = "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0"}, - {file = "pyasn1_modules-0.2.8-py3.7.egg", hash = "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd"}, -] +py = [] +pyasn1 = [] +pyasn1-modules = [] pycodestyle = [] -pycparser = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, -] +pycparser = [] pydantic = [] pydoc-markdown = [] -pydocstyle = [ - {file = "pydocstyle-6.1.1-py3-none-any.whl", hash = "sha256:6987826d6775056839940041beef5c08cc7e3d71d63149b48e36727f70144dc4"}, - {file = "pydocstyle-6.1.1.tar.gz", hash = "sha256:1d41b7c459ba0ee6c345f2eb9ae827cab14a7533a88c5c6f7e94923f72df92dc"}, -] -pydot = [ - {file = "pydot-1.4.2-py2.py3-none-any.whl", hash = "sha256:66c98190c65b8d2e2382a441b4c0edfdb4f4c025ef9cb9874de478fb0793a451"}, - {file = "pydot-1.4.2.tar.gz", hash = "sha256:248081a39bcb56784deb018977e428605c1c758f10897a339fce1dd728ff007d"}, -] +pydocstyle = [] +pydot = [] pyflakes = [] pyjwt = [] -pykwalify = [ - {file = "pykwalify-1.8.0-py2.py3-none-any.whl", hash = "sha256:731dfa87338cca9f559d1fca2bdea37299116e3139b73f78ca90a543722d6651"}, - {file = "pykwalify-1.8.0.tar.gz", hash = "sha256:796b2ad3ed4cb99b88308b533fb2f559c30fa6efb4fa9fda11347f483d245884"}, -] -pymongo = [ - {file = "pymongo-3.10.1-cp27-cp27m-macosx_10_14_intel.whl", hash = "sha256:a732838c78554c1257ff2492f5c8c4c7312d0aecd7f732149e255f3749edd5ee"}, - {file = "pymongo-3.10.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:358ba4693c01022d507b96a980ded855a32dbdccc3c9331d0667be5e967f30ed"}, - {file = "pymongo-3.10.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:334ef3ffd0df87ea83a0054454336159f8ad9c1b389e19c0032d9cb8410660e6"}, - {file = "pymongo-3.10.1-cp27-cp27m-win32.whl", hash = "sha256:e5c54f04ca42bbb5153aec5d4f2e3d9f81e316945220ac318abd4083308143f5"}, - {file = "pymongo-3.10.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e334c4f39a2863a239d38b5829e442a87f241a92da9941861ee6ec5d6380b7fe"}, - {file = "pymongo-3.10.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:a0794e987d55d2f719cc95fcf980fc62d12b80e287e6a761c4be14c60bd9fecc"}, - {file = "pymongo-3.10.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bbf47110765b2a999803a7de457567389253f8670f7daafb98e059c899ce9764"}, - {file = "pymongo-3.10.1-cp34-cp34m-macosx_10_6_intel.whl", hash = "sha256:56fa55032782b7f8e0bf6956420d11e2d4e9860598dfe9c504edec53af0fc372"}, - {file = "pymongo-3.10.1-cp34-cp34m-manylinux1_i686.whl", hash = "sha256:da2c3220eb55c4239dd8b982e213da0b79023cac59fe54ca09365f2bc7e4ad32"}, - {file = "pymongo-3.10.1-cp34-cp34m-manylinux1_x86_64.whl", hash = "sha256:0fc5aa1b1acf7f61af46fe0414e6a4d0c234b339db4c03a63da48599acf1cbfc"}, - {file = "pymongo-3.10.1-cp34-cp34m-win32.whl", hash = "sha256:2f07b27dbf303ea53f4147a7922ce91a26b34a0011131471d8aaf73151fdee9a"}, - {file = "pymongo-3.10.1-cp34-cp34m-win_amd64.whl", hash = "sha256:7aef381bb9ae8a3821abd7f9d4d93978dbd99072b48522e181baeffcd95b56ae"}, - {file = "pymongo-3.10.1-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:47a00b22c52ee59dffc2aad02d0bbfb20c26ec5b8de8900492bf13ad6901cf35"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:7abc3a6825a346fa4621a6f63e3b662bbb9e0f6ffc32d30a459d695f20fb1a8b"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:9c0a57390549affc2b5dda24a38de03a5c7cbc58750cd161ff5d106c3c6eec80"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:e2b46e092ea54b732d98c476720386ff2ccd126de1e52076b470b117bff7e409"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux2014_i686.whl", hash = "sha256:63752a72ca4d4e1386278bd43d14232f51718b409e7ac86bcf8810826b531113"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux2014_ppc64le.whl", hash = "sha256:b070a4f064a9edb70f921bfdc270725cff7a78c22036dd37a767c51393fb956f"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux2014_s390x.whl", hash = "sha256:6fdc5ccb43864065d40dd838437952e9e3da9821b7eac605ba46ada77f846bdf"}, - {file = "pymongo-3.10.1-cp35-cp35m-manylinux2014_x86_64.whl", hash = "sha256:a676bd2fbc2309092b9bbb0083d35718b5420af3a42135ebb1e4c3633f56604d"}, - {file = "pymongo-3.10.1-cp35-cp35m-win32.whl", hash = "sha256:c9ca545e93a9c2a3bdaa2e6e21f7a43267ff0813e8055adf2b591c13164c0c57"}, - {file = "pymongo-3.10.1-cp35-cp35m-win_amd64.whl", hash = "sha256:316f0cf543013d0c085e15a2c8abe0db70f93c9722c0f99b6f3318ff69477d70"}, - {file = "pymongo-3.10.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:2a3c7ad01553b27ec553688a1e6445e7f40355fb37d925c11fcb50b504e367f8"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:444bf2f44264578c4085bb04493bfed0e5c1b4fe7c2704504d769f955cc78fe4"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:f96333f9d2517c752c20a35ff95de5fc2763ac8cdb1653df0f6f45d281620606"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:a60756d55f0887023b3899e6c2923ba5f0042fb11b1d17810b4e07395404f33e"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:95f970f34b59987dee6f360d2e7d30e181d58957b85dff929eee4423739bd151"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux2014_ppc64le.whl", hash = "sha256:619ac9aaf681434b4d4718d1b31aa2f0fce64f2b3f8435688fcbdc0c818b6c54"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:19adf2848b80cb349b9891cc854581bbf24c338be9a3260e73159bdeb2264464"}, - {file = "pymongo-3.10.1-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:26e707a4eb851ec27bb969b5f1413b9b2eac28fe34271fa72329100317ea7c73"}, - {file = "pymongo-3.10.1-cp36-cp36m-win32.whl", hash = "sha256:18e84a3ec5e73adcb4187b8e5541b2ad61d716026ed9863267e650300d8bea33"}, - {file = "pymongo-3.10.1-cp36-cp36m-win_amd64.whl", hash = "sha256:568d6bee70652d8a5af1cd3eec48b4ca1696fb1773b80719ebbd2925b72cb8f6"}, - {file = "pymongo-3.10.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b6da85949aa91e9f8c521681344bd2e163de894a5492337fba8b05c409225a4f"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:01b4e10027aef5bb9ecefbc26f5df3368ce34aef81df43850f701e716e3fe16d"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:26798795097bdeb571f13942beef7e0b60125397811c75b7aa9214d89880dd1d"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:3a6568bc53103df260f5c7d2da36dffc5202b9a36c85540bba1836a774943794"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:c4aef42e5fa4c9d5a99f751fb79caa880dac7eaf8a65121549318b984676a1b7"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux2014_ppc64le.whl", hash = "sha256:61235cc39b5b2f593086d1d38f3fc130b2d125bd8fc8621d35bc5b6bdeb92bd2"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:c06b3f998d2d7160db58db69adfb807d2ec307e883e2f17f6b87a1ef6c723f11"}, - {file = "pymongo-3.10.1-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:4c067db43b331fc709080d441cb2e157114fec60749667d12186cc3fc8e7a951"}, - {file = "pymongo-3.10.1-cp37-cp37m-win32.whl", hash = "sha256:c318fb70542be16d3d4063cde6010b1e4d328993a793529c15a619251f517c39"}, - {file = "pymongo-3.10.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4c092310f804a5d45a1bcaa4191d6d016c457b6ed3982a622c35f729ff1c7f6b"}, - {file = "pymongo-3.10.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:dd8055da300535eefd446b30995c0813cc4394873c9509323762a93e97c04c03"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:6238ac1f483494011abde5286282afdfacd8926659e222ba9b74c67008d3a58c"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:53b711b33134e292ef8499835a3df10909c58df53a2a0308f598c432e9a62892"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:20ee0475aa2ba437b0a14806f125d696f90a8433d820fb558fdd6f052acde103"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:80df3caf251fe61a3f0c9614adc6e2bfcffd1cd3345280896766712fb4b4d6d7"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux2014_ppc64le.whl", hash = "sha256:a3b98121e68bf370dd8ea09df67e916f93ea95b52fc010902312168c4d1aff5d"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:1396eb7151e0558b1f817e4b9d7697d5599e5c40d839a9f7270bd90af994ad82"}, - {file = "pymongo-3.10.1-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:ae65d65fde4135ef423a2608587c9ef585a3551fc2e4e431e7c7e527047581be"}, - {file = "pymongo-3.10.1-cp38-cp38-win32.whl", hash = "sha256:31d11a600eea0c60de22c8bdcb58cda63c762891facdcb74248c36713240987f"}, - {file = "pymongo-3.10.1-cp38-cp38-win_amd64.whl", hash = "sha256:5a2c492680c61b440272341294172fa3b3751797b1ab983533a770e4fb0a67ac"}, - {file = "pymongo-3.10.1-py2.7-macosx-10.14-intel.egg", hash = "sha256:bd9c1e6f92b4888ae3ef7ae23262c513b962f09f3fb3b48581dde5df7d7a860a"}, - {file = "pymongo-3.10.1-py2.7-win-amd64.egg", hash = "sha256:ad3dc88dfe61f0f1f9b99c6bc833ea2f45203a937a18f0d2faa57c6952656012"}, - {file = "pymongo-3.10.1-py2.7-win32.egg", hash = "sha256:f4d06764a06b137e48db6d569dc95614d9d225c89842c885669ee8abc9f28c7a"}, - {file = "pymongo-3.10.1.tar.gz", hash = "sha256:993257f6ca3cde55332af1f62af3e04ca89ce63c08b56a387cdd46136c72f2fa"}, -] -pyparsing = [ - {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"}, - {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"}, -] -pyreadline = [ - {file = "pyreadline-2.1.win-amd64.exe", hash = "sha256:9ce5fa65b8992dfa373bddc5b6e0864ead8f291c94fbfec05fbd5c836162e67b"}, - {file = "pyreadline-2.1.win32.exe", hash = "sha256:65540c21bfe14405a3a77e4c085ecfce88724743a4ead47c66b84defcf82c32e"}, - {file = "pyreadline-2.1.zip", hash = "sha256:4530592fc2e85b25b1a9f79664433da09237c1a270e4d78ea5aa3a2c7229e2d1"}, -] -pyreadline3 = [ - {file = "pyreadline3-3.4.1-py3-none-any.whl", hash = "sha256:b0efb6516fd4fb07b45949053826a62fa4cb353db5be2bbb4a7aa1fdd1e345fb"}, - {file = "pyreadline3-3.4.1.tar.gz", hash = "sha256:6f3d1f7b8a31ba32b73917cefc1f28cc660562f39aea8646d30bd6eff21f7bae"}, -] -pyrsistent = [ - {file = "pyrsistent-0.18.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:df46c854f490f81210870e509818b729db4488e1f30f2a1ce1698b2295a878d1"}, - {file = "pyrsistent-0.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d45866ececf4a5fff8742c25722da6d4c9e180daa7b405dc0a2a2790d668c26"}, - {file = "pyrsistent-0.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4ed6784ceac462a7d6fcb7e9b663e93b9a6fb373b7f43594f9ff68875788e01e"}, - {file = "pyrsistent-0.18.1-cp310-cp310-win32.whl", hash = "sha256:e4f3149fd5eb9b285d6bfb54d2e5173f6a116fe19172686797c056672689daf6"}, - {file = "pyrsistent-0.18.1-cp310-cp310-win_amd64.whl", hash = "sha256:636ce2dc235046ccd3d8c56a7ad54e99d5c1cd0ef07d9ae847306c91d11b5fec"}, - {file = "pyrsistent-0.18.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e92a52c166426efbe0d1ec1332ee9119b6d32fc1f0bbfd55d5c1088070e7fc1b"}, - {file = "pyrsistent-0.18.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7a096646eab884bf8bed965bad63ea327e0d0c38989fc83c5ea7b8a87037bfc"}, - {file = "pyrsistent-0.18.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cdfd2c361b8a8e5d9499b9082b501c452ade8bbf42aef97ea04854f4a3f43b22"}, - {file = "pyrsistent-0.18.1-cp37-cp37m-win32.whl", hash = "sha256:7ec335fc998faa4febe75cc5268a9eac0478b3f681602c1f27befaf2a1abe1d8"}, - {file = "pyrsistent-0.18.1-cp37-cp37m-win_amd64.whl", hash = "sha256:6455fc599df93d1f60e1c5c4fe471499f08d190d57eca040c0ea182301321286"}, - {file = "pyrsistent-0.18.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fd8da6d0124efa2f67d86fa70c851022f87c98e205f0594e1fae044e7119a5a6"}, - {file = "pyrsistent-0.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bfe2388663fd18bd8ce7db2c91c7400bf3e1a9e8bd7d63bf7e77d39051b85ec"}, - {file = "pyrsistent-0.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0e3e1fcc45199df76053026a51cc59ab2ea3fc7c094c6627e93b7b44cdae2c8c"}, - {file = "pyrsistent-0.18.1-cp38-cp38-win32.whl", hash = "sha256:b568f35ad53a7b07ed9b1b2bae09eb15cdd671a5ba5d2c66caee40dbf91c68ca"}, - {file = "pyrsistent-0.18.1-cp38-cp38-win_amd64.whl", hash = "sha256:d1b96547410f76078eaf66d282ddca2e4baae8964364abb4f4dcdde855cd123a"}, - {file = "pyrsistent-0.18.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f87cc2863ef33c709e237d4b5f4502a62a00fab450c9e020892e8e2ede5847f5"}, - {file = "pyrsistent-0.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bc66318fb7ee012071b2792024564973ecc80e9522842eb4e17743604b5e045"}, - {file = "pyrsistent-0.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:914474c9f1d93080338ace89cb2acee74f4f666fb0424896fcfb8d86058bf17c"}, - {file = "pyrsistent-0.18.1-cp39-cp39-win32.whl", hash = "sha256:1b34eedd6812bf4d33814fca1b66005805d3640ce53140ab8bbb1e2651b0d9bc"}, - {file = "pyrsistent-0.18.1-cp39-cp39-win_amd64.whl", hash = "sha256:e24a828f57e0c337c8d8bb9f6b12f09dfdf0273da25fda9e314f0b684b415a07"}, - {file = "pyrsistent-0.18.1.tar.gz", hash = "sha256:d4d61f8b993a7255ba714df3aca52700f8125289f84f704cf80916517c46eb96"}, -] +pykwalify = [] +pymongo = [] +pyparsing = [] +pyreadline = [] +pyreadline3 = [] +pyrsistent = [] pytest = [] -pytest-asyncio = [ - {file = "pytest-asyncio-0.14.0.tar.gz", hash = "sha256:9882c0c6b24429449f5f969a5158b528f39bde47dc32e85b9f0403965017e700"}, - {file = "pytest_asyncio-0.14.0-py3-none-any.whl", hash = "sha256:2eae1e34f6c68fc0a9dc12d4bea190483843ff4708d24277c41568d6b6044f1d"}, -] +pytest-asyncio = [] pytest-cov = [] -pytest-forked = [ - {file = "pytest-forked-1.4.0.tar.gz", hash = "sha256:8b67587c8f98cbbadfdd804539ed5455b6ed03802203485dd2f53c1422d7440e"}, - {file = "pytest_forked-1.4.0-py3-none-any.whl", hash = "sha256:bbbb6717efc886b9d64537b41fb1497cfaf3c9601276be8da2cccfea5a3c8ad8"}, -] +pytest-forked = [] pytest-sanic = [] pytest-timeout = [] -pytest-xdist = [ - {file = "pytest-xdist-2.5.0.tar.gz", hash = "sha256:4580deca3ff04ddb2ac53eba39d76cb5dd5edeac050cb6fbc768b0dd712b4edf"}, - {file = "pytest_xdist-2.5.0-py3-none-any.whl", hash = "sha256:6fe5c74fec98906deb8f2d2b616b5c782022744978e7bd4695d39c8f42d0ce65"}, -] -python-crfsuite = [ - {file = "python-crfsuite-0.9.8.tar.gz", hash = "sha256:0e03cf6eba3628717ccf06dfa0f4a2ba8628860adb174cbfd250a7a4692865a1"}, - {file = "python_crfsuite-0.9.8-cp27-cp27m-win32.whl", hash = "sha256:bcd1f65abcf59a14361162ea16386f4a7953c3be791ab1471887bb3fafed7304"}, - {file = "python_crfsuite-0.9.8-cp27-cp27m-win_amd64.whl", hash = "sha256:10dde6fd932e4b8f8f06960f040e99f1cb30d78a8aac57cbe26298b6d124ee9f"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:65fc199148c33ef5ff98f7c826a902b2b5b812030f1cde86d2914e314770acd0"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:961e55450b401504d7563a6d5dd2f7ddf799c60284a205342a3c4a9eb0da22fd"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3fd4598e4ad61fe7b4b628a6ca677e3b2138f8178d9cf1e9a9ed964bc7c4fae"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fbb3997d1d029d4b4ecff6162e739cddcccfdb738672aecc79187c0f3ce311fd"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6cea8a2a58294f141e12650a63a595d58c3725e33a536b0b12ab427a555ca355"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-win32.whl", hash = "sha256:6315d0e64966406377d240e573fd99d3859c0470cdfe5ba08051ba58b8f05dbb"}, - {file = "python_crfsuite-0.9.8-cp310-cp310-win_amd64.whl", hash = "sha256:683856f9093b00fa8a21e0ce9802bd0b98169c843f120a890e7d8a0ab3490804"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:b492353069015887b82ec0dd875abfb89e064b301447eec5ae7a3e56056d46ca"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:80f6dfe9d3a5a46ac395ef283cb77da54057ca8a77282995500be840f37fac7d"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee1bde19390ad97efba4b57d5cb869150f27cd32af36da0f886dca61281c724e"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:a17a618e48a360180c33d1e48f4880b6e0137b709527b565e694e66de80c5aab"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:7b9919abecb94e83dfa9d1a9637767742901f4b81455a667a9e7224f82685e57"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-win32.whl", hash = "sha256:821e35e3c554aef9c09cce5d4134d813c2e0257f662102ebaf6998e891ee82a0"}, - {file = "python_crfsuite-0.9.8-cp36-cp36m-win_amd64.whl", hash = "sha256:dd45dedce6e77dc231f3de9999df155da6a43da590fdb73b4511dfe207ba76d4"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e13652ca5855bfe48a75811851ea495897742793834aede18d69ca6b2d2526de"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2dd8812f432d397d19108217f43b2921b2ec5572df51700b34f3035e280b8936"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c79688357ef67efbac619048d69abf61eba4c316423ef20d4d2174afcd7e705d"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e9822b867071275594a45b39ad14ae03ee673402e7d1b22ba2a3ead800003708"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:fa2746f2369e93bae8b9186d0bfe1b397bacdc735bb8f0d87a853c599ddcdfd5"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-win32.whl", hash = "sha256:0f9cea3e565e61007566dc0c6cd343bcf01cd7acd1545fa9ee847991b9d47f9f"}, - {file = "python_crfsuite-0.9.8-cp37-cp37m-win_amd64.whl", hash = "sha256:cabf91e918a155deccc9116661f3cc6a5e5318674f7e0c63d87880d532bedbfc"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a9e8ff97148bd9ef573e785e1b2144b44a731e4ae34730b966f9ff805229afb7"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5192d57955e0fbdcba37751617eb6e6c011aaa865f8580aa2792bda58020fee9"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab8ceb0e3cb681c4b60e947692ad7848d1da58ade4fbcd833ee3fc772e997fb9"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5d34d6f4ced98dcae4042c01bd53ef555f9cf038f9de4d2d49fac15b2f5339f1"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:50d717e0b92a016c29f949c6d2f3c76c7d4d3ec91fe930642c3c918ee88a12ec"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-win32.whl", hash = "sha256:1605803e601d80f40ce0b4af42471c456607cf12d26dc4a91f67a1b2bbf4f333"}, - {file = "python_crfsuite-0.9.8-cp38-cp38-win_amd64.whl", hash = "sha256:7d78e7d0af233934e6df864090d754be3d505aad26862156b23f5697c64c6285"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fc10579037376fb00afc5c7827d4dc16f586ad59061b4f069dd83d75dd5653ae"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66b07c616638967e4f45e0b1124f50c255c9ddd48675a84bc556b657ad9bb109"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bc71a57426e0f18e5616abdc4a9adebca919c3aa9fb3268aa35317c82cd144f"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:83f6ac190cbc40f2e618b564772b96d789182c044c9f94749f4c4b07bde8c095"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7e648326bb5dcdececb22c198a2d4d71da3d208af97b3cf3185a5e0f92cc657e"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-win32.whl", hash = "sha256:aa8715f34fcd72b34b16116533b0ee156c55a06eef10950a7afb5fc248c8dd61"}, - {file = "python_crfsuite-0.9.8-cp39-cp39-win_amd64.whl", hash = "sha256:cec973c7a1ef75ebeade4e18607c195c922a0276dabeaa4ba134f8576901d04a"}, - {file = "python_crfsuite-0.9.8-py2.7-win-amd64.egg", hash = "sha256:18c46286c179e642876364f48d92f42ba5172decaf33409f8b26450744c8dd80"}, - {file = "python_crfsuite-0.9.8-py2.7-win32.egg", hash = "sha256:2210ea3936090d023d6770aa1d3b6ba0831153fda34558c99ee3dfe13000b07d"}, - {file = "python_crfsuite-0.9.8-py3.6-win-amd64.egg", hash = "sha256:814c9920a87530c9ab56324cad90f69e703dcf399c51e2660584bfdd30a4213b"}, - {file = "python_crfsuite-0.9.8-py3.6-win32.egg", hash = "sha256:dbf4cbd1babec759b8a3211c3c50507d5f300fa9b5f0c2be1a03246dd1e4c251"}, - {file = "python_crfsuite-0.9.8-py3.7-win-amd64.egg", hash = "sha256:e984e3aa4e68a5db671562008373f1a07496cfbd9cfd7c79716f44b3eadf5e9e"}, - {file = "python_crfsuite-0.9.8-py3.7-win32.egg", hash = "sha256:f1d7d20af284f20f8ccc6e019c82a6ce699c29166f2a49e86b648e892e4e0994"}, - {file = "python_crfsuite-0.9.8-py3.8-win-amd64.egg", hash = "sha256:ea22ddcbe62797da0ae86f4a700f6215fd2d45e8a3bd38e92956aa9646e5f277"}, - {file = "python_crfsuite-0.9.8-py3.8-win32.egg", hash = "sha256:2d2bea92593876c007969d86bbc0254f6f31b67a085b3f396311290be750b14b"}, -] -python-dateutil = [ - {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, - {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, -] +pytest-xdist = [] +python-crfsuite = [] +python-dateutil = [] python-engineio = [] python-socketio = [] pytz = [] pytz-deprecation-shim = [] -pyyaml = [ - {file = "PyYAML-5.4.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win32.whl", hash = "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win_amd64.whl", hash = "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8"}, - {file = "PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185"}, - {file = "PyYAML-5.4.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:72a01f726a9c7851ca9bfad6fd09ca4e090a023c00945ea05ba1638c09dc3347"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:895f61ef02e8fed38159bb70f7e100e00f471eae2bc838cd0f4ebb21e28f8541"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win32.whl", hash = "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win_amd64.whl", hash = "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df"}, - {file = "PyYAML-5.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:cb333c16912324fd5f769fff6bc5de372e9e7a202247b48870bc251ed40239aa"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:fe69978f3f768926cfa37b867e3843918e012cf83f680806599ddce33c2c68b0"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win32.whl", hash = "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf"}, - {file = "PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:fd7f6999a8070df521b6384004ef42833b9bd62cfee11a09bda1079b4b704247"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:bfb51918d4ff3d77c1c856a9699f8492c612cde32fd3bcd344af9be34999bfdc"}, - {file = "PyYAML-5.4.1-cp38-cp38-win32.whl", hash = "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc"}, - {file = "PyYAML-5.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696"}, - {file = "PyYAML-5.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:d483ad4e639292c90170eb6f7783ad19490e7a8defb3e46f97dfe4bacae89122"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_s390x.whl", hash = "sha256:fdc842473cd33f45ff6bce46aea678a54e3d21f1b61a7750ce3c498eedfe25d6"}, - {file = "PyYAML-5.4.1-cp39-cp39-win32.whl", hash = "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10"}, - {file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"}, - {file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"}, -] -questionary = [ - {file = "questionary-1.10.0-py3-none-any.whl", hash = "sha256:fecfcc8cca110fda9d561cb83f1e97ecbb93c613ff857f655818839dac74ce90"}, - {file = "questionary-1.10.0.tar.gz", hash = "sha256:600d3aefecce26d48d97eee936fdb66e4bc27f934c3ab6dd1e292c4f43946d90"}, -] -randomname = [ - {file = "randomname-0.1.5.tar.gz", hash = "sha256:e10d14ea10895ee5bc417bdcc6d955e0b586f3bc67094ab87afcf8dcac23ab92"}, -] +pyyaml = [] +questionary = [] +randomname = [] rasa-sdk = [] redis = [] regex = [] requests = [] -requests-oauthlib = [ - {file = "requests-oauthlib-1.3.1.tar.gz", hash = "sha256:75beac4a47881eeb94d5ea5d6ad31ef88856affe2332b9aafb52c6452ccf0d7a"}, - {file = "requests_oauthlib-1.3.1-py2.py3-none-any.whl", hash = "sha256:2577c501a2fb8d05a304c09d090d6e47c306fef15809d102b327cf8364bddab5"}, -] +requests-oauthlib = [] requests-toolbelt = [] responses = [] -rfc3986 = [ - {file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"}, - {file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"}, -] +rfc3986 = [] rocketchat-api = [] rsa = [] "ruamel.yaml" = [] -"ruamel.yaml.clib" = [ - {file = "ruamel.yaml.clib-0.2.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6e7be2c5bcb297f5b82fee9c665eb2eb7001d1050deaba8471842979293a80b0"}, - {file = "ruamel.yaml.clib-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:221eca6f35076c6ae472a531afa1c223b9c29377e62936f61bc8e6e8bdc5f9e7"}, - {file = "ruamel.yaml.clib-0.2.6-cp310-cp310-win32.whl", hash = "sha256:1070ba9dd7f9370d0513d649420c3b362ac2d687fe78c6e888f5b12bf8bc7bee"}, - {file = "ruamel.yaml.clib-0.2.6-cp310-cp310-win_amd64.whl", hash = "sha256:77df077d32921ad46f34816a9a16e6356d8100374579bc35e15bab5d4e9377de"}, - {file = "ruamel.yaml.clib-0.2.6-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:cfdb9389d888c5b74af297e51ce357b800dd844898af9d4a547ffc143fa56751"}, - {file = "ruamel.yaml.clib-0.2.6-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:7b2927e92feb51d830f531de4ccb11b320255ee95e791022555971c466af4527"}, - {file = "ruamel.yaml.clib-0.2.6-cp35-cp35m-win32.whl", hash = "sha256:ada3f400d9923a190ea8b59c8f60680c4ef8a4b0dfae134d2f2ff68429adfab5"}, - {file = "ruamel.yaml.clib-0.2.6-cp35-cp35m-win_amd64.whl", hash = "sha256:de9c6b8a1ba52919ae919f3ae96abb72b994dd0350226e28f3686cb4f142165c"}, - {file = "ruamel.yaml.clib-0.2.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d67f273097c368265a7b81e152e07fb90ed395df6e552b9fa858c6d2c9f42502"}, - {file = "ruamel.yaml.clib-0.2.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:72a2b8b2ff0a627496aad76f37a652bcef400fd861721744201ef1b45199ab78"}, - {file = "ruamel.yaml.clib-0.2.6-cp36-cp36m-win32.whl", hash = "sha256:9efef4aab5353387b07f6b22ace0867032b900d8e91674b5d8ea9150db5cae94"}, - {file = "ruamel.yaml.clib-0.2.6-cp36-cp36m-win_amd64.whl", hash = "sha256:846fc8336443106fe23f9b6d6b8c14a53d38cef9a375149d61f99d78782ea468"}, - {file = "ruamel.yaml.clib-0.2.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0847201b767447fc33b9c235780d3aa90357d20dd6108b92be544427bea197dd"}, - {file = "ruamel.yaml.clib-0.2.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:78988ed190206672da0f5d50c61afef8f67daa718d614377dcd5e3ed85ab4a99"}, - {file = "ruamel.yaml.clib-0.2.6-cp37-cp37m-win32.whl", hash = "sha256:a49e0161897901d1ac9c4a79984b8410f450565bbad64dbfcbf76152743a0cdb"}, - {file = "ruamel.yaml.clib-0.2.6-cp37-cp37m-win_amd64.whl", hash = "sha256:bf75d28fa071645c529b5474a550a44686821decebdd00e21127ef1fd566eabe"}, - {file = "ruamel.yaml.clib-0.2.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a32f8d81ea0c6173ab1b3da956869114cae53ba1e9f72374032e33ba3118c233"}, - {file = "ruamel.yaml.clib-0.2.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7f7ecb53ae6848f959db6ae93bdff1740e651809780822270eab111500842a84"}, - {file = "ruamel.yaml.clib-0.2.6-cp38-cp38-win32.whl", hash = "sha256:89221ec6d6026f8ae859c09b9718799fea22c0e8da8b766b0b2c9a9ba2db326b"}, - {file = "ruamel.yaml.clib-0.2.6-cp38-cp38-win_amd64.whl", hash = "sha256:31ea73e564a7b5fbbe8188ab8b334393e06d997914a4e184975348f204790277"}, - {file = "ruamel.yaml.clib-0.2.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:dc6a613d6c74eef5a14a214d433d06291526145431c3b964f5e16529b1842bed"}, - {file = "ruamel.yaml.clib-0.2.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:1866cf2c284a03b9524a5cc00daca56d80057c5ce3cdc86a52020f4c720856f0"}, - {file = "ruamel.yaml.clib-0.2.6-cp39-cp39-win32.whl", hash = "sha256:3fb9575a5acd13031c57a62cc7823e5d2ff8bc3835ba4d94b921b4e6ee664104"}, - {file = "ruamel.yaml.clib-0.2.6-cp39-cp39-win_amd64.whl", hash = "sha256:825d5fccef6da42f3c8eccd4281af399f21c02b32d98e113dbc631ea6a6ecbc7"}, - {file = "ruamel.yaml.clib-0.2.6.tar.gz", hash = "sha256:4ff604ce439abb20794f05613c374759ce10e3595d1867764dd1ae675b85acbd"}, -] -s3transfer = [ - {file = "s3transfer-0.6.0-py3-none-any.whl", hash = "sha256:06176b74f3a15f61f1b4f25a1fc29a4429040b7647133a463da8fa5bd28d5ecd"}, - {file = "s3transfer-0.6.0.tar.gz", hash = "sha256:2ed07d3866f523cc561bf4a00fc5535827981b117dd7876f036b0c1aca42c947"}, -] -sacremoses = [ - {file = "sacremoses-0.0.53.tar.gz", hash = "sha256:43715868766c643b35de4b8046cce236bfe59a7fa88b25eaf6ddf02bacf53a7a"}, -] +"ruamel.yaml.clib" = [] +s3transfer = [] +sacremoses = [] sanic = [] -sanic-cors = [ - {file = "Sanic-Cors-2.0.1.tar.gz", hash = "sha256:4d2f26333d49db428217814c66e89fc3df20fc62a5ab518a71fa22e2e249e19d"}, - {file = "Sanic_Cors-2.0.1-py2.py3-none-any.whl", hash = "sha256:0c8132bed394ba86f93c03bef52787183652d96b70add4ea13c25eb98f344343"}, -] +sanic-cors = [] sanic-jwt = [] -sanic-routing = [ - {file = "sanic-routing-0.7.2.tar.gz", hash = "sha256:139ce88b3f054e7aa336e2ecc8459837092b103b275d3a97609a34092c55374d"}, - {file = "sanic_routing-0.7.2-py3-none-any.whl", hash = "sha256:523034ffd07aca056040e08de438269c9a880722eee1ace3a32e4f74b394d9aa"}, -] +sanic-routing = [] sanic-testing = [] scikit-learn = [] -scipy = [ - {file = "scipy-1.7.3-1-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:c9e04d7e9b03a8a6ac2045f7c5ef741be86727d8f49c45db45f244bdd2bcff17"}, - {file = "scipy-1.7.3-1-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:b0e0aeb061a1d7dcd2ed59ea57ee56c9b23dd60100825f98238c06ee5cc4467e"}, - {file = "scipy-1.7.3-1-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:b78a35c5c74d336f42f44106174b9851c783184a85a3fe3e68857259b37b9ffb"}, - {file = "scipy-1.7.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:173308efba2270dcd61cd45a30dfded6ec0085b4b6eb33b5eb11ab443005e088"}, - {file = "scipy-1.7.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:21b66200cf44b1c3e86495e3a436fc7a26608f92b8d43d344457c54f1c024cbc"}, - {file = "scipy-1.7.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ceebc3c4f6a109777c0053dfa0282fddb8893eddfb0d598574acfb734a926168"}, - {file = "scipy-1.7.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7eaea089345a35130bc9a39b89ec1ff69c208efa97b3f8b25ea5d4c41d88094"}, - {file = "scipy-1.7.3-cp310-cp310-win_amd64.whl", hash = "sha256:304dfaa7146cffdb75fbf6bb7c190fd7688795389ad060b970269c8576d038e9"}, - {file = "scipy-1.7.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:033ce76ed4e9f62923e1f8124f7e2b0800db533828c853b402c7eec6e9465d80"}, - {file = "scipy-1.7.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:4d242d13206ca4302d83d8a6388c9dfce49fc48fdd3c20efad89ba12f785bf9e"}, - {file = "scipy-1.7.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8499d9dd1459dc0d0fe68db0832c3d5fc1361ae8e13d05e6849b358dc3f2c279"}, - {file = "scipy-1.7.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca36e7d9430f7481fc7d11e015ae16fbd5575615a8e9060538104778be84addf"}, - {file = "scipy-1.7.3-cp37-cp37m-win32.whl", hash = "sha256:e2c036492e673aad1b7b0d0ccdc0cb30a968353d2c4bf92ac8e73509e1bf212c"}, - {file = "scipy-1.7.3-cp37-cp37m-win_amd64.whl", hash = "sha256:866ada14a95b083dd727a845a764cf95dd13ba3dc69a16b99038001b05439709"}, - {file = "scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:65bd52bf55f9a1071398557394203d881384d27b9c2cad7df9a027170aeaef93"}, - {file = "scipy-1.7.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:f99d206db1f1ae735a8192ab93bd6028f3a42f6fa08467d37a14eb96c9dd34a3"}, - {file = "scipy-1.7.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5f2cfc359379c56b3a41b17ebd024109b2049f878badc1e454f31418c3a18436"}, - {file = "scipy-1.7.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb7ae2c4dbdb3c9247e07acc532f91077ae6dbc40ad5bd5dca0bb5a176ee9bda"}, - {file = "scipy-1.7.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95c2d250074cfa76715d58830579c64dff7354484b284c2b8b87e5a38321672c"}, - {file = "scipy-1.7.3-cp38-cp38-win32.whl", hash = "sha256:87069cf875f0262a6e3187ab0f419f5b4280d3dcf4811ef9613c605f6e4dca95"}, - {file = "scipy-1.7.3-cp38-cp38-win_amd64.whl", hash = "sha256:7edd9a311299a61e9919ea4192dd477395b50c014cdc1a1ac572d7c27e2207fa"}, - {file = "scipy-1.7.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eef93a446114ac0193a7b714ce67659db80caf940f3232bad63f4c7a81bc18df"}, - {file = "scipy-1.7.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:eb326658f9b73c07081300daba90a8746543b5ea177184daed26528273157294"}, - {file = "scipy-1.7.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:93378f3d14fff07572392ce6a6a2ceb3a1f237733bd6dcb9eb6a2b29b0d19085"}, - {file = "scipy-1.7.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edad1cf5b2ce1912c4d8ddad20e11d333165552aba262c882e28c78bbc09dbf6"}, - {file = "scipy-1.7.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d1cc2c19afe3b5a546ede7e6a44ce1ff52e443d12b231823268019f608b9b12"}, - {file = "scipy-1.7.3-cp39-cp39-win32.whl", hash = "sha256:2c56b820d304dffcadbbb6cbfbc2e2c79ee46ea291db17e288e73cd3c64fefa9"}, - {file = "scipy-1.7.3-cp39-cp39-win_amd64.whl", hash = "sha256:3f78181a153fa21c018d346f595edd648344751d7f03ab94b398be2ad083ed3e"}, - {file = "scipy-1.7.3.tar.gz", hash = "sha256:ab5875facfdef77e0a47d5fd39ea178b58e60e454a4c85aa1e52fcb80db7babf"}, -] +scipy = [] sentencepiece = [] -sentinels = [ - {file = "sentinels-1.0.0.tar.gz", hash = "sha256:7be0704d7fe1925e397e92d18669ace2f619c92b5d4eb21a89f31e026f9ff4b1"}, -] +sentinels = [] sentry-sdk = [] setuptools-scm = [] -six = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, -] -sklearn-crfsuite = [ - {file = "sklearn-crfsuite-0.3.6.tar.gz", hash = "sha256:2f59aad3055e01a778a79a6352891cac04788e8b52688aa5bc8b11be7717861e"}, - {file = "sklearn_crfsuite-0.3.6-py2.py3-none-any.whl", hash = "sha256:6e9a42bc3de96941d5f7262335130955b8c380b1356147622368f385075705d9"}, -] -slackclient = [ - {file = "slackclient-2.9.4-py2.py3-none-any.whl", hash = "sha256:a8cab9146795e23d66a03473b80dd23df8c500829dfa9d06b3e3d5aec0a2b293"}, - {file = "slackclient-2.9.4.tar.gz", hash = "sha256:ab79fefb5412d0595bc01d2f195a787597f2a617b6766562932ab9ffbe5cb173"}, -] -smart-open = [ - {file = "smart_open-5.2.1-py3-none-any.whl", hash = "sha256:71d14489da58b60ce12fc3ecb823facc59a8b23cd1b58edb97175640350d3a62"}, - {file = "smart_open-5.2.1.tar.gz", hash = "sha256:75abf758717a92a8f53aa96953f0c245c8cedf8e1e4184903db3659b419d4c17"}, -] -smmap = [ - {file = "smmap-5.0.0-py3-none-any.whl", hash = "sha256:2aba19d6a040e78d8b09de5c57e96207b09ed71d8e55ce0959eeee6c8e190d94"}, - {file = "smmap-5.0.0.tar.gz", hash = "sha256:c840e62059cd3be204b0c9c9f74be2c09d5648eddd4580d9314c3ecde0b30936"}, -] +six = [] +sklearn-crfsuite = [] +slackclient = [] +smart-open = [] +smmap = [] sniffio = [] -snowballstemmer = [ - {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, - {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, -] -sortedcontainers = [ - {file = "sortedcontainers-2.4.0-py2.py3-none-any.whl", hash = "sha256:a163dcaede0f1c021485e957a39245190e74249897e2ae4b2aa38595db237ee0"}, - {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, -] +snowballstemmer = [] +sortedcontainers = [] spacy = [] spacy-legacy = [] spacy-loggers = [] sqlalchemy = [] srsly = [] -stevedore = [ - {file = "stevedore-3.5.0-py3-none-any.whl", hash = "sha256:a547de73308fd7e90075bb4d301405bebf705292fa90a90fc3bcf9133f58616c"}, - {file = "stevedore-3.5.0.tar.gz", hash = "sha256:f40253887d8712eaa2bb0ea3830374416736dc8ec0e22f5a65092c1174c44335"}, -] +stevedore = [] tabulate = [] -tarsafe = [ - {file = "tarsafe-0.0.3-py3-none-any.whl", hash = "sha256:f8181c5559aea70af2579a0dc0811d2e9e3eabd706dd594555b4dfa52c0be51a"}, - {file = "tarsafe-0.0.3.tar.gz", hash = "sha256:7acf73a11b576fcbb003b52adecf4706d6c3009c6af28a01fd21949235ffd806"}, -] -tensorboard = [ - {file = "tensorboard-2.8.0-py3-none-any.whl", hash = "sha256:65a338e4424e9079f2604923bdbe301792adce2ace1be68da6b3ddf005170def"}, -] -tensorboard-data-server = [ - {file = "tensorboard_data_server-0.6.1-py3-none-any.whl", hash = "sha256:809fe9887682d35c1f7d1f54f0f40f98bb1f771b14265b453ca051e2ce58fca7"}, - {file = "tensorboard_data_server-0.6.1-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:fa8cef9be4fcae2f2363c88176638baf2da19c5ec90addb49b1cde05c95c88ee"}, - {file = "tensorboard_data_server-0.6.1-py3-none-manylinux2010_x86_64.whl", hash = "sha256:d8237580755e58eff68d1f3abefb5b1e39ae5c8b127cc40920f9c4fb33f4b98a"}, -] -tensorboard-plugin-wit = [ - {file = "tensorboard_plugin_wit-1.8.1-py3-none-any.whl", hash = "sha256:ff26bdd583d155aa951ee3b152b3d0cffae8005dc697f72b44a8e8c2a77a8cbe"}, -] +tarsafe = [] +tensorboard = [] +tensorboard-data-server = [] +tensorboard-plugin-wit = [] tensorflow = [] tensorflow-addons = [] tensorflow-estimator = [] -tensorflow-hub = [ - {file = "tensorflow_hub-0.12.0-py2.py3-none-any.whl", hash = "sha256:822fe5f7338c95efcc3a534011c6689e4309ba2459def87194179c4de8a6e1fc"}, -] +tensorflow-hub = [] tensorflow-io-gcs-filesystem = [] tensorflow-macos = [] tensorflow-metal = [] -tensorflow-text = [ - {file = "tensorflow_text-2.8.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ecab10424deafdf658fec1e225f5a247c5376fe52b0861526154cb9fdb1b63c4"}, - {file = "tensorflow_text-2.8.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:46a21d2046d2aaf8268e8b7f6826e17fdf6306cf662a7931370e3977a29944ca"}, - {file = "tensorflow_text-2.8.2-cp310-cp310-win_amd64.whl", hash = "sha256:8d155cc32ef05b61acba0cb19be1297ac8cc5a2ad892d0c7998eb11ea3d90011"}, - {file = "tensorflow_text-2.8.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6f06a4b4cb95f6425c1132dc116daa666a69914da29aea57357358a2ce82c1f7"}, - {file = "tensorflow_text-2.8.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:802a491e625b0f9537ba46be5661a769ce555e6bee0d0ab451b687eec9ea5c1e"}, - {file = "tensorflow_text-2.8.2-cp37-cp37m-win_amd64.whl", hash = "sha256:572ee89a9d6501b8c14204a31a780eb91a1b81fdd6f7f1c3f9601661a74cc43f"}, - {file = "tensorflow_text-2.8.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:058948b4463a589ee4daf19f448f26986376f7caa7657bdf15afb78576227765"}, - {file = "tensorflow_text-2.8.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bf160649632e7ad6da965b0da567634a25f3d62192a690060fdf82efcbce8fb8"}, - {file = "tensorflow_text-2.8.2-cp38-cp38-win_amd64.whl", hash = "sha256:85b0d2af04030ad13b313f2ab46ca9242d34382624932f15e4b0ee45b3f36fea"}, - {file = "tensorflow_text-2.8.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:63cd6fb2013b982af00f83adfef889611fa7898fa1b458a1c325e55ff76d5f45"}, - {file = "tensorflow_text-2.8.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f4c028ed6f93499a84dfe31b509786ba60b9f90657d59003ea6786c01f3a04e6"}, - {file = "tensorflow_text-2.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:ac36aca2ccc433a68acff91dcac73f82380826f5c185af68278762a84c012a28"}, -] +tensorflow-text = [] termcolor = [] -terminaltables = [ - {file = "terminaltables-3.1.10-py2.py3-none-any.whl", hash = "sha256:e4fdc4179c9e4aab5f674d80f09d76fa436b96fdc698a8505e0a36bf0804a874"}, - {file = "terminaltables-3.1.10.tar.gz", hash = "sha256:ba6eca5cb5ba02bba4c9f4f985af80c54ec3dccf94cfcd190154386255e47543"}, -] +terminaltables = [] tf-estimator-nightly = [] thinc = [] -threadpoolctl = [ - {file = "threadpoolctl-3.1.0-py3-none-any.whl", hash = "sha256:8b99adda265feb6773280df41eece7b2e6561b772d21ffd52e372f999024907b"}, - {file = "threadpoolctl-3.1.0.tar.gz", hash = "sha256:a335baacfaa4400ae1f0d8e3a58d6674d2f8828e3716bb2802c44955ad391380"}, -] -tokenizers = [ - {file = "tokenizers-0.10.3-cp36-cp36m-macosx_10_11_x86_64.whl", hash = "sha256:4ab688daf4692a6c31dfe42f1f3a4a8c22050705eb69d58d3efde9d55f434586"}, - {file = "tokenizers-0.10.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c26dbc3b2a3d71d3d40c50975ec62145932f05aea73f03ea35c48ebd3a717611"}, - {file = "tokenizers-0.10.3-cp36-cp36m-win32.whl", hash = "sha256:6b84673997990b3c260ae2f7c57fdf1f835e316820eff14aca46dc68be3c0c74"}, - {file = "tokenizers-0.10.3-cp36-cp36m-win_amd64.whl", hash = "sha256:2a9ee3ee574d4aa740e099b0ad6ef8e63f52f48cde359bb31801146a5aa614dc"}, - {file = "tokenizers-0.10.3-cp37-cp37m-macosx_10_11_x86_64.whl", hash = "sha256:2f8c5fefef0d0a03be613547e613fbda06b9e6ee0891236649524964c3e54d80"}, - {file = "tokenizers-0.10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4cc194104c8e427ffc4f54c7866488b42f2b1f6351a6cad0d045ca5ab8108e42"}, - {file = "tokenizers-0.10.3-cp37-cp37m-win32.whl", hash = "sha256:edd8cb85c16b4b65e87ea5ef9d400be9fdd53c4152adbaca8817e16dd3aa480b"}, - {file = "tokenizers-0.10.3-cp37-cp37m-win_amd64.whl", hash = "sha256:7b11b373705d082d43657c08883b79b5330f1952f0668d17488b6b889c4d7feb"}, - {file = "tokenizers-0.10.3-cp38-cp38-macosx_10_11_x86_64.whl", hash = "sha256:a7ce0c2f27f7c92aa3f895231de90319acdf960ce2e42ba591edc651fda7d3c9"}, - {file = "tokenizers-0.10.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ae7e40d9c8a77c5a4109731ac3e21633b0c609c56a8b58be6b863da61fa54636"}, - {file = "tokenizers-0.10.3-cp38-cp38-win32.whl", hash = "sha256:a7ce051aafc53c564c9edbc09df300c2bd4f6ce87460fc22a276fed405d1892a"}, - {file = "tokenizers-0.10.3-cp38-cp38-win_amd64.whl", hash = "sha256:91a8c045980594c7c437a52c3da5276eb3c530a662b4ef628ff32d81fb22b543"}, - {file = "tokenizers-0.10.3-cp39-cp39-macosx_10_11_x86_64.whl", hash = "sha256:1d8867db210d75d97312360ae23b92aeb6a6b5bc65e15c1cd9d204b3fa3fc262"}, - {file = "tokenizers-0.10.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:18c495e700f4588b9a00e58b4c41dc459c36daaa7c39a27faf880eb8f5533ce1"}, - {file = "tokenizers-0.10.3-cp39-cp39-win32.whl", hash = "sha256:ad700fd9da518884fd58bf89f0b6dfeecef9b4e2d2db8765ef259f66d6c14980"}, - {file = "tokenizers-0.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:e9d147e545cdfeca560646c7a703bf287afe45645da426506ccd5eb78aab5ef5"}, - {file = "tokenizers-0.10.3.tar.gz", hash = "sha256:1a5d3b596c6d3a237e1ad7f46c472d467b0246be7fd1a364f12576eb8db8f7e6"}, -] -toml = [ - {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, - {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, -] -tomli = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, -] +threadpoolctl = [] +tokenizers = [] +toml = [] +tomli = [] tomli-w = [] toolz = [] -towncrier = [ - {file = "towncrier-21.9.0-py2.py3-none-any.whl", hash = "sha256:fc5a88a2a54988e3a8ed2b60d553599da8330f65722cc607c839614ed87e0f92"}, - {file = "towncrier-21.9.0.tar.gz", hash = "sha256:9cb6f45c16e1a1eec9d0e7651165e7be60cd0ab81d13a5c96ca97a498ae87f48"}, -] +towncrier = [] tqdm = [] -transformers = [ - {file = "transformers-4.13.0-py3-none-any.whl", hash = "sha256:533e8f205a0a3487751c98dd4dc407d4497d09d0d233da900351e2efb03b5d71"}, - {file = "transformers-4.13.0.tar.gz", hash = "sha256:8afc1059cc4ac1b99239c4406b6aea90e8ef7a35c2ebfaa1a4a2f9e2bd0ec5e6"}, -] +transformers = [] twilio = [] -typed-ast = [ - {file = "typed_ast-1.5.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:669dd0c4167f6f2cd9f57041e03c3c2ebf9063d0757dc89f79ba1daa2bfca9d4"}, - {file = "typed_ast-1.5.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:211260621ab1cd7324e0798d6be953d00b74e0428382991adfddb352252f1d62"}, - {file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:267e3f78697a6c00c689c03db4876dd1efdfea2f251a5ad6555e82a26847b4ac"}, - {file = "typed_ast-1.5.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c542eeda69212fa10a7ada75e668876fdec5f856cd3d06829e6aa64ad17c8dfe"}, - {file = "typed_ast-1.5.4-cp310-cp310-win_amd64.whl", hash = "sha256:a9916d2bb8865f973824fb47436fa45e1ebf2efd920f2b9f99342cb7fab93f72"}, - {file = "typed_ast-1.5.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:79b1e0869db7c830ba6a981d58711c88b6677506e648496b1f64ac7d15633aec"}, - {file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a94d55d142c9265f4ea46fab70977a1944ecae359ae867397757d836ea5a3f47"}, - {file = "typed_ast-1.5.4-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:183afdf0ec5b1b211724dfef3d2cad2d767cbefac291f24d69b00546c1837fb6"}, - {file = "typed_ast-1.5.4-cp36-cp36m-win_amd64.whl", hash = "sha256:639c5f0b21776605dd6c9dbe592d5228f021404dafd377e2b7ac046b0349b1a1"}, - {file = "typed_ast-1.5.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cf4afcfac006ece570e32d6fa90ab74a17245b83dfd6655a6f68568098345ff6"}, - {file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed855bbe3eb3715fca349c80174cfcfd699c2f9de574d40527b8429acae23a66"}, - {file = "typed_ast-1.5.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6778e1b2f81dfc7bc58e4b259363b83d2e509a65198e85d5700dfae4c6c8ff1c"}, - {file = "typed_ast-1.5.4-cp37-cp37m-win_amd64.whl", hash = "sha256:0261195c2062caf107831e92a76764c81227dae162c4f75192c0d489faf751a2"}, - {file = "typed_ast-1.5.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2efae9db7a8c05ad5547d522e7dbe62c83d838d3906a3716d1478b6c1d61388d"}, - {file = "typed_ast-1.5.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7d5d014b7daa8b0bf2eaef684295acae12b036d79f54178b92a2b6a56f92278f"}, - {file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:370788a63915e82fd6f212865a596a0fefcbb7d408bbbb13dea723d971ed8bdc"}, - {file = "typed_ast-1.5.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4e964b4ff86550a7a7d56345c7864b18f403f5bd7380edf44a3c1fb4ee7ac6c6"}, - {file = "typed_ast-1.5.4-cp38-cp38-win_amd64.whl", hash = "sha256:683407d92dc953c8a7347119596f0b0e6c55eb98ebebd9b23437501b28dcbb8e"}, - {file = "typed_ast-1.5.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4879da6c9b73443f97e731b617184a596ac1235fe91f98d279a7af36c796da35"}, - {file = "typed_ast-1.5.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3e123d878ba170397916557d31c8f589951e353cc95fb7f24f6bb69adc1a8a97"}, - {file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebd9d7f80ccf7a82ac5f88c521115cc55d84e35bf8b446fcd7836eb6b98929a3"}, - {file = "typed_ast-1.5.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98f80dee3c03455e92796b58b98ff6ca0b2a6f652120c263efdba4d6c5e58f72"}, - {file = "typed_ast-1.5.4-cp39-cp39-win_amd64.whl", hash = "sha256:0fdbcf2fef0ca421a3f5912555804296f0b0960f0418c440f5d6d3abb549f3e1"}, - {file = "typed_ast-1.5.4.tar.gz", hash = "sha256:39e21ceb7388e4bb37f4c679d72707ed46c2fbf2a5609b8b8ebc4b067d977df2"}, -] -typeguard = [ - {file = "typeguard-2.13.3-py3-none-any.whl", hash = "sha256:5e3e3be01e887e7eafae5af63d1f36c849aaa94e3a0112097312aabfa16284f1"}, - {file = "typeguard-2.13.3.tar.gz", hash = "sha256:00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4"}, -] +typed-ast = [] +typeguard = [] typer = [] -types-cryptography = [] -types-pkg-resources = [ - {file = "types-pkg_resources-0.1.3.tar.gz", hash = "sha256:834a9b8d3dbea343562fd99d5d3359a726f6bf9d3733bccd2b4f3096fbab9dae"}, - {file = "types_pkg_resources-0.1.3-py2.py3-none-any.whl", hash = "sha256:0cb9972cee992249f93fff1a491bf2dc3ce674e5a1926e27d4f0866f7d9b6d9c"}, -] +types-pkg-resources = [] types-python-dateutil = [] types-pytz = [] types-redis = [] @@ -4686,153 +3962,21 @@ types-requests = [] types-setuptools = [] types-urllib3 = [] typing-extensions = [] -typing-utils = [ - {file = "typing_utils-0.1.0-py3-none-any.whl", hash = "sha256:6bd26f3d38a5dd526ca3a59f0a451ccb59bcee9dc829c872dd6c0aae4ec8bbef"}, - {file = "typing_utils-0.1.0.tar.gz", hash = "sha256:8ff6b6705414b82575ad5ae0925ac414a9650fb8c5718289b1327dec61252f65"}, -] +typing-utils = [] tzdata = [] tzlocal = [] ujson = [] -uritemplate = [ - {file = "uritemplate-4.1.1-py2.py3-none-any.whl", hash = "sha256:830c08b8d99bdd312ea4ead05994a38e8936266f84b9a7878232db50b044e02e"}, - {file = "uritemplate-4.1.1.tar.gz", hash = "sha256:4346edfc5c3b79f694bccd6d6099a322bbeb628dbf2cd86eea55a456ce5124f0"}, -] +uritemplate = [] urllib3 = [] uvloop = [] wasabi = [] watchdog = [] -wcwidth = [ - {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, - {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, -] -webexteamssdk = [ - {file = "webexteamssdk-1.6.1-py3-none-any.whl", hash = "sha256:52a7f9d515cd3d53a853e679e16572ec6ca036a223e35b14fea14c99f492a6a4"}, - {file = "webexteamssdk-1.6.1.tar.gz", hash = "sha256:bbc7672f381b26fb22d0d03f87d131a2fa1e7d54c2f37f2e4cd28d725b8b5dfb"}, -] -websockets = [ - {file = "websockets-10.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:661f641b44ed315556a2fa630239adfd77bd1b11cb0b9d96ed8ad90b0b1e4978"}, - {file = "websockets-10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b529fdfa881b69fe563dbd98acce84f3e5a67df13de415e143ef053ff006d500"}, - {file = "websockets-10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f351c7d7d92f67c0609329ab2735eee0426a03022771b00102816a72715bb00b"}, - {file = "websockets-10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:379e03422178436af4f3abe0aa8f401aa77ae2487843738542a75faf44a31f0c"}, - {file = "websockets-10.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e904c0381c014b914136c492c8fa711ca4cced4e9b3d110e5e7d436d0fc289e8"}, - {file = "websockets-10.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e7e6f2d6fd48422071cc8a6f8542016f350b79cc782752de531577d35e9bd677"}, - {file = "websockets-10.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b9c77f0d1436ea4b4dc089ed8335fa141e6a251a92f75f675056dac4ab47a71e"}, - {file = "websockets-10.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e6fa05a680e35d0fcc1470cb070b10e6fe247af54768f488ed93542e71339d6f"}, - {file = "websockets-10.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2f94fa3ae454a63ea3a19f73b95deeebc9f02ba2d5617ca16f0bbdae375cda47"}, - {file = "websockets-10.3-cp310-cp310-win32.whl", hash = "sha256:6ed1d6f791eabfd9808afea1e068f5e59418e55721db8b7f3bfc39dc831c42ae"}, - {file = "websockets-10.3-cp310-cp310-win_amd64.whl", hash = "sha256:347974105bbd4ea068106ec65e8e8ebd86f28c19e529d115d89bd8cc5cda3079"}, - {file = "websockets-10.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:fab7c640815812ed5f10fbee7abbf58788d602046b7bb3af9b1ac753a6d5e916"}, - {file = "websockets-10.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:994cdb1942a7a4c2e10098d9162948c9e7b235df755de91ca33f6e0481366fdb"}, - {file = "websockets-10.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:aad5e300ab32036eb3fdc350ad30877210e2f51bceaca83fb7fef4d2b6c72b79"}, - {file = "websockets-10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e49ea4c1a9543d2bd8a747ff24411509c29e4bdcde05b5b0895e2120cb1a761d"}, - {file = "websockets-10.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:6ea6b300a6bdd782e49922d690e11c3669828fe36fc2471408c58b93b5535a98"}, - {file = "websockets-10.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:ef5ce841e102278c1c2e98f043db99d6755b1c58bde475516aef3a008ed7f28e"}, - {file = "websockets-10.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d1655a6fc7aecd333b079d00fb3c8132d18988e47f19740c69303bf02e9883c6"}, - {file = "websockets-10.3-cp37-cp37m-win32.whl", hash = "sha256:83e5ca0d5b743cde3d29fda74ccab37bdd0911f25bd4cdf09ff8b51b7b4f2fa1"}, - {file = "websockets-10.3-cp37-cp37m-win_amd64.whl", hash = "sha256:da4377904a3379f0c1b75a965fff23b28315bcd516d27f99a803720dfebd94d4"}, - {file = "websockets-10.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a1e15b230c3613e8ea82c9fc6941b2093e8eb939dd794c02754d33980ba81e36"}, - {file = "websockets-10.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:31564a67c3e4005f27815634343df688b25705cccb22bc1db621c781ddc64c69"}, - {file = "websockets-10.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c8d1d14aa0f600b5be363077b621b1b4d1eb3fbf90af83f9281cda668e6ff7fd"}, - {file = "websockets-10.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8fbd7d77f8aba46d43245e86dd91a8970eac4fb74c473f8e30e9c07581f852b2"}, - {file = "websockets-10.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:210aad7fdd381c52e58777560860c7e6110b6174488ef1d4b681c08b68bf7f8c"}, - {file = "websockets-10.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6075fd24df23133c1b078e08a9b04a3bc40b31a8def4ee0b9f2c8865acce913e"}, - {file = "websockets-10.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7f6d96fdb0975044fdd7953b35d003b03f9e2bcf85f2d2cf86285ece53e9f991"}, - {file = "websockets-10.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:c7250848ce69559756ad0086a37b82c986cd33c2d344ab87fea596c5ac6d9442"}, - {file = "websockets-10.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:28dd20b938a57c3124028680dc1600c197294da5db4292c76a0b48efb3ed7f76"}, - {file = "websockets-10.3-cp38-cp38-win32.whl", hash = "sha256:54c000abeaff6d8771a4e2cef40900919908ea7b6b6a30eae72752607c6db559"}, - {file = "websockets-10.3-cp38-cp38-win_amd64.whl", hash = "sha256:7ab36e17af592eec5747c68ef2722a74c1a4a70f3772bc661079baf4ae30e40d"}, - {file = "websockets-10.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a141de3d5a92188234afa61653ed0bbd2dde46ad47b15c3042ffb89548e77094"}, - {file = "websockets-10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:97bc9d41e69a7521a358f9b8e44871f6cdeb42af31815c17aed36372d4eec667"}, - {file = "websockets-10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d6353ba89cfc657a3f5beabb3b69be226adbb5c6c7a66398e17809b0ce3c4731"}, - {file = "websockets-10.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec2b0ab7edc8cd4b0eb428b38ed89079bdc20c6bdb5f889d353011038caac2f9"}, - {file = "websockets-10.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:85506b3328a9e083cc0a0fb3ba27e33c8db78341b3eb12eb72e8afd166c36680"}, - {file = "websockets-10.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8af75085b4bc0b5c40c4a3c0e113fa95e84c60f4ed6786cbb675aeb1ee128247"}, - {file = "websockets-10.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:07cdc0a5b2549bcfbadb585ad8471ebdc7bdf91e32e34ae3889001c1c106a6af"}, - {file = "websockets-10.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:5b936bf552e4f6357f5727579072ff1e1324717902127ffe60c92d29b67b7be3"}, - {file = "websockets-10.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:e4e08305bfd76ba8edab08dcc6496f40674f44eb9d5e23153efa0a35750337e8"}, - {file = "websockets-10.3-cp39-cp39-win32.whl", hash = "sha256:bb621ec2dbbbe8df78a27dbd9dd7919f9b7d32a73fafcb4d9252fc4637343582"}, - {file = "websockets-10.3-cp39-cp39-win_amd64.whl", hash = "sha256:51695d3b199cd03098ae5b42833006a0f43dc5418d3102972addc593a783bc02"}, - {file = "websockets-10.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:907e8247480f287aa9bbc9391bd6de23c906d48af54c8c421df84655eef66af7"}, - {file = "websockets-10.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b1359aba0ff810d5830d5ab8e2c4a02bebf98a60aa0124fb29aa78cfdb8031f"}, - {file = "websockets-10.3-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:93d5ea0b5da8d66d868b32c614d2b52d14304444e39e13a59566d4acb8d6e2e4"}, - {file = "websockets-10.3-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7934e055fd5cd9dee60f11d16c8d79c4567315824bacb1246d0208a47eca9755"}, - {file = "websockets-10.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:3eda1cb7e9da1b22588cefff09f0951771d6ee9fa8dbe66f5ae04cc5f26b2b55"}, - {file = "websockets-10.3.tar.gz", hash = "sha256:fc06cc8073c8e87072138ba1e431300e2d408f054b27047d047b549455066ff4"}, -] -werkzeug = [ - {file = "Werkzeug-2.1.2-py3-none-any.whl", hash = "sha256:72a4b735692dd3135217911cbeaa1be5fa3f62bffb8745c5215420a03dc55255"}, - {file = "Werkzeug-2.1.2.tar.gz", hash = "sha256:1ce08e8093ed67d638d63879fd1ba3735817f7a80de3674d293f5984f25fb6e6"}, -] -wrapt = [ - {file = "wrapt-1.14.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1b376b3f4896e7930f1f772ac4b064ac12598d1c38d04907e696cc4d794b43d3"}, - {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:903500616422a40a98a5a3c4ff4ed9d0066f3b4c951fa286018ecdf0750194ef"}, - {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:5a9a0d155deafd9448baff28c08e150d9b24ff010e899311ddd63c45c2445e28"}, - {file = "wrapt-1.14.1-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:ddaea91abf8b0d13443f6dac52e89051a5063c7d014710dcb4d4abb2ff811a59"}, - {file = "wrapt-1.14.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:36f582d0c6bc99d5f39cd3ac2a9062e57f3cf606ade29a0a0d6b323462f4dd87"}, - {file = "wrapt-1.14.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:7ef58fb89674095bfc57c4069e95d7a31cfdc0939e2a579882ac7d55aadfd2a1"}, - {file = "wrapt-1.14.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:e2f83e18fe2f4c9e7db597e988f72712c0c3676d337d8b101f6758107c42425b"}, - {file = "wrapt-1.14.1-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:ee2b1b1769f6707a8a445162ea16dddf74285c3964f605877a20e38545c3c462"}, - {file = "wrapt-1.14.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:833b58d5d0b7e5b9832869f039203389ac7cbf01765639c7309fd50ef619e0b1"}, - {file = "wrapt-1.14.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:80bb5c256f1415f747011dc3604b59bc1f91c6e7150bd7db03b19170ee06b320"}, - {file = "wrapt-1.14.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:07f7a7d0f388028b2df1d916e94bbb40624c59b48ecc6cbc232546706fac74c2"}, - {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:02b41b633c6261feff8ddd8d11c711df6842aba629fdd3da10249a53211a72c4"}, - {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2fe803deacd09a233e4762a1adcea5db5d31e6be577a43352936179d14d90069"}, - {file = "wrapt-1.14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:257fd78c513e0fb5cdbe058c27a0624c9884e735bbd131935fd49e9fe719d310"}, - {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4fcc4649dc762cddacd193e6b55bc02edca674067f5f98166d7713b193932b7f"}, - {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:11871514607b15cfeb87c547a49bca19fde402f32e2b1c24a632506c0a756656"}, - {file = "wrapt-1.14.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8ad85f7f4e20964db4daadcab70b47ab05c7c1cf2a7c1e51087bfaa83831854c"}, - {file = "wrapt-1.14.1-cp310-cp310-win32.whl", hash = "sha256:a9a52172be0b5aae932bef82a79ec0a0ce87288c7d132946d645eba03f0ad8a8"}, - {file = "wrapt-1.14.1-cp310-cp310-win_amd64.whl", hash = "sha256:6d323e1554b3d22cfc03cd3243b5bb815a51f5249fdcbb86fda4bf62bab9e164"}, - {file = "wrapt-1.14.1-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:43ca3bbbe97af00f49efb06e352eae40434ca9d915906f77def219b88e85d907"}, - {file = "wrapt-1.14.1-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:6b1a564e6cb69922c7fe3a678b9f9a3c54e72b469875aa8018f18b4d1dd1adf3"}, - {file = "wrapt-1.14.1-cp35-cp35m-manylinux2010_i686.whl", hash = "sha256:00b6d4ea20a906c0ca56d84f93065b398ab74b927a7a3dbd470f6fc503f95dc3"}, - {file = "wrapt-1.14.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:a85d2b46be66a71bedde836d9e41859879cc54a2a04fad1191eb50c2066f6e9d"}, - {file = "wrapt-1.14.1-cp35-cp35m-win32.whl", hash = "sha256:dbcda74c67263139358f4d188ae5faae95c30929281bc6866d00573783c422b7"}, - {file = "wrapt-1.14.1-cp35-cp35m-win_amd64.whl", hash = "sha256:b21bb4c09ffabfa0e85e3a6b623e19b80e7acd709b9f91452b8297ace2a8ab00"}, - {file = "wrapt-1.14.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:9e0fd32e0148dd5dea6af5fee42beb949098564cc23211a88d799e434255a1f4"}, - {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9736af4641846491aedb3c3f56b9bc5568d92b0692303b5a305301a95dfd38b1"}, - {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5b02d65b9ccf0ef6c34cba6cf5bf2aab1bb2f49c6090bafeecc9cd81ad4ea1c1"}, - {file = "wrapt-1.14.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21ac0156c4b089b330b7666db40feee30a5d52634cc4560e1905d6529a3897ff"}, - {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:9f3e6f9e05148ff90002b884fbc2a86bd303ae847e472f44ecc06c2cd2fcdb2d"}, - {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:6e743de5e9c3d1b7185870f480587b75b1cb604832e380d64f9504a0535912d1"}, - {file = "wrapt-1.14.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:d79d7d5dc8a32b7093e81e97dad755127ff77bcc899e845f41bf71747af0c569"}, - {file = "wrapt-1.14.1-cp36-cp36m-win32.whl", hash = "sha256:81b19725065dcb43df02b37e03278c011a09e49757287dca60c5aecdd5a0b8ed"}, - {file = "wrapt-1.14.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b014c23646a467558be7da3d6b9fa409b2c567d2110599b7cf9a0c5992b3b471"}, - {file = "wrapt-1.14.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:88bd7b6bd70a5b6803c1abf6bca012f7ed963e58c68d76ee20b9d751c74a3248"}, - {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5901a312f4d14c59918c221323068fad0540e34324925c8475263841dbdfe68"}, - {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d77c85fedff92cf788face9bfa3ebaa364448ebb1d765302e9af11bf449ca36d"}, - {file = "wrapt-1.14.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d649d616e5c6a678b26d15ece345354f7c2286acd6db868e65fcc5ff7c24a77"}, - {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7d2872609603cb35ca513d7404a94d6d608fc13211563571117046c9d2bcc3d7"}, - {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:ee6acae74a2b91865910eef5e7de37dc6895ad96fa23603d1d27ea69df545015"}, - {file = "wrapt-1.14.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:2b39d38039a1fdad98c87279b48bc5dce2c0ca0d73483b12cb72aa9609278e8a"}, - {file = "wrapt-1.14.1-cp37-cp37m-win32.whl", hash = "sha256:60db23fa423575eeb65ea430cee741acb7c26a1365d103f7b0f6ec412b893853"}, - {file = "wrapt-1.14.1-cp37-cp37m-win_amd64.whl", hash = "sha256:709fe01086a55cf79d20f741f39325018f4df051ef39fe921b1ebe780a66184c"}, - {file = "wrapt-1.14.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8c0ce1e99116d5ab21355d8ebe53d9460366704ea38ae4d9f6933188f327b456"}, - {file = "wrapt-1.14.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e3fb1677c720409d5f671e39bac6c9e0e422584e5f518bfd50aa4cbbea02433f"}, - {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:642c2e7a804fcf18c222e1060df25fc210b9c58db7c91416fb055897fc27e8cc"}, - {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7b7c050ae976e286906dd3f26009e117eb000fb2cf3533398c5ad9ccc86867b1"}, - {file = "wrapt-1.14.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef3f72c9666bba2bab70d2a8b79f2c6d2c1a42a7f7e2b0ec83bb2f9e383950af"}, - {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:01c205616a89d09827986bc4e859bcabd64f5a0662a7fe95e0d359424e0e071b"}, - {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5a0f54ce2c092aaf439813735584b9537cad479575a09892b8352fea5e988dc0"}, - {file = "wrapt-1.14.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2cf71233a0ed05ccdabe209c606fe0bac7379fdcf687f39b944420d2a09fdb57"}, - {file = "wrapt-1.14.1-cp38-cp38-win32.whl", hash = "sha256:aa31fdcc33fef9eb2552cbcbfee7773d5a6792c137b359e82879c101e98584c5"}, - {file = "wrapt-1.14.1-cp38-cp38-win_amd64.whl", hash = "sha256:d1967f46ea8f2db647c786e78d8cc7e4313dbd1b0aca360592d8027b8508e24d"}, - {file = "wrapt-1.14.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3232822c7d98d23895ccc443bbdf57c7412c5a65996c30442ebe6ed3df335383"}, - {file = "wrapt-1.14.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:988635d122aaf2bdcef9e795435662bcd65b02f4f4c1ae37fbee7401c440b3a7"}, - {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cca3c2cdadb362116235fdbd411735de4328c61425b0aa9f872fd76d02c4e86"}, - {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d52a25136894c63de15a35bc0bdc5adb4b0e173b9c0d07a2be9d3ca64a332735"}, - {file = "wrapt-1.14.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40e7bc81c9e2b2734ea4bc1aceb8a8f0ceaac7c5299bc5d69e37c44d9081d43b"}, - {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b9b7a708dd92306328117d8c4b62e2194d00c365f18eff11a9b53c6f923b01e3"}, - {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6a9a25751acb379b466ff6be78a315e2b439d4c94c1e99cb7266d40a537995d3"}, - {file = "wrapt-1.14.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:34aa51c45f28ba7f12accd624225e2b1e5a3a45206aa191f6f9aac931d9d56fe"}, - {file = "wrapt-1.14.1-cp39-cp39-win32.whl", hash = "sha256:dee0ce50c6a2dd9056c20db781e9c1cfd33e77d2d569f5d1d9321c641bb903d5"}, - {file = "wrapt-1.14.1-cp39-cp39-win_amd64.whl", hash = "sha256:dee60e1de1898bde3b238f18340eec6148986da0455d8ba7848d50470a7a32fb"}, - {file = "wrapt-1.14.1.tar.gz", hash = "sha256:380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d"}, -] -xmltodict = [ - {file = "xmltodict-0.13.0-py2.py3-none-any.whl", hash = "sha256:aa89e8fd76320154a40d19a0df04a4695fb9dc5ba977cbb68ab3e4eb225e7852"}, - {file = "xmltodict-0.13.0.tar.gz", hash = "sha256:341595a488e3e01a85a9d8911d8912fd922ede5fecc4dce437eb4b6c8d037e56"}, -] +wcwidth = [] +webexteamssdk = [] +websockets = [] +werkzeug = [] +wrapt = [] +xmltodict = [] yapf = [] yarl = [] zipp = [] diff --git a/pyproject.toml b/pyproject.toml index 5118673dbda2..02eec2099c07 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -73,8 +73,14 @@ matplotlib = ">=3.1,<3.6" attrs = ">=19.3,<22.2" jsonpickle = ">=1.3,<2.3" redis = ">=3.4,<5.0" -numpy = ">=1.19.2,<1.22.0" -scipy = ">=1.4.1,<1.8.0" +numpy = [ + {version = ">=1.19.2,<1.22.0", python = "~=3.7.0"}, + {version = ">=1.19.2,<1.24.0", python = ">=3.8,<3.10"}, +] +scipy = [ + {version = ">=1.4.1,<1.8.0", python = "~=3.7.0"}, + {version = ">=1.4.1,<1.9.0", python = ">=3.8,<3.10"} +] absl-py = ">=0.9,<1.3" apscheduler = ">=3.6,<3.10" tqdm = "^4.31" @@ -83,7 +89,10 @@ fbmessenger = "~6.0.0" pykwalify = ">=1.7,<1.9" coloredlogs = ">=10,<16" "ruamel.yaml" = ">=0.16.5,<0.18.0" -scikit-learn = ">=0.22,<1.1" +scikit-learn = [ + {version = ">=0.22,<1.1", python = "~=3.7.0"}, + {version = ">=0.22,<1.2", python = ">=3.8,<3.10"} +] slackclient = "^2.0.0" twilio = ">=6.26,<7.15" webexteamssdk = ">=1.1.1,<1.7.0" diff --git a/rasa/core/evaluation/marker_stats.py b/rasa/core/evaluation/marker_stats.py index 4afece5a3619..3fcef569b626 100644 --- a/rasa/core/evaluation/marker_stats.py +++ b/rasa/core/evaluation/marker_stats.py @@ -1,5 +1,6 @@ from __future__ import annotations from typing import Dict, Text, Union, List, Tuple + from rasa.utils.io import WriteRow from pathlib import Path import csv @@ -12,15 +13,12 @@ def compute_statistics( values: List[Union[float, int]] -) -> Dict[Text, Union[int, float]]: +) -> Dict[Text, Union[int, float, np.floating]]: """Computes some statistics over the given numbers.""" return { "count": len(values) if values else 0, "mean": np.mean(values) if values else np.nan, - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - "median": ( - np.median(values) if values else np.nan # type: ignore[no-untyped-call] - ), + "median": np.median(values) if values else np.nan, "min": min(values) if values else np.nan, "max": max(values) if values else np.nan, } @@ -281,8 +279,7 @@ def _write_row( elif np.isnan(statistic_value): value_str = str(np.nan) else: - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - value_str = np.round(statistic_value, 3) # type: ignore[no-untyped-call] + value_str = np.round(statistic_value, 3) table_writer.writerow( [ str(item) diff --git a/rasa/core/featurizers/single_state_featurizer.py b/rasa/core/featurizers/single_state_featurizer.py index fce59c09870b..7d8c504084c1 100644 --- a/rasa/core/featurizers/single_state_featurizer.py +++ b/rasa/core/featurizers/single_state_featurizer.py @@ -142,8 +142,7 @@ def _create_features( # its value if state_feature in self._default_feature_states[attribute]: features[self._default_feature_states[attribute][state_feature]] = value - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - features = np.expand_dims(features, 0) # type: ignore[no-untyped-call] + features = np.expand_dims(features, 0) if sparse: features = scipy.sparse.coo_matrix(features) diff --git a/rasa/core/policies/ted_policy.py b/rasa/core/policies/ted_policy.py index c9e756884233..a1d1f387d53c 100644 --- a/rasa/core/policies/ted_policy.py +++ b/rasa/core/policies/ted_policy.py @@ -455,13 +455,12 @@ def _assemble_label_data( SEQUENCE, ) label_ids = np.arange(domain.num_actions) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 label_data.add_features( LABEL_KEY, LABEL_SUB_KEY, [ FeatureArray( - np.expand_dims(label_ids, -1), # type: ignore[no-untyped-call] + np.expand_dims(label_ids, -1), number_of_dimensions=2, ) ], @@ -527,12 +526,8 @@ def _create_model_data( model_data = RasaModelData(label_key=LABEL_KEY, label_sub_key=LABEL_SUB_KEY) if label_ids is not None and encoded_all_labels is not None: - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 label_ids = np.array( - [ - np.expand_dims(seq_label_ids, -1) # type: ignore[no-untyped-call] - for seq_label_ids in label_ids - ] + [np.expand_dims(seq_label_ids, -1) for seq_label_ids in label_ids] ) model_data.add_features( LABEL_KEY, @@ -800,15 +795,10 @@ def _pick_confidence( logger.debug(f"User intent lead to '{non_e2e_action_name}'.") e2e_action_name = domain.action_names_or_texts[np.argmax(confidences[1])] logger.debug(f"User text lead to '{e2e_action_name}'.") - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 if ( - np.max(confidences[1]) # type: ignore[no-untyped-call] - > self.config[E2E_CONFIDENCE_THRESHOLD] + np.max(confidences[1]) > self.config[E2E_CONFIDENCE_THRESHOLD] # TODO maybe compare confidences is better - and np.max(similarities[1]) # type: ignore[no-untyped-call] - > np.max(similarities[0]) # type: ignore[no-untyped-call] + and np.max(similarities[1]) > np.max(similarities[0]) ): logger.debug(f"TED predicted '{e2e_action_name}' based on user text.") return confidences[1], True diff --git a/rasa/core/policies/unexpected_intent_policy.py b/rasa/core/policies/unexpected_intent_policy.py index 9858f826884b..d5b39a561b82 100644 --- a/rasa/core/policies/unexpected_intent_policy.py +++ b/rasa/core/policies/unexpected_intent_policy.py @@ -370,13 +370,12 @@ def _assemble_label_data( f"{LABEL}_{INTENT}", SEQUENCE_LENGTH, f"{LABEL}_{INTENT}", SEQUENCE ) label_ids = np.arange(len(domain.intents)) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 label_data.add_features( LABEL_KEY, LABEL_SUB_KEY, [ FeatureArray( - np.expand_dims(label_ids, -1), # type: ignore[no-untyped-call] + np.expand_dims(label_ids, -1), number_of_dimensions=2, ) ], @@ -784,10 +783,7 @@ def _collect_label_id_grouped_scores( Returns: Both buckets of similarity scores grouped by each unique label id. """ - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - unique_label_ids = np.unique( - label_ids - ).tolist() # type: ignore[no-untyped-call] + unique_label_ids = np.unique(label_ids).tolist() if LABEL_PAD_ID in unique_label_ids: unique_label_ids.remove(LABEL_PAD_ID) @@ -839,9 +835,8 @@ def _compute_label_quantiles( prediction_scores[NEGATIVE_SCORES_KEY], ) minimum_positive_score = min(positive_scores) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 if negative_scores: - quantile_values = np.quantile( # type: ignore[no-untyped-call] + quantile_values = np.quantile( # type: ignore[call-overload] negative_scores, quantile_indices, interpolation="lower" ) label_quantiles[label_id] = [ diff --git a/rasa/nlu/classifiers/diet_classifier.py b/rasa/nlu/classifiers/diet_classifier.py index 5f512dbf8edf..aed77970cd20 100644 --- a/rasa/nlu/classifiers/diet_classifier.py +++ b/rasa/nlu/classifiers/diet_classifier.py @@ -605,16 +605,10 @@ def _compute_default_label_features( logger.debug("No label features found. Computing default label features.") eye_matrix = np.eye(len(labels_example), dtype=np.float32) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 # add sequence dimension to one-hot labels return [ FeatureArray( - np.array( - [ - np.expand_dims(a, 0) # type: ignore[no-untyped-call] - for a in eye_matrix - ] - ), + np.array([np.expand_dims(a, 0) for a in eye_matrix]), number_of_dimensions=3, ) ] @@ -664,7 +658,6 @@ def _create_label_data( ) label_ids = np.array([idx for (idx, _) in labels_idx_examples]) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 # explicitly add last dimension to label_ids # to track correctly dynamic sequences label_data.add_features( @@ -672,7 +665,7 @@ def _create_label_data( LABEL_SUB_KEY, [ FeatureArray( - np.expand_dims(label_ids, -1), # type: ignore[no-untyped-call] + np.expand_dims(label_ids, -1), number_of_dimensions=2, ) ], @@ -800,13 +793,12 @@ def _add_label_features( label_ids.append(label_id_dict[example.get(label_attribute)]) # explicitly add last dimension to label_ids # to track correctly dynamic sequences - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 model_data.add_features( LABEL_KEY, LABEL_SUB_KEY, [ FeatureArray( - np.expand_dims(label_ids, -1), # type: ignore[no-untyped-call] + np.expand_dims(label_ids, -1), number_of_dimensions=2, ) ], @@ -871,15 +863,7 @@ def preprocess_train_data(self, training_data: TrainingData) -> RasaModelData: @staticmethod def _check_enough_labels(model_data: RasaModelData) -> bool: - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - return ( - len( - np.unique( # type: ignore[no-untyped-call] - model_data.get(LABEL_KEY, LABEL_SUB_KEY) - ) - ) - >= 2 - ) + return len(np.unique(model_data.get(LABEL_KEY, LABEL_SUB_KEY))) >= 2 def train(self, training_data: TrainingData) -> Resource: """Train the embedding intent classifier on a data set.""" diff --git a/rasa/nlu/classifiers/sklearn_intent_classifier.py b/rasa/nlu/classifiers/sklearn_intent_classifier.py index aac570cc17b6..5c941d3d8806 100644 --- a/rasa/nlu/classifiers/sklearn_intent_classifier.py +++ b/rasa/nlu/classifiers/sklearn_intent_classifier.py @@ -163,10 +163,7 @@ def _get_sentence_features(message: Message) -> np.ndarray: def _num_cv_splits(self, y: np.ndarray) -> int: folds = self.component_config["max_cross_validation_folds"] - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - return max( - 2, min(folds, np.min(np.bincount(y)) // 5) # type: ignore[no-untyped-call] - ) + return max(2, min(folds, np.min(np.bincount(y)) // 5)) def _create_classifier( self, num_threads: int, y: np.ndarray @@ -264,10 +261,7 @@ def predict(self, X: np.ndarray) -> Tuple[np.ndarray, np.ndarray]: # sort the probabilities retrieving the indices of # the elements in sorted order - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - sorted_indices = np.fliplr( # type: ignore[no-untyped-call] - np.argsort(pred_result, axis=1) - ) + sorted_indices = np.fliplr(np.argsort(pred_result, axis=1)) return sorted_indices, pred_result[:, sorted_indices] def persist(self) -> None: diff --git a/rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py b/rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py index 7c7c79c3a691..d3bc6990be69 100644 --- a/rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +++ b/rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py @@ -48,10 +48,7 @@ def aggregate_sequence_features( if pooling_operation == MEAN_POOLING: return np.mean(dense_sequence_features, axis=0, keepdims=True) elif pooling_operation == MAX_POOLING: - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - return np.max( - dense_sequence_features, axis=0, keepdims=True - ) # type: ignore[no-untyped-call] + return np.max(dense_sequence_features, axis=0, keepdims=True) else: raise InvalidConfigException( f"Invalid pooling operation specified. Available operations are " diff --git a/rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py b/rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py index f48ff4c8671a..45e808abdbe2 100644 --- a/rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +++ b/rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py @@ -541,9 +541,8 @@ def _add_extra_padding( reshaped_sequence_embeddings = [] for index, embedding in enumerate(sequence_embeddings): embedding_size = embedding.shape[-1] - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 if actual_sequence_lengths[index] > self.max_model_sequence_length: - embedding = np.concatenate( # type: ignore[no-untyped-call] + embedding = np.concatenate( [ embedding, np.zeros( diff --git a/rasa/nlu/test.py b/rasa/nlu/test.py index eed89ecab552..87d2ef1dafb5 100644 --- a/rasa/nlu/test.py +++ b/rasa/nlu/test.py @@ -1930,9 +1930,7 @@ def log_results(results: IntentMetrics, dataset_name: Text) -> None: dataset_name: string of which dataset the results are from, e.g. test/train """ for k, v in results.items(): - logger.info( - "{} {}: {:.3f} ({:.3f})".format(dataset_name, k, np.mean(v), np.std(v)) - ) + logger.info(f"{dataset_name} {k}: {np.mean(v):.3f} ({np.std(v):.3f})") def log_entity_results(results: EntityMetrics, dataset_name: Text) -> None: diff --git a/rasa/shared/nlu/training_data/features.py b/rasa/shared/nlu/training_data/features.py index 2132b430fefb..d981c1563bb0 100644 --- a/rasa/shared/nlu/training_data/features.py +++ b/rasa/shared/nlu/training_data/features.py @@ -99,8 +99,7 @@ def _combine_dense_features(self, additional_features: Features) -> None: f"Cannot combine dense features as sequence dimensions do not " f"match: {self.features.ndim} != {additional_features.features.ndim}." ) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - self.features = np.concatenate( # type: ignore[no-untyped-call] + self.features = np.concatenate( (self.features, additional_features.features), axis=-1 ) self._cached_fingerprint = None @@ -321,10 +320,7 @@ def combine( # Combine the features arbitrary_feature = features_list[0] if not arbitrary_feature.is_sparse(): - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - features = np.concatenate( # type: ignore[no-untyped-call] - [f.features for f in features_list], axis=-1 - ) + features = np.concatenate([f.features for f in features_list], axis=-1) else: features = scipy.sparse.hstack([f.features for f in features_list]) return Features( diff --git a/rasa/utils/common.py b/rasa/utils/common.py index 48fde9b254d2..b13cb072dc3e 100644 --- a/rasa/utils/common.py +++ b/rasa/utils/common.py @@ -66,6 +66,9 @@ # is not available on PyPi, so we cannot pin the newer version. # cf. https://github.com/google/flatbuffers/issues/6957 (DeprecationWarning, "the imp module is deprecated in favour of importlib.*"), + # Cannot fix this deprecation warning since we need to support two + # numpy versions as long as we keep python 37 around + (DeprecationWarning, "the `interpolation=` argument to quantile was renamed"), ] EXPECTED_WARNINGS.extend(EXPECTED_PILLOW_DEPRECATION_WARNINGS) diff --git a/rasa/utils/plotting.py b/rasa/utils/plotting.py index c2ffbc0e8733..a1eb3f67adfe 100644 --- a/rasa/utils/plotting.py +++ b/rasa/utils/plotting.py @@ -167,21 +167,11 @@ def _extract_paired_histogram_specification( Raises: ValueError: If histogram_data does not contain values. """ - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - if ( - not histogram_data - or not np.concatenate(histogram_data).size # type: ignore[no-untyped-call] - ): + if not histogram_data or not np.concatenate(histogram_data).size: rasa.shared.utils.io.raise_warning("No data to plot paired histogram.") raise ValueError("No data to plot paired histogram.") - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - min_data_value = np.min( - np.concatenate(histogram_data) # type: ignore[no-untyped-call] - ) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - max_data_value = np.max( - np.concatenate(histogram_data) # type: ignore[no-untyped-call] - ) + min_data_value: float = np.min(np.concatenate(histogram_data)) + max_data_value: float = np.max(np.concatenate(histogram_data)) bin_width = (max_data_value - min_data_value) / num_bins bins = [ min_data_value + i * bin_width @@ -191,10 +181,7 @@ def _extract_paired_histogram_specification( ] histograms = [ # A list of counts - how often a value in `data` falls into a particular bin - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - np.histogram(data, bins=bins, density=density)[ # type: ignore[no-untyped-call] - 0 - ] + list(np.histogram(data, bins=bins, density=density)[0]) for data in histogram_data ] @@ -212,9 +199,12 @@ def _extract_paired_histogram_specification( # by `x_pad_fraction` to get the maximum x-values displayed x_ranges = [(1.0 + x_pad_fraction) * max(histogram) for histogram in histograms] - bin_of_first_non_zero_tally = min( - [(histogram != 0).argmax(axis=0) for histogram in histograms] - ) + try: + bin_of_first_non_zero_tally = min( + [[bool(v) for v in histogram].index(True) for histogram in histograms] + ) + except ValueError: + bin_of_first_non_zero_tally = 0 y_range = ( # Start plotting where the data starts (ignore empty bins at the low end) @@ -287,8 +277,7 @@ def plot_paired_histogram( axes[side].barh( bins[:-1], tallies[side], - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - height=np.diff(bins), # type: ignore[no-untyped-call] + height=np.diff(bins), align="center", color=colors[side], linewidth=1, diff --git a/rasa/utils/tensorflow/data_generator.py b/rasa/utils/tensorflow/data_generator.py index f79c4d34e4ad..9157ea7252ca 100644 --- a/rasa/utils/tensorflow/data_generator.py +++ b/rasa/utils/tensorflow/data_generator.py @@ -1,4 +1,4 @@ -from typing import List, Union, Text, Optional, Any, Tuple, Dict +from typing import List, Union, Text, Optional, Any, Tuple, Dict, cast import logging import scipy.sparse @@ -112,7 +112,7 @@ def prepare_batch( else: _data = v[:] - if _data.is_sparse: + if cast(FeatureArray, _data).is_sparse: batch_data.extend( RasaDataGenerator._scipy_matrix_to_values(_data) ) diff --git a/rasa/utils/tensorflow/model_data.py b/rasa/utils/tensorflow/model_data.py index d1e50d14538c..b56acc3601f5 100644 --- a/rasa/utils/tensorflow/model_data.py +++ b/rasa/utils/tensorflow/model_data.py @@ -11,6 +11,7 @@ NamedTuple, ItemsView, overload, + cast, ) from collections import defaultdict, OrderedDict @@ -78,7 +79,7 @@ def __init__( super().__init__(**kwargs) self.number_of_dimensions = number_of_dimensions - def __array_finalize__(self, obj: Any) -> None: + def __array_finalize__(self, obj: Optional[np.ndarray]) -> None: """This method is called when the system allocates a new array from obj. Args: @@ -160,10 +161,7 @@ def __setstate__(self, state: Any, **kwargs: Any) -> None: self.number_of_dimensions = state[-3] self.is_sparse = state[-2] self.units = state[-1] - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - super(FeatureArray, self).__setstate__( - state[0:-3], **kwargs - ) # type: ignore[no-untyped-call] + super(FeatureArray, self).__setstate__(state[0:-3], **kwargs) # pytype: enable=attribute-error @@ -350,7 +348,8 @@ def first_data_example(self) -> Data: for key, attribute_data in self.data.items(): out_data[key] = {} for sub_key, features in attribute_data.items(): - out_data[key][sub_key] = [feature[:1] for feature in features] + feature_slices = [feature[:1] for feature in features] + out_data[key][sub_key] = cast(List[FeatureArray], feature_slices) return out_data def does_feature_exist(self, key: Text, sub_key: Optional[Text] = None) -> bool: @@ -606,11 +605,10 @@ def split( label_ids = self._create_label_ids( self.data[self.label_key][self.label_sub_key][0] ) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 label_counts: Dict[int, int] = dict( zip( *np.unique( - label_ids, # type: ignore[no-untyped-call] + label_ids, return_counts=True, axis=0, ) @@ -713,8 +711,7 @@ def balanced_data(self, data: Data, batch_size: int, shuffle: bool) -> Data: label_ids = self._create_label_ids(data[self.label_key][self.label_sub_key][0]) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - unique_label_ids, counts_label_ids = np.unique( # type: ignore[no-untyped-call] + unique_label_ids, counts_label_ids = np.unique( label_ids, return_counts=True, axis=0 ) num_label_ids = len(unique_label_ids) @@ -769,15 +766,12 @@ def balanced_data(self, data: Data, batch_size: int, shuffle: bool) -> Data: break final_data: Data = defaultdict(lambda: defaultdict(list)) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 for key, attribute_data in new_data.items(): for sub_key, features in attribute_data.items(): for f in features: final_data[key][sub_key].append( FeatureArray( - np.concatenate( # type: ignore[no-untyped-call] - np.array(f) - ), + np.concatenate(np.array(f)), number_of_dimensions=f[0].number_of_dimensions, ) ) @@ -948,9 +942,8 @@ def _combine_features( return FeatureArray( scipy.sparse.vstack([feature_1, feature_2]), number_of_dimensions ) - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 return FeatureArray( - np.concatenate([feature_1, feature_2]), # type: ignore[no-untyped-call] + np.concatenate([feature_1, feature_2]), number_of_dimensions, ) diff --git a/rasa/utils/tensorflow/model_data_utils.py b/rasa/utils/tensorflow/model_data_utils.py index 843e3f68c561..cfca7940e1a0 100644 --- a/rasa/utils/tensorflow/model_data_utils.py +++ b/rasa/utils/tensorflow/model_data_utils.py @@ -489,10 +489,7 @@ def _extract_features( # add additional dimension to attribute mask # to get a vector of shape (dialogue length x 1), # the batch dim will be added later - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 - attribute_mask = np.expand_dims( - attribute_mask, -1 - ) # type: ignore[no-untyped-call] + attribute_mask = np.expand_dims(attribute_mask, -1) attribute_masks.append(attribute_mask) return attribute_masks, dense_features, sparse_features diff --git a/rasa/utils/tensorflow/models.py b/rasa/utils/tensorflow/models.py index 461ad3b9914b..4d6207a15d29 100644 --- a/rasa/utils/tensorflow/models.py +++ b/rasa/utils/tensorflow/models.py @@ -351,9 +351,8 @@ def _merge_batch_outputs( if not all_outputs: return batch_output for key, val in batch_output.items(): - # [numpy-upgrade] type ignore can be removed after upgrading to numpy 1.23 if isinstance(val, np.ndarray): - all_outputs[key] = np.concatenate( # type: ignore[no-untyped-call] + all_outputs[key] = np.concatenate( [all_outputs[key], batch_output[key]], axis=0 ) From 2580cd675782f7210f5cc1c307ff6232a1cfbb16 Mon Sep 17 00:00:00 2001 From: Thomas Werkmeister Date: Wed, 9 Nov 2022 16:38:42 +0100 Subject: [PATCH 2/9] prepared release of version 3.3.1 (#11747) * prepared release of version 3.3.1 --- CHANGELOG.mdx | 8 ++++++++ changelog/11721.doc.md | 1 - changelog/11724.doc.md | 1 - pyproject.toml | 38 +++++++++++++++++++++++++------------- rasa/version.py | 2 +- 5 files changed, 34 insertions(+), 16 deletions(-) delete mode 100644 changelog/11721.doc.md delete mode 100644 changelog/11724.doc.md diff --git a/CHANGELOG.mdx b/CHANGELOG.mdx index 866d91260f55..b428b0a7c69d 100644 --- a/CHANGELOG.mdx +++ b/CHANGELOG.mdx @@ -16,6 +16,14 @@ https://github.com/RasaHQ/rasa/tree/main/changelog/ . --> +## [3.3.1] - 2022-11-09 +### Improved Documentation +- [#11721](https://github.com/rasahq/rasa/issues/11721): Add docs on how to set up additional data lakes for Rasa Pro analytics pipeline. +- [#11724](https://github.com/rasahq/rasa/issues/11724): Update migration guide and form docs with prescriptive recommendation on how to implement dynamic forms with custom slot mappings. + +### Improvements +- [#11732](https://github.com/rasahq/rasa/issues/11732): Updated numpy and scikit learn version to fix vulnerabilities of those dependencies + ## [3.3.0] - 2022-10-24 ### Improvements - [#11561](https://github.com/rasahq/rasa/issues/11561): Added option `--offset-timestamps-by-seconds` to offset the timestamp of events when using `rasa export` diff --git a/changelog/11721.doc.md b/changelog/11721.doc.md deleted file mode 100644 index 4286396c3774..000000000000 --- a/changelog/11721.doc.md +++ /dev/null @@ -1 +0,0 @@ -Add docs on how to set up additional data lakes for Rasa Pro analytics pipeline. diff --git a/changelog/11724.doc.md b/changelog/11724.doc.md deleted file mode 100644 index 227717f7e1bc..000000000000 --- a/changelog/11724.doc.md +++ /dev/null @@ -1 +0,0 @@ -Update migration guide and form docs with prescriptive recommendation on how to implement dynamic forms with custom slot mappings. diff --git a/pyproject.toml b/pyproject.toml index 02eec2099c07..5f86f3766e01 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ exclude = "((.eggs | .git | .pytest_cache | build | dist))" [tool.poetry] name = "rasa" -version = "3.3.0" +version = "3.3.1" description = "Open source machine learning framework to automate text- and voice-based conversations: NLU, dialogue management, connect to Slack, Facebook, and more - Create chatbots and voice assistants" authors = [ "Rasa Technologies GmbH ",] maintainers = [ "Tom Bocklisch ",] @@ -73,14 +73,6 @@ matplotlib = ">=3.1,<3.6" attrs = ">=19.3,<22.2" jsonpickle = ">=1.3,<2.3" redis = ">=3.4,<5.0" -numpy = [ - {version = ">=1.19.2,<1.22.0", python = "~=3.7.0"}, - {version = ">=1.19.2,<1.24.0", python = ">=3.8,<3.10"}, -] -scipy = [ - {version = ">=1.4.1,<1.8.0", python = "~=3.7.0"}, - {version = ">=1.4.1,<1.9.0", python = ">=3.8,<3.10"} -] absl-py = ">=0.9,<1.3" apscheduler = ">=3.6,<3.10" tqdm = "^4.31" @@ -89,10 +81,6 @@ fbmessenger = "~6.0.0" pykwalify = ">=1.7,<1.9" coloredlogs = ">=10,<16" "ruamel.yaml" = ">=0.16.5,<0.18.0" -scikit-learn = [ - {version = ">=0.22,<1.1", python = "~=3.7.0"}, - {version = ">=0.22,<1.2", python = ">=3.8,<3.10"} -] slackclient = "^2.0.0" twilio = ">=6.26,<7.15" webexteamssdk = ">=1.1.1,<1.7.0" @@ -139,6 +127,30 @@ CacheControl = "^0.12.9" randomname = "^0.1.5" sanic-routing = "^0.7.2" pluggy = "^1.0.0" +[[tool.poetry.dependencies.numpy]] +version = ">=1.19.2,<1.22.0" +python = "~=3.7.0" + +[[tool.poetry.dependencies.numpy]] +version = ">=1.19.2,<1.24.0" +python = ">=3.8,<3.10" + +[[tool.poetry.dependencies.scipy]] +version = ">=1.4.1,<1.8.0" +python = "~=3.7.0" + +[[tool.poetry.dependencies.scipy]] +version = ">=1.4.1,<1.9.0" +python = ">=3.8,<3.10" + +[[tool.poetry.dependencies.scikit-learn]] +version = ">=0.22,<1.1" +python = "~=3.7.0" + +[[tool.poetry.dependencies.scikit-learn]] +version = ">=0.22,<1.2" +python = ">=3.8,<3.10" + [[tool.poetry.dependencies.spacy]] version = "^3.4" markers = "sys_platform == 'darwin' and platform_machine == 'arm64'" diff --git a/rasa/version.py b/rasa/version.py index 91be6b962273..c27552815816 100644 --- a/rasa/version.py +++ b/rasa/version.py @@ -1,3 +1,3 @@ # this file will automatically be changed, # do not add anything but the version number here! -__version__ = "3.3.0" +__version__ = "3.3.1" From eb65b5183b3e81c9196c643f6cab515771a95797 Mon Sep 17 00:00:00 2001 From: Arjaan Buijk Date: Wed, 16 Nov 2022 10:37:43 -0500 Subject: [PATCH 3/9] Update docs, which wrongly stated that messages with '/' bypass NLU --- docs/docs/responses.mdx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/docs/responses.mdx b/docs/docs/responses.mdx index a7f9e33813c7..3309247f48ea 100644 --- a/docs/docs/responses.mdx +++ b/docs/docs/responses.mdx @@ -311,13 +311,13 @@ Passing multiple entities is also possible with: '/intent_name{{"entity_type_1":"entity_value_1", "entity_type_2": "entity_value_2"}}' ``` -:::note bypass nlu with buttons -You can use buttons to bypass NLU prediction and trigger a specific intent and entities. +:::note overwrite nlu with buttons +You can use buttons to overwrite the NLU prediction and trigger a specific intent and entities. -Messages starting with `/` are sent straight to the +Messages starting with `/` are sent handled by the `RegexInterpreter`, which expects NLU input in a shortened `/intent{entities}` format. In the example above, if the user clicks a button, the user input -will be directly classified as either the `mood_great` or `mood_sad` intent. +will be classified as either the `mood_great` or `mood_sad` intent. You can include entities with the intent to be passed to the `RegexInterpreter` using the following format: From 8b1eb6a4933e9830551a9f6fd01c710d1622f893 Mon Sep 17 00:00:00 2001 From: Arjaan Buijk Date: Wed, 16 Nov 2022 10:41:39 -0500 Subject: [PATCH 4/9] Add changelog --- changelog/11768.doc.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 changelog/11768.doc.md diff --git a/changelog/11768.doc.md b/changelog/11768.doc.md new file mode 100644 index 000000000000..e69de29bb2d1 From 36b6af535758f82f3cd6bb2c52db1fcaad8c5911 Mon Sep 17 00:00:00 2001 From: Arjaan Buijk Date: Wed, 16 Nov 2022 12:34:37 -0500 Subject: [PATCH 5/9] Add changelog --- changelog/11768.doc.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/changelog/11768.doc.md b/changelog/11768.doc.md index e69de29bb2d1..047addce4b76 100644 --- a/changelog/11768.doc.md +++ b/changelog/11768.doc.md @@ -0,0 +1,2 @@ +The documentation was updated for Buttons using messages that start with '/'. +Previously, it wrongly stated that messages with '/' bypass NLU, which is not the case. \ No newline at end of file From 405ac7056f968411cf57d5a4b8d0e45099f3a194 Mon Sep 17 00:00:00 2001 From: Thomas Werkmeister Date: Thu, 17 Nov 2022 14:23:24 +0100 Subject: [PATCH 6/9] Added docs for creating meta learners on the graph (#11763) * Added docs for creating meta learners on the graph --- .../nlu_meta_fallback.py | 42 +++++++++++++++++++ .../nlu_meta_intent_featurizer.py | 15 +++++++ docs/docs/custom-graph-components.mdx | 32 ++++++++++++++ 3 files changed, 89 insertions(+) create mode 100644 data/test_classes/custom_graph_components/nlu_meta_fallback.py create mode 100644 data/test_classes/custom_graph_components/nlu_meta_intent_featurizer.py diff --git a/data/test_classes/custom_graph_components/nlu_meta_fallback.py b/data/test_classes/custom_graph_components/nlu_meta_fallback.py new file mode 100644 index 000000000000..8b1592d1d180 --- /dev/null +++ b/data/test_classes/custom_graph_components/nlu_meta_fallback.py @@ -0,0 +1,42 @@ +from typing import Dict, Text, Any, List + +from rasa.engine.graph import GraphComponent, ExecutionContext +from rasa.engine.recipes.default_recipe import DefaultV1Recipe +from rasa.engine.storage.resource import Resource +from rasa.engine.storage.storage import ModelStorage +from rasa.shared.nlu.training_data.message import Message +from rasa.shared.nlu.training_data.training_data import TrainingData +from rasa.nlu.classifiers.fallback_classifier import FallbackClassifier + + +@DefaultV1Recipe.register( + [DefaultV1Recipe.ComponentType.INTENT_CLASSIFIER], is_trainable=True +) +class MetaFallback(FallbackClassifier): + + def __init__( + self, + config: Dict[Text, Any], + model_storage: ModelStorage, + resource: Resource, + execution_context: ExecutionContext, + ) -> None: + super().__init__(config) + + self._model_storage = model_storage + self._resource = resource + + @classmethod + def create( + cls, + config: Dict[Text, Any], + model_storage: ModelStorage, + resource: Resource, + execution_context: ExecutionContext, + ) -> FallbackClassifier: + """Creates a new untrained component (see parent class for full docstring).""" + return cls(config, model_storage, resource, execution_context) + + def train(self, training_data: TrainingData) -> Resource: + # Do something here with the messages + return self._resource diff --git a/data/test_classes/custom_graph_components/nlu_meta_intent_featurizer.py b/data/test_classes/custom_graph_components/nlu_meta_intent_featurizer.py new file mode 100644 index 000000000000..d9629aa80141 --- /dev/null +++ b/data/test_classes/custom_graph_components/nlu_meta_intent_featurizer.py @@ -0,0 +1,15 @@ +from rasa.engine.recipes.default_recipe import DefaultV1Recipe +from rasa.shared.nlu.training_data.training_data import TrainingData +from rasa.nlu.classifiers.diet_classifier import DIETClassifier + + +@DefaultV1Recipe.register( + [DefaultV1Recipe.ComponentType.INTENT_CLASSIFIER, + DefaultV1Recipe.ComponentType.ENTITY_EXTRACTOR, + DefaultV1Recipe.ComponentType.MESSAGE_FEATURIZER], is_trainable=True +) +class DIETFeaturizer(DIETClassifier): + + def process_training_data(self, training_data: TrainingData) -> TrainingData: + # classify and add the attributes to the messages on the training data + return training_data diff --git a/docs/docs/custom-graph-components.mdx b/docs/docs/custom-graph-components.mdx index e96ebba73702..495ce6260932 100644 --- a/docs/docs/custom-graph-components.mdx +++ b/docs/docs/custom-graph-components.mdx @@ -487,3 +487,35 @@ which trains a new model: ```python (docs/sources/data/test_classes/custom_graph_components/nlu_sparse.py) ``` + +### NLU Meta Learners +:::info Advanced use case + +NLU Meta learners are an advanced use case. The following section is only relevant +if you have a component that learns parameters based on the output of previous +classifiers. For components that have manually set parameters or logic, you can create +a component with `is_trainable=False` and not worry about the preceding classifiers. + +::: + +NLU Meta learners are intent classifiers or entity extractors that use the predictions +of other trained intent classifiers or entity extractors and try to improve upon their +results. An example for a meta learner would be a component that averages the output +of two previous intent classifiers or a fallback classifier that sets it's threshold +according to the confidence of the intent classifier on training examples. + +Conceptually, to built a trainable fallback classifier you first need to create that +fallback classifier as a custom component: + +```python (docs/sources/data/test_classes/custom_graph_components/nlu_meta_fallback.py) +``` + +Next, you will need to create a custom intent classifier that is also a featurizer, +as the classifiers' output needs to be consumed by another component downstream. +For the custom intent classifier component you also need to define how its predictions +should be added to the message data specifying the `process_training_data` method. +Make sure to not overwrite the true labels for the intents. Here's a template that +shows how to subclass DIET for this purpose: + +```python (docs/sources/data/test_classes/custom_graph_components/nlu_meta_intent_featurizer.py) +``` From c7e336032473eb5263353a9e1aaa6c430bed0fc1 Mon Sep 17 00:00:00 2001 From: Znat Date: Thu, 17 Nov 2022 18:06:24 +0100 Subject: [PATCH 7/9] Add Rasa Pro instructions as a tab in deploy docs (#11733) * Add Rasa Pro instructions as a tab in deploy docs * fix links * fix more links * minor improvements Co-authored-by: Roberto <43567378+rasabot@users.noreply.github.com> --- docs/docs/deploy/deploy-rasa-plus.mdx | 115 -------------- docs/docs/deploy/deploy-rasa-pro-services.mdx | 2 +- docs/docs/deploy/deploy-rasa.mdx | 148 ++++++++++++++++-- .../installation/rasa-pro/installation.mdx | 4 +- docs/netlify.toml | 6 +- docs/sidebars.js | 1 - trivy-secret.yaml | 4 +- 7 files changed, 148 insertions(+), 132 deletions(-) delete mode 100644 docs/docs/deploy/deploy-rasa-plus.mdx diff --git a/docs/docs/deploy/deploy-rasa-plus.mdx b/docs/docs/deploy/deploy-rasa-plus.mdx deleted file mode 100644 index 7ce8e7b0d8ad..000000000000 --- a/docs/docs/deploy/deploy-rasa-plus.mdx +++ /dev/null @@ -1,115 +0,0 @@ ---- -id: deploy-rasa-plus -sidebar_label: "Deploy Rasa Plus" -title: "Deploy Rasa Plus in Production" -description: Deploy Rasa Plus ---- - -import variables from '../variables.json'; -import RasaProLabel from '@theme/RasaProLabel'; -import RasaProBanner from '@theme/RasaProBanner'; - - - - - -To use the Rasa Plus image in a Helm deployment, you will need to substitute `rasa` with `rasa-plus` as -the image name. You will also need to pass your license in an env var -and [specify a pull secret for the image](#step-1-image-pull-secret). - -## Step 1: image pull secret - -You will need to create a pull secret to access the `rasa-plus` image. You should have -been provided with a JSON credentials file to access the registry. -The file content should look similar to this: - -```json -{ - "type": "service_account", - "project_id": "rasa-platform", - "private_key_id": "somerandomcharacters", - "private_key": "-----BEGIN PRIVATE KEY-----\n\nPBTu1lAJDLo136ZGTdMKi+/TuRqrIMg/..................................................................................................................................\nsjAsuAH4Iz1XdfdenzGnyBZH\n-----END PRIVATE KEY-----\n", - "client_email": "company@rasa-platform.iam.gserviceaccount.com", - "client_id": "12345678910123", - "auth_uri": "https://accounts.google.com/o/oauth2/auth", - "token_uri": "https://accounts.google.com/o/oauth2/token", - "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", - "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/company%40rasa-platform.iam.gserviceaccount.com" -} -``` - -Create the pull secret by running the corresponding command for your cluster environment: - -```bash -# kubernetes -kubectl --namespace \ - create secret docker-registry rasa-plus-pull-secret \ - --docker-server=gcr.io \ - --docker-email=company@rasa-platform.iam.gserviceaccount.com \ # this value needs to be updated with correct client email - --docker-username=_json_key \ - --docker-password="$(cat .json)" -``` - -```bash -# openshift -oc --namespace \ - create secret docker-registry rasa-plus-pull-secret \ - --docker-server=gcr.io \ - --docker-email=company@rasa-platform.iam.gserviceaccount.com \ # this value needs to be updated with correct client email - --docker-username=_json_key \ - --docker-password="$(cat .json)" -``` - -## Step 2: store license in a secret - -Step a: Save the license string to a file, for example: -```sh -echo "" > license.txt -``` - -Step b: Create a secret to hold the license key: -```sh -kubectl -n create secret generic rasapro-license --from-file=licensekey=./license.txt -``` -Step c: Remove the file on disk, for example: -```sh -/bin/rm license.txt -``` - -## Step 3: update `values.yml` - -For the [Rasa Helm Chart](https://github.com/RasaHQ/helm-charts/tree/main/charts/rasa), update as follows: - -

-{`registry: europe-west3-docker.pkg.dev/rasa-releases/rasa-plus/rasa-plus
-command:
-  - rasa
-image:
-  name: rasa-plus
-  tag: ${variables.release}
-  pullSecrets:
-    - name: rasa-plus-pull-secret
-extraEnv:
-  - name: RASA_PRO_LICENSE
-    valueFrom:
-      secretKeyRef:
-        name: rasapro-license
-        key: licensekey`}
- -For the [Rasa X/Enterprise Helm Chart](https://github.com/RasaHQ/rasa-x-helm), update as follows: - -

-{`images:
-  imagePullSecrets:
-    - name: rasa-plus-pull-secret
-rasa:
-  command:
-  - rasa
-  name: europe-west3-docker.pkg.dev/rasa-releases/rasa-plus/rasa-plus
-  tag: ${variables.release}
-  extraEnv:
-    - name: RASA_PRO_LICENSE
-      valueFrom:
-        secretKeyRef:
-          name: rasapro-license
-          key: licensekey`}
diff --git a/docs/docs/deploy/deploy-rasa-pro-services.mdx b/docs/docs/deploy/deploy-rasa-pro-services.mdx index fbe24f493c43..eb7c93c716b8 100644 --- a/docs/docs/deploy/deploy-rasa-pro-services.mdx +++ b/docs/docs/deploy/deploy-rasa-pro-services.mdx @@ -90,7 +90,7 @@ These different services need to be run and configured to be able to communicate For a more complete walkthrough on how to manage the authentication credentials and licenses in a production environment, see the - [Rasa Plus Deployment Guide](./deploy-rasa-plus.mdx#step-1-image-pull-secret). + [Rasa Plus Deployment Guide](/docs/rasa/deploy/deploy-rasa#4-deploy-rasa-assistant) (select the **Rasa Plus** tab). ::: diff --git a/docs/docs/deploy/deploy-rasa.mdx b/docs/docs/deploy/deploy-rasa.mdx index 8483e2f43107..bb0e80aa54cc 100644 --- a/docs/docs/deploy/deploy-rasa.mdx +++ b/docs/docs/deploy/deploy-rasa.mdx @@ -3,11 +3,14 @@ id: deploy-rasa sidebar_label: "Deploy Rasa" title: "Deploy Rasa" description: Deploy a Rasa assistant on Kubernetes/Openshift using Helm -abstract: This page explains how to deploy Rasa using Helm. +abstract: This page explains how to deploy Rasa Open Source and Rasa Plus using Helm. --- import variables from './../variables.json'; +import RasaProLabel from '@theme/RasaProLabel'; +import RasaProBanner from '@theme/RasaProBanner'; + :::note The Rasa Helm Chart is open source and available in the [helm-charts repository](https://github.com/rasahq/helm-charts). @@ -161,20 +164,145 @@ You can find an example that shows how to download data files from a git reposit ### 4. Deploy Rasa Assistant + Run the following commands: + ```bash + kubectl version --short --client + + # The output should be similar to this + # Client Version: v1.19.11 + ``` + + ```bash + # Add the repository which contains the Rasa Helm Chart + helm repo add rasa https://helm.rasa.com + + # Deploy Rasa + helm install \ + --namespace \ + --values rasa-values.yml \ + \ + rasa/rasa + ``` + + + + + + + + + + + +To use the Rasa Plus image in a Helm deployment, you will need to substitute `rasa` with `rasa-plus` as +the image name. You will also need to pass your license in an env var +and [specify a pull secret for the image](#step-1-image-pull-secret). + +#### Step 1: image pull secret + +You will need to create a pull secret to access the `rasa-plus` image. You should have +been provided with a JSON credentials file to access the registry. +The file content should look similar to this: + +```json +{ + "type": "service_account", + "project_id": "rasa-platform", + "private_key_id": "somerandomcharacters", + "private_key": "-----BEGIN PRIVATE KEY-----\n\nPBTu1lAJDLo136ZGTdMKi+/TuRqrIMg/..................................................................................................................................\nsjAsuAH4Iz1XdfdenzGnyBZH\n-----END PRIVATE KEY-----\n", + "client_email": "company@rasa-platform.iam.gserviceaccount.com", + "client_id": "12345678910123", + "auth_uri": "https://accounts.google.com/o/oauth2/auth", + "token_uri": "https://accounts.google.com/o/oauth2/token", + "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", + "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/company%40rasa-platform.iam.gserviceaccount.com" +} +``` + +Create the pull secret by running the corresponding command for your cluster environment: + ```bash -# Add the repository which contains the Rasa Helm Chart -helm repo add rasa https://helm.rasa.com - -# Deploy Rasa -helm install \ - --namespace \ - --values rasa-values.yml \ - \ - rasa/rasa +# kubernetes +kubectl --namespace \ + create secret docker-registry rasa-plus-pull-secret \ + --docker-server=gcr.io \ + --docker-email=company@rasa-platform.iam.gserviceaccount.com \ # this value needs to be updated with correct client email + --docker-username=_json_key \ + --docker-password="$(cat .json)" +``` + +```bash +# openshift +oc --namespace \ + create secret docker-registry rasa-plus-pull-secret \ + --docker-server=gcr.io \ + --docker-email=company@rasa-platform.iam.gserviceaccount.com \ # this value needs to be updated with correct client email + --docker-username=_json_key \ + --docker-password="$(cat .json)" +``` + +#### Step 2: store license in a secret + +Step a: Save the license string to a file, for example: +```sh +echo "" > license.txt +``` + +Step b: Create a secret to hold the license key: +```sh +kubectl -n create secret generic rasapro-license --from-file=licensekey=./license.txt +``` +Step c: Remove the file on disk, for example: +```sh +/bin/rm license.txt +``` + +#### Step 3: update `values.yml` + +For the [Rasa Helm Chart](https://github.com/RasaHQ/helm-charts/tree/main/charts/rasa), update as follows: + +```yaml +registry: europe-west3-docker.pkg.dev/rasa-releases/rasa-plus/rasa-plus +command: + - rasa +image: + name: rasa-plus + tag: 0.1.1 + pullSecrets: + - name: rasa-plus-pull-secret +extraEnv: + - name: RASA_PRO_LICENSE + valueFrom: + secretKeyRef: + name: rasapro-license + key: licensekey +``` + +For the [Rasa X/Enterprise Helm Chart](https://github.com/RasaHQ/rasa-x-helm), update as follows: + +```yaml +images: + imagePullSecrets: + - name: rasa-plus-pull-secret +rasa: + command: + - rasa + name: europe-west3-docker.pkg.dev/rasa-releases/rasa-plus/rasa-plus + tag: 0.1.1 + extraEnv: + - name: RASA_PRO_LICENSE + valueFrom: + secretKeyRef: + name: rasapro-license + key: licensekey ``` + + + + :::note **OpenShift only**: If the deployment fails and `oc get events` returns `1001 is not an allowed group spec.containers[0].securityContext.securityContext.runAsUser`, diff --git a/docs/docs/installation/rasa-pro/installation.mdx b/docs/docs/installation/rasa-pro/installation.mdx index 7cde74cfded2..6696e5355661 100644 --- a/docs/docs/installation/rasa-pro/installation.mdx +++ b/docs/docs/installation/rasa-pro/installation.mdx @@ -16,7 +16,7 @@ In this section you will learn how to install **Rasa Plus**, a drop-in replaceme To learn more about deployments, please visit the following sections: -- [Deploying Rasa Plus in production](../../deploy/deploy-rasa-plus) +- [Deploying Rasa Plus in production](../../deploy/deploy-rasa) - [Deploying Rasa Pro Services in production](../../deploy/deploy-rasa-pro-services) To learn more about compatibility between different versions of Rasa Plus and Rasa Pro Services, please see @@ -155,5 +155,5 @@ You can increase UDP packet size by running `sudo sysctl -w net.inet.udp.maxdgra Congratulations! You have now succesfully installed Rasa Plus on your developement environment. To learn more about production deployments, visit: -- [Deploying Rasa Plus in production](../../deploy/deploy-rasa-plus) +- [Deploying Rasa Plus in production](../../deploy/deploy-rasa) - [Deploying Rasa Pro Services in production](../../deploy/deploy-rasa-pro-services) diff --git a/docs/netlify.toml b/docs/netlify.toml index 469bb318807f..f4054eddd934 100644 --- a/docs/netlify.toml +++ b/docs/netlify.toml @@ -192,4 +192,8 @@ [[redirects]] from = "/docs/rasa/installation" - to = "/docs/rasa/installation/environment-set-up/" \ No newline at end of file + to = "/docs/rasa/installation/environment-set-up/" + + [[redirects]] + from = "/docs/rasa/deploy/deploy-rasa-plus/" + to = "/docs/rasa/deploy/deploy-rasa/" \ No newline at end of file diff --git a/docs/sidebars.js b/docs/sidebars.js index 80218f5cec48..aa9c04788b3d 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -69,7 +69,6 @@ module.exports = { 'deploy/introduction', 'deploy/deploy-rasa', 'deploy/deploy-action-server', - 'deploy/deploy-rasa-plus', 'deploy/deploy-rasa-pro-services', ], }, diff --git a/trivy-secret.yaml b/trivy-secret.yaml index d5072d0fd020..fd494d908477 100644 --- a/trivy-secret.yaml +++ b/trivy-secret.yaml @@ -1,4 +1,4 @@ allow-rules: - - id: docs/docs/deploy/deploy-rasa-plus.mdx + - id: docs/docs/deploy/deploy-rasa.mdx description: Example service account in docs - path: docs/docs/deploy/deploy-rasa-plus.mdx + path: docs/docs/deploy/deploy-rasa.mdx From 8179b19632388cd784f20f6970602b65de2426d8 Mon Sep 17 00:00:00 2001 From: Znat Date: Tue, 22 Nov 2022 10:51:16 +0100 Subject: [PATCH 8/9] Fix outdated action-server docs page [ATO-537] (#11779) --- .../action-server/deploy-action-server.mdx | 380 ----------------- docs/docs/deploy/deploy-action-server.mdx | 381 +++++++++++++++++- docs/netlify.toml | 11 +- docs/sidebars.js | 1 - 4 files changed, 380 insertions(+), 393 deletions(-) delete mode 100644 docs/docs/action-server/deploy-action-server.mdx diff --git a/docs/docs/action-server/deploy-action-server.mdx b/docs/docs/action-server/deploy-action-server.mdx deleted file mode 100644 index 667fba5f4d79..000000000000 --- a/docs/docs/action-server/deploy-action-server.mdx +++ /dev/null @@ -1,380 +0,0 @@ ---- -id: deploy-action-server -sidebar_label: Deploy Action Server -title: Deploy Rasa Action Server -abstract: This page explains how to build an Action Server Image and deploy a Rasa Action Server using Helm. The second of three steps in deploying your Rasa assistant. ---- - -import variables from '../variables.json'; - -:::note -The [Rasa Action Server chart](https://github.com/RasaHQ/helm-charts/tree/main/charts/rasa-action-server) is open source and available in the -[helm-charts repository](https://github.com/rasahq/helm-charts). -Please -[create an issue](https://github.com/RasaHQ/helm-charts/issues/new) in this -repository if you discover bugs or have suggestions for improvements. - -::: - -In the sections below you can learn how to deploy Rasa Action Server by using helm, and how to connect an Action Server deployment to a Rasa deployment. - -## Installation Requirements - -1. Check that you have installed the Kubernetes or OpenShift command line - interface (CLI). You can check this using the following command: - - - - - ```bash - kubectl version --short --client - - # The output should be similar to this - # Client Version: v1.19.11 - ``` - - - - - ```bash - oc version --client - - # The output should be similar to this - # Client Version: 4.7.13 - ``` - - - - - If this command resulted in an error, please install the - [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) or the - [OpenShift CLI](https://docs.openshift.com/container-platform/4.7/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) - depending on the cluster you’re using. - -2. Make sure that the Kubernetes / OpenShift CLI is correctly connected to - your cluster. You can do so by using the following commands: - - - - - ```bash - kubectl version --short - - # The output should be similar to this - # Client Version: v1.19.11 - # Server Version: v1.19.10 - ``` - - - - - ```bash - oc version - - # The output should be similar to this - # Client Version: 4.7.13 - # Kubernetes Version: v1.20.0+df9c838 - ``` - - - - - If you get an error when executing the command, you are not connected to your - cluster. To get the command to connect to the cluster please consult your cluster’s - admin or the documentation of your cloud provider. - -3. Make sure you have the [Helm CLI](https://helm.sh/docs/intro/install/) - installed. To check this, run: - - ```bash - helm version --short - - # The output should be similar to this - # v3.6.0+g7f2df64 - ``` - - If this command leads to an error, please install the - [Helm CLI](https://helm.sh/docs/intro/install/). - - In case you are using a version `<3.5` of Helm, please update to Helm version - `>=3.5`. - -## 1. Installation - -### a. Create Namespace - -We recommend installing Rasa Action Server in a separate -[namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) -to avoid interfering with existing cluster deployments. To create a new namespace -run the following command: - - - - - ```bash - kubectl create namespace - ``` - - - - - ```bash - oc create namespace - ``` - - - - -### b. Deploy Rasa Action Server - -Run the following commands: - -```bash -# Add the repository which contains the Rasa Action Server Helm chart -helm repo add rasa https://helm.rasa.com - -# Deploy Rasa Action Server -helm install \ - --namespace \ - \ - rasa/rasa-action-server -``` - - -### c. Access Rasa Action Server - -By default the Rasa Action Server deployment is exposed via the `rasa-action-server` (``) service and accessible only within a Kubernetes cluster. You can get -the IP address using this command: - - - - - ```bash - export SERVICE_PORT=$(kubectl get --namespace -o jsonpath="{.spec.ports[0].port}" services ) - kubectl port-forward --namespace svc/ ${SERVICE_PORT}:${SERVICE_PORT} & - ``` - - - - - ```bash - export SERVICE_PORT=$(oc get --namespace -o jsonpath="{.spec.ports[0].port}" services ) - oc port-forward --namespace svc/ ${SERVICE_PORT}:${SERVICE_PORT} & - ``` - - - - -You can then access the deployment on `http://127.0.0.1:${SERVICE_PORT}` - -:::note -The Rasa Action Server Helm chart uses the [rasa-x-demo](https://github.com/RasaHQ/rasa-x-demo) Docker image as default. In the [Building an Action Server Image](#building-an-action-server-image) -you can learn how to build and use your custom Action Server image. -::: - -## Building an Action Server Image - -If you build an image that includes your action code and store it in a container registry, you can run it -as part of your deployment, without having to move code between servers. -In addition, you can add any additional dependencies of systems or Python libraries -that are part of your action code but not included in the base `rasa/rasa-sdk` image. - -### Automating your Action Server Image Builds - -In addition to a manually creating a new Action Server image, you can use the [Rasa Action Server GitHub Action](https://github.com/RasaHQ/action-server-gha) to automate image builds. -If GitHub Actions are new to you, it might be helpful to get familiar with [GitHub Actions Documentation](https://docs.github.com/en/actions). - -The following steps assume that you already created a GitHub repository and you have a DockerHub account. - -To create a workflow for building and pushing a Docker image into a DockerHub registry: - -1. Add GitHub Secrets with your DockerHub login name and password. - You can find details on how to create encrypted secrets for a repository - in the [Github docs](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository) - - The example uses the following secrets: - - `DOCKER_HUB_LOGIN` - a login name for DockerHub - - `DOCKER_HUB_PASSWORD` - a password for DockerHub - -2. In your GitHub repository create a file [`.github/workflows/action_server.yml`](https://github.com/RasaHQ/action-server-gha/blob/master/examples/action_server.yml). - -The GitHub Action workflow below builds a new docker image every time files inside the `actions/` directory have changed and the changes are pushed into the `main` branch. - -```yaml -on: - push: - branches: - - main - paths: - - 'actions/**' - -jobs: - build_and_deploy: - runs-on: ubuntu-latest - name: Build Action Server image and upgrade Rasa X/Enterprise deployment - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - id: action_server - name: Build an action server with custom actions - uses: RasaHQ/action-server-gha@main - # Full list of parameters: https://github.com/RasaHQ/action-server-gha/tree/master#input-arguments - with: - docker_image_name: 'account_username/repository_name' - docker_registry_login: ${{ secrets.DOCKER_HUB_LOGIN }} - docker_registry_password: ${{ secrets.DOCKER_HUB_PASSWORD }} - # More details about github context: - # https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context - # - # github.sha - The commit SHA that triggered the workflow run - docker_image_tag: ${{ github.sha }} -``` - -3. Push your changes to the `main` branch. After changes are pushed, the workflow will build and push a new image into the DockerHub registry. - -4. Now, you can use your new brand docker image. - -5. You can also extend your workflow, so that you do not have to manually update your Rasa X/Enterprise deployment. The example below shows how to extend your workflow with an additional step that updates a Rasa X/Enterprise Helm Chart deployment. - -```yaml -on: - push: - branches: - - main - -jobs: - build_and_deploy: - runs-on: ubuntu-latest - name: Build Action Server image and upgrade Rasa X/Enterprise deployment - steps: - [..] - - # This step shows only the example of output parameter usage - # and it's not focused on deployment itself. - - name: "Upgrade a Rasa Action Server deployment" - run: | - helm upgrade --install --reuse-values \ - --set image.name=${{ steps.action_server.outputs.docker_image_name }} \ - --set image.tag=${{ steps.action_server.outputs.docker_image_tag }} rasa-action-server rasa/rasa-action-server -``` - -As you can see it's possible to use output variables from the `action_server` step. The `steps.action_server.outputs.docker_image_name` variable returns -a Docker image name and the `steps.action_server.outputs.docker_image_tag` variable returns a Docker image tag. - -More examples on how to use and customize [Rasa GitHub Actions](https://github.com/RasaHQ/action-server-gha) you can find in the [Rasa GitHub Actions](https://github.com/RasaHQ/action-server-gha) repository. - -#### Manually Building an Action Server - -To create your image: - -1. Make sure your actions are defined in `actions/actions.py`. The `rasa/rasa-sdk` - image will automatically look for the actions in this file. - -2. If your actions have any extra dependencies, create a list of them in a file, - `actions/requirements-actions.txt`. - -3. Create a file named `Dockerfile` in your project directory, - in which you'll extend the official SDK image, copy over your code, and add any custom dependencies (if necessary). - For example: - -

-   {`# Extend the official Rasa SDK image
-   FROM rasa/rasa-sdk:${variables.rasa_sdk_version}
-
-   # Use subdirectory as working directory
-   WORKDIR /app
-
-   # Copy any additional custom requirements, if necessary (uncomment next line)
-   # COPY actions/requirements-actions.txt ./
-
-   # Change back to root user to install dependencies
-   USER root
-
-   # Install extra requirements for actions code, if necessary (uncomment next line)
-   # RUN pip install -r requirements-actions.txt
-
-   # Copy actions folder to working directory
-   COPY ./actions /app/actions
-
-   # By best practices, don't run the code with root user
-   USER 1001`}
- -You can then build the image via the following command: - -```bash -docker build . -t /: -``` - -The `` should reference how this image will be different from others. For -example, you could version or date your tags, as well as create different tags that have different code for production -and development servers. You should create a new tag any time you update your code and want to re-deploy it. - -### Using your Custom Action Server Image - -If you're building this image to make it available from another server, you should push the image to a cloud repository. - -This documentation assumes you are pushing your images to [DockerHub](https://hub.docker.com/). -DockerHub will let you host multiple public repositories and -one private repository for free. Be sure to first [create an account](https://hub.docker.com/signup/) -and [create a repository](https://hub.docker.com/signup/) to store your images. You could also push images to -a different Docker registry, such as [Google Container Registry](https://cloud.google.com/container-registry), -[Amazon Elastic Container Registry](https://aws.amazon.com/ecr/), or -[Azure Container Registry](https://azure.microsoft.com/en-us/services/container-registry/). - -You can push the image to DockerHub via: - -```bash -docker login --username --password -docker push /: -``` - -To authenticate and push images to a different container registry, please refer to the documentation of -your chosen container registry. - - -## Setting a Custom Action Server Image - -In order to use a Custom Action Server image along with the Rasa Action Server deployment, you have to -use the following values for your deployment. - -```yaml -# values.yaml -image: - name: "image_name" - tag: "image_tag" -``` - -then upgrade your deployment by executing the command: - -```text -helm upgrade --namespace --reuse-values \ - -f values.yaml rasa/rasa-action-server -``` - -## 2. Connect Rasa Action Server to a Rasa deployment - -If you have deployed your assistant using the Rasa Helm chart, and you have deployed your Rasa Action Server as well. -Now it's time to connect them together. You can do this easily by following the steps: - -a. Create a `rasa-values.yaml` file which will include configuration for the Rasa deployment. - - ```yaml - # rasa-values.yaml - rasa-action-server: - external: - # -- Determine if external URL is used - enabled: true - # -- URL to Rasa Action Server - url: "http://rasa-action-server/webhook" - ``` - - The configuration above tells Rasa which Rasa Action Server to use. In the example the `http://rasa-action-server/webhook` URL is used, - the URL indicates that Rasa Action Server is deployed with release name `rasa-action-server`, and is located in the same namespace as Rasa server deployment. - -b. Upgrade the Rasa deployment - - ```text - helm upgrade -n --reuse-values -f rasa-values.yaml \ - rasa/rasa - ``` diff --git a/docs/docs/deploy/deploy-action-server.mdx b/docs/docs/deploy/deploy-action-server.mdx index 9a0c4f3bdccd..667fba5f4d79 100644 --- a/docs/docs/deploy/deploy-action-server.mdx +++ b/docs/docs/deploy/deploy-action-server.mdx @@ -1,17 +1,380 @@ --- id: deploy-action-server -sidebar_label: "Deploy Action Server" -title: "Deploy Action Server" -description: Deploy and connect to your custom action server -abstract: This page shows you where to find how to deploy Rasa Action Server and how to build a custom Docker image. +sidebar_label: Deploy Action Server +title: Deploy Rasa Action Server +abstract: This page explains how to build an Action Server Image and deploy a Rasa Action Server using Helm. The second of three steps in deploying your Rasa assistant. --- -import variables from './../variables.json'; +import variables from '../variables.json'; -## a. Deploy Action Server +:::note +The [Rasa Action Server chart](https://github.com/RasaHQ/helm-charts/tree/main/charts/rasa-action-server) is open source and available in the +[helm-charts repository](https://github.com/rasahq/helm-charts). +Please +[create an issue](https://github.com/RasaHQ/helm-charts/issues/new) in this +repository if you discover bugs or have suggestions for improvements. -Visit the [Rasa Action Server docs](https://rasa.com/docs/action-server/deploy-action-server#a-installation) to learn how to [build an Action Server image](https://rasa.com/docs/action-server/deploy-action-server#building-an-action-server-image) and how to deploy an Action Server using Helm. +::: -## b. Connect Rasa Action Server with Rasa deployment +In the sections below you can learn how to deploy Rasa Action Server by using helm, and how to connect an Action Server deployment to a Rasa deployment. -Visit the [Connect Rasa Action Server with Rasa deployment](https://rasa.com/docs/action-server/deploy-action-server#b-connect-rasa-action-server-with-rasa-open-source-deployment) section to learn how to connect a Rasa Action Server deployment with Rasa deployment. +## Installation Requirements + +1. Check that you have installed the Kubernetes or OpenShift command line + interface (CLI). You can check this using the following command: + + + + + ```bash + kubectl version --short --client + + # The output should be similar to this + # Client Version: v1.19.11 + ``` + + + + + ```bash + oc version --client + + # The output should be similar to this + # Client Version: 4.7.13 + ``` + + + + + If this command resulted in an error, please install the + [Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) or the + [OpenShift CLI](https://docs.openshift.com/container-platform/4.7/cli_reference/openshift_cli/getting-started-cli.html#installing-openshift-cli) + depending on the cluster you’re using. + +2. Make sure that the Kubernetes / OpenShift CLI is correctly connected to + your cluster. You can do so by using the following commands: + + + + + ```bash + kubectl version --short + + # The output should be similar to this + # Client Version: v1.19.11 + # Server Version: v1.19.10 + ``` + + + + + ```bash + oc version + + # The output should be similar to this + # Client Version: 4.7.13 + # Kubernetes Version: v1.20.0+df9c838 + ``` + + + + + If you get an error when executing the command, you are not connected to your + cluster. To get the command to connect to the cluster please consult your cluster’s + admin or the documentation of your cloud provider. + +3. Make sure you have the [Helm CLI](https://helm.sh/docs/intro/install/) + installed. To check this, run: + + ```bash + helm version --short + + # The output should be similar to this + # v3.6.0+g7f2df64 + ``` + + If this command leads to an error, please install the + [Helm CLI](https://helm.sh/docs/intro/install/). + + In case you are using a version `<3.5` of Helm, please update to Helm version + `>=3.5`. + +## 1. Installation + +### a. Create Namespace + +We recommend installing Rasa Action Server in a separate +[namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) +to avoid interfering with existing cluster deployments. To create a new namespace +run the following command: + + + + + ```bash + kubectl create namespace + ``` + + + + + ```bash + oc create namespace + ``` + + + + +### b. Deploy Rasa Action Server + +Run the following commands: + +```bash +# Add the repository which contains the Rasa Action Server Helm chart +helm repo add rasa https://helm.rasa.com + +# Deploy Rasa Action Server +helm install \ + --namespace \ + \ + rasa/rasa-action-server +``` + + +### c. Access Rasa Action Server + +By default the Rasa Action Server deployment is exposed via the `rasa-action-server` (``) service and accessible only within a Kubernetes cluster. You can get +the IP address using this command: + + + + + ```bash + export SERVICE_PORT=$(kubectl get --namespace -o jsonpath="{.spec.ports[0].port}" services ) + kubectl port-forward --namespace svc/ ${SERVICE_PORT}:${SERVICE_PORT} & + ``` + + + + + ```bash + export SERVICE_PORT=$(oc get --namespace -o jsonpath="{.spec.ports[0].port}" services ) + oc port-forward --namespace svc/ ${SERVICE_PORT}:${SERVICE_PORT} & + ``` + + + + +You can then access the deployment on `http://127.0.0.1:${SERVICE_PORT}` + +:::note +The Rasa Action Server Helm chart uses the [rasa-x-demo](https://github.com/RasaHQ/rasa-x-demo) Docker image as default. In the [Building an Action Server Image](#building-an-action-server-image) +you can learn how to build and use your custom Action Server image. +::: + +## Building an Action Server Image + +If you build an image that includes your action code and store it in a container registry, you can run it +as part of your deployment, without having to move code between servers. +In addition, you can add any additional dependencies of systems or Python libraries +that are part of your action code but not included in the base `rasa/rasa-sdk` image. + +### Automating your Action Server Image Builds + +In addition to a manually creating a new Action Server image, you can use the [Rasa Action Server GitHub Action](https://github.com/RasaHQ/action-server-gha) to automate image builds. +If GitHub Actions are new to you, it might be helpful to get familiar with [GitHub Actions Documentation](https://docs.github.com/en/actions). + +The following steps assume that you already created a GitHub repository and you have a DockerHub account. + +To create a workflow for building and pushing a Docker image into a DockerHub registry: + +1. Add GitHub Secrets with your DockerHub login name and password. + You can find details on how to create encrypted secrets for a repository + in the [Github docs](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository) + + The example uses the following secrets: + - `DOCKER_HUB_LOGIN` - a login name for DockerHub + - `DOCKER_HUB_PASSWORD` - a password for DockerHub + +2. In your GitHub repository create a file [`.github/workflows/action_server.yml`](https://github.com/RasaHQ/action-server-gha/blob/master/examples/action_server.yml). + +The GitHub Action workflow below builds a new docker image every time files inside the `actions/` directory have changed and the changes are pushed into the `main` branch. + +```yaml +on: + push: + branches: + - main + paths: + - 'actions/**' + +jobs: + build_and_deploy: + runs-on: ubuntu-latest + name: Build Action Server image and upgrade Rasa X/Enterprise deployment + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - id: action_server + name: Build an action server with custom actions + uses: RasaHQ/action-server-gha@main + # Full list of parameters: https://github.com/RasaHQ/action-server-gha/tree/master#input-arguments + with: + docker_image_name: 'account_username/repository_name' + docker_registry_login: ${{ secrets.DOCKER_HUB_LOGIN }} + docker_registry_password: ${{ secrets.DOCKER_HUB_PASSWORD }} + # More details about github context: + # https://docs.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions#github-context + # + # github.sha - The commit SHA that triggered the workflow run + docker_image_tag: ${{ github.sha }} +``` + +3. Push your changes to the `main` branch. After changes are pushed, the workflow will build and push a new image into the DockerHub registry. + +4. Now, you can use your new brand docker image. + +5. You can also extend your workflow, so that you do not have to manually update your Rasa X/Enterprise deployment. The example below shows how to extend your workflow with an additional step that updates a Rasa X/Enterprise Helm Chart deployment. + +```yaml +on: + push: + branches: + - main + +jobs: + build_and_deploy: + runs-on: ubuntu-latest + name: Build Action Server image and upgrade Rasa X/Enterprise deployment + steps: + [..] + + # This step shows only the example of output parameter usage + # and it's not focused on deployment itself. + - name: "Upgrade a Rasa Action Server deployment" + run: | + helm upgrade --install --reuse-values \ + --set image.name=${{ steps.action_server.outputs.docker_image_name }} \ + --set image.tag=${{ steps.action_server.outputs.docker_image_tag }} rasa-action-server rasa/rasa-action-server +``` + +As you can see it's possible to use output variables from the `action_server` step. The `steps.action_server.outputs.docker_image_name` variable returns +a Docker image name and the `steps.action_server.outputs.docker_image_tag` variable returns a Docker image tag. + +More examples on how to use and customize [Rasa GitHub Actions](https://github.com/RasaHQ/action-server-gha) you can find in the [Rasa GitHub Actions](https://github.com/RasaHQ/action-server-gha) repository. + +#### Manually Building an Action Server + +To create your image: + +1. Make sure your actions are defined in `actions/actions.py`. The `rasa/rasa-sdk` + image will automatically look for the actions in this file. + +2. If your actions have any extra dependencies, create a list of them in a file, + `actions/requirements-actions.txt`. + +3. Create a file named `Dockerfile` in your project directory, + in which you'll extend the official SDK image, copy over your code, and add any custom dependencies (if necessary). + For example: + +

+   {`# Extend the official Rasa SDK image
+   FROM rasa/rasa-sdk:${variables.rasa_sdk_version}
+
+   # Use subdirectory as working directory
+   WORKDIR /app
+
+   # Copy any additional custom requirements, if necessary (uncomment next line)
+   # COPY actions/requirements-actions.txt ./
+
+   # Change back to root user to install dependencies
+   USER root
+
+   # Install extra requirements for actions code, if necessary (uncomment next line)
+   # RUN pip install -r requirements-actions.txt
+
+   # Copy actions folder to working directory
+   COPY ./actions /app/actions
+
+   # By best practices, don't run the code with root user
+   USER 1001`}
+ +You can then build the image via the following command: + +```bash +docker build . -t /: +``` + +The `` should reference how this image will be different from others. For +example, you could version or date your tags, as well as create different tags that have different code for production +and development servers. You should create a new tag any time you update your code and want to re-deploy it. + +### Using your Custom Action Server Image + +If you're building this image to make it available from another server, you should push the image to a cloud repository. + +This documentation assumes you are pushing your images to [DockerHub](https://hub.docker.com/). +DockerHub will let you host multiple public repositories and +one private repository for free. Be sure to first [create an account](https://hub.docker.com/signup/) +and [create a repository](https://hub.docker.com/signup/) to store your images. You could also push images to +a different Docker registry, such as [Google Container Registry](https://cloud.google.com/container-registry), +[Amazon Elastic Container Registry](https://aws.amazon.com/ecr/), or +[Azure Container Registry](https://azure.microsoft.com/en-us/services/container-registry/). + +You can push the image to DockerHub via: + +```bash +docker login --username --password +docker push /: +``` + +To authenticate and push images to a different container registry, please refer to the documentation of +your chosen container registry. + + +## Setting a Custom Action Server Image + +In order to use a Custom Action Server image along with the Rasa Action Server deployment, you have to +use the following values for your deployment. + +```yaml +# values.yaml +image: + name: "image_name" + tag: "image_tag" +``` + +then upgrade your deployment by executing the command: + +```text +helm upgrade --namespace --reuse-values \ + -f values.yaml rasa/rasa-action-server +``` + +## 2. Connect Rasa Action Server to a Rasa deployment + +If you have deployed your assistant using the Rasa Helm chart, and you have deployed your Rasa Action Server as well. +Now it's time to connect them together. You can do this easily by following the steps: + +a. Create a `rasa-values.yaml` file which will include configuration for the Rasa deployment. + + ```yaml + # rasa-values.yaml + rasa-action-server: + external: + # -- Determine if external URL is used + enabled: true + # -- URL to Rasa Action Server + url: "http://rasa-action-server/webhook" + ``` + + The configuration above tells Rasa which Rasa Action Server to use. In the example the `http://rasa-action-server/webhook` URL is used, + the URL indicates that Rasa Action Server is deployed with release name `rasa-action-server`, and is located in the same namespace as Rasa server deployment. + +b. Upgrade the Rasa deployment + + ```text + helm upgrade -n --reuse-values -f rasa-values.yaml \ + rasa/rasa + ``` diff --git a/docs/netlify.toml b/docs/netlify.toml index f4054eddd934..956b79eac95f 100644 --- a/docs/netlify.toml +++ b/docs/netlify.toml @@ -194,6 +194,11 @@ from = "/docs/rasa/installation" to = "/docs/rasa/installation/environment-set-up/" - [[redirects]] - from = "/docs/rasa/deploy/deploy-rasa-plus/" - to = "/docs/rasa/deploy/deploy-rasa/" \ No newline at end of file +[[redirects]] +from = "/docs/rasa/deploy/deploy-rasa-plus/" +to = "/docs/rasa/deploy/deploy-rasa/" + + +[[redirects]] +from = "/docs/rasa/action-server/deploy-action-server" +to = "/docs/rasa/deploy/deploy-action-server/" diff --git a/docs/sidebars.js b/docs/sidebars.js index aa9c04788b3d..cb21ff925aff 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -197,7 +197,6 @@ module.exports = { } ], }, - 'action-server/deploy-action-server', ]}, ] }, From 95d44dc7adfc0587c9ed6c7d61f63867722a4fe4 Mon Sep 17 00:00:00 2001 From: Anca Lita <27920906+ancalita@users.noreply.github.com> Date: Mon, 28 Nov 2022 12:09:10 +0000 Subject: [PATCH 9/9] Add upgrading docs for Rasa Pro Services (#11799) * add migration docs for rasa pro services * add changelog entry --- changelog/11799.doc.md | 1 + docs/docs/deploy/deploy-rasa-pro-services.mdx | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 changelog/11799.doc.md diff --git a/changelog/11799.doc.md b/changelog/11799.doc.md new file mode 100644 index 000000000000..c8c9bd49d438 --- /dev/null +++ b/changelog/11799.doc.md @@ -0,0 +1 @@ +Add documentation for Rasa Pro Services upgrades. diff --git a/docs/docs/deploy/deploy-rasa-pro-services.mdx b/docs/docs/deploy/deploy-rasa-pro-services.mdx index eb7c93c716b8..a5382783b7b1 100644 --- a/docs/docs/deploy/deploy-rasa-pro-services.mdx +++ b/docs/docs/deploy/deploy-rasa-pro-services.mdx @@ -159,3 +159,18 @@ The environment variables need to be configured upon startup of the Rasa Pro docker container. Using Kafka `truststores` and `keystores` is currently not supported. + + +### Upgrading Versions + +To upgrade to the latest version of Rasa Pro Services, you must follow these steps: + +1. Read the changelog documentation on breaking changes. +2. Download a new docker container and run it. + +:::note Container Start-up +Note that the container might take some time to start-up as it is running +database schema migrations as part of its start-up. + +If the migrations have failed, the container will be shut down. +:::