diff --git a/.github/workflows/automatic-pr-update.yml b/.github/workflows/automatic-pr-update.yml index 16011d17dbe1..71f0d55db5d1 100644 --- a/.github/workflows/automatic-pr-update.yml +++ b/.github/workflows/automatic-pr-update.yml @@ -11,7 +11,7 @@ jobs: if: github.repository == 'RasaHQ/rasa' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: rasahq/update-pr-branch@601ac3dadf708b14e7f0252d98230538235f99d9 with: token: ${{ secrets.RASABOT_AUTOMERGE_GITHUB_TOKEN }} diff --git a/.github/workflows/automatic-release-to-main-merger.yml b/.github/workflows/automatic-release-to-main-merger.yml index 9b348928a9b1..8a452d85758d 100644 --- a/.github/workflows/automatic-release-to-main-merger.yml +++ b/.github/workflows/automatic-release-to-main-merger.yml @@ -26,7 +26,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Fetch git tags 🎨 # see https://github.com/actions/checkout/issues/206#issuecomment-617937725 diff --git a/.github/workflows/ci-docs-tests.yml b/.github/workflows/ci-docs-tests.yml index 52a9e4fe785d..c4e10f02573e 100644 --- a/.github/workflows/ci-docs-tests.yml +++ b/.github/workflows/ci-docs-tests.yml @@ -13,7 +13,7 @@ concurrency: cancel-in-progress: true env: - DEFAULT_PYTHON_VERSION: '3.7' + DEFAULT_PYTHON_VERSION: '3.9' jobs: changes: @@ -22,7 +22,7 @@ jobs: outputs: docs: ${{ steps.filter.outputs.docs }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: RasaHQ/pr-changed-files-filter@c4f7116a04b8a4596313469429e2ad235f59d9c4 id: filter with: @@ -37,10 +37,10 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up Python ${{ env.DEFAULT_PYTHON_VERSION }} 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ env.DEFAULT_PYTHON_VERSION }} diff --git a/.github/workflows/ci-github-actions.yml b/.github/workflows/ci-github-actions.yml index 30ba721c6506..0849f5416384 100644 --- a/.github/workflows/ci-github-actions.yml +++ b/.github/workflows/ci-github-actions.yml @@ -9,7 +9,7 @@ on: pull_request: env: - DEFAULT_PYTHON_VERSION: '3.7' + DEFAULT_PYTHON_VERSION: '3.9' jobs: test: @@ -20,7 +20,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download gomplate run: |- @@ -28,7 +28,7 @@ jobs: sudo chmod +x /usr/local/bin/gomplate - name: Set up Python ${{ env.DEFAULT_PYTHON_VERSION }} 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/ci-model-regression-on-schedule.yml b/.github/workflows/ci-model-regression-on-schedule.yml index 2fd75972fa7a..b7b95906c480 100644 --- a/.github/workflows/ci-model-regression-on-schedule.yml +++ b/.github/workflows/ci-model-regression-on-schedule.yml @@ -23,10 +23,10 @@ jobs: matrix_length: ${{ steps.set-matrix.outputs.matrix_length }} steps: - name: Checkout main - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Checkout dataset - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: ${{ secrets.DATASET_REPOSITORY }} token: ${{ secrets.ML_TEST_SA_PAT }} @@ -57,7 +57,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download gomplate run: |- @@ -78,7 +78,7 @@ jobs: GH_RUNNER_IMAGE_TAG=$(jq -r 'if (.config | any(.TF == "${{ env.TF_VERSION }}" )) then (.config[] | select(.TF == "${{ env.TF_VERSION }}") | .IMAGE_TAG) else .default_image_tag end' .github/configs/tf-cuda.json) echo "GitHub runner image tag for TensorFlow ${{ env.TF_VERSION }} is ${GH_RUNNER_IMAGE_TAG}" echo GH_RUNNER_IMAGE_TAG=$GH_RUNNER_IMAGE_TAG >> $GITHUB_ENV - + num_max_replicas=3 matrix_length=${{ needs.read_test_configuration.outputs.matrix_length }} if [[ $matrix_length -gt $num_max_replicas ]]; then @@ -156,10 +156,10 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Checkout dataset - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: ${{ secrets.DATASET_REPOSITORY }} token: ${{ secrets.ML_TEST_SA_PAT }} @@ -235,7 +235,7 @@ jobs: echo "HOST_NAME=${HOST_NAME}" >> $GITHUB_ENV - name: Checkout dataset - external - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: steps.set_dataset_config_vars.outputs.is_external == 'true' with: repository: ${{ env.DATASET }} @@ -265,11 +265,11 @@ jobs: run: | .github/scripts/start_dd_agent.sh "${{ secrets.DD_API_KEY }}" "${{ env.ACCELERATOR_TYPE }}" ${{ env.NVML_INTERVAL_IN_SEC }} - - name: Set up Python 3.8 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: - python-version: 3.8 + python-version: 3.9 - name: Read Poetry Version 🔢 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -288,7 +288,7 @@ jobs: if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: path: ~/.cache/pypoetry/virtualenvs - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.8-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - name: Install Dependencies 📦 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -496,12 +496,12 @@ jobs: if: always() && needs.model_regression_test_gpu.result == 'success' steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Get reports uses: actions/download-artifact@v2 @@ -539,7 +539,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download report from last on-schedule regression test run: | diff --git a/.github/workflows/ci-model-regression.yml b/.github/workflows/ci-model-regression.yml index 3cd7528e8f49..a90285d31890 100644 --- a/.github/workflows/ci-model-regression.yml +++ b/.github/workflows/ci-model-regression.yml @@ -36,7 +36,7 @@ jobs: steps: - name: Checkout main - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download gomplate run: |- @@ -65,7 +65,7 @@ jobs: echo "::set-output name=dataset_branch::${DATASET_BRANCH}" - name: Checkout dataset - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: ${{ secrets.DATASET_REPOSITORY }} token: ${{ secrets.ML_TEST_SA_PAT }} @@ -163,7 +163,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download gomplate run: |- @@ -253,10 +253,10 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Checkout dataset - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: ${{ secrets.DATASET_REPOSITORY }} token: ${{ secrets.ML_TEST_SA_PAT }} @@ -331,7 +331,7 @@ jobs: echo "HOST_NAME=${HOST_NAME}" >> $GITHUB_ENV - name: Checkout dataset - external - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: steps.set_dataset_config_vars.outputs.is_external == 'true' with: repository: ${{ env.DATASET }} @@ -363,11 +363,11 @@ jobs: export PR_URL="https://github.com/${GITHUB_REPOSITORY}/pull/${{ github.event.number }}" .github/scripts/start_dd_agent.sh "${{ secrets.DD_API_KEY }}" "${{ env.ACCELERATOR_TYPE }}" ${{ env.NVML_INTERVAL_IN_SEC }} - - name: Set up Python 3.8 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: - python-version: 3.8 + python-version: 3.9 - name: Read Poetry Version 🔢 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -386,7 +386,7 @@ jobs: if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: path: ~/.cache/pypoetry/virtualenvs - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.8-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - name: Install Dependencies 📦 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -498,10 +498,10 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Checkout dataset - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: ${{ secrets.DATASET_REPOSITORY }} token: ${{ secrets.ML_TEST_SA_PAT }} @@ -576,7 +576,7 @@ jobs: echo "HOST_NAME=${HOST_NAME}" >> $GITHUB_ENV - name: Checkout dataset - external - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: steps.set_dataset_config_vars.outputs.is_external == 'true' with: repository: ${{ env.DATASET }} @@ -608,11 +608,11 @@ jobs: export PR_URL="https://github.com/${GITHUB_REPOSITORY}/pull/${{ github.event.number }}" .github/scripts/start_dd_agent.sh "${{ secrets.DD_API_KEY }}" "${{ env.ACCELERATOR_TYPE }}" ${{ env.NVML_INTERVAL_IN_SEC }} - - name: Set up Python 3.8 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: - python-version: 3.8 + python-version: 3.9 - name: Read Poetry Version 🔢 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -631,7 +631,7 @@ jobs: if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' with: path: ~/.cache/pypoetry/virtualenvs - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.8-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - name: Install Dependencies 📦 if: steps.set_dataset_config_vars.outputs.is_dataset_exists == 'true' && steps.set_dataset_config_vars.outputs.is_config_exists == 'true' @@ -754,12 +754,12 @@ jobs: echo "::set-output name=success_status::$success_status" - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Get reports uses: actions/download-artifact@v2 @@ -811,7 +811,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Download report from last on-schedule regression test run: | diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index ad637b7b6bc6..c5b00d403703 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -35,7 +35,7 @@ env: IS_TAG_BUILD: ${{ startsWith(github.event.ref, 'refs/tags') }} DOCKERHUB_USERNAME: tmbo - DEFAULT_PYTHON_VERSION: '3.7' + DEFAULT_PYTHON_VERSION: '3.9' # for wait_for_xx jobs WAIT_TIMEOUT_SECS: 3000 @@ -52,7 +52,7 @@ jobs: docker: ${{ steps.changed-files.outputs.docker || steps.run-all.outputs.docker }} docs: ${{ steps.changed-files.outputs.docs || steps.run-all.outputs.docs }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: RasaHQ/pr-changed-files-filter@c4f7116a04b8a4596313469429e2ad235f59d9c4 # Run the normal filters if the all-tests-required label is not set id: changed-files @@ -104,11 +104,11 @@ jobs: steps: - name: Checkout git repository 🕝 if: needs.changes.outputs.backend == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up Python ${{ env.DEFAULT_PYTHON_VERSION }} 🐍 if: needs.changes.outputs.backend == 'true' - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ env.DEFAULT_PYTHON_VERSION }} @@ -192,7 +192,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Assert release includes all changelog entries # check changelog folder only when we create pull request preparing release @@ -226,11 +226,11 @@ jobs: - test-other-unit-tests - test-performance os: [ ubuntu-latest, windows-2019 ] - python-version: [ 3.7, 3.8 ] + python-version: [ 3.7, 3.8, 3.9 ] steps: - name: Run DataDog Agent - if: needs.changes.outputs.backend == 'true' && !(matrix.python-version == 3.8 && matrix.os == 'windows-2019') + if: needs.changes.outputs.backend == 'true' && !((matrix.python-version == 3.8 || matrix.python-version == 3.9) && matrix.os == 'windows-2019') run: | docker run --name dd_agent -p 8126:8126 -d -e "DD_API_KEY=${{ secrets.DD_API_KEY }}" -e "DD_INSIDE_CI=true" -e "DD_HOSTNAME=none" -e "DD_SITE=datadoghq.eu" -e GITHUB_ACTIONS=true -e CI=true datadog/agent:latest docker ps --all --filter name=dd_agent --filter status=running --no-trunc --format "{{.ID}} {{.Status}}" @@ -238,11 +238,11 @@ jobs: - name: Checkout git repository 🕝 if: needs.changes.outputs.backend == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} 🐍 if: needs.changes.outputs.backend == 'true' - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ matrix.python-version }} @@ -371,12 +371,12 @@ jobs: steps: - name: Checkout git repository 🕝 if: needs.changes.outputs.backend == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Get backend coverage reports if: needs.changes.outputs.backend == 'true' @@ -466,11 +466,11 @@ jobs: steps: - name: Checkout git repository 🕝 if: needs.changes.outputs.backend == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up Python ${{ env.DEFAULT_PYTHON_VERSION }} 🐍 if: needs.changes.outputs.backend == 'true' - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ env.DEFAULT_PYTHON_VERSION }} @@ -558,13 +558,13 @@ jobs: # to checkout HEAD commit for a pull request. # More details: https://github.com/actions/checkout/issues/299 - name: Checkout pull request HEAD commit instead of merge commit 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: github.event_name == 'pull_request' with: ref: ${{ github.event.pull_request.head.sha }} - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: github.event_name != 'pull_request' - name: Read Poetry Version 🔢 @@ -718,13 +718,13 @@ jobs: # to checkout HEAD commit for a pull request. # More details: https://github.com/actions/checkout/issues/299 - name: Checkout pull request HEAD commit instead of merge commit 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: github.event_name == 'pull_request' with: ref: ${{ github.event.pull_request.head.sha }} - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 if: github.event_name != 'pull_request' - name: Free disk space @@ -802,12 +802,12 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Read Poetry Version 🔢 run: | diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 22a669b60ece..0a4a038c4d71 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -40,7 +40,7 @@ jobs: docker: ${{ steps.changed-files.outputs.docker || steps.run-all.outputs.docker }} docs: ${{ steps.changed-files.outputs.docs || steps.run-all.outputs.docs }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: RasaHQ/pr-changed-files-filter@c4f7116a04b8a4596313469429e2ad235f59d9c4 # Run the normal filters if the all-tests-required label is not set id: changed-files @@ -68,7 +68,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Check if tag version is equal or higher than the latest tagged Rasa version id: rasa_get_version @@ -137,12 +137,12 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + - name: Set up Python 3.9 🐍 + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Set up Node 12.x 🦙 uses: actions/setup-node@v2.3.0 @@ -164,8 +164,8 @@ jobs: uses: actions/cache@v1 with: path: .venv - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.7-non-full-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - restore-keys: ${{ runner.os }}-poetry-3.7-non-full + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-non-full-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + restore-keys: ${{ runner.os }}-poetry-3.9-non-full - name: Clear Poetry cache if: steps.cache-poetry.outputs.cache-hit == 'true' @@ -228,13 +228,13 @@ jobs: steps: - name: Checkout git repository 🕝 if: needs.changes.outputs.docs == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 + - name: Set up Python 3.9 🐍 if: needs.changes.outputs.docs == 'true' - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Set up Node 12.x 🦙 if: needs.changes.outputs.docs == 'true' @@ -260,8 +260,8 @@ jobs: uses: actions/cache@v1 with: path: .venv - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.7-non-full-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - restore-keys: ${{ runner.os }}-poetry-3.7-non-full + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-non-full-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + restore-keys: ${{ runner.os }}-poetry-3.9-non-full - name: Clear Poetry cache if: steps.cache-poetry.outputs.cache-hit == 'true' && needs.changes.outputs.docs == 'true' && contains(github.event.pull_request.labels.*.name, 'tools:clear-poetry-cache-preview-docs') @@ -322,7 +322,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Set up Node 12.x 🦙 uses: actions/setup-node@v2.3.0 diff --git a/.github/workflows/rasa-install-cron-check.yml b/.github/workflows/rasa-install-cron-check.yml index d5b57da0281d..ec7648bf8b19 100644 --- a/.github/workflows/rasa-install-cron-check.yml +++ b/.github/workflows/rasa-install-cron-check.yml @@ -14,13 +14,13 @@ jobs: strategy: matrix: os: [ubuntu-20.04, ubuntu-18.04, macos-latest, windows-2019, windows-2022] - python-version: [3.7, 3.8] + python-version: [3.7, 3.8, 3.9] fail-fast: false steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: python-version: ${{ matrix.python-version }} - name: Try to install Rasa. diff --git a/.github/workflows/security-scans.yml b/.github/workflows/security-scans.yml index 529617eceb7f..c35b0c37a7cc 100644 --- a/.github/workflows/security-scans.yml +++ b/.github/workflows/security-scans.yml @@ -17,7 +17,7 @@ jobs: docker: ${{ steps.filter.outputs.docker }} docs: ${{ steps.filter.outputs.docs }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: RasaHQ/pr-changed-files-filter@c4f7116a04b8a4596313469429e2ad235f59d9c4 id: filter with: @@ -28,7 +28,7 @@ jobs: name: Detecting hardcoded secrets runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: # Fetch all history for all tags and branches fetch-depth: '0' @@ -46,13 +46,13 @@ jobs: steps: - name: Checkout git repository 🕝 if: needs.changes.outputs.backend == 'true' - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Set up Python 3.7 🐍 + - name: Set up Python 3.9 🐍 if: needs.changes.outputs.backend == 'true' - uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a + uses: actions/setup-python@0ebf233433c08fb9061af664d501c3f3ff0e9e20 # v3.0 with: - python-version: 3.7 + python-version: 3.9 - name: Read Poetry Version 🔢 if: needs.changes.outputs.backend == 'true' @@ -72,8 +72,8 @@ jobs: uses: actions/cache@v1 with: path: .venv - key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.7-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} - restore-keys: ${{ runner.os }}-poetry-3.7 + key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-3.9-${{ hashFiles('**/poetry.lock') }}-${{ secrets.POETRY_CACHE_VERSION }} + restore-keys: ${{ runner.os }}-poetry-3.9 - name: Clear Poetry cache if: steps.cache-poetry.outputs.cache-hit == 'true' && needs.changes.outputs.backend == 'true' && contains(github.event.pull_request.labels.*.name, 'tools:clear-poetry-cache-security-scans') @@ -98,7 +98,7 @@ jobs: snyk: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Run Snyk Open Source to check for Python vulnerabilities uses: snyk/actions/python-3.8@master continue-on-error: true diff --git a/.github/workflows/vulnerability-scan.yml b/.github/workflows/vulnerability-scan.yml index 9a625cdb09ec..5a5300356727 100644 --- a/.github/workflows/vulnerability-scan.yml +++ b/.github/workflows/vulnerability-scan.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Checkout git repository 🕝 - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Add poetry.lock 🔒 # Trivy depends on the presence of `poetry.lock` to scan Python dependencies diff --git a/changelog/10899.improvement.md b/changelog/10899.improvement.md new file mode 100644 index 000000000000..457a8982df52 --- /dev/null +++ b/changelog/10899.improvement.md @@ -0,0 +1 @@ +Add an `influence_conversation` flag to entites to provide a shorthand for ignoring an entity for all intents. diff --git a/changelog/8762.feature.md b/changelog/8762.feature.md new file mode 100644 index 000000000000..ca012da5fd8a --- /dev/null +++ b/changelog/8762.feature.md @@ -0,0 +1 @@ +Added support for Python 3.9. diff --git a/changelog/9097.misc.md b/changelog/9097.misc.md new file mode 100644 index 000000000000..b7c0bb40b483 --- /dev/null +++ b/changelog/9097.misc.md @@ -0,0 +1 @@ +Enable `mypy` `override` check and fix any resulting errors. diff --git a/data/examples/rasa/demo-rasa-multi-intent.yml b/data/examples/rasa/demo-rasa-multi-intent.yml index f2484a462f40..8040408dec13 100644 --- a/data/examples/rasa/demo-rasa-multi-intent.yml +++ b/data/examples/rasa/demo-rasa-multi-intent.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/examples/rasa/demo-rasa.yml b/data/examples/rasa/demo-rasa.yml index ebefb6a2d38e..7b3309994df1 100644 --- a/data/examples/rasa/demo-rasa.yml +++ b/data/examples/rasa/demo-rasa.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/demo-rasa-composite-entities.yml b/data/test/demo-rasa-composite-entities.yml index fe2e39a471ef..83bb16ee6998 100644 --- a/data/test/demo-rasa-composite-entities.yml +++ b/data/test/demo-rasa-composite-entities.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/demo-rasa-lookup-ents.yml b/data/test/demo-rasa-lookup-ents.yml index ad44d59cd936..bb31a79defec 100644 --- a/data/test/demo-rasa-lookup-ents.yml +++ b/data/test/demo-rasa-lookup-ents.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | @@ -24,4 +24,4 @@ nlu: - milk - bread - butter - - pasta \ No newline at end of file + - pasta diff --git a/data/test/demo-rasa-more-ents-and-multiplied.yml b/data/test/demo-rasa-more-ents-and-multiplied.yml index d1cc96d6943f..b4468fc531d4 100644 --- a/data/test/demo-rasa-more-ents-and-multiplied.yml +++ b/data/test/demo-rasa-more-ents-and-multiplied.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/demo-rasa-no-ents.yml b/data/test/demo-rasa-no-ents.yml index b5817fad5b70..3499ed8d0c7e 100644 --- a/data/test/demo-rasa-no-ents.yml +++ b/data/test/demo-rasa-no-ents.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/duplicate_intents_yaml/demo-rasa-intents-1.yml b/data/test/duplicate_intents_yaml/demo-rasa-intents-1.yml index bec0119720a0..541427d0525e 100644 --- a/data/test/duplicate_intents_yaml/demo-rasa-intents-1.yml +++ b/data/test/duplicate_intents_yaml/demo-rasa-intents-1.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/duplicate_intents_yaml/demo-rasa-intents-2.yml b/data/test/duplicate_intents_yaml/demo-rasa-intents-2.yml index c185a0f0a432..a7410ae7f094 100644 --- a/data/test/duplicate_intents_yaml/demo-rasa-intents-2.yml +++ b/data/test/duplicate_intents_yaml/demo-rasa-intents-2.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/duplicate_intents_yaml/demo-rasa-intents-3.yml b/data/test/duplicate_intents_yaml/demo-rasa-intents-3.yml index 6918e2aa4a40..a92fc90350b5 100644 --- a/data/test/duplicate_intents_yaml/demo-rasa-intents-3.yml +++ b/data/test/duplicate_intents_yaml/demo-rasa-intents-3.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test/incorrect_nlu_format.yml b/data/test/incorrect_nlu_format.yml index 29bfcadda3ab..2afbc466a23e 100644 --- a/data/test/incorrect_nlu_format.yml +++ b/data/test/incorrect_nlu_format.yml @@ -1,2 +1,2 @@ -version: "3.0" +version: "3.1" nlu: diff --git a/data/test/lookup_tables/lookup_table.yml b/data/test/lookup_tables/lookup_table.yml index ad256c6fbd08..32136d57e0fd 100644 --- a/data/test/lookup_tables/lookup_table.yml +++ b/data/test/lookup_tables/lookup_table.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: restaurant_search examples: | diff --git a/data/test/many_intents.yml b/data/test/many_intents.yml index 3881d66f3a37..1d6f9f68fcfd 100644 --- a/data/test/many_intents.yml +++ b/data/test/many_intents.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: handleinsult examples: | diff --git a/data/test/overlapping_regex_entities.yml b/data/test/overlapping_regex_entities.yml index cc67b7dace3f..6f3ca8690e66 100644 --- a/data/test/overlapping_regex_entities.yml +++ b/data/test/overlapping_regex_entities.yml @@ -1,5 +1,5 @@ -version: "3.0" +version: "3.1" nlu: - intent: restaurant_search examples: | diff --git a/data/test/simple_retrieval_intent_nlu.yml b/data/test/simple_retrieval_intent_nlu.yml index f83075ce06bc..dab9c6724173 100644 --- a/data/test/simple_retrieval_intent_nlu.yml +++ b/data/test/simple_retrieval_intent_nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: chitchat/hello examples: | diff --git a/data/test/stories_default_retrieval_intents.yml b/data/test/stories_default_retrieval_intents.yml index 20d714d087c5..5deba27b3e41 100644 --- a/data/test/stories_default_retrieval_intents.yml +++ b/data/test/stories_default_retrieval_intents.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/data/test/synonyms_only.yml b/data/test/synonyms_only.yml index c3fb0562d400..60a0087922c8 100644 --- a/data/test/synonyms_only.yml +++ b/data/test/synonyms_only.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - synonym: chinese examples: | diff --git a/data/test_domains/conditional_response_variations.yml b/data/test_domains/conditional_response_variations.yml index b67dd9d313d3..262e5facff3f 100644 --- a/data/test_domains/conditional_response_variations.yml +++ b/data/test_domains/conditional_response_variations.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_domains/default_unfeaturized_entities.yml b/data/test_domains/default_unfeaturized_entities.yml index cf897ef7a48a..2c9baafa20ec 100644 --- a/data/test_domains/default_unfeaturized_entities.yml +++ b/data/test_domains/default_unfeaturized_entities.yml @@ -1,5 +1,5 @@ intents: - - greet: {use_entities: [name]} + - greet: {use_entities: [name, used_entity]} - default: {ignore_entities : [unrelated_recognized_entity]} - goodbye: {use_entities: null} - thank: {use_entities: False} @@ -11,6 +11,10 @@ entities: - name - unrelated_recognized_entity - other + - used_entity: + influence_conversation: true + - unused_entity: + influence_conversation: false responses: utter_greet: diff --git a/data/test_domains/test_domain_from_directory/domain_invalid.yml b/data/test_domains/test_domain_from_directory/domain_invalid.yml index 31eabcc4ea1c..9cb61ba53b4d 100644 --- a/data/test_domains/test_domain_from_directory/domain_invalid.yml +++ b/data/test_domains/test_domain_from_directory/domain_invalid.yml @@ -1,4 +1,4 @@ # invalid yml file should create warning # contains duplicate key -version: "3.0" -version: "3.0" +version: "3.1" +version: "3.1" diff --git a/data/test_domains/test_domain_from_directory/domain_valid.yml b/data/test_domains/test_domain_from_directory/domain_valid.yml index b98452cd0dce..4945f1849a71 100644 --- a/data/test_domains/test_domain_from_directory/domain_valid.yml +++ b/data/test_domains/test_domain_from_directory/domain_valid.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet - default diff --git a/data/test_domains/test_domain_from_directory_for_entities/game_1.yml b/data/test_domains/test_domain_from_directory_for_entities/game_1.yml index edbba8dac86b..adbdff9e9a41 100644 --- a/data/test_domains/test_domain_from_directory_for_entities/game_1.yml +++ b/data/test_domains/test_domain_from_directory_for_entities/game_1.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - play: diff --git a/data/test_domains/test_domain_from_directory_for_entities/game_2.yml b/data/test_domains/test_domain_from_directory_for_entities/game_2.yml index 7804c95364fa..9692aba8b6d9 100644 --- a/data/test_domains/test_domain_from_directory_for_entities/game_2.yml +++ b/data/test_domains/test_domain_from_directory_for_entities/game_2.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - support_encouraging: diff --git a/data/test_domains/test_domain_from_directory_for_entities/game_3.yml b/data/test_domains/test_domain_from_directory_for_entities/game_3.yml index a11ec8fb11fa..8b53a004929c 100644 --- a/data/test_domains/test_domain_from_directory_for_entities/game_3.yml +++ b/data/test_domains/test_domain_from_directory_for_entities/game_3.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - question diff --git a/data/test_domains/test_domain_from_directory_tree/domain_pt1.yml b/data/test_domains/test_domain_from_directory_tree/domain_pt1.yml index e23531f1b0f5..6e5b6a49c027 100644 --- a/data/test_domains/test_domain_from_directory_tree/domain_pt1.yml +++ b/data/test_domains/test_domain_from_directory_tree/domain_pt1.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - utter_root diff --git a/data/test_domains/test_domain_from_directory_tree/skill_1_domain/domain_pt2.yml b/data/test_domains/test_domain_from_directory_tree/skill_1_domain/domain_pt2.yml index 15d5e6c8ccf0..7aed55ac0116 100644 --- a/data/test_domains/test_domain_from_directory_tree/skill_1_domain/domain_pt2.yml +++ b/data/test_domains/test_domain_from_directory_tree/skill_1_domain/domain_pt2.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - utter_skill_1 diff --git a/data/test_domains/test_domain_from_directory_tree/skill_2_domain/domain_pt3.yml b/data/test_domains/test_domain_from_directory_tree/skill_2_domain/domain_pt3.yml index 9d9c90f1ba93..eb7b48b0b6b3 100644 --- a/data/test_domains/test_domain_from_directory_tree/skill_2_domain/domain_pt3.yml +++ b/data/test_domains/test_domain_from_directory_tree/skill_2_domain/domain_pt3.yml @@ -1,7 +1,7 @@ -version: "3.0" +version: "3.1" intents: - utter_skill_2 utter_did_that_help: - - text: "Did that help you?" \ No newline at end of file + - text: "Did that help you?" diff --git a/data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yaml b/data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yml similarity index 94% rename from data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yaml rename to data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yml index 9fd7d7a7f042..1e67624ae176 100644 --- a/data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yaml +++ b/data/test_domains/test_domain_from_directory_tree/skill_2_domain/skill_2_subdirectory/domain_pt4.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - utter_subskill diff --git a/data/test_domains/test_domain_from_multiple_files/drum.yml b/data/test_domains/test_domain_from_multiple_files/drum.yml index 882f721cb5cf..c4d17e976aef 100644 --- a/data/test_domains/test_domain_from_multiple_files/drum.yml +++ b/data/test_domains/test_domain_from_multiple_files/drum.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - drum_robot: diff --git a/data/test_domains/test_domain_from_multiple_files/last_month.yml b/data/test_domains/test_domain_from_multiple_files/last_month.yml index 702f9b417442..0152709c285c 100644 --- a/data/test_domains/test_domain_from_multiple_files/last_month.yml +++ b/data/test_domains/test_domain_from_multiple_files/last_month.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" session_config: session_expiration_time: 360 carry_over_slots_to_new_session: True diff --git a/data/test_domains/test_domain_from_multiple_files/main_menu.yml b/data/test_domains/test_domain_from_multiple_files/main_menu.yml index 4ea4da21a7d1..d22c76199eab 100644 --- a/data/test_domains/test_domain_from_multiple_files/main_menu.yml +++ b/data/test_domains/test_domain_from_multiple_files/main_menu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - main_menu diff --git a/data/test_domains/test_domain_from_multiple_files/selection.yml b/data/test_domains/test_domain_from_multiple_files/selection.yml index 8a4974b711ed..7dc452ccec59 100644 --- a/data/test_domains/test_domain_from_multiple_files/selection.yml +++ b/data/test_domains/test_domain_from_multiple_files/selection.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - finish_selection diff --git a/data/test_domains/test_domain_from_multiple_files/small_talk.yml b/data/test_domains/test_domain_from_multiple_files/small_talk.yml index a2ae435decb4..ef897312e166 100644 --- a/data/test_domains/test_domain_from_multiple_files/small_talk.yml +++ b/data/test_domains/test_domain_from_multiple_files/small_talk.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - bot_challenge diff --git a/data/test_domains/test_domain_from_multiple_files/tomorrow.yml b/data/test_domains/test_domain_from_multiple_files/tomorrow.yml index ab04ac057ae1..1c33d2f18b81 100644 --- a/data/test_domains/test_domain_from_multiple_files/tomorrow.yml +++ b/data/test_domains/test_domain_from_multiple_files/tomorrow.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - cure_network diff --git a/data/test_domains/test_domain_from_multiple_files/wallets.yml b/data/test_domains/test_domain_from_multiple_files/wallets.yml index 428587907a08..95b9caf94933 100644 --- a/data/test_domains/test_domain_from_multiple_files/wallets.yml +++ b/data/test_domains/test_domain_from_multiple_files/wallets.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - open_wallet diff --git a/data/test_domains/test_domain_with_duplicates/domain1.yml b/data/test_domains/test_domain_with_duplicates/domain1.yml index 23bcabb4a862..25e4cd1c2e9d 100644 --- a/data/test_domains/test_domain_with_duplicates/domain1.yml +++ b/data/test_domains/test_domain_with_duplicates/domain1.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_domains/test_domain_with_duplicates/domain2.yml b/data/test_domains/test_domain_with_duplicates/domain2.yml index 9881518aadf8..10086722d3cc 100644 --- a/data/test_domains/test_domain_with_duplicates/domain2.yml +++ b/data/test_domains/test_domain_with_duplicates/domain2.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_domains/test_domain_without_duplicates/domain1.yml b/data/test_domains/test_domain_without_duplicates/domain1.yml index 2f6232768e39..ad605703c998 100644 --- a/data/test_domains/test_domain_without_duplicates/domain1.yml +++ b/data/test_domains/test_domain_without_duplicates/domain1.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - goodbye diff --git a/data/test_domains/test_domain_without_duplicates/domain2.yml b/data/test_domains/test_domain_without_duplicates/domain2.yml index 1aed82aab76f..2525b7fccfa8 100644 --- a/data/test_domains/test_domain_without_duplicates/domain2.yml +++ b/data/test_domains/test_domain_without_duplicates/domain2.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_e2ebot/data/nlu.yml b/data/test_e2ebot/data/nlu.yml index fd04fed1fbc8..2a14c9ed8980 100644 --- a/data/test_e2ebot/data/nlu.yml +++ b/data/test_e2ebot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: tell_name diff --git a/data/test_e2ebot/data/stories.yml b/data/test_e2ebot/data/stories.yml index 7826791ccd09..565aa76b1bdd 100644 --- a/data/test_e2ebot/data/stories.yml +++ b/data/test_e2ebot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Tell name and mood diff --git a/data/test_e2ebot/domain.yml b/data/test_e2ebot/domain.yml index 1b61dc4f5303..88d3af5477de 100644 --- a/data/test_e2ebot/domain.yml +++ b/data/test_e2ebot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - tell_name diff --git a/data/test_e2ebot/tests/test_stories.yml b/data/test_e2ebot/tests/test_stories.yml index fc793c1d0ade..cc1821bc4925 100644 --- a/data/test_e2ebot/tests/test_stories.yml +++ b/data/test_e2ebot/tests/test_stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Test with two easy entities diff --git a/data/test_e2ebot/tests/test_stories_with_unknown_bot_utterances.yml b/data/test_e2ebot/tests/test_stories_with_unknown_bot_utterances.yml index 312fbf415e19..ef8fff76f5f3 100644 --- a/data/test_e2ebot/tests/test_stories_with_unknown_bot_utterances.yml +++ b/data/test_e2ebot/tests/test_stories_with_unknown_bot_utterances.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Test with two easy entities diff --git a/data/test_evaluations/test_form_end_to_end_stories.yml b/data/test_evaluations/test_form_end_to_end_stories.yml index b413b6324325..ea656dc37cbd 100644 --- a/data/test_evaluations/test_form_end_to_end_stories.yml +++ b/data/test_evaluations/test_form_end_to_end_stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: stop form + continue steps: diff --git a/data/test_incremental_training/iter1/nlg_training_data.yml b/data/test_incremental_training/iter1/nlg_training_data.yml index 85312a08232a..5f46b762dc27 100644 --- a/data/test_incremental_training/iter1/nlg_training_data.yml +++ b/data/test_incremental_training/iter1/nlg_training_data.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" responses: utter_mood/great: - text: some response to mood/great diff --git a/data/test_incremental_training/iter1/training_data.yml b/data/test_incremental_training/iter1/training_data.yml index f49d61e7ca11..604fb99e0f64 100644 --- a/data/test_incremental_training/iter1/training_data.yml +++ b/data/test_incremental_training/iter1/training_data.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: bot_challenge examples: | diff --git a/data/test_incremental_training/iter2/training_data.yml b/data/test_incremental_training/iter2/training_data.yml index 06643168f293..0f26883b961d 100644 --- a/data/test_incremental_training/iter2/training_data.yml +++ b/data/test_incremental_training/iter2/training_data.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test_mixed_yaml_training_data/training_data.yml b/data/test_mixed_yaml_training_data/training_data.yml index ed5215a0775f..070080f42edc 100644 --- a/data/test_mixed_yaml_training_data/training_data.yml +++ b/data/test_mixed_yaml_training_data/training_data.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: intent_name examples: | diff --git a/data/test_moodbot/data/nlu.yml b/data/test_moodbot/data/nlu.yml index 08b8c8ba98ea..8524916f4820 100644 --- a/data/test_moodbot/data/nlu.yml +++ b/data/test_moodbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/data/test_moodbot/data/rules.yml b/data/test_moodbot/data/rules.yml index 8a2bc190c03c..7da88a7c4cd2 100644 --- a/data/test_moodbot/data/rules.yml +++ b/data/test_moodbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: Say goodbye anytime the user says goodbye steps: diff --git a/data/test_moodbot/data/stories.yml b/data/test_moodbot/data/stories.yml index 34e9dc763543..5ed5834f23ed 100644 --- a/data/test_moodbot/data/stories.yml +++ b/data/test_moodbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path steps: diff --git a/data/test_moodbot/domain.yml b/data/test_moodbot/domain.yml index ae32962f2667..de67a502a027 100644 --- a/data/test_moodbot/domain.yml +++ b/data/test_moodbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_multi_domain/data/GreetBot/data/nlu.yml b/data/test_multi_domain/data/GreetBot/data/nlu.yml index 3135e2ab4e55..f7e6259918ed 100644 --- a/data/test_multi_domain/data/GreetBot/data/nlu.yml +++ b/data/test_multi_domain/data/GreetBot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/data/test_multi_domain/data/GreetBot/data/stories.yml b/data/test_multi_domain/data/GreetBot/data/stories.yml index 8bea5299c21c..c488408cd1ef 100644 --- a/data/test_multi_domain/data/GreetBot/data/stories.yml +++ b/data/test_multi_domain/data/GreetBot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: say hello steps: diff --git a/data/test_multi_domain/data/MoodBot/data/nlu.yml b/data/test_multi_domain/data/MoodBot/data/nlu.yml index 85f7f0ee1fb8..753b34e0e3db 100644 --- a/data/test_multi_domain/data/MoodBot/data/nlu.yml +++ b/data/test_multi_domain/data/MoodBot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: affirm examples: | diff --git a/data/test_multi_domain/data/MoodBot/data/stories.yml b/data/test_multi_domain/data/MoodBot/data/stories.yml index 34e9dc763543..5ed5834f23ed 100644 --- a/data/test_multi_domain/data/MoodBot/data/stories.yml +++ b/data/test_multi_domain/data/MoodBot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path steps: diff --git a/data/test_multi_domain/data/nlu.yml b/data/test_multi_domain/data/nlu.yml index 7313407c31a5..077ddd7e59f3 100644 --- a/data/test_multi_domain/data/nlu.yml +++ b/data/test_multi_domain/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: goodbye examples: | diff --git a/data/test_multi_domain/data/stories.yml b/data/test_multi_domain/data/stories.yml index 806a3a551e5e..59e87268e6c6 100644 --- a/data/test_multi_domain/data/stories.yml +++ b/data/test_multi_domain/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: say goodbye steps: diff --git a/data/test_multiline_intent_examples_yaml/nlu.yml b/data/test_multiline_intent_examples_yaml/nlu.yml index 0ef54a90b027..67cb8c4ba427 100644 --- a/data/test_multiline_intent_examples_yaml/nlu.yml +++ b/data/test_multiline_intent_examples_yaml/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: diff --git a/data/test_multiproject/projects/ChitchatBot/data/nlu.yml b/data/test_multiproject/projects/ChitchatBot/data/nlu.yml index 94b88fa3bf33..e872f4ca5440 100644 --- a/data/test_multiproject/projects/ChitchatBot/data/nlu.yml +++ b/data/test_multiproject/projects/ChitchatBot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: bot_challenge examples: | diff --git a/data/test_multiproject/projects/ChitchatBot/data/rules.yml b/data/test_multiproject/projects/ChitchatBot/data/rules.yml index f8405727e527..dbdb5f3758fe 100644 --- a/data/test_multiproject/projects/ChitchatBot/data/rules.yml +++ b/data/test_multiproject/projects/ChitchatBot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: Tell a joke when the user asks for one steps: diff --git a/data/test_multiproject/projects/ChitchatBot/domain.yml b/data/test_multiproject/projects/ChitchatBot/domain.yml index 85406349742f..5efe8d48fc02 100644 --- a/data/test_multiproject/projects/ChitchatBot/domain.yml +++ b/data/test_multiproject/projects/ChitchatBot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - tell_joke diff --git a/data/test_multiproject/projects/GreetBot/data/nlu.yml b/data/test_multiproject/projects/GreetBot/data/nlu.yml index 975d7ebc1493..542be4d71b1f 100644 --- a/data/test_multiproject/projects/GreetBot/data/nlu.yml +++ b/data/test_multiproject/projects/GreetBot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/data/test_multiproject/projects/GreetBot/data/rules.yml b/data/test_multiproject/projects/GreetBot/data/rules.yml index c7d7600f3370..7d6a413f9968 100644 --- a/data/test_multiproject/projects/GreetBot/data/rules.yml +++ b/data/test_multiproject/projects/GreetBot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: respond to greeting steps: diff --git a/data/test_multiproject/projects/GreetBot/domain.yml b/data/test_multiproject/projects/GreetBot/domain.yml index 4b37eb0e1415..2a45cd49d5f5 100644 --- a/data/test_multiproject/projects/GreetBot/domain.yml +++ b/data/test_multiproject/projects/GreetBot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_nlu_no_responses/nlu_no_responses.yml b/data/test_nlu_no_responses/nlu_no_responses.yml index 295e97433e19..ace2b50bf7fd 100644 --- a/data/test_nlu_no_responses/nlu_no_responses.yml +++ b/data/test_nlu_no_responses/nlu_no_responses.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: chitchat/ask_name diff --git a/data/test_nlu_no_responses/nlu_with_unicode.yml b/data/test_nlu_no_responses/nlu_with_unicode.yml index 777ac06649e6..563f07604179 100644 --- a/data/test_nlu_no_responses/nlu_with_unicode.yml +++ b/data/test_nlu_no_responses/nlu_with_unicode.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/data/test_nlu_no_responses/sara_nlu_data.yml b/data/test_nlu_no_responses/sara_nlu_data.yml index bb6c6c2f66cf..9d83ce3efd02 100644 --- a/data/test_nlu_no_responses/sara_nlu_data.yml +++ b/data/test_nlu_no_responses/sara_nlu_data.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: why_rasa examples: | diff --git a/data/test_number_nlu_examples/nlu.yml b/data/test_number_nlu_examples/nlu.yml index e4d742abcd56..36b64da3e795 100644 --- a/data/test_number_nlu_examples/nlu.yml +++ b/data/test_number_nlu_examples/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/data/test_response_selector_bot/data/nlu.yml b/data/test_response_selector_bot/data/nlu.yml index 97221263daaf..42748ad1acbd 100644 --- a/data/test_response_selector_bot/data/nlu.yml +++ b/data/test_response_selector_bot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/data/test_response_selector_bot/data/rules.yml b/data/test_response_selector_bot/data/rules.yml index e60aae6a8060..9f696f461cb3 100644 --- a/data/test_response_selector_bot/data/rules.yml +++ b/data/test_response_selector_bot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: diff --git a/data/test_response_selector_bot/domain.yml b/data/test_response_selector_bot/domain.yml index 61b6d085578c..b944ba5dddb8 100644 --- a/data/test_response_selector_bot/domain.yml +++ b/data/test_response_selector_bot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_response_selector_bot/tests/test_stories.yml b/data/test_response_selector_bot/tests/test_stories.yml index c4f23621ae8d..299f95456db9 100644 --- a/data/test_response_selector_bot/tests/test_stories.yml +++ b/data/test_response_selector_bot/tests/test_stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: test 0 - both predictions should be the same in the test stories diff --git a/data/test_restaurantbot/data/nlu.yml b/data/test_restaurantbot/data/nlu.yml index 05e931e56428..b0a868402f07 100644 --- a/data/test_restaurantbot/data/nlu.yml +++ b/data/test_restaurantbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: request_restaurant examples: | diff --git a/data/test_restaurantbot/data/rules.yml b/data/test_restaurantbot/data/rules.yml index 2dcb27ab6482..10b6021abafb 100644 --- a/data/test_restaurantbot/data/rules.yml +++ b/data/test_restaurantbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: request restaurant steps: diff --git a/data/test_restaurantbot/data/stories.yml b/data/test_restaurantbot/data/stories.yml index 43cdef133c4f..4766886179bf 100644 --- a/data/test_restaurantbot/data/stories.yml +++ b/data/test_restaurantbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: inform steps: diff --git a/data/test_restaurantbot/domain.yml b/data/test_restaurantbot/domain.yml index e079f54bd227..ef578b50d26a 100644 --- a/data/test_restaurantbot/domain.yml +++ b/data/test_restaurantbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - request_restaurant: diff --git a/data/test_selectors/nlu.yml b/data/test_selectors/nlu.yml index 73a267aa32e9..2810ebcb53b7 100644 --- a/data/test_selectors/nlu.yml +++ b/data/test_selectors/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: faq/meta_inquire-ask_bot-challenge diff --git a/data/test_spacybot/data/nlu.yml b/data/test_spacybot/data/nlu.yml index 2540a009f227..d3febbaccdac 100644 --- a/data/test_spacybot/data/nlu.yml +++ b/data/test_spacybot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/data/test_spacybot/data/stories.yml b/data/test_spacybot/data/stories.yml index 2fe99ab261d5..ff787be77051 100644 --- a/data/test_spacybot/data/stories.yml +++ b/data/test_spacybot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path steps: diff --git a/data/test_spacybot/domain.yml b/data/test_spacybot/domain.yml index 88df7d9a4022..9a47626f55ae 100644 --- a/data/test_spacybot/domain.yml +++ b/data/test_spacybot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/data/test_yaml_stories/rules_missing_intent.yml b/data/test_yaml_stories/rules_missing_intent.yml index 1ae429787dc2..e05bf2360cbb 100644 --- a/data/test_yaml_stories/rules_missing_intent.yml +++ b/data/test_yaml_stories/rules_missing_intent.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: greet user diff --git a/data/test_yaml_stories/stories_e2e.yml b/data/test_yaml_stories/stories_e2e.yml index f87c3dfc0562..bc62cf3652a3 100644 --- a/data/test_yaml_stories/stories_e2e.yml +++ b/data/test_yaml_stories/stories_e2e.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path (intent to action) diff --git a/data/test_yaml_stories/stories_missing_intent.yml b/data/test_yaml_stories/stories_missing_intent.yml index 7c949b3afbc7..ca624b6a9d4a 100644 --- a/data/test_yaml_stories/stories_missing_intent.yml +++ b/data/test_yaml_stories/stories_missing_intent.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: greet user diff --git a/data/test_yaml_stories/stories_retrieval_intents.yml b/data/test_yaml_stories/stories_retrieval_intents.yml index e1022ae699aa..ed7eeeaafafc 100644 --- a/data/test_yaml_stories/stories_retrieval_intents.yml +++ b/data/test_yaml_stories/stories_retrieval_intents.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path diff --git a/data/test_yaml_stories/stories_simple.yml b/data/test_yaml_stories/stories_simple.yml index 91e56a406ed1..8ded95ba1d66 100644 --- a/data/test_yaml_stories/stories_simple.yml +++ b/data/test_yaml_stories/stories_simple.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: simple_story diff --git a/data/test_yaml_stories/stories_unexpected_intent_unlearnable.yml b/data/test_yaml_stories/stories_unexpected_intent_unlearnable.yml index 8f72e7ec44e2..efe1968eb036 100644 --- a/data/test_yaml_stories/stories_unexpected_intent_unlearnable.yml +++ b/data/test_yaml_stories/stories_unexpected_intent_unlearnable.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: "story 1" steps: diff --git a/data/test_yaml_stories/stories_unfeaturized_entities.yml b/data/test_yaml_stories/stories_unfeaturized_entities.yml index aa88fe896db3..c5bb38a14fe9 100644 --- a/data/test_yaml_stories/stories_unfeaturized_entities.yml +++ b/data/test_yaml_stories/stories_unfeaturized_entities.yml @@ -5,6 +5,7 @@ stories: entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_greet @@ -16,29 +17,34 @@ stories: entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_default - intent: goodbye entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_goodbye - intent: thank entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_default - intent: ask entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_default - intent: why entities: - name: Peter - unrelated_recognized_entity: whatever + - unused_entity: whatever - other: foo - action: utter_default diff --git a/data/test_yaml_stories/test_multiple_action_unlikely_intent_warnings.yml b/data/test_yaml_stories/test_multiple_action_unlikely_intent_warnings.yml index a4d920421b69..300cbf8be9bd 100644 --- a/data/test_yaml_stories/test_multiple_action_unlikely_intent_warnings.yml +++ b/data/test_yaml_stories/test_multiple_action_unlikely_intent_warnings.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: path 1 steps: diff --git a/data/test_yaml_stories/test_stories_entity_annotations.yml b/data/test_yaml_stories/test_stories_entity_annotations.yml index 51752b2843e4..49f95cc0de37 100644 --- a/data/test_yaml_stories/test_stories_entity_annotations.yml +++ b/data/test_yaml_stories/test_stories_entity_annotations.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Test with entity annotation diff --git a/docs/docs/domain.mdx b/docs/docs/domain.mdx index 67fdd5bd3bf8..cf39b181e110 100644 --- a/docs/docs/domain.mdx +++ b/docs/docs/domain.mdx @@ -56,7 +56,7 @@ intents: - last_name ``` -You can only `use_entities` _or_ `ignore_entities` for a single intent. +You can only `use_entities` _or_ `ignore_entities` for any single intent. Excluded entities for those intents will be unfeaturized and therefore will not impact the next action predictions. This is useful when you have @@ -65,14 +65,36 @@ an intent where you don't care about the entities being picked up. If you list your intents without a `use_entities` or `ignore_entities` parameter, the entities will be featurized as normal. + +It is also possible to ignore an entity for all intents +by setting the `influence_conversation` flag to `false` for the entity itself. +See [the entities section](#entities) for details. + +Excluded entities for intents will be unfeaturized and therefore +will not impact the next action predictions. This is useful when you have +an intent where you don't care about the entities being picked up. + +If you list your intents without this parameter, and without setting +`influence_conversation` to `false` for any entities, all entities will be +featurized as normal. + :::note -If you want these entities not to influence action prediction, +If you want these entities not to influence action prediction via slots either, set the [`influence_conversation: false`](./domain.mdx#slots-and-conversation-behavior) parameter for slots with the same name. ::: ## Entities +:::info New in 3.1 + +As of 3.1, you can use the `influence_conversation` flag under entities. +The flag can be set to `false` to declare that an entity should not +be featurized for any intents. It is a shorthand syntax for adding an entity to +the `ignore_entities` list of every intent in the domain. The flag is optional +and default behaviour remains unchanged. + +::: The `entities` section lists all entities that can be extracted by any [entity extractor](./components.mdx) in your @@ -112,6 +134,21 @@ entities: - 2 ``` +By default, entities influence action prediction. To prevent extracted entities from +influencing the conversation for specific intents you can [ignore entities for certain intents](#ignoring-entities-for-certain-intents). +To ignore an entity for all intents, without having to list it under the `ignore_entities` flag of each intent, +you can set the flag `influence_conversation` to `false` under the entity: + +```yaml-rasa +entities: +- location: + influence_conversation: false +``` +This syntax has the same effect as adding the entity to the `ignore_entities` +list for every intent in the domain. + +Explicitly setting `influence_conversation: true` does not change any behaviour. This is the default setting. + ## Slots Slots are your bot's memory. They act as a key-value store diff --git a/docs/docs/migration-guide.mdx b/docs/docs/migration-guide.mdx index 65b82be98d2c..8409736b91dc 100644 --- a/docs/docs/migration-guide.mdx +++ b/docs/docs/migration-guide.mdx @@ -1143,10 +1143,10 @@ configuration. #### Upgrading `version` from `2.0` to `3.0` -At the top of your training data files, you need to change `version: "2.0"` to `version: "3.0"`. +At the top of your training data files, you need to change `version: "2.0"` to `version: "3.1"`. We follow semantic versioning for training data versions. This means breaking changes result in a new -major version, while new features result in a new minor version. +major version, while new features result in a new minor version. The latest training data version is 3.1. The improvements to `slot mappings` in Rasa Open Source 3.0 were breaking changes, so we needed to upgrade from major version `2.0` to major version `3.0`. diff --git a/docs/docs/training-data-format.mdx b/docs/docs/training-data-format.mdx index 2e6fc48d91cd..9372c835225a 100644 --- a/docs/docs/training-data-format.mdx +++ b/docs/docs/training-data-format.mdx @@ -49,14 +49,14 @@ will assume you are using the latest training data format specification supporte by the version of Rasa Open Source you have installed. Training data files with a Rasa Open Source version greater than the version you have installed on your machine will be skipped. -Currently, the latest training data format specification for Rasa 3.x is 3.0. +Currently, the latest training data format specification for Rasa 3.x is 3.1. ### Example Here's a short example which keeps all training data in a single file: ```yaml-rasa -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/examples/concertbot/data/nlu.yml b/examples/concertbot/data/nlu.yml index d1186a0e6f49..8050e18956dd 100644 --- a/examples/concertbot/data/nlu.yml +++ b/examples/concertbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/examples/concertbot/data/rules.yml b/examples/concertbot/data/rules.yml index 84523ceac8dd..d9332738001d 100644 --- a/examples/concertbot/data/rules.yml +++ b/examples/concertbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: fallback steps: diff --git a/examples/concertbot/data/stories.yml b/examples/concertbot/data/stories.yml index ca0dea84d46a..b95e1eaab95e 100644 --- a/examples/concertbot/data/stories.yml +++ b/examples/concertbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: search_venues steps: diff --git a/examples/concertbot/domain.yml b/examples/concertbot/domain.yml index fdd912248fbd..e7ce267de18a 100644 --- a/examples/concertbot/domain.yml +++ b/examples/concertbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - affirm diff --git a/examples/e2ebot/data/nlu.yml b/examples/e2ebot/data/nlu.yml index b771f1164939..041baeb32b3d 100644 --- a/examples/e2ebot/data/nlu.yml +++ b/examples/e2ebot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/examples/e2ebot/data/stories.yml b/examples/e2ebot/data/stories.yml index 0f87c79d0eee..c82fff44f72b 100644 --- a/examples/e2ebot/data/stories.yml +++ b/examples/e2ebot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: accepts suggestion diff --git a/examples/e2ebot/domain.yml b/examples/e2ebot/domain.yml index ef3848182410..8af105b71619 100644 --- a/examples/e2ebot/domain.yml +++ b/examples/e2ebot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" actions: - utter_greet diff --git a/examples/e2ebot/tests/test_stories.yaml b/examples/e2ebot/tests/test_stories.yml similarity index 98% rename from examples/e2ebot/tests/test_stories.yaml rename to examples/e2ebot/tests/test_stories.yml index 9e3ab0d5b552..32707932da29 100644 --- a/examples/e2ebot/tests/test_stories.yaml +++ b/examples/e2ebot/tests/test_stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Happy path accepts suggestion steps: diff --git a/examples/formbot/data/nlu.yml b/examples/formbot/data/nlu.yml index 79bb806ec43b..226efd7e2cc6 100644 --- a/examples/formbot/data/nlu.yml +++ b/examples/formbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/examples/formbot/data/rules.yml b/examples/formbot/data/rules.yml index ecef5eca262f..8609f141c25f 100644 --- a/examples/formbot/data/rules.yml +++ b/examples/formbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: Greet user steps: diff --git a/examples/formbot/data/stories.yml b/examples/formbot/data/stories.yml index b413b6324325..ea656dc37cbd 100644 --- a/examples/formbot/data/stories.yml +++ b/examples/formbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: stop form + continue steps: diff --git a/examples/formbot/domain.yml b/examples/formbot/domain.yml index 0939819a1fa8..17070125b45e 100644 --- a/examples/formbot/domain.yml +++ b/examples/formbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - request_restaurant: use_entities: [] diff --git a/examples/formbot/tests/test_stories.yml b/examples/formbot/tests/test_stories.yml index db90b37ec043..03006c402ffa 100644 --- a/examples/formbot/tests/test_stories.yml +++ b/examples/formbot/tests/test_stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Happy path steps: diff --git a/examples/knowledgebasebot/data/nlu.yml b/examples/knowledgebasebot/data/nlu.yml index 04f85eca9f1a..9c034a07eab1 100644 --- a/examples/knowledgebasebot/data/nlu.yml +++ b/examples/knowledgebasebot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: bot_challenge examples: | diff --git a/examples/knowledgebasebot/data/rules.yml b/examples/knowledgebasebot/data/rules.yml index 0a6aab10aac6..20f9e8a0e2a9 100644 --- a/examples/knowledgebasebot/data/rules.yml +++ b/examples/knowledgebasebot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: greet steps: diff --git a/examples/knowledgebasebot/data/stories.yml b/examples/knowledgebasebot/data/stories.yml index f0ec3843ffd1..a25a13d04290 100644 --- a/examples/knowledgebasebot/data/stories.yml +++ b/examples/knowledgebasebot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: greet and then query knowledge base steps: diff --git a/examples/knowledgebasebot/domain.yml b/examples/knowledgebasebot/domain.yml index 529fdfbb4a9b..d188cabfafa0 100644 --- a/examples/knowledgebasebot/domain.yml +++ b/examples/knowledgebasebot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/examples/moodbot/data/nlu.yml b/examples/moodbot/data/nlu.yml index 08b8c8ba98ea..8524916f4820 100644 --- a/examples/moodbot/data/nlu.yml +++ b/examples/moodbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/examples/moodbot/data/rules.yml b/examples/moodbot/data/rules.yml index 8a2bc190c03c..7da88a7c4cd2 100644 --- a/examples/moodbot/data/rules.yml +++ b/examples/moodbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: Say goodbye anytime the user says goodbye steps: diff --git a/examples/moodbot/data/stories.yml b/examples/moodbot/data/stories.yml index 34e9dc763543..5ed5834f23ed 100644 --- a/examples/moodbot/data/stories.yml +++ b/examples/moodbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: happy path steps: diff --git a/examples/moodbot/domain.yml b/examples/moodbot/domain.yml index ae32962f2667..de67a502a027 100644 --- a/examples/moodbot/domain.yml +++ b/examples/moodbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/examples/reminderbot/data/nlu.yml b/examples/reminderbot/data/nlu.yml index 89afcda420de..8cc39fb8e5e9 100644 --- a/examples/reminderbot/data/nlu.yml +++ b/examples/reminderbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/examples/reminderbot/data/rules.yml b/examples/reminderbot/data/rules.yml index b0a923612e53..34754cdcab1f 100644 --- a/examples/reminderbot/data/rules.yml +++ b/examples/reminderbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: greet steps: diff --git a/examples/reminderbot/data/stories.yml b/examples/reminderbot/data/stories.yml index ccc89c2cf0fc..98e34a6d4701 100644 --- a/examples/reminderbot/data/stories.yml +++ b/examples/reminderbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: - story: Happy path steps: diff --git a/examples/reminderbot/domain.yml b/examples/reminderbot/domain.yml index 5fba01f2c654..f2086d0266bb 100644 --- a/examples/reminderbot/domain.yml +++ b/examples/reminderbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" session_config: session_expiration_time: 60 diff --git a/examples/responseselectorbot/data/nlu.yml b/examples/responseselectorbot/data/nlu.yml index 97221263daaf..42748ad1acbd 100644 --- a/examples/responseselectorbot/data/nlu.yml +++ b/examples/responseselectorbot/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/examples/responseselectorbot/data/rules.yml b/examples/responseselectorbot/data/rules.yml index e60aae6a8060..9f696f461cb3 100644 --- a/examples/responseselectorbot/data/rules.yml +++ b/examples/responseselectorbot/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: diff --git a/examples/responseselectorbot/data/stories.yml b/examples/responseselectorbot/data/stories.yml index aecfd66d91e7..57a86c8a16cf 100644 --- a/examples/responseselectorbot/data/stories.yml +++ b/examples/responseselectorbot/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: diff --git a/examples/responseselectorbot/domain.yml b/examples/responseselectorbot/domain.yml index 61b6d085578c..b944ba5dddb8 100644 --- a/examples/responseselectorbot/domain.yml +++ b/examples/responseselectorbot/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/examples/rules/data/nlu.yml b/examples/rules/data/nlu.yml index 67b215b06e65..0819d4ebe9f0 100644 --- a/examples/rules/data/nlu.yml +++ b/examples/rules/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet examples: | diff --git a/examples/rules/data/rules.yml b/examples/rules/data/rules.yml index 034561bc02ca..17a6672d1f32 100644 --- a/examples/rules/data/rules.yml +++ b/examples/rules/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: - rule: Greet diff --git a/examples/rules/domain.yml b/examples/rules/domain.yml index a4306c67cac6..a88f2f2c8589 100644 --- a/examples/rules/domain.yml +++ b/examples/rules/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - activate_q_form diff --git a/poetry.lock b/poetry.lock index 097253c519f1..621532ca5c86 100644 --- a/poetry.lock +++ b/poetry.lock @@ -231,7 +231,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "bandit" -version = "1.7.2" +version = "1.7.4" description = "Security oriented static analyser for python code." category = "dev" optional = false @@ -244,7 +244,7 @@ PyYAML = ">=5.3.1" stevedore = ">=1.20.0" [package.extras] -test = ["beautifulsoup4 (>=4.8.0)", "coverage (>=4.5.4)", "fixtures (>=3.0.0)", "flake8 (>=4.0.0)", "pylint (==1.9.4)", "stestr (>=2.5.0)", "testscenarios (>=0.5.0)", "testtools (>=2.3.0)", "toml"] +test = ["coverage (>=4.5.4)", "fixtures (>=3.0.0)", "flake8 (>=4.0.0)", "stestr (>=2.5.0)", "testscenarios (>=0.5.0)", "testtools (>=2.3.0)", "toml", "beautifulsoup4 (>=4.8.0)", "pylint (==1.9.4)"] toml = ["toml"] yaml = ["pyyaml"] @@ -282,7 +282,7 @@ uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "blis" -version = "0.7.5" +version = "0.7.6" description = "The Blis BLAS-like linear algebra library, as a self-contained C-extension." category = "main" optional = true @@ -293,14 +293,14 @@ numpy = ">=1.15.0" [[package]] name = "boto3" -version = "1.20.54" +version = "1.21.15" description = "The AWS SDK for Python" category = "main" optional = false python-versions = ">= 3.6" [package.dependencies] -botocore = ">=1.23.54,<1.24.0" +botocore = ">=1.24.15,<1.25.0" jmespath = ">=0.7.1,<1.0.0" s3transfer = ">=0.5.0,<0.6.0" @@ -309,7 +309,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] [[package]] name = "botocore" -version = "1.23.54" +version = "1.24.15" description = "Low-level, data-driven core of boto 3." category = "main" optional = false @@ -472,7 +472,7 @@ python-versions = ">=3.6,<4.0" [[package]] name = "coverage" -version = "6.3.1" +version = "6.3.2" description = "Code coverage measurement for Python" category = "dev" optional = false @@ -577,7 +577,7 @@ requests = ">=2.6.0" [[package]] name = "datadog-api-client" -version = "1.8.0" +version = "1.10.0" description = "Collection of all Datadog Public endpoints" category = "dev" optional = false @@ -694,7 +694,7 @@ requests = ">=2.0" [[package]] name = "filelock" -version = "3.4.2" +version = "3.6.0" description = "A platform independent file lock." category = "main" optional = true @@ -752,22 +752,22 @@ python-versions = "*" [[package]] name = "freezegun" -version = "1.1.0" +version = "1.2.0" description = "Let your Python tests travel through time" category = "dev" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" [package.dependencies] python-dateutil = ">=2.7" [[package]] name = "fsspec" -version = "2022.1.0" +version = "2022.2.0" description = "File-system specification" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] abfs = ["adlfs"] @@ -838,7 +838,7 @@ test = ["betamax (>=0.8.0)", "pytest (>2.3.5)", "betamax-matchers (>=0.1.0)", "u [[package]] name = "gitpython" -version = "3.1.26" +version = "3.1.27" description = "GitPython is a python library used to interact with Git repositories" category = "dev" optional = false @@ -850,7 +850,7 @@ typing-extensions = {version = ">=3.7.4.3", markers = "python_version < \"3.8\"" [[package]] name = "google-api-core" -version = "2.5.0" +version = "2.7.0" description = "Google API client core library" category = "dev" optional = false @@ -903,15 +903,15 @@ tool = ["click (>=6.0.0)"] [[package]] name = "google-cloud-core" -version = "2.2.2" +version = "2.2.3" description = "Google Cloud API client core library" category = "dev" optional = false python-versions = ">=3.6" [package.dependencies] -google-api-core = ">=1.21.0,<3.0.0dev" -google-auth = ">=1.24.0,<3.0dev" +google-api-core = ">=1.31.5,<2.0.0 || >2.3.0,<3.0.0dev" +google-auth = ">=1.25.0,<3.0dev" [package.extras] grpc = ["grpcio (>=1.8.2,<2.0dev)"] @@ -957,7 +957,7 @@ six = "*" [[package]] name = "google-resumable-media" -version = "2.2.1" +version = "2.3.2" description = "Utilities for Google Media Downloads and Resumable Uploads" category = "dev" optional = false @@ -972,7 +972,7 @@ requests = ["requests (>=2.18.0,<3.0.0dev)"] [[package]] name = "googleapis-common-protos" -version = "1.54.0" +version = "1.55.0" description = "Common protobufs used in Google APIs" category = "dev" optional = false @@ -997,7 +997,7 @@ docs = ["sphinx"] [[package]] name = "grpcio" -version = "1.43.0" +version = "1.44.0" description = "HTTP/2-based RPC framework" category = "main" optional = false @@ -1007,7 +1007,7 @@ python-versions = ">=3.6" six = ">=1.5.2" [package.extras] -protobuf = ["grpcio-tools (>=1.43.0)"] +protobuf = ["grpcio-tools (>=1.44.0)"] [[package]] name = "h11" @@ -1049,7 +1049,7 @@ socks = ["socksio (>=1.0.0,<2.0.0)"] [[package]] name = "httptools" -version = "0.3.0" +version = "0.4.0" description = "A collection of framework independent HTTP protocol utils." category = "main" optional = false @@ -1125,7 +1125,7 @@ python-versions = ">=3.5" [[package]] name = "importlib-metadata" -version = "4.11.0" +version = "4.11.2" description = "Read metadata from Python packages" category = "main" optional = false @@ -1136,9 +1136,9 @@ typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""} zipp = ">=0.5" [package.extras] -docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] +docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)"] perf = ["ipython"] -testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources (>=1.3)"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "importlib-resources (>=1.3)"] [[package]] name = "incremental" @@ -1349,11 +1349,11 @@ testing = ["coverage", "pyyaml"] [[package]] name = "markupsafe" -version = "2.0.1" +version = "2.1.0" description = "Safely add untrusted strings to HTML/XML markup." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "matplotlib" @@ -2219,7 +2219,7 @@ client = ["requests (>=2.21.0)", "websocket-client (>=0.54.0)"] [[package]] name = "python-socketio" -version = "5.5.1" +version = "5.5.2" description = "Socket.IO server and client for Python" category = "main" optional = false @@ -2276,7 +2276,7 @@ fire = "*" [[package]] name = "rasa-sdk" -version = "3.0.5" +version = "3.0.6" 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" category = "main" optional = false @@ -2290,7 +2290,6 @@ sanic = ">=21.12.0,<22.0.0" Sanic-Cors = ">=2.0.0,<3.0.0" typing-extensions = ">=3.7.4,<4.0.0" urllib3 = ">=1.26.5,<2.0.0" -uvloop = {version = "<0.15.0", markers = "sys_platform != \"win32\""} [[package]] name = "redis" @@ -2432,7 +2431,7 @@ python-versions = ">=3.5" [[package]] name = "s3transfer" -version = "0.5.1" +version = "0.5.2" description = "An Amazon S3 Transfer Manager" category = "main" optional = false @@ -2691,7 +2690,7 @@ python-versions = "*" [[package]] name = "spacy" -version = "3.2.2" +version = "3.2.3" description = "Industrial-strength Natural Language Processing (NLP) in Python" category = "main" optional = true @@ -2744,7 +2743,7 @@ transformers = ["spacy-transformers (>=1.1.2,<1.2.0)"] [[package]] name = "spacy-legacy" -version = "3.0.8" +version = "3.0.9" description = "Legacy registered functions for spaCy backwards compatibility" category = "main" optional = true @@ -2763,7 +2762,7 @@ wasabi = ">=0.8.1,<1.1.0" [[package]] name = "sqlalchemy" -version = "1.4.31" +version = "1.4.32" description = "Database Abstraction Library" category = "main" optional = false @@ -3092,7 +3091,7 @@ dev = ["packaging"] [[package]] name = "tqdm" -version = "4.62.3" +version = "4.63.0" description = "Fast, Extensible Progress Meter" category = "main" optional = false @@ -3120,12 +3119,10 @@ huggingface-hub = ">=0.1.0,<1.0" importlib-metadata = {version = "*", markers = "python_version < \"3.8\""} numpy = ">=1.17" packaging = ">=20.0" -protobuf = {version = "*", optional = true, markers = "extra == \"sentencepiece\""} pyyaml = ">=5.1" regex = "!=2019.12.17" requests = "*" sacremoses = "*" -sentencepiece = {version = ">=0.1.91,<0.1.92 || >0.1.92", optional = true, markers = "extra == \"sentencepiece\""} tokenizers = ">=0.10.1,<0.11" tqdm = ">=4.27" @@ -3182,11 +3179,11 @@ six = "*" [[package]] name = "typed-ast" -version = "1.4.3" +version = "1.5.2" description = "a fork of Python 2 and 3 ast modules with type comment support" category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.6" [[package]] name = "typeguard" @@ -3243,7 +3240,7 @@ python-versions = "*" [[package]] name = "types-redis" -version = "4.1.16" +version = "4.1.17" description = "Typing stubs for redis" category = "dev" optional = false @@ -3251,7 +3248,7 @@ python-versions = "*" [[package]] name = "types-requests" -version = "2.27.9" +version = "2.27.11" description = "Typing stubs for requests" category = "dev" optional = false @@ -3262,7 +3259,7 @@ types-urllib3 = "<1.27" [[package]] name = "types-setuptools" -version = "57.4.9" +version = "57.4.10" description = "Typing stubs for setuptools" category = "dev" optional = false @@ -3270,7 +3267,7 @@ python-versions = "*" [[package]] name = "types-urllib3" -version = "1.26.9" +version = "1.26.10" description = "Typing stubs for urllib3" category = "dev" optional = false @@ -3337,11 +3334,16 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] name = "uvloop" -version = "0.14.0" +version = "0.16.0" description = "Fast implementation of asyncio event loop on top of libuv" category = "main" optional = false -python-versions = "*" +python-versions = ">=3.7" + +[package.extras] +dev = ["Cython (>=0.29.24,<0.30.0)", "pytest (>=3.6.0)", "Sphinx (>=4.1.2,<4.2.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "aiohttp", "flake8 (>=3.9.2,<3.10.0)", "psutil", "pycodestyle (>=2.7.0,<2.8.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] +docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)"] +test = ["aiohttp", "flake8 (>=3.9.2,<3.10.0)", "psutil", "pycodestyle (>=2.7.0,<2.8.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"] [[package]] name = "wasabi" @@ -3386,7 +3388,7 @@ requests-toolbelt = "*" [[package]] name = "websockets" -version = "10.1" +version = "10.2" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" category = "main" optional = false @@ -3445,16 +3447,16 @@ docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"] testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"] [extras] -full = ["spacy", "transformers", "jieba"] +full = ["spacy", "transformers", "sentencepiece", "jieba"] gh-release-notes = ["github3.py"] jieba = ["jieba"] spacy = ["spacy"] -transformers = ["transformers"] +transformers = ["transformers", "sentencepiece"] [metadata] lock-version = "1.1" -python-versions = ">=3.7,<3.9" -content-hash = "a5728f4862dfc3cb154339b6801ccece732aba2422313b16d00a65e55c947e54" +python-versions = ">=3.7,<3.10" +content-hash = "c679c53d0d4d3a60c872380c9f251e15b7acea06e1338b3fea1cbfb34914a3ec" [metadata.files] absl-py = [ @@ -3565,8 +3567,8 @@ backoff = [ {file = "backoff-1.10.0.tar.gz", hash = "sha256:b8fba021fac74055ac05eb7c7bfce4723aedde6cd0a504e5326bcb0bdd6d19a4"}, ] bandit = [ - {file = "bandit-1.7.2-py3-none-any.whl", hash = "sha256:e20402cadfd126d85b68ed4c8862959663c8c372dbbb1fca8f8e2c9f55a067ec"}, - {file = "bandit-1.7.2.tar.gz", hash = "sha256:6d11adea0214a43813887bfe71a377b5a9955e4c826c8ffd341b494e3ab25260"}, + {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.21.4-py3-none-any.whl", hash = "sha256:3ac67daa353ecf853a1df9d3e924f005e729227a60a8dbada31a4c31aba7f654"}, @@ -3577,30 +3579,30 @@ black = [ {file = "black-21.7b0.tar.gz", hash = "sha256:c8373c6491de9362e39271630b65b964607bc5c79c83783547d76c839b3aa219"}, ] blis = [ - {file = "blis-0.7.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5812a7c04561ae7332cf730f57d9f82cbd12c5f86a5bfad66ee244e51d06266d"}, - {file = "blis-0.7.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eecfce3d8fce61dede7b0ae0dffa461c22072437b6cde85587db0c1aa75b450"}, - {file = "blis-0.7.5-cp310-cp310-win_amd64.whl", hash = "sha256:0e476931f0d5703a21c77e7f69b8ebdeeea493fc7858a86f627ac2b376a12c8d"}, - {file = "blis-0.7.5-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:5966ddf3bce84aa7bb09ce4ca059309602fa63280a5d5e5365bb2a294bd5a138"}, - {file = "blis-0.7.5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9034dabce4e42e3a1a7b99cc6de430484c8c369e51556ee8d47a53c085de681"}, - {file = "blis-0.7.5-cp36-cp36m-win_amd64.whl", hash = "sha256:730952f74adb0fa7dde9f1bc11249d5a64f3a3a9cf7dfa23b189a4b767bdf2d0"}, - {file = "blis-0.7.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2339cb19594134775bda8b86f23a893828fc7e8d63f09ba9a15f30b2b16c966c"}, - {file = "blis-0.7.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5023781272e0b2868be2f92017aa6836557990f1ca5ba2af5e9f5a0acf04fd8a"}, - {file = "blis-0.7.5-cp37-cp37m-win_amd64.whl", hash = "sha256:65ba723821cc57eb4227eb8dd05c57fff23d97f826d4325b316cd8a63aac8d6a"}, - {file = "blis-0.7.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ad4af690c37a5953d3aea660ad89b636bfbb80ca1470995554670ca2143f0cb2"}, - {file = "blis-0.7.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf11c233ea5c2d30683e7c9641c5dc4cd76ed0f64755ba3321dfb8db39feb316"}, - {file = "blis-0.7.5-cp38-cp38-win_amd64.whl", hash = "sha256:31401da283ed42905f0fbf2f8b88ea424c6a911482426f84b5b88c54d382e4d1"}, - {file = "blis-0.7.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0c185979f8f528d634f5548b8cd84ab0366d340c27c039ad3937fab186c1c252"}, - {file = "blis-0.7.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8345bd04777557ef385e2f2d1f14a19d53b2ea9ca5fe107a2cdc50d7bafb8eb2"}, - {file = "blis-0.7.5-cp39-cp39-win_amd64.whl", hash = "sha256:66204a19e38986645940c887498c7b5520efb5bbc6526bf1b8a58f7d3eb37da0"}, - {file = "blis-0.7.5.tar.gz", hash = "sha256:833e01e9eaff4c01aa6e049bbc1e6acb9eca6ee513d7b35b5bf135d49705ad33"}, + {file = "blis-0.7.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:904532b38e8f93c97ba9639a0462f5a827e9a8e9fb0aaee441cbbf6d847a5bc0"}, + {file = "blis-0.7.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4bf5549f0b54359f2186e4f7d1e75136c4f313e17596f6ce2de601a033d9d44"}, + {file = "blis-0.7.6-cp310-cp310-win_amd64.whl", hash = "sha256:d0b4f2b76d81f28d1402bf69c775a9dd6ad37058ceb3ffed3da44cd951855cdf"}, + {file = "blis-0.7.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:58d051f900b0ff4cdfb0b2b3b28fede1d26f7af0cb920f48b89b8185f8d740e2"}, + {file = "blis-0.7.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc7eb12219796d18f65797d1fa402b36a03de974848c05767bc03ba0d72c512d"}, + {file = "blis-0.7.6-cp36-cp36m-win_amd64.whl", hash = "sha256:f036561d1739787e9d02e4106c340a79a519d635200c13463031f39b6e234c0b"}, + {file = "blis-0.7.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:d1f44badd1d0b1aa1d68e0990e285b3dcf320a6120709318b1cdc9b0204b8ae8"}, + {file = "blis-0.7.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7027bcdc73a80d313c1423d9b6dc381c7253f08eca7b8453a7a6ba2c49c202f7"}, + {file = "blis-0.7.6-cp37-cp37m-win_amd64.whl", hash = "sha256:dd416a08f099644bd229667d2acdbfedc50d709f8c88b4d32363eb7ab7962e1b"}, + {file = "blis-0.7.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1dcf2bb2a3223683eee7ee348c647566daadc1642a775f36ab52a8b62e6ad6a3"}, + {file = "blis-0.7.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66115b899052ded91fedfe3091295eb4da81dc2115e292ab4c5dd97d9e458e75"}, + {file = "blis-0.7.6-cp38-cp38-win_amd64.whl", hash = "sha256:1ef5b9fd08fe4efb5679d60d9e61f2ca2c36158c90ba01cbf9e46e8be473212f"}, + {file = "blis-0.7.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:762714b1d6901d628c53a11072db932aeeb01b6df2a394ec240f0a051e4e8e8e"}, + {file = "blis-0.7.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43789dc60d81692d5db4978d3eba1c9fa02e4d1e9eadad11000244609d924521"}, + {file = "blis-0.7.6-cp39-cp39-win_amd64.whl", hash = "sha256:6eb5553a9905bbc63eebeba4bf555bbabb47d029aaed8b0a4f0490a199dccba7"}, + {file = "blis-0.7.6.tar.gz", hash = "sha256:fe97b10f68a1c7b54c0e54beada84e18f4efb68dd40c906fb8748f5114743ec6"}, ] boto3 = [ - {file = "boto3-1.20.54-py3-none-any.whl", hash = "sha256:1a272a1dd36414b1626a47bb580425203be0b5a34caa117f38a5e18adf21f918"}, - {file = "boto3-1.20.54.tar.gz", hash = "sha256:8129ad42cc0120d1c63daa18512d6f0b1439e385b2b6e0fe987f116bdf795546"}, + {file = "boto3-1.21.15-py3-none-any.whl", hash = "sha256:30394729b38d5ce2f845440428a55161c6d45478044e553a12ca1acf56d7278a"}, + {file = "boto3-1.21.15.tar.gz", hash = "sha256:895489900eb882777124c3b64a13df49785cf77f7bd1504e783464fb3b4c8163"}, ] botocore = [ - {file = "botocore-1.23.54-py3-none-any.whl", hash = "sha256:06ae8076c4dcf3d72bec4d37e5f2dce4a92a18a8cdaa3bfaa6e3b7b5e30a8d7e"}, - {file = "botocore-1.23.54.tar.gz", hash = "sha256:4bb9ba16cccee5f5a2602049bc3e2db6865346b2550667f3013bdf33b0a01ceb"}, + {file = "botocore-1.24.15-py3-none-any.whl", hash = "sha256:405082f92a9e524e1aee96cbc90134668026d7da3c12f86990c91a12620ca28b"}, + {file = "botocore-1.24.15.tar.gz", hash = "sha256:fa4816e94e72111a9341204061e760bcbde74ca5d900d3f2206c2c2e8e4b56e4"}, ] cachecontrol = [ {file = "CacheControl-0.12.10-py2.py3-none-any.whl", hash = "sha256:b0d43d8f71948ef5ebdee5fe236b86c6ffc7799370453dccb0e894c20dfa487c"}, @@ -3710,47 +3712,47 @@ colorhash = [ {file = "colorhash-1.0.4.tar.gz", hash = "sha256:5460c5539b68712c97b09ba41e5200c81dce6e23f4533d0f4f8beafc3eb2fafa"}, ] coverage = [ - {file = "coverage-6.3.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeffd96882d8c06d31b65dddcf51db7c612547babc1c4c5db6a011abe9798525"}, - {file = "coverage-6.3.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:621f6ea7260ea2ffdaec64fe5cb521669984f567b66f62f81445221d4754df4c"}, - {file = "coverage-6.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:84f2436d6742c01136dd940ee158bfc7cf5ced3da7e4c949662b8703b5cd8145"}, - {file = "coverage-6.3.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de73fca6fb403dd72d4da517cfc49fcf791f74eee697d3219f6be29adf5af6ce"}, - {file = "coverage-6.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78fbb2be068a13a5d99dce9e1e7d168db880870f7bc73f876152130575bd6167"}, - {file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f5a4551dfd09c3bd12fca8144d47fe7745275adf3229b7223c2f9e29a975ebda"}, - {file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7bff3a98f63b47464480de1b5bdd80c8fade0ba2832c9381253c9b74c4153c27"}, - {file = "coverage-6.3.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a06c358f4aed05fa1099c39decc8022261bb07dfadc127c08cfbd1391b09689e"}, - {file = "coverage-6.3.1-cp310-cp310-win32.whl", hash = "sha256:9fff3ff052922cb99f9e52f63f985d4f7a54f6b94287463bc66b7cdf3eb41217"}, - {file = "coverage-6.3.1-cp310-cp310-win_amd64.whl", hash = "sha256:276b13cc085474e482566c477c25ed66a097b44c6e77132f3304ac0b039f83eb"}, - {file = "coverage-6.3.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:56c4a409381ddd7bbff134e9756077860d4e8a583d310a6f38a2315b9ce301d0"}, - {file = "coverage-6.3.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9eb494070aa060ceba6e4bbf44c1bc5fa97bfb883a0d9b0c9049415f9e944793"}, - {file = "coverage-6.3.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5e15d424b8153756b7c903bde6d4610be0c3daca3986173c18dd5c1a1625e4cd"}, - {file = "coverage-6.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61d47a897c1e91f33f177c21de897267b38fbb45f2cd8e22a710bcef1df09ac1"}, - {file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:25e73d4c81efa8ea3785274a2f7f3bfbbeccb6fcba2a0bdd3be9223371c37554"}, - {file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:fac0bcc5b7e8169bffa87f0dcc24435446d329cbc2b5486d155c2e0f3b493ae1"}, - {file = "coverage-6.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:72128176fea72012063200b7b395ed8a57849282b207321124d7ff14e26988e8"}, - {file = "coverage-6.3.1-cp37-cp37m-win32.whl", hash = "sha256:1bc6d709939ff262fd1432f03f080c5042dc6508b6e0d3d20e61dd045456a1a0"}, - {file = "coverage-6.3.1-cp37-cp37m-win_amd64.whl", hash = "sha256:618eeba986cea7f621d8607ee378ecc8c2504b98b3fdc4952b30fe3578304687"}, - {file = "coverage-6.3.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d5ed164af5c9078596cfc40b078c3b337911190d3faeac830c3f1274f26b8320"}, - {file = "coverage-6.3.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:352c68e233409c31048a3725c446a9e48bbff36e39db92774d4f2380d630d8f8"}, - {file = "coverage-6.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:448d7bde7ceb6c69e08474c2ddbc5b4cd13c9e4aa4a717467f716b5fc938a734"}, - {file = "coverage-6.3.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9fde6b90889522c220dd56a670102ceef24955d994ff7af2cb786b4ba8fe11e4"}, - {file = "coverage-6.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e647a0be741edbb529a72644e999acb09f2ad60465f80757da183528941ff975"}, - {file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6a5cdc3adb4f8bb8d8f5e64c2e9e282bc12980ef055ec6da59db562ee9bdfefa"}, - {file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:2dd70a167843b4b4b2630c0c56f1b586fe965b4f8ac5da05b6690344fd065c6b"}, - {file = "coverage-6.3.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9ad0a117b8dc2061ce9461ea4c1b4799e55edceb236522c5b8f958ce9ed8fa9a"}, - {file = "coverage-6.3.1-cp38-cp38-win32.whl", hash = "sha256:e92c7a5f7d62edff50f60a045dc9542bf939758c95b2fcd686175dd10ce0ed10"}, - {file = "coverage-6.3.1-cp38-cp38-win_amd64.whl", hash = "sha256:482fb42eea6164894ff82abbcf33d526362de5d1a7ed25af7ecbdddd28fc124f"}, - {file = "coverage-6.3.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c5b81fb37db76ebea79aa963b76d96ff854e7662921ce742293463635a87a78d"}, - {file = "coverage-6.3.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a4f923b9ab265136e57cc14794a15b9dcea07a9c578609cd5dbbfff28a0d15e6"}, - {file = "coverage-6.3.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56d296cbc8254a7dffdd7bcc2eb70be5a233aae7c01856d2d936f5ac4e8ac1f1"}, - {file = "coverage-6.3.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1245ab82e8554fa88c4b2ab1e098ae051faac5af829efdcf2ce6b34dccd5567c"}, - {file = "coverage-6.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f2b05757c92ad96b33dbf8e8ec8d4ccb9af6ae3c9e9bd141c7cc44d20c6bcba"}, - {file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9e3dd806f34de38d4c01416344e98eab2437ac450b3ae39c62a0ede2f8b5e4ed"}, - {file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d651fde74a4d3122e5562705824507e2f5b2d3d57557f1916c4b27635f8fbe3f"}, - {file = "coverage-6.3.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:704f89b87c4f4737da2860695a18c852b78ec7279b24eedacab10b29067d3a38"}, - {file = "coverage-6.3.1-cp39-cp39-win32.whl", hash = "sha256:2aed4761809640f02e44e16b8b32c1a5dee5e80ea30a0ff0912158bde9c501f2"}, - {file = "coverage-6.3.1-cp39-cp39-win_amd64.whl", hash = "sha256:9976fb0a5709988778ac9bc44f3d50fccd989987876dfd7716dee28beed0a9fa"}, - {file = "coverage-6.3.1-pp36.pp37.pp38-none-any.whl", hash = "sha256:463e52616ea687fd323888e86bf25e864a3cc6335a043fad6bbb037dbf49bbe2"}, - {file = "coverage-6.3.1.tar.gz", hash = "sha256:6c3f6158b02ac403868eea390930ae64e9a9a2a5bbfafefbb920d29258d9f2f8"}, + {file = "coverage-6.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9b27d894748475fa858f9597c0ee1d4829f44683f3813633aaf94b19cb5453cf"}, + {file = "coverage-6.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:37d1141ad6b2466a7b53a22e08fe76994c2d35a5b6b469590424a9953155afac"}, + {file = "coverage-6.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9987b0354b06d4df0f4d3e0ec1ae76d7ce7cbca9a2f98c25041eb79eec766f1"}, + {file = "coverage-6.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:26e2deacd414fc2f97dd9f7676ee3eaecd299ca751412d89f40bc01557a6b1b4"}, + {file = "coverage-6.3.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4dd8bafa458b5c7d061540f1ee9f18025a68e2d8471b3e858a9dad47c8d41903"}, + {file = "coverage-6.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:46191097ebc381fbf89bdce207a6c107ac4ec0890d8d20f3360345ff5976155c"}, + {file = "coverage-6.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6f89d05e028d274ce4fa1a86887b071ae1755082ef94a6740238cd7a8178804f"}, + {file = "coverage-6.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:58303469e9a272b4abdb9e302a780072c0633cdcc0165db7eec0f9e32f901e05"}, + {file = "coverage-6.3.2-cp310-cp310-win32.whl", hash = "sha256:2fea046bfb455510e05be95e879f0e768d45c10c11509e20e06d8fcaa31d9e39"}, + {file = "coverage-6.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:a2a8b8bcc399edb4347a5ca8b9b87e7524c0967b335fbb08a83c8421489ddee1"}, + {file = "coverage-6.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:f1555ea6d6da108e1999b2463ea1003fe03f29213e459145e70edbaf3e004aaa"}, + {file = "coverage-6.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5f4e1edcf57ce94e5475fe09e5afa3e3145081318e5fd1a43a6b4539a97e518"}, + {file = "coverage-6.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7a15dc0a14008f1da3d1ebd44bdda3e357dbabdf5a0b5034d38fcde0b5c234b7"}, + {file = "coverage-6.3.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21b7745788866028adeb1e0eca3bf1101109e2dc58456cb49d2d9b99a8c516e6"}, + {file = "coverage-6.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:8ce257cac556cb03be4a248d92ed36904a59a4a5ff55a994e92214cde15c5bad"}, + {file = "coverage-6.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b0be84e5a6209858a1d3e8d1806c46214e867ce1b0fd32e4ea03f4bd8b2e3359"}, + {file = "coverage-6.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:acf53bc2cf7282ab9b8ba346746afe703474004d9e566ad164c91a7a59f188a4"}, + {file = "coverage-6.3.2-cp37-cp37m-win32.whl", hash = "sha256:8bdde1177f2311ee552f47ae6e5aa7750c0e3291ca6b75f71f7ffe1f1dab3dca"}, + {file = "coverage-6.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:b31651d018b23ec463e95cf10070d0b2c548aa950a03d0b559eaa11c7e5a6fa3"}, + {file = "coverage-6.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:07e6db90cd9686c767dcc593dff16c8c09f9814f5e9c51034066cad3373b914d"}, + {file = "coverage-6.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2c6dbb42f3ad25760010c45191e9757e7dce981cbfb90e42feef301d71540059"}, + {file = "coverage-6.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c76aeef1b95aff3905fb2ae2d96e319caca5b76fa41d3470b19d4e4a3a313512"}, + {file = "coverage-6.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cf5cfcb1521dc3255d845d9dca3ff204b3229401994ef8d1984b32746bb45ca"}, + {file = "coverage-6.3.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8fbbdc8d55990eac1b0919ca69eb5a988a802b854488c34b8f37f3e2025fa90d"}, + {file = "coverage-6.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ec6bc7fe73a938933d4178c9b23c4e0568e43e220aef9472c4f6044bfc6dd0f0"}, + {file = "coverage-6.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:9baff2a45ae1f17c8078452e9e5962e518eab705e50a0aa8083733ea7d45f3a6"}, + {file = "coverage-6.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd9e830e9d8d89b20ab1e5af09b32d33e1a08ef4c4e14411e559556fd788e6b2"}, + {file = "coverage-6.3.2-cp38-cp38-win32.whl", hash = "sha256:f7331dbf301b7289013175087636bbaf5b2405e57259dd2c42fdcc9fcc47325e"}, + {file = "coverage-6.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:68353fe7cdf91f109fc7d474461b46e7f1f14e533e911a2a2cbb8b0fc8613cf1"}, + {file = "coverage-6.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b78e5afb39941572209f71866aa0b206c12f0109835aa0d601e41552f9b3e620"}, + {file = "coverage-6.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4e21876082ed887baed0146fe222f861b5815455ada3b33b890f4105d806128d"}, + {file = "coverage-6.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34626a7eee2a3da12af0507780bb51eb52dca0e1751fd1471d0810539cefb536"}, + {file = "coverage-6.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1ebf730d2381158ecf3dfd4453fbca0613e16eaa547b4170e2450c9707665ce7"}, + {file = "coverage-6.3.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd6fe30bd519694b356cbfcaca9bd5c1737cddd20778c6a581ae20dc8c04def2"}, + {file = "coverage-6.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:96f8a1cb43ca1422f36492bebe63312d396491a9165ed3b9231e778d43a7fca4"}, + {file = "coverage-6.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:dd035edafefee4d573140a76fdc785dc38829fe5a455c4bb12bac8c20cfc3d69"}, + {file = "coverage-6.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5ca5aeb4344b30d0bec47481536b8ba1181d50dbe783b0e4ad03c95dc1296684"}, + {file = "coverage-6.3.2-cp39-cp39-win32.whl", hash = "sha256:f5fa5803f47e095d7ad8443d28b01d48c0359484fec1b9d8606d0e3282084bc4"}, + {file = "coverage-6.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:9548f10d8be799551eb3a9c74bbf2b4934ddb330e08a73320123c07f95cc2d92"}, + {file = "coverage-6.3.2-pp36.pp37.pp38-none-any.whl", hash = "sha256:18d520c6860515a771708937d2f78f63cc47ab3b80cb78e86573b0a760161faf"}, + {file = "coverage-6.3.2.tar.gz", hash = "sha256:03e2a7826086b91ef345ff18742ee9fc47a6839ccd517061ef8fa1976e652ce9"}, ] coveralls = [ {file = "coveralls-3.3.1-py2.py3-none-any.whl", hash = "sha256:f42015f31d386b351d4226389b387ae173207058832fbf5c8ec4b40e27b16026"}, @@ -3763,8 +3765,6 @@ cryptography = [ {file = "cryptography-3.4.8-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34dae04a0dce5730d8eb7894eab617d8a70d0c97da76b905de9efb7128ad7085"}, {file = "cryptography-3.4.8-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1eb7bb0df6f6f583dd8e054689def236255161ebbcf62b226454ab9ec663746b"}, {file = "cryptography-3.4.8-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:9965c46c674ba8cc572bc09a03f4c649292ee73e1b683adb1ce81e82e9a6a0fb"}, - {file = "cryptography-3.4.8-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:3c4129fc3fdc0fa8e40861b5ac0c673315b3c902bbdc05fc176764815b43dd1d"}, - {file = "cryptography-3.4.8-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:695104a9223a7239d155d7627ad912953b540929ef97ae0c34c7b8bf30857e89"}, {file = "cryptography-3.4.8-cp36-abi3-win32.whl", hash = "sha256:21ca464b3a4b8d8e86ba0ee5045e103a1fcfac3b39319727bc0fc58c09c6aff7"}, {file = "cryptography-3.4.8-cp36-abi3-win_amd64.whl", hash = "sha256:3520667fda779eb788ea00080124875be18f2d8f0848ec00733c0ec3bb8219fc"}, {file = "cryptography-3.4.8-pp36-pypy36_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d2a6e5ef66503da51d2110edf6c403dc6b494cc0082f85db12f54e9c5d4c3ec5"}, @@ -3782,7 +3782,7 @@ cycler = [ {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-macosx_10_9_universal2.whl", hash = "sha256:2b4e27e739f09f16c7c0190f962ffe60dab39cb6a229d5c13e274d16f46a17e8"}, {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"}, @@ -3812,7 +3812,8 @@ datadog = [ {file = "datadog-0.43.0.tar.gz", hash = "sha256:1f2123083d9e1add6f238c62714b76ac2fc134d7d1c435cd82b976487b191b96"}, ] datadog-api-client = [ - {file = "datadog_api_client-1.8.0-py2.py3-none-any.whl", hash = "sha256:c0282e88f4d60bb30ff8dd12b652596d1057079e3c69e6e64e00258cb649c8e8"}, + {file = "datadog-api-client-1.10.0.tar.gz", hash = "sha256:479de54dd77c5adb5b36991214d732351a9d3730e07e7ff9b659044ad9fa06f8"}, + {file = "datadog_api_client-1.10.0-py3-none-any.whl", hash = "sha256:c3c8cca5a882e1d631c18ddec2485eabff2d84cae9cc971e2e281bf2c1bf6bd4"}, ] deprecated = [ {file = "Deprecated-1.2.13-py2.py3-none-any.whl", hash = "sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d"}, @@ -3846,8 +3847,8 @@ fbmessenger = [ {file = "fbmessenger-6.0.0.tar.gz", hash = "sha256:6e42c4588a4c942547be228886278bbc7a084e0b34799c7e6ebd786129f021e6"}, ] filelock = [ - {file = "filelock-3.4.2-py3-none-any.whl", hash = "sha256:cf0fc6a2f8d26bd900f19bf33915ca70ba4dd8c56903eeb14e1e7a2fd7590146"}, - {file = "filelock-3.4.2.tar.gz", hash = "sha256:38b4f4c989f9d06d44524df1b24bd19e167d851f19b50bf3e3559952dddc5b80"}, + {file = "filelock-3.6.0-py3-none-any.whl", hash = "sha256:f8314284bfffbdcfa0ff3d7992b023d4c628ced6feb957351d4c48d059f56bc0"}, + {file = "filelock-3.6.0.tar.gz", hash = "sha256:9cd540a9352e432c7246a48fe4e8712b10acb1df2ad1f30e8c070b82ae1fed85"}, ] fire = [ {file = "fire-0.4.0.tar.gz", hash = "sha256:c5e2b8763699d1142393a46d0e3e790c5eb2f0706082df8f647878842c216a62"}, @@ -3865,12 +3866,12 @@ flatbuffers = [ {file = "flatbuffers-2.0.tar.gz", hash = "sha256:12158ab0272375eab8db2d663ae97370c33f152b27801fa6024e1d6105fd4dd2"}, ] freezegun = [ - {file = "freezegun-1.1.0-py2.py3-none-any.whl", hash = "sha256:2ae695f7eb96c62529f03a038461afe3c692db3465e215355e1bb4b0ab408712"}, - {file = "freezegun-1.1.0.tar.gz", hash = "sha256:177f9dd59861d871e27a484c3332f35a6e3f5d14626f2bf91be37891f18927f3"}, + {file = "freezegun-1.2.0-py3-none-any.whl", hash = "sha256:93e90676da387a241a7c2ae7ae68af7b95bfe80e952d0bbf3e088342de90a38d"}, + {file = "freezegun-1.2.0.tar.gz", hash = "sha256:e19563d0b05dcab6dc8ad21c05269004a96998ce2b6b1b8131f1297ae20dd038"}, ] fsspec = [ - {file = "fsspec-2022.1.0-py3-none-any.whl", hash = "sha256:256e2be44e62430c9ca8dac2e480384b00a3c52aef4e2b0b7204163fdc861d37"}, - {file = "fsspec-2022.1.0.tar.gz", hash = "sha256:0bdd519bbf4d8c9a1d893a50b5ebacc89acd0e1fe0045d2f7b0e0c1af5990edc"}, + {file = "fsspec-2022.2.0-py3-none-any.whl", hash = "sha256:eb9c9d9aee49d23028deefffe53e87c55d3515512c63f57e893710301001449a"}, + {file = "fsspec-2022.2.0.tar.gz", hash = "sha256:20322c659538501f52f6caa73b08b2ff570b7e8ea30a86559721d090e473ad5c"}, ] future = [ {file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"}, @@ -3888,12 +3889,12 @@ gitdb = [ {file = "github3.py-1.3.0.tar.gz", hash = "sha256:15a115c18f7bfcf934dfef7ab103844eb9f620c586bad65967708926da47cbda"}, ] gitpython = [ - {file = "GitPython-3.1.26-py3-none-any.whl", hash = "sha256:26ac35c212d1f7b16036361ca5cff3ec66e11753a0d677fb6c48fa4e1a9dd8d6"}, - {file = "GitPython-3.1.26.tar.gz", hash = "sha256:fc8868f63a2e6d268fb25f481995ba185a85a66fcad126f039323ff6635669ee"}, + {file = "GitPython-3.1.27-py3-none-any.whl", hash = "sha256:5b68b000463593e05ff2b261acff0ff0972df8ab1b70d3cdbd41b546c8b8fc3d"}, + {file = "GitPython-3.1.27.tar.gz", hash = "sha256:1c885ce809e8ba2d88a29befeb385fcea06338d3640712b59ca623c220bb5704"}, ] google-api-core = [ - {file = "google-api-core-2.5.0.tar.gz", hash = "sha256:f33863a6709651703b8b18b67093514838c79f2b04d02aa501203079f24b8018"}, - {file = "google_api_core-2.5.0-py2.py3-none-any.whl", hash = "sha256:7d030edbd3a0e994d796e62716022752684e863a6df9864b6ca82a1616c2a5a6"}, + {file = "google-api-core-2.7.0.tar.gz", hash = "sha256:53fde60b5589420df2c1b4c98674ecbc217226931b713247586f71f5c0458c38"}, + {file = "google_api_core-2.7.0-py3-none-any.whl", hash = "sha256:4ef13280a8b00772f9effa92c8f798bd2b7d2637ffe7d5bc8d50356448f1840b"}, ] google-auth = [ {file = "google-auth-1.35.0.tar.gz", hash = "sha256:b7033be9028c188ee30200b204ea00ed82ea1162e8ac1df4aa6ded19a191d88e"}, @@ -3904,8 +3905,8 @@ google-auth-oauthlib = [ {file = "google_auth_oauthlib-0.4.6-py2.py3-none-any.whl", hash = "sha256:3f2a6e802eebbb6fb736a370fbf3b055edcb6b52878bf2f26330b5e041316c73"}, ] google-cloud-core = [ - {file = "google-cloud-core-2.2.2.tar.gz", hash = "sha256:7d19bf8868b410d0bdf5a03468a3f3f2db233c0ee86a023f4ecc2b7a4b15f736"}, - {file = "google_cloud_core-2.2.2-py2.py3-none-any.whl", hash = "sha256:d9cffaf86df6a876438d4e8471183bbe404c9a15de9afe60433bc7dce8cb4252"}, + {file = "google-cloud-core-2.2.3.tar.gz", hash = "sha256:89d2f7189bc6dc74de128d423ea52cc8719f0a5dbccd9ca80433f6504a20255c"}, + {file = "google_cloud_core-2.2.3-py2.py3-none-any.whl", hash = "sha256:a423852f4c36622376c8f0be509b67533690e061062368b763b92694c4ee06a7"}, ] google-cloud-storage = [ {file = "google-cloud-storage-1.44.0.tar.gz", hash = "sha256:29edbfeedd157d853049302bf5d104055c6f0cb7ef283537da3ce3f730073001"}, @@ -3962,12 +3963,12 @@ google-pasta = [ {file = "google_pasta-0.2.0-py3-none-any.whl", hash = "sha256:b32482794a366b5366a32c92a9a9201b107821889935a02b3e51f6b432ea84ed"}, ] google-resumable-media = [ - {file = "google-resumable-media-2.2.1.tar.gz", hash = "sha256:b1edfb98867c9fa25aa7af12d6468665b83c532b7349effab805a027ea8bbee5"}, - {file = "google_resumable_media-2.2.1-py2.py3-none-any.whl", hash = "sha256:fd616af31b83d48da040c8c09b6994606e1734efb8af9acc97cf5d6070e9ba72"}, + {file = "google-resumable-media-2.3.2.tar.gz", hash = "sha256:06924e8b1e79f158f0202e7dd151ad75b0ea9d59b997c850f56bdd4a5a361513"}, + {file = "google_resumable_media-2.3.2-py2.py3-none-any.whl", hash = "sha256:3c13f84813861ac8f5b6371254bdd437076bf1f3bac527a9f3fd123a70166f52"}, ] googleapis-common-protos = [ - {file = "googleapis-common-protos-1.54.0.tar.gz", hash = "sha256:a4031d6ec6c2b1b6dc3e0be7e10a1bd72fb0b18b07ef9be7b51f2c1004ce2437"}, - {file = "googleapis_common_protos-1.54.0-py2.py3-none-any.whl", hash = "sha256:e54345a2add15dc5e1a7891c27731ff347b4c33765d79b5ed7026a6c0c7cbcae"}, + {file = "googleapis-common-protos-1.55.0.tar.gz", hash = "sha256:53eb313064738f45d5ac634155ae208e121c963659627b90dfcb61ef514c03e1"}, + {file = "googleapis_common_protos-1.55.0-py2.py3-none-any.whl", hash = "sha256:183bb0356bd614c4330ad5158bc1c1bcf9bcf7f5e7f911317559fe209496eeee"}, ] greenlet = [ {file = "greenlet-1.1.2-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:58df5c2a0e293bf665a51f8a100d3e9956febfbf1d9aaf8c0677cf70218910c6"}, @@ -4027,50 +4028,50 @@ greenlet = [ {file = "greenlet-1.1.2.tar.gz", hash = "sha256:e30f5ea4ae2346e62cedde8794a56858a67b878dd79f7df76a0767e356b1744a"}, ] grpcio = [ - {file = "grpcio-1.43.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:a4e786a8ee8b30b25d70ee52cda6d1dbba2a8ca2f1208d8e20ed8280774f15c8"}, - {file = "grpcio-1.43.0-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:af9c3742f6c13575c0d4147a8454da0ff5308c4d9469462ff18402c6416942fe"}, - {file = "grpcio-1.43.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:fdac966699707b5554b815acc272d81e619dd0999f187cd52a61aef075f870ee"}, - {file = "grpcio-1.43.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e463b4aa0a6b31cf2e57c4abc1a1b53531a18a570baeed39d8d7b65deb16b7e"}, - {file = "grpcio-1.43.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f11d05402e0ac3a284443d8a432d3dfc76a6bd3f7b5858cddd75617af2d7bd9b"}, - {file = "grpcio-1.43.0-cp310-cp310-win32.whl", hash = "sha256:c36f418c925a41fccada8f7ae9a3d3e227bfa837ddbfddd3d8b0ac252d12dda9"}, - {file = "grpcio-1.43.0-cp310-cp310-win_amd64.whl", hash = "sha256:772b943f34374744f70236bbbe0afe413ed80f9ae6303503f85e2b421d4bca92"}, - {file = "grpcio-1.43.0-cp36-cp36m-linux_armv7l.whl", hash = "sha256:cbc9b83211d905859dcf234ad39d7193ff0f05bfc3269c364fb0d114ee71de59"}, - {file = "grpcio-1.43.0-cp36-cp36m-macosx_10_10_x86_64.whl", hash = "sha256:fb7229fa2a201a0c377ff3283174ec966da8f9fd7ffcc9a92f162d2e7fc9025b"}, - {file = "grpcio-1.43.0-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:17b75f220ee6923338155b4fcef4c38802b9a57bc57d112c9599a13a03e99f8d"}, - {file = "grpcio-1.43.0-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:6620a5b751b099b3b25553cfc03dfcd873cda06f9bb2ff7e9948ac7090e20f05"}, - {file = "grpcio-1.43.0-cp36-cp36m-manylinux_2_17_aarch64.whl", hash = "sha256:1898f999383baac5fcdbdef8ea5b1ef204f38dc211014eb6977ac6e55944d738"}, - {file = "grpcio-1.43.0-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:47b6821238d8978014d23b1132713dac6c2d72cbb561cf257608b1673894f90a"}, - {file = "grpcio-1.43.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80398e9fb598060fa41050d1220f5a2440fe74ff082c36dda41ac3215ebb5ddd"}, - {file = "grpcio-1.43.0-cp36-cp36m-win32.whl", hash = "sha256:0110310eff07bb69782f53b7a947490268c4645de559034c43c0a635612e250f"}, - {file = "grpcio-1.43.0-cp36-cp36m-win_amd64.whl", hash = "sha256:45401d00f2ee46bde75618bf33e9df960daa7980e6e0e7328047191918c98504"}, - {file = "grpcio-1.43.0-cp37-cp37m-linux_armv7l.whl", hash = "sha256:af78ac55933811e6a25141336b1f2d5e0659c2f568d44d20539b273792563ca7"}, - {file = "grpcio-1.43.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:8b2b9dc4d7897566723b77422e11c009a0ebd397966b165b21b89a62891a9fdf"}, - {file = "grpcio-1.43.0-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:77ef653f966934b3bfdd00e4f2064b68880eb40cf09b0b99edfa5ee22a44f559"}, - {file = "grpcio-1.43.0-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:e95b5d62ec26d0cd0b90c202d73e7cb927c369c3358e027225239a4e354967dc"}, - {file = "grpcio-1.43.0-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:04239e8f71db832c26bbbedb4537b37550a39d77681d748ab4678e58dd6455d6"}, - {file = "grpcio-1.43.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4b4a7152187a49767a47d1413edde2304c96f41f7bc92cc512e230dfd0fba095"}, - {file = "grpcio-1.43.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8cc936a29c65ab39714e1ba67a694c41218f98b6e2a64efb83f04d9abc4386b"}, - {file = "grpcio-1.43.0-cp37-cp37m-win32.whl", hash = "sha256:577e024c8dd5f27cd98ba850bc4e890f07d4b5942e5bc059a3d88843a2f48f66"}, - {file = "grpcio-1.43.0-cp37-cp37m-win_amd64.whl", hash = "sha256:138f57e3445d4a48d9a8a5af1538fdaafaa50a0a3c243f281d8df0edf221dc02"}, - {file = "grpcio-1.43.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:08cf25f2936629db062aeddbb594bd76b3383ab0ede75ef0461a3b0bc3a2c150"}, - {file = "grpcio-1.43.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:01f4b887ed703fe82ebe613e1d2dadea517891725e17e7a6134dcd00352bd28c"}, - {file = "grpcio-1.43.0-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:0aa8285f284338eb68962fe1a830291db06f366ea12f213399b520c062b01f65"}, - {file = "grpcio-1.43.0-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:0edbfeb6729aa9da33ce7e28fb7703b3754934115454ae45e8cc1db601756fd3"}, - {file = "grpcio-1.43.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:c354017819201053d65212befd1dcb65c2d91b704d8977e696bae79c47cd2f82"}, - {file = "grpcio-1.43.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50cfb7e1067ee5e00b8ab100a6b7ea322d37ec6672c0455106520b5891c4b5f5"}, - {file = "grpcio-1.43.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:57f1aeb65ed17dfb2f6cd717cc109910fe395133af7257a9c729c0b9604eac10"}, - {file = "grpcio-1.43.0-cp38-cp38-win32.whl", hash = "sha256:fa26a8bbb3fe57845acb1329ff700d5c7eaf06414c3e15f4cb8923f3a466ef64"}, - {file = "grpcio-1.43.0-cp38-cp38-win_amd64.whl", hash = "sha256:ade8b79a6b6aea68adb9d4bfeba5d647667d842202c5d8f3ba37ac1dc8e5c09c"}, - {file = "grpcio-1.43.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:124e718faf96fe44c98b05f3f475076be8b5198bb4c52a13208acf88a8548ba9"}, - {file = "grpcio-1.43.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2f96142d0abc91290a63ba203f01649e498302b1b6007c67bad17f823ecde0cf"}, - {file = "grpcio-1.43.0-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:31e6e489ccd8f08884b9349a39610982df48535881ec34f05a11c6e6b6ebf9d0"}, - {file = "grpcio-1.43.0-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:0e731f660e1e68238f56f4ce11156f02fd06dc58bc7834778d42c0081d4ef5ad"}, - {file = "grpcio-1.43.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:1f16725a320460435a8a5339d8b06c4e00d307ab5ad56746af2e22b5f9c50932"}, - {file = "grpcio-1.43.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a4b4543e13acb4806917d883d0f70f21ba93b29672ea81f4aaba14821aaf9bb0"}, - {file = "grpcio-1.43.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:594aaa0469f4fca7773e80d8c27bf1298e7bbce5f6da0f084b07489a708f16ab"}, - {file = "grpcio-1.43.0-cp39-cp39-win32.whl", hash = "sha256:5449ae564349e7a738b8c38583c0aad954b0d5d1dd3cea68953bfc32eaee11e3"}, - {file = "grpcio-1.43.0-cp39-cp39-win_amd64.whl", hash = "sha256:bdf41550815a831384d21a498b20597417fd31bd084deb17d31ceb39ad9acc79"}, - {file = "grpcio-1.43.0.tar.gz", hash = "sha256:735d9a437c262ab039d02defddcb9f8f545d7009ae61c0114e19dda3843febe5"}, + {file = "grpcio-1.44.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:11f811c0fffd84fca747fbc742464575e5eb130fd4fb4d6012ccc34febd001db"}, + {file = "grpcio-1.44.0-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:9a86a91201f8345502ea81dee0a55ae13add5fafadf109b17acd858fe8239651"}, + {file = "grpcio-1.44.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:5f3c54ebb5d9633a557335c01d88d3d4928e9b1b131692283b6184da1edbec0b"}, + {file = "grpcio-1.44.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3d47553b8e86ab1e59b0185ba6491a187f94a0239f414c8fc867a22b0405b798"}, + {file = "grpcio-1.44.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1e22d3a510438b7f3365c0071b810672d09febac6e8ca8a47eab657ae5f347b"}, + {file = "grpcio-1.44.0-cp310-cp310-win32.whl", hash = "sha256:41036a574cab3468f24d41d6ed2b52588fb85ed60f8feaa925d7e424a250740b"}, + {file = "grpcio-1.44.0-cp310-cp310-win_amd64.whl", hash = "sha256:4ee51964edfd0a1293a95bb0d72d134ecf889379d90d2612cbf663623ce832b4"}, + {file = "grpcio-1.44.0-cp36-cp36m-linux_armv7l.whl", hash = "sha256:e2149077d71e060678130644670389ddf1491200bcea16c5560d4ccdc65e3f2e"}, + {file = "grpcio-1.44.0-cp36-cp36m-macosx_10_10_x86_64.whl", hash = "sha256:0ac72d4b953b76924f8fa21436af060d7e6d8581e279863f30ee14f20751ac27"}, + {file = "grpcio-1.44.0-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:5c30a9a7d3a05920368a60b080cbbeaf06335303be23ac244034c71c03a0fd24"}, + {file = "grpcio-1.44.0-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:05467acd391e3fffb05991c76cb2ed2fa1309d0e3815ac379764bc5670b4b5d4"}, + {file = "grpcio-1.44.0-cp36-cp36m-manylinux_2_17_aarch64.whl", hash = "sha256:b81dc7894062ed2d25b74a2725aaa0a6895ce97ce854f432fe4e87cad5a07316"}, + {file = "grpcio-1.44.0-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:46d4843192e7d36278884282e100b8f305cf37d1b3d8c6b4f736d4454640a069"}, + {file = "grpcio-1.44.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:898c159148f27e23c08a337fb80d31ece6b76bb24f359d83929460d813665b74"}, + {file = "grpcio-1.44.0-cp36-cp36m-win32.whl", hash = "sha256:b8d852329336c584c636caa9c2db990f3a332b19bc86a80f4646b58d27c142db"}, + {file = "grpcio-1.44.0-cp36-cp36m-win_amd64.whl", hash = "sha256:790d7493337558ae168477d1be3178f4c9b8f91d8cd9b8b719d06fd9b2d48836"}, + {file = "grpcio-1.44.0-cp37-cp37m-linux_armv7l.whl", hash = "sha256:cd61b52d9cf8fcf8d9628c0b640b9e44fdc5e93d989cc268086a858540ed370c"}, + {file = "grpcio-1.44.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:14eefcf623890f3f7dd7831decd2a2116652b5ce1e0f1d4b464b8f52110743b0"}, + {file = "grpcio-1.44.0-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:bebe90b8020b4248e5a2076b56154cc6ff45691bbbe980579fc9db26717ac968"}, + {file = "grpcio-1.44.0-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:89b390b1c0de909965280d175c53128ce2f0f4f5c0f011382243dd7f2f894060"}, + {file = "grpcio-1.44.0-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:c122dac5cb299b8ad7308d61bd9fe0413de13b0347cce465398436b3fdf1f609"}, + {file = "grpcio-1.44.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6641a28cc826a92ef717201cca9a035c34a0185e38b0c93f3ce5f01a01a1570a"}, + {file = "grpcio-1.44.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdb0a3e0e64843441793923d9532a3a23907b07b2a1e0a7a31f186dc185bb772"}, + {file = "grpcio-1.44.0-cp37-cp37m-win32.whl", hash = "sha256:be857b7ec2ac43455156e6ba89262f7d7ae60227049427d01a3fecd218a3f88d"}, + {file = "grpcio-1.44.0-cp37-cp37m-win_amd64.whl", hash = "sha256:f6a9cf0e77f72f2ac30c9c6e086bc7446c984c51bebc6c7f50fbcd718037edba"}, + {file = "grpcio-1.44.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:19e54f0c7083c8332b5a75a9081fc5127f1dbb67b6c1a32bd7fe896ef0934918"}, + {file = "grpcio-1.44.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:bfd36b959c3c4e945119387baed1414ea46f7116886aa23de0172302b49d7ff1"}, + {file = "grpcio-1.44.0-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:ccd388b8f37b19d06e4152189726ce309e36dc03b53f2216a4ea49f09a7438e6"}, + {file = "grpcio-1.44.0-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:9075c0c003c1ff14ebce8f0ba55cc692158cb55c68da09cf8b0f9fc5b749e343"}, + {file = "grpcio-1.44.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:e898194f76212facbaeb6d7545debff29351afa23b53ff8f0834d66611af5139"}, + {file = "grpcio-1.44.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8fa6584046a7cf281649975a363673fa5d9c6faf9dc923f261cc0e56713b5892"}, + {file = "grpcio-1.44.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36a7bdd6ef9bca050c7ade8cba5f0e743343ea0756d5d3d520e915098a9dc503"}, + {file = "grpcio-1.44.0-cp38-cp38-win32.whl", hash = "sha256:dc3290d0411ddd2bd49adba5793223de8de8b01588d45e9376f1a9f7d25414f4"}, + {file = "grpcio-1.44.0-cp38-cp38-win_amd64.whl", hash = "sha256:13343e7b840c20f43b44f0e6d3bbdc037c964f0aec9735d7cb685c407731c9ff"}, + {file = "grpcio-1.44.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:c5c2f8417d13386e18ccc8c61467cb6a6f9667a1ff7000a2d7d378e5d7df693f"}, + {file = "grpcio-1.44.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:cf220199b7b4992729ad4d55d5d3f652f4ccfe1a35b5eacdbecf189c245e1859"}, + {file = "grpcio-1.44.0-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4201c597e5057a9bfef9ea5777a6d83f6252cb78044db7d57d941ec2300734a5"}, + {file = "grpcio-1.44.0-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:e2de61005118ae59d48d5d749283ebfd1ba4ca68cc1000f8a395cd2bdcff7ceb"}, + {file = "grpcio-1.44.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:871078218fa9117e2a378678f327e32fda04e363ed6bc0477275444273255d4d"}, + {file = "grpcio-1.44.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a8d610b7b557a7609fecee80b6dd793ecb7a9a3c3497fbdce63ce7d151cdd705"}, + {file = "grpcio-1.44.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4fcb53e4eb8c271032c91b8981df5fc1bb974bc73e306ec2c27da41bd95c44b5"}, + {file = "grpcio-1.44.0-cp39-cp39-win32.whl", hash = "sha256:e50ddea6de76c09b656df4b5a55ae222e2a56e625c44250e501ff3c904113ec1"}, + {file = "grpcio-1.44.0-cp39-cp39-win_amd64.whl", hash = "sha256:d2ec124a986093e26420a5fb10fa3f02b2c232f924cdd7b844ddf7e846c020cd"}, + {file = "grpcio-1.44.0.tar.gz", hash = "sha256:4bae1c99896045d3062ab95478411c8d5a52cb84b91a1517312629fa6cfeb50e"}, ] h11 = [ {file = "h11-0.12.0-py3-none-any.whl", hash = "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6"}, @@ -4099,30 +4100,40 @@ httpcore = [ {file = "httpcore-0.14.7.tar.gz", hash = "sha256:7503ec1c0f559066e7e39bc4003fd2ce023d01cf51793e3c173b864eb456ead1"}, ] httptools = [ - {file = "httptools-0.3.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4137137de8976511a392e27bfdcf231bd926ac13d375e0414e927b08217d779e"}, - {file = "httptools-0.3.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9f475b642c48b1b78584bdd12a5143e2c512485664331eade9c29ef769a17598"}, - {file = "httptools-0.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4687dfc116a9f1eb22a7d797f0dc6f6e17190d406ca4e729634b38aa98044b17"}, - {file = "httptools-0.3.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:72ee0e3fb9c6437ab3ae34e9abee67fcee6876f4f58504e3f613dd5882aafdb7"}, - {file = "httptools-0.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:3787c1f46e9722ef7f07ea5c76b0103037483d1b12e34a02c53ceca5afa4e09a"}, - {file = "httptools-0.3.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:c0ac2e0ce6733c55858932e7d37fcc7b67ba6bb23e9648593c55f663de031b93"}, - {file = "httptools-0.3.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79717080dc3f8b1eeb7f820b9b81528acbc04be6041f323fdd97550da2062575"}, - {file = "httptools-0.3.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:eda95634027200f4b2a6d499e7c2e7fa9b8ee57e045dfda26958ea0af27c070b"}, - {file = "httptools-0.3.0-cp36-cp36m-win_amd64.whl", hash = "sha256:3f82eb106e1474c63dba36a176067e65b48385f4cecddf3616411aa5d1fbdfec"}, - {file = "httptools-0.3.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c14576b737d9e6e4f2a86af04918dbe9b62f57ce8102a8695c9a382dbe405c7f"}, - {file = "httptools-0.3.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:113816f9af7dcfc4aa71ebb5354d77365f666ecf96ac7ff2aa1d24b6bca44165"}, - {file = "httptools-0.3.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b8ac7dee63af4346e02b1e6d32202e3b5b3706a9928bec6da6d7a5b066217422"}, - {file = "httptools-0.3.0-cp37-cp37m-win_amd64.whl", hash = "sha256:04114db99605c9b56ea22a8ec4d7b1485b908128ed4f4a8f6438489c428da794"}, - {file = "httptools-0.3.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6e676bc3bb911b11f3d7e2144b9a53600bf6b9b21e0e4437aa308e1eef094d97"}, - {file = "httptools-0.3.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cdc3975db86c29817e6d13df14e037c931fc893a710fb71097777a4147090068"}, - {file = "httptools-0.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8ac842df4fc3952efa7820b277961ea55e068bbc54cb59a0820400de7ae358d8"}, - {file = "httptools-0.3.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:47dba2345aaa01b87e4981e8756af441349340708d5b60712c98c55a4d28f4af"}, - {file = "httptools-0.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:5a836bd85ae1fb4304f674808488dae403e136d274aa5bafd0e6ee456f11c371"}, - {file = "httptools-0.3.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1a8f26327023fa1a947d36e60a0582149e182fbbc949c8a65ec8665754dbbe69"}, - {file = "httptools-0.3.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:32a10a5903b5bc0eb647d01cd1e95bec3bb614a9bf53f0af1e01360b2debdf81"}, - {file = "httptools-0.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21e948034f70e47c8abfa2d5e6f1a5661f87a2cddc7bcc70f61579cc87897c70"}, - {file = "httptools-0.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:074afd8afdeec0fa6786cd4a1676e0c0be23dc9a017a86647efa6b695168104f"}, - {file = "httptools-0.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:2119fa619a4c53311f594f25c0205d619350fcb32140ec5057f861952e9b2b4f"}, - {file = "httptools-0.3.0.tar.gz", hash = "sha256:3f9b4856d46ba1f0c850f4e84b264a9a8b4460acb20e865ec00978ad9fbaa4cf"}, + {file = "httptools-0.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcddfe70553be717d9745990dfdb194e22ee0f60eb8f48c0794e7bfeda30d2d5"}, + {file = "httptools-0.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1ee0b459257e222b878a6c09ccf233957d3a4dcb883b0847640af98d2d9aac23"}, + {file = "httptools-0.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ceafd5e960b39c7e0d160a1936b68eb87c5e79b3979d66e774f0c77d4d8faaed"}, + {file = "httptools-0.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fdb9f9ed79bc6f46b021b3319184699ba1a22410a82204e6e89c774530069683"}, + {file = "httptools-0.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:abe829275cdd4174b4c4e65ad718715d449e308d59793bf3a931ee1bf7e7b86c"}, + {file = "httptools-0.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7af6bdbd21a2a25d6784f6d67f44f5df33ef39b6159543b9f9064d365c01f919"}, + {file = "httptools-0.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:5d1fe6b6661022fd6cac541f54a4237496b246e6f1c0a6b41998ee08a1135afe"}, + {file = "httptools-0.4.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:48e48530d9b995a84d1d89ae6b3ec4e59ea7d494b150ac3bbc5e2ac4acce92cd"}, + {file = "httptools-0.4.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a113789e53ac1fa26edf99856a61e4c493868e125ae0dd6354cf518948fbbd5c"}, + {file = "httptools-0.4.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8e2eb957787cbb614a0f006bfc5798ff1d90ac7c4dd24854c84edbdc8c02369e"}, + {file = "httptools-0.4.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:7ee9f226acab9085037582c059d66769862706e8e8cd2340470ceb8b3850873d"}, + {file = "httptools-0.4.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:701e66b59dd21a32a274771238025d58db7e2b6ecebbab64ceff51b8e31527ae"}, + {file = "httptools-0.4.0-cp36-cp36m-win_amd64.whl", hash = "sha256:6a1a7dfc1f9c78a833e2c4904757a0f47ce25d08634dd2a52af394eefe5f9777"}, + {file = "httptools-0.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:903f739c9fb78dab8970b0f3ea51f21955b24b45afa77b22ff0e172fc11ef111"}, + {file = "httptools-0.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54bbd295f031b866b9799dd39cb45deee81aca036c9bff9f58ca06726f6494f1"}, + {file = "httptools-0.4.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3194f6d6443befa8d4db16c1946b2fc428a3ceb8ab32eb6f09a59f86104dc1a0"}, + {file = "httptools-0.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:cd1295f52971097f757edfbfce827b6dbbfb0f7a74901ee7d4933dff5ad4c9af"}, + {file = "httptools-0.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:20a45bcf22452a10fa8d58b7dbdb474381f6946bf5b8933e3662d572bc61bae4"}, + {file = "httptools-0.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d1f27bb0f75bef722d6e22dc609612bfa2f994541621cd2163f8c943b6463dfe"}, + {file = "httptools-0.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:7f7bfb74718f52d5ed47d608d507bf66d3bc01d4a8b3e6dd7134daaae129357b"}, + {file = "httptools-0.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a522d12e2ddbc2e91842ffb454a1aeb0d47607972c7d8fc88bd0838d97fb8a2a"}, + {file = "httptools-0.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2db44a0b294d317199e9f80123e72c6b005c55b625b57fae36de68670090fa48"}, + {file = "httptools-0.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c286985b5e194ca0ebb2908d71464b9be8f17cc66d6d3e330e8d5407248f56ad"}, + {file = "httptools-0.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d3a4e165ca6204f34856b765d515d558dc84f1352033b8721e8d06c3e44930c3"}, + {file = "httptools-0.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:72aa3fbe636b16d22e04b5a9d24711b043495e0ecfe58080addf23a1a37f3409"}, + {file = "httptools-0.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:9967d9758df505975913304c434cb9ab21e2c609ad859eb921f2f615a038c8de"}, + {file = "httptools-0.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f72b5d24d6730035128b238decdc4c0f2104b7056a7ca55cf047c106842ec890"}, + {file = "httptools-0.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:29bf97a5c532da9c7a04de2c7a9c31d1d54f3abd65a464119b680206bbbb1055"}, + {file = "httptools-0.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:98993805f1e3cdb53de4eed02b55dcc953cdf017ba7bbb2fd89226c086a6d855"}, + {file = "httptools-0.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d9b90bf58f3ba04e60321a23a8723a1ff2a9377502535e70495e5ada8e6e6722"}, + {file = "httptools-0.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1a99346ebcb801b213c591540837340bdf6fd060a8687518d01c607d338b7424"}, + {file = "httptools-0.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:645373c070080e632480a3d251d892cb795be3d3a15f86975d0f1aca56fd230d"}, + {file = "httptools-0.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:34d2903dd2a3dd85d33705b6fde40bf91fc44411661283763fd0746723963c83"}, + {file = "httptools-0.4.0.tar.gz", hash = "sha256:2c9a930c378b3d15d6b695fb95ebcff81a7395b4f9775c4f10a076beb0b2c1ff"}, ] httpx = [ {file = "httpx-0.21.3-py3-none-any.whl", hash = "sha256:df9a0fd43fa79dbab411d83eb1ea6f7a525c96ad92e60c2d7f40388971b25777"}, @@ -4141,8 +4152,8 @@ idna = [ {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"}, ] importlib-metadata = [ - {file = "importlib_metadata-4.11.0-py3-none-any.whl", hash = "sha256:6affcdb3aec542dd98df8211e730bba6c5f2bec8288d47bacacde898f548c9ad"}, - {file = "importlib_metadata-4.11.0.tar.gz", hash = "sha256:9e5e553bbba1843cb4a00823014b907616be46ee503d2b9ba001d214a8da218f"}, + {file = "importlib_metadata-4.11.2-py3-none-any.whl", hash = "sha256:d16e8c1deb60de41b8e8ed21c1a7b947b0bc62fab7e1d470bcdf331cea2e6735"}, + {file = "importlib_metadata-4.11.2.tar.gz", hash = "sha256:b36ffa925fe3139b2f6ff11d6925ffd4fa7bc47870165e3ac260ac7b4f91e6ac"}, ] incremental = [ {file = "incremental-21.3.0-py2.py3-none-any.whl", hash = "sha256:92014aebc6a20b78a8084cdd5645eeaa7f74b8933f70fa3ada2cfbd1e3b54321"}, @@ -4265,60 +4276,46 @@ markdown = [ {file = "Markdown-3.3.6.tar.gz", hash = "sha256:76df8ae32294ec39dcf89340382882dfa12975f87f45c3ed1ecdb1e8cefc7006"}, ] markupsafe = [ - {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-win32.whl", hash = "sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win32.whl", hash = "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win32.whl", hash = "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8"}, - {file = "MarkupSafe-2.0.1.tar.gz", hash = "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3028252424c72b2602a323f70fbf50aa80a5d3aa616ea6add4ba21ae9cc9da4c"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:290b02bab3c9e216da57c1d11d2ba73a9f73a614bbdcc027d299a60cdfabb11a"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e104c0c2b4cd765b4e83909cde7ec61a1e313f8a75775897db321450e928cce"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24c3be29abb6b34052fd26fc7a8e0a49b1ee9d282e3665e8ad09a0a68faee5b3"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:204730fd5fe2fe3b1e9ccadb2bd18ba8712b111dcabce185af0b3b5285a7c989"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d3b64c65328cb4cd252c94f83e66e3d7acf8891e60ebf588d7b493a55a1dbf26"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:96de1932237abe0a13ba68b63e94113678c379dca45afa040a17b6e1ad7ed076"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:75bb36f134883fdbe13d8e63b8675f5f12b80bb6627f7714c7d6c5becf22719f"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-win32.whl", hash = "sha256:4056f752015dfa9828dce3140dbadd543b555afb3252507348c493def166d454"}, + {file = "MarkupSafe-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:d4e702eea4a2903441f2735799d217f4ac1b55f7d8ad96ab7d4e25417cb0827c"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:f0eddfcabd6936558ec020130f932d479930581171368fd728efcfb6ef0dd357"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ddea4c352a488b5e1069069f2f501006b1a4362cb906bee9a193ef1245a7a61"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:09c86c9643cceb1d87ca08cdc30160d1b7ab49a8a21564868921959bd16441b8"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a0a0abef2ca47b33fb615b491ce31b055ef2430de52c5b3fb19a4042dbc5cadb"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:736895a020e31b428b3382a7887bfea96102c529530299f426bf2e636aacec9e"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:679cbb78914ab212c49c67ba2c7396dc599a8479de51b9a87b174700abd9ea49"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:84ad5e29bf8bab3ad70fd707d3c05524862bddc54dc040982b0dbcff36481de7"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-win32.whl", hash = "sha256:8da5924cb1f9064589767b0f3fc39d03e3d0fb5aa29e0cb21d43106519bd624a"}, + {file = "MarkupSafe-2.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:454ffc1cbb75227d15667c09f164a0099159da0c1f3d2636aa648f12675491ad"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:142119fb14a1ef6d758912b25c4e803c3ff66920635c44078666fe7cc3f8f759"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b2a5a856019d2833c56a3dcac1b80fe795c95f401818ea963594b345929dffa7"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d1fb9b2eec3c9714dd936860850300b51dbaa37404209c8d4cb66547884b7ed"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:62c0285e91414f5c8f621a17b69fc0088394ccdaa961ef469e833dbff64bd5ea"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fc3150f85e2dbcf99e65238c842d1cfe69d3e7649b19864c1cc043213d9cd730"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f02cf7221d5cd915d7fa58ab64f7ee6dd0f6cddbb48683debf5d04ae9b1c2cc1"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5653619b3eb5cbd35bfba3c12d575db2a74d15e0e1c08bf1db788069d410ce8"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7d2f5d97fcbd004c03df8d8fe2b973fe2b14e7bfeb2cfa012eaa8759ce9a762f"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-win32.whl", hash = "sha256:3cace1837bc84e63b3fd2dfce37f08f8c18aeb81ef5cf6bb9b51f625cb4e6cd8"}, + {file = "MarkupSafe-2.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:fabbe18087c3d33c5824cb145ffca52eccd053061df1d79d4b66dafa5ad2a5ea"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:023af8c54fe63530545f70dd2a2a7eed18d07a9a77b94e8bf1e2ff7f252db9a3"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d66624f04de4af8bbf1c7f21cc06649c1c69a7f84109179add573ce35e46d448"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c532d5ab79be0199fa2658e24a02fce8542df196e60665dd322409a03db6a52c"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e67ec74fada3841b8c5f4c4f197bea916025cb9aa3fe5abf7d52b655d042f956"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30c653fde75a6e5eb814d2a0a89378f83d1d3f502ab710904ee585c38888816c"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:961eb86e5be7d0973789f30ebcf6caab60b844203f4396ece27310295a6082c7"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:598b65d74615c021423bd45c2bc5e9b59539c875a9bdb7e5f2a6b92dfcfc268d"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:599941da468f2cf22bf90a84f6e2a65524e87be2fce844f96f2dd9a6c9d1e635"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-win32.whl", hash = "sha256:e6f7f3f41faffaea6596da86ecc2389672fa949bd035251eab26dc6697451d05"}, + {file = "MarkupSafe-2.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:b8811d48078d1cf2a6863dafb896e68406c5f513048451cd2ded0473133473c7"}, + {file = "MarkupSafe-2.1.0.tar.gz", hash = "sha256:80beaf63ddfbc64a0452b841d8036ca0611e049650e20afcb882f5d3c266d65f"}, ] matplotlib = [ {file = "matplotlib-3.3.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:672960dd114e342b7c610bf32fb99d14227f29919894388b41553217457ba7ef"}, @@ -4484,7 +4481,7 @@ multidict = [ {file = "multidict-5.2.0.tar.gz", hash = "sha256:0dd1c93edb444b33ba2274b66f63def8a327d607c6c790772f448a53b6ea59ce"}, ] murmurhash = [ - {file = "murmurhash-1.0.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1431d817e1fff1ed35f8dc54dd5b4d70165ec98076de8aca351805f8037293f3"}, + {file = "murmurhash-1.0.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a814d559afe2a97ad40accf21ce96e8b04a3ff5a08f80c02b7acd427dbb7d567"}, {file = "murmurhash-1.0.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c7b8cc4a8db1c821b80f8ca70a25c3166b14d68ecef8693a117c6a0b1d74ace"}, {file = "murmurhash-1.0.6-cp310-cp310-win_amd64.whl", hash = "sha256:e40790fdaf65213d70da4ed9229f16f6d6376310dc8fc23eacc98e6151c6ae7e"}, {file = "murmurhash-1.0.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a78d53f047c3410ce4c589d9b47090f628f844ed5694418144e63cfe7f3da7e9"}, @@ -4684,7 +4681,7 @@ pluggy = [ {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, ] preshed = [ - {file = "preshed-3.0.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:66a71ced487516cf81fd0431a3a843514262ae2f33e9a7688b87562258fa75d5"}, + {file = "preshed-3.0.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a9683730127658b531120b4ed5cff1f2a567318ab75e9ab0f22cc84ae1486c23"}, {file = "preshed-3.0.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c98f725d8478f3ade4ab1ea00f50a92d2d9406d37276bc46fd8bab1d47452c4"}, {file = "preshed-3.0.6-cp310-cp310-win_amd64.whl", hash = "sha256:ea8aa9610837e907e8442e79300df0a861bfdb4dcaf026a5d9642a688ad04815"}, {file = "preshed-3.0.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e03ae3eee961106a517fcd827b5a7c51f7317236b3e665c989054ab8dc381d28"}, @@ -5080,8 +5077,8 @@ python-engineio = [ {file = "python_engineio-4.3.1-py3-none-any.whl", hash = "sha256:85986067cb9f7695347954d4e03491f7d45152c5428c07109a9707e04e8942cb"}, ] python-socketio = [ - {file = "python-socketio-5.5.1.tar.gz", hash = "sha256:ac8e64d59a15d1c31a4fe8434f4ff16d0f640c824ba517dce7ca99e95f0cd36a"}, - {file = "python_socketio-5.5.1-py3-none-any.whl", hash = "sha256:d0b98474064ac239a618649ca67f5288827705d36bd5f7615a473b37965baf61"}, + {file = "python-socketio-5.5.2.tar.gz", hash = "sha256:6213f7dfbb87e554472d11151f96bae9059854aa88e4a1e0fa6e97cca1c3fcf4"}, + {file = "python_socketio-5.5.2-py3-none-any.whl", hash = "sha256:5a1b173a4c3471bed363c502a93b36a02e2a29847645c5557237b3359d49caf0"}, ] pytz = [ {file = "pytz-2021.3-py2.py3-none-any.whl", hash = "sha256:3672058bc3453457b622aab7a1c3bfd5ab0bdae451512f6cf25f64ed37f5b87c"}, @@ -5126,8 +5123,8 @@ randomname = [ {file = "randomname-0.1.5.tar.gz", hash = "sha256:e10d14ea10895ee5bc417bdcc6d955e0b586f3bc67094ab87afcf8dcac23ab92"}, ] rasa-sdk = [ - {file = "rasa-sdk-3.0.5.tar.gz", hash = "sha256:8b7862256e37af1cc478f7055d361501c12acc1ee9a65367c0b4c0ae18689610"}, - {file = "rasa_sdk-3.0.5-py3-none-any.whl", hash = "sha256:13530a1a2587badef39af4e56297e5ed1c78d604515b36a800305f0bc1019b05"}, + {file = "rasa-sdk-3.0.6.tar.gz", hash = "sha256:ed17e23105e0424bb9dd8844a7e8df3a3bea57afa0d95b7b79737b976ed71454"}, + {file = "rasa_sdk-3.0.6-py3-none-any.whl", hash = "sha256:0299f4471acbff61036e6914789af3dac1438e21b927f0870943aec2c173b636"}, ] redis = [ {file = "redis-3.5.3-py2.py3-none-any.whl", hash = "sha256:432b788c4530cfe16d8d943a09d40ca6c16149727e4afe8c2c9d5580c59d9f24"}, @@ -5236,8 +5233,8 @@ rsa = [ {file = "ruamel.yaml.clib-0.2.6.tar.gz", hash = "sha256:4ff604ce439abb20794f05613c374759ce10e3595d1867764dd1ae675b85acbd"}, ] s3transfer = [ - {file = "s3transfer-0.5.1-py3-none-any.whl", hash = "sha256:25c140f5c66aa79e1ac60be50dcd45ddc59e83895f062a3aab263b870102911f"}, - {file = "s3transfer-0.5.1.tar.gz", hash = "sha256:69d264d3e760e569b78aaa0f22c97e955891cd22e32b10c51f784eeda4d9d10a"}, + {file = "s3transfer-0.5.2-py3-none-any.whl", hash = "sha256:7a6f4c4d1fdb9a2b640244008e142cbc2cd3ae34b386584ef044dd0f27101971"}, + {file = "s3transfer-0.5.2.tar.gz", hash = "sha256:95c58c194ce657a5f4fb0b9e60a84968c808888aed628cd98ab8771fe1db98ed"}, ] sacremoses = [ {file = "sacremoses-0.0.47-py2.py3-none-any.whl", hash = "sha256:7622c6e9fe12d45b7acf4528451bd054c1557c1f6779398f9cd9f28332d92a0b"}, @@ -5412,71 +5409,70 @@ sortedcontainers = [ {file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"}, ] spacy = [ - {file = "spacy-3.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f7575f95a102490006db76c1280719cfb02d609f364bd59c58f6dcde2060a952"}, - {file = "spacy-3.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2059b2eba76d7ef978785e802f40f9f0ec233c2a0cb5949b7d32d1f14447e2da"}, - {file = "spacy-3.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:371296bf963d6c737814851e8bc09d8bd2855cbeb8fdd531c3af7c9d316ac3de"}, - {file = "spacy-3.2.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:39ed2a2b9db90c920aa45a455d543b92bf12bb8b3a2fedf7aaf34d80a206b662"}, - {file = "spacy-3.2.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e2b504b737a798184c456cb468ef92653406f8281be3768e04ea1f2fce8ac4f"}, - {file = "spacy-3.2.2-cp36-cp36m-win_amd64.whl", hash = "sha256:132a61a36b19ea15c352b9145c44f3172f690b7616257af08a90b64983660925"}, - {file = "spacy-3.2.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a44c6c0b64df8256593aba0fcba77148dcc799ca3fa4c0979cc2473f869407e4"}, - {file = "spacy-3.2.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f3ecab621993e09f66731aa53bb75986ef544bdd78c0af6bd7d8cd60e9bd601"}, - {file = "spacy-3.2.2-cp37-cp37m-win_amd64.whl", hash = "sha256:8dec08d56e68852308158288b368fe4f188c720ac0380ba34e898f820f5a71fd"}, - {file = "spacy-3.2.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9531d4e9ebe402f0e6b2ca2658eec5dd3a2f83300c28bdb9b3ec20c9927af53a"}, - {file = "spacy-3.2.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e460c33295c6a8876f07ba9bd3db142bf36796bef0d1f6ccc4c48d354371d375"}, - {file = "spacy-3.2.2-cp38-cp38-win_amd64.whl", hash = "sha256:4026a21615a56b763c477360b14c1fc6e29e0e74ad5f3d1262e3786c1996e2ed"}, - {file = "spacy-3.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0f0bb21ade8f8bda88d7ca7b6d74e0e61354ebe33f8a53fb5f0e19e5d596b254"}, - {file = "spacy-3.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b524a93068a85d2120ca66ea1ae1614e5321097de2ddb25c1e4b1f084fb3e47"}, - {file = "spacy-3.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:fb4a5a3a3fd9bf450de92a6e24fe0925b40df8cffb03a2c463b2cc096d77bfb9"}, - {file = "spacy-3.2.2.tar.gz", hash = "sha256:b3d9a361e1e3c1c1ad0f7f244f2687face420fe2d642d92989cd357944a7d70f"}, + {file = "spacy-3.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d3f68b75e2a8d848c252cb2859356c4081b69b79e9411b1f89ee5bab96bd0bfc"}, + {file = "spacy-3.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:12e912f00ee28c56146620438f2f0c6c157ff180ba15f6538a7e8d8ed5b0aeb7"}, + {file = "spacy-3.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:eed6979fd154f021a84f20f6caefe151234f6746050b1518925751a46345c4bb"}, + {file = "spacy-3.2.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f197d4aeb1cfb297127ac9922b56a3d4faf542603a1f5e0fdf03dd9480f58960"}, + {file = "spacy-3.2.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4877abc0de65b88cc8ca9bb9d51b51d27c06e09aeb52de16f74c06f4c50e6900"}, + {file = "spacy-3.2.3-cp36-cp36m-win_amd64.whl", hash = "sha256:82d1b10db7490fda0a329bcff83a4c01611578ce5bc63a21e2445a723dccf026"}, + {file = "spacy-3.2.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4273b3368337c001c02767a8afcd5ea19309f7f0a3cfa7f3a4eb19965ca83555"}, + {file = "spacy-3.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c2af1665cc4d9db7b945ec2c197bc5509901ee2779c234c6aed5e6a6c86bac3a"}, + {file = "spacy-3.2.3-cp37-cp37m-win_amd64.whl", hash = "sha256:6e5c5ec3563ab749f2cb5e974ea1b7e9c7e8e99fcf8da2d83dc65e90443a231f"}, + {file = "spacy-3.2.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4e78951016169efbbc11e251ace84bb228e8ee946910f22f7751d0ea9d60802c"}, + {file = "spacy-3.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:337f932f5a7ac138d8e376836d1cdf7d225fa594cda84da570af867f36463932"}, + {file = "spacy-3.2.3-cp38-cp38-win_amd64.whl", hash = "sha256:2a23acee1499b6f2f09c47f4180cf24a4d92c50fcb20f541cf5dab78ebec9791"}, + {file = "spacy-3.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1bc4980b3bd8245d5f0a1e09af9a5f4c4e7a33ce617fb5722dc2363cc384befd"}, + {file = "spacy-3.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7064d89069c6676111542e68f198e86d64527bb04f910cdcd6b0f72467da819c"}, + {file = "spacy-3.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:0f31cbc261d5b5538083c474a3bcd688eebd0a18fb0a7ec4e4848b68912f896d"}, + {file = "spacy-3.2.3.tar.gz", hash = "sha256:25d033fc07b8fbfc9bdd37b770b8a586dc414dbd603128449af32576a3891673"}, ] spacy-legacy = [ - {file = "spacy-legacy-3.0.8.tar.gz", hash = "sha256:b4725c5c161f0685ab4fce3fc912bc68aefdb7e102ba9848e852bb5842256c2f"}, - {file = "spacy_legacy-3.0.8-py2.py3-none-any.whl", hash = "sha256:eb37a3540bb461b5fe9348d4976784f18a0e345982e41e2c5c7cd8229889e825"}, + {file = "spacy-legacy-3.0.9.tar.gz", hash = "sha256:4f7dcbc4e6c8e8cb4eadbb009f9c0a1a2a67442e0032c8d6776c9470c3759903"}, + {file = "spacy_legacy-3.0.9-py2.py3-none-any.whl", hash = "sha256:dfd58b0cc65b3596cb06f7b95e7bf4fff34668297c59eb179eb050db07b199df"}, ] spacy-loggers = [ {file = "spacy-loggers-1.0.1.tar.gz", hash = "sha256:17d0e249b2e6c6546c49fc6561a0a685f91a8edbf24a5b2b7759ead443c74654"}, {file = "spacy_loggers-1.0.1-py3-none-any.whl", hash = "sha256:5e610c980efb831fa428c24fd659e5dd850ea6140c9ed987efe0e8d26df3ee7c"}, ] sqlalchemy = [ - {file = "SQLAlchemy-1.4.31-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:c3abc34fed19fdeaead0ced8cf56dd121f08198008c033596aa6aae7cc58f59f"}, - {file = "SQLAlchemy-1.4.31-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:8d0949b11681380b4a50ac3cd075e4816afe9fa4a8c8ae006c1ca26f0fa40ad8"}, - {file = "SQLAlchemy-1.4.31-cp27-cp27m-win32.whl", hash = "sha256:f3b7ec97e68b68cb1f9ddb82eda17b418f19a034fa8380a0ac04e8fe01532875"}, - {file = "SQLAlchemy-1.4.31-cp27-cp27m-win_amd64.whl", hash = "sha256:81f2dd355b57770fdf292b54f3e0a9823ec27a543f947fa2eb4ec0df44f35f0d"}, - {file = "SQLAlchemy-1.4.31-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4ad31cec8b49fd718470328ad9711f4dc703507d434fd45461096da0a7135ee0"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:05fa14f279d43df68964ad066f653193187909950aa0163320b728edfc400167"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dccff41478050e823271642837b904d5f9bda3f5cf7d371ce163f00a694118d6"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:57205844f246bab9b666a32f59b046add8995c665d9ecb2b7b837b087df90639"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea8210090a816d48a4291a47462bac750e3bc5c2442e6d64f7b8137a7c3f9ac5"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-win32.whl", hash = "sha256:2e216c13ecc7fcdcbb86bb3225425b3ed338e43a8810c7089ddb472676124b9b"}, - {file = "SQLAlchemy-1.4.31-cp310-cp310-win_amd64.whl", hash = "sha256:e3a86b59b6227ef72ffc10d4b23f0fe994bef64d4667eab4fb8cd43de4223bec"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:2fd4d3ca64c41dae31228b80556ab55b6489275fb204827f6560b65f95692cf3"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f22c040d196f841168b1456e77c30a18a3dc16b336ddbc5a24ce01ab4e95ae0"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c0c7171aa5a57e522a04a31b84798b6c926234cb559c0939840c3235cf068813"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d046a9aeba9bc53e88a41e58beb72b6205abb9a20f6c136161adf9128e589db5"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-win32.whl", hash = "sha256:d86132922531f0dc5a4f424c7580a472a924dd737602638e704841c9cb24aea2"}, - {file = "SQLAlchemy-1.4.31-cp36-cp36m-win_amd64.whl", hash = "sha256:ca68c52e3cae491ace2bf39b35fef4ce26c192fd70b4cd90f040d419f70893b5"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:cf2cd387409b12d0a8b801610d6336ee7d24043b6dd965950eaec09b73e7262f"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb4b15fb1f0aafa65cbdc62d3c2078bea1ceecbfccc9a1f23a2113c9ac1191fa"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c317ddd7c586af350a6aef22b891e84b16bff1a27886ed5b30f15c1ed59caeaa"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c7ed6c69debaf6198fadb1c16ae1253a29a7670bbf0646f92582eb465a0b999"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-win32.whl", hash = "sha256:6a01ec49ca54ce03bc14e10de55dfc64187a2194b3b0e5ac0fdbe9b24767e79e"}, - {file = "SQLAlchemy-1.4.31-cp37-cp37m-win_amd64.whl", hash = "sha256:330eb45395874cc7787214fdd4489e2afb931bc49e0a7a8f9cd56d6e9c5b1639"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:5e9c7b3567edbc2183607f7d9f3e7e89355b8f8984eec4d2cd1e1513c8f7b43f"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:de85c26a5a1c72e695ab0454e92f60213b4459b8d7c502e0be7a6369690eeb1a"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:975f5c0793892c634c4920057da0de3a48bbbbd0a5c86f5fcf2f2fedf41b76da"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5c20c8415173b119762b6110af64448adccd4d11f273fb9f718a9865b88a99c"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-win32.whl", hash = "sha256:b35dca159c1c9fa8a5f9005e42133eed82705bf8e243da371a5e5826440e65ca"}, - {file = "SQLAlchemy-1.4.31-cp38-cp38-win_amd64.whl", hash = "sha256:b7b20c88873675903d6438d8b33fba027997193e274b9367421e610d9da76c08"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:85e4c244e1de056d48dae466e9baf9437980c19fcde493e0db1a0a986e6d75b4"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e79e73d5ee24196d3057340e356e6254af4d10e1fc22d3207ea8342fc5ffb977"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:15a03261aa1e68f208e71ae3cd845b00063d242cbf8c87348a0c2c0fc6e1f2ac"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ddc5e5ccc0160e7ad190e5c61eb57560f38559e22586955f205e537cda26034"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-win32.whl", hash = "sha256:289465162b1fa1e7a982f8abe59d26a8331211cad4942e8031d2b7db1f75e649"}, - {file = "SQLAlchemy-1.4.31-cp39-cp39-win_amd64.whl", hash = "sha256:9e4fb2895b83993831ba2401b6404de953fdbfa9d7d4fa6a4756294a83bbc94f"}, - {file = "SQLAlchemy-1.4.31.tar.gz", hash = "sha256:582b59d1e5780a447aada22b461e50b404a9dc05768da1d87368ad8190468418"}, + {file = "SQLAlchemy-1.4.32-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:4b2bcab3a914715d332ca783e9bda13bc570d8b9ef087563210ba63082c18c16"}, + {file = "SQLAlchemy-1.4.32-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:159c2f69dd6efd28e894f261ffca1100690f28210f34cfcd70b895e0ea7a64f3"}, + {file = "SQLAlchemy-1.4.32-cp27-cp27m-win_amd64.whl", hash = "sha256:d7e483f4791fbda60e23926b098702340504f7684ce7e1fd2c1bf02029288423"}, + {file = "SQLAlchemy-1.4.32-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4aa96e957141006181ca58e792e900ee511085b8dae06c2d08c00f108280fb8a"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:576684771456d02e24078047c2567025f2011977aa342063468577d94e194b00"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fff677fa4522dafb5a5e2c0cf909790d5d367326321aeabc0dffc9047cb235bd"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8679f9aba5ac22e7bce54ccd8a77641d3aea3e2d96e73e4356c887ebf8ff1082"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7046f7aa2db445daccc8424f50b47a66c4039c9f058246b43796aa818f8b751"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-win32.whl", hash = "sha256:bedd89c34ab62565d44745212814e4b57ef1c24ad4af9b29c504ce40f0dc6558"}, + {file = "SQLAlchemy-1.4.32-cp310-cp310-win_amd64.whl", hash = "sha256:199dc6d0068753b6a8c0bd3aceb86a3e782df118260ebc1fa981ea31ee054674"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:8e1e5d96b744a4f91163290b01045430f3f32579e46d87282449e5b14d27d4ac"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edfcf93fd92e2f9eef640b3a7a40db20fe3c1d7c2c74faa41424c63dead61b76"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:04164e0063feb7aedd9d073db0fd496edb244be40d46ea1f0d8990815e4b8c34"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ba59761c19b800bc2e1c9324da04d35ef51e4ee9621ff37534bc2290d258f71"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-win32.whl", hash = "sha256:708973b5d9e1e441188124aaf13c121e5b03b6054c2df59b32219175a25aa13e"}, + {file = "SQLAlchemy-1.4.32-cp36-cp36m-win_amd64.whl", hash = "sha256:316270e5867566376e69a0ac738b863d41396e2b63274616817e1d34156dff0e"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:9a0195af6b9050c9322a97cf07514f66fe511968e623ca87b2df5e3cf6349615"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7e4a3c0c3c596296b37f8427c467c8e4336dc8d50f8ed38042e8ba79507b2c9"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bca714d831e5b8860c3ab134c93aec63d1a4f493bed20084f54e3ce9f0a3bf99"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9a680d9665f88346ed339888781f5236347933906c5a56348abb8261282ec48"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-win32.whl", hash = "sha256:9cb5698c896fa72f88e7ef04ef62572faf56809093180771d9be8d9f2e264a13"}, + {file = "SQLAlchemy-1.4.32-cp37-cp37m-win_amd64.whl", hash = "sha256:8b9a395122770a6f08ebfd0321546d7379f43505882c7419d7886856a07caa13"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:3f88a4ee192142eeed3fe173f673ea6ab1f5a863810a9d85dbf6c67a9bd08f97"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd93162615870c976dba43963a24bb418b28448fef584f30755990c134a06a55"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5a2e73508f939175363d8a4be9dcdc84cf16a92578d7fa86e6e4ca0e6b3667b2"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfec934aac7f9fa95fc82147a4ba5db0a8bdc4ebf1e33b585ab8860beb10232f"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-win32.whl", hash = "sha256:bb42f9b259c33662c6a9b866012f6908a91731a419e69304e1261ba3ab87b8d1"}, + {file = "SQLAlchemy-1.4.32-cp38-cp38-win_amd64.whl", hash = "sha256:7ff72b3cc9242d1a1c9b84bd945907bf174d74fc2519efe6184d6390a8df478b"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:5dc9801ae9884e822ba942ca493642fb50f049c06b6dbe3178691fce48ceb089"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4607d2d16330757818c9d6fba322c2e80b4b112ff24295d1343a80b876eb0ed"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:20e9eba7fd86ef52e0df25bea83b8b518dfdf0bce09b336cfe51671f52aaaa3f"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:290cbdf19129ae520d4bdce392648c6fcdbee763bc8f750b53a5ab51880cb9c9"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-win32.whl", hash = "sha256:1bbac3e8293b34c4403d297e21e8f10d2a57756b75cff101dc62186adec725f5"}, + {file = "SQLAlchemy-1.4.32-cp39-cp39-win_amd64.whl", hash = "sha256:b3f1d9b3aa09ab9adc7f8c4b40fc3e081eb903054c9a6f9ae1633fe15ae503b4"}, + {file = "SQLAlchemy-1.4.32.tar.gz", hash = "sha256:6fdd2dc5931daab778c2b65b03df6ae68376e028a3098eb624d0909d999885bc"}, ] srsly = [ - {file = "srsly-2.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5e22bbc1a20abf749fa53adf101c36bc369ec63f496c7a44bf4f5f287d724900"}, + {file = "srsly-2.4.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:834229df7377386e9990fd245e1ae12a72152997fd159a782a798b638721a7b2"}, {file = "srsly-2.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:004d29a5abc0fe632434359c0be170490a69c4dce2c3de8a769944c37da7bb4b"}, {file = "srsly-2.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:7ced7ec4993b4d4ad73cc442f8f7a518368348054d510864b1aa149e8d71654d"}, {file = "srsly-2.4.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:801c7e6e32c6a4721ab78ab7dafd01074fdb144f4876c09b25305c98f95c470f"}, @@ -5550,15 +5546,12 @@ tensorflow-io-gcs-filesystem = [ {file = "tensorflow_io_gcs_filesystem-0.24.0-cp310-cp310-win_amd64.whl", hash = "sha256:2f67d19a2f2579dc55f1590faf48c2e882cabb860992b5a9c7edb0ed8b3eb187"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:cde835e68b2b43ddade07c999e7c3251bcd62b1ff165c34fbe9fc6e0f12c3ac9"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:71c00638c9b6048480095f2738dfefd8f4b2e7b534190c91d699aee769bfa86e"}, - {file = "tensorflow_io_gcs_filesystem-0.24.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f63d70d7fce10c63f21bdd8e72244958afc0c495966831a547f038543c9633f7"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d1eb5e9be62040c5a249ae8adaae7e61f65b59541139e4d6767157f25a224bf5"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:cc093f160f79526d31f6070a3ddc000868d737a36ccf40984128661563383601"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6e65009770a05a3b55c5f782348f785e5034d277a727832811ad737bd857c8c9"}, - {file = "tensorflow_io_gcs_filesystem-0.24.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:658764aaaf9419ddefb3daa95bdc84e5210c691ff73b8ac2606d5c839040206b"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp38-cp38-win_amd64.whl", hash = "sha256:aa90b9a34ea8da4dbd534f77746d67375714db869524da889193c3042352679a"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:825f396388748038ad38c35b091311982081f93a5db8ca9763fc874c3f555e6c"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cbc71b3925508bf796644a0083a6f9284f71404654f53092bece701383a69520"}, - {file = "tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae96b20b973b1c3bbf2c068409035ead45177447ef51701f4e726f67cadc4695"}, {file = "tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-win_amd64.whl", hash = "sha256:2862e0869453ce1f872a28d1362768ee078ec227ea587dd69164081dea6d7177"}, ] tensorflow-text = [ @@ -5637,8 +5630,8 @@ towncrier = [ {file = "towncrier-21.9.0.tar.gz", hash = "sha256:9cb6f45c16e1a1eec9d0e7651165e7be60cd0ab81d13a5c96ca97a498ae87f48"}, ] tqdm = [ - {file = "tqdm-4.62.3-py2.py3-none-any.whl", hash = "sha256:8dd278a422499cd6b727e6ae4061c40b48fce8b76d1ccbf5d34fca9b7f925b0c"}, - {file = "tqdm-4.62.3.tar.gz", hash = "sha256:d359de7217506c9851b7869f3708d8ee53ed70a1b8edbba4dbcb47442592920d"}, + {file = "tqdm-4.63.0-py2.py3-none-any.whl", hash = "sha256:e643e071046f17139dea55b880dc9b33822ce21613b4a4f5ea57f202833dbc29"}, + {file = "tqdm-4.63.0.tar.gz", hash = "sha256:1d9835ede8e394bb8c9dcbffbca02d717217113adc679236873eeaac5bc0b3cd"}, ] transformers = [ {file = "transformers-4.13.0-py3-none-any.whl", hash = "sha256:533e8f205a0a3487751c98dd4dc407d4497d09d0d233da900351e2efb03b5d71"}, @@ -5648,36 +5641,30 @@ twilio = [ {file = "twilio-6.50.1.tar.gz", hash = "sha256:dd8371c9b4ea422d6de7526b63b587da82e8488f2b3f6b1258d2cad6e4006a65"}, ] typed-ast = [ - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6"}, - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075"}, - {file = "typed_ast-1.4.3-cp35-cp35m-manylinux2014_aarch64.whl", hash = "sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528"}, - {file = "typed_ast-1.4.3-cp35-cp35m-win32.whl", hash = "sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428"}, - {file = "typed_ast-1.4.3-cp35-cp35m-win_amd64.whl", hash = "sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3"}, - {file = "typed_ast-1.4.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace"}, - {file = "typed_ast-1.4.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f"}, - {file = "typed_ast-1.4.3-cp36-cp36m-win32.whl", hash = "sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363"}, - {file = "typed_ast-1.4.3-cp36-cp36m-win_amd64.whl", hash = "sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7"}, - {file = "typed_ast-1.4.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04"}, - {file = "typed_ast-1.4.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899"}, - {file = "typed_ast-1.4.3-cp37-cp37m-win32.whl", hash = "sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c"}, - {file = "typed_ast-1.4.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805"}, - {file = "typed_ast-1.4.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41"}, - {file = "typed_ast-1.4.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39"}, - {file = "typed_ast-1.4.3-cp38-cp38-win32.whl", hash = "sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927"}, - {file = "typed_ast-1.4.3-cp38-cp38-win_amd64.whl", hash = "sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40"}, - {file = "typed_ast-1.4.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0"}, - {file = "typed_ast-1.4.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3"}, - {file = "typed_ast-1.4.3-cp39-cp39-win32.whl", hash = "sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808"}, - {file = "typed_ast-1.4.3-cp39-cp39-win_amd64.whl", hash = "sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c"}, - {file = "typed_ast-1.4.3.tar.gz", hash = "sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65"}, + {file = "typed_ast-1.5.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:183b183b7771a508395d2cbffd6db67d6ad52958a5fdc99f450d954003900266"}, + {file = "typed_ast-1.5.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:676d051b1da67a852c0447621fdd11c4e104827417bf216092ec3e286f7da596"}, + {file = "typed_ast-1.5.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc2542e83ac8399752bc16e0b35e038bdb659ba237f4222616b4e83fb9654985"}, + {file = "typed_ast-1.5.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74cac86cc586db8dfda0ce65d8bcd2bf17b58668dfcc3652762f3ef0e6677e76"}, + {file = "typed_ast-1.5.2-cp310-cp310-win_amd64.whl", hash = "sha256:18fe320f354d6f9ad3147859b6e16649a0781425268c4dde596093177660e71a"}, + {file = "typed_ast-1.5.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:31d8c6b2df19a777bc8826770b872a45a1f30cfefcfd729491baa5237faae837"}, + {file = "typed_ast-1.5.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:963a0ccc9a4188524e6e6d39b12c9ca24cc2d45a71cfdd04a26d883c922b4b78"}, + {file = "typed_ast-1.5.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0eb77764ea470f14fcbb89d51bc6bbf5e7623446ac4ed06cbd9ca9495b62e36e"}, + {file = "typed_ast-1.5.2-cp36-cp36m-win_amd64.whl", hash = "sha256:294a6903a4d087db805a7656989f613371915fc45c8cc0ddc5c5a0a8ad9bea4d"}, + {file = "typed_ast-1.5.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:26a432dc219c6b6f38be20a958cbe1abffcc5492821d7e27f08606ef99e0dffd"}, + {file = "typed_ast-1.5.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7407cfcad702f0b6c0e0f3e7ab876cd1d2c13b14ce770e412c0c4b9728a0f88"}, + {file = "typed_ast-1.5.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f30ddd110634c2d7534b2d4e0e22967e88366b0d356b24de87419cc4410c41b7"}, + {file = "typed_ast-1.5.2-cp37-cp37m-win_amd64.whl", hash = "sha256:8c08d6625bb258179b6e512f55ad20f9dfef019bbfbe3095247401e053a3ea30"}, + {file = "typed_ast-1.5.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:90904d889ab8e81a956f2c0935a523cc4e077c7847a836abee832f868d5c26a4"}, + {file = "typed_ast-1.5.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:bbebc31bf11762b63bf61aaae232becb41c5bf6b3461b80a4df7e791fabb3aca"}, + {file = "typed_ast-1.5.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c29dd9a3a9d259c9fa19d19738d021632d673f6ed9b35a739f48e5f807f264fb"}, + {file = "typed_ast-1.5.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:58ae097a325e9bb7a684572d20eb3e1809802c5c9ec7108e85da1eb6c1a3331b"}, + {file = "typed_ast-1.5.2-cp38-cp38-win_amd64.whl", hash = "sha256:da0a98d458010bf4fe535f2d1e367a2e2060e105978873c04c04212fb20543f7"}, + {file = "typed_ast-1.5.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:33b4a19ddc9fc551ebabca9765d54d04600c4a50eda13893dadf67ed81d9a098"}, + {file = "typed_ast-1.5.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1098df9a0592dd4c8c0ccfc2e98931278a6c6c53cb3a3e2cf7e9ee3b06153344"}, + {file = "typed_ast-1.5.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42c47c3b43fe3a39ddf8de1d40dbbfca60ac8530a36c9b198ea5b9efac75c09e"}, + {file = "typed_ast-1.5.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f290617f74a610849bd8f5514e34ae3d09eafd521dceaa6cf68b3f4414266d4e"}, + {file = "typed_ast-1.5.2-cp39-cp39-win_amd64.whl", hash = "sha256:df05aa5b241e2e8045f5f4367a9f6187b09c4cdf8578bb219861c4e27c443db5"}, + {file = "typed_ast-1.5.2.tar.gz", hash = "sha256:525a2d4088e70a9f75b08b3f87a51acc9cde640e19cc523c7e41aa355564ae27"}, ] typeguard = [ {file = "typeguard-2.13.3-py3-none-any.whl", hash = "sha256:5e3e3be01e887e7eafae5af63d1f36c849aaa94e3a0112097312aabfa16284f1"}, @@ -5700,20 +5687,20 @@ types-pytz = [ {file = "types_pytz-2021.3.5-py3-none-any.whl", hash = "sha256:8831f689379ac9e2a62668157381379ed74b3702980e08e71f8673c179c4e3c7"}, ] types-redis = [ - {file = "types-redis-4.1.16.tar.gz", hash = "sha256:a913521c1f008775fc3816813a5981f9da3b0dd3f3b2578b0a0464a84ac5f4d4"}, - {file = "types_redis-4.1.16-py3-none-any.whl", hash = "sha256:a529fbae3b6c95e6790522d35a3065dc92ee29698c6b163ab573992b6144b41a"}, + {file = "types-redis-4.1.17.tar.gz", hash = "sha256:5c8707423c60e70ba6ff9a5f01baacbb6c871e44f6a2bd562790cee9edd5b5b1"}, + {file = "types_redis-4.1.17-py3-none-any.whl", hash = "sha256:7e98c567f0e279b47b0a0ddee8c0180a086e4a5f1b95e6890b40b2a84dc97fb6"}, ] types-requests = [ - {file = "types-requests-2.27.9.tar.gz", hash = "sha256:7368974534d297939492efdfdab232930440b11e2203f6df1f0c40e3242a87ea"}, - {file = "types_requests-2.27.9-py3-none-any.whl", hash = "sha256:74070045418faf710f3154403d6a16c9e67db50e5119906ca6955f1658d20f7b"}, + {file = "types-requests-2.27.11.tar.gz", hash = "sha256:6a7ed24b21780af4a5b5e24c310b2cd885fb612df5fd95584d03d87e5f2a195a"}, + {file = "types_requests-2.27.11-py3-none-any.whl", hash = "sha256:506279bad570c7b4b19ac1f22e50146538befbe0c133b2cea66a9b04a533a859"}, ] types-setuptools = [ - {file = "types-setuptools-57.4.9.tar.gz", hash = "sha256:536ef74744f8e1e4be4fc719887f886e74e4cf3c792b4a06984320be4df450b5"}, - {file = "types_setuptools-57.4.9-py3-none-any.whl", hash = "sha256:948dc6863373750e2cd0b223a84f1fb608414cde5e55cf38ea657b93aeb411d2"}, + {file = "types-setuptools-57.4.10.tar.gz", hash = "sha256:9a13513679c640f6616e2d9ab50d431c99ca8ae9848a97243f887c80fd5cf294"}, + {file = "types_setuptools-57.4.10-py3-none-any.whl", hash = "sha256:ddc98da82c12e1208012d65276641a132d3aadc78ecfff68fd3e17d85933a3c1"}, ] types-urllib3 = [ - {file = "types-urllib3-1.26.9.tar.gz", hash = "sha256:abd2d4857837482b1834b4817f0587678dcc531dbc9abe4cde4da28cef3f522c"}, - {file = "types_urllib3-1.26.9-py3-none-any.whl", hash = "sha256:4a54f6274ab1c80968115634a55fb9341a699492b95e32104a7c513db9fe02e9"}, + {file = "types-urllib3-1.26.10.tar.gz", hash = "sha256:a26898f530e6c3f43f25b907f2b884486868ffd56a9faa94cbf9b3eb6e165d6a"}, + {file = "types_urllib3-1.26.10-py3-none-any.whl", hash = "sha256:d755278d5ecd7a7a6479a190e54230f241f1a99c19b81518b756b19dc69e518c"}, ] typing-extensions = [ {file = "typing_extensions-3.10.0.2-py2-none-any.whl", hash = "sha256:d8226d10bc02a29bcc81df19a26e56a9647f8b0a6d4a83924139f4a8b01f17b7"}, @@ -5783,15 +5770,22 @@ urllib3 = [ {file = "urllib3-1.26.8.tar.gz", hash = "sha256:0e7c33d9a63e7ddfcb86780aac87befc2fbddf46c58dbb487e0855f7ceec283c"}, ] uvloop = [ - {file = "uvloop-0.14.0-cp35-cp35m-macosx_10_11_x86_64.whl", hash = "sha256:08b109f0213af392150e2fe6f81d33261bb5ce968a288eb698aad4f46eb711bd"}, - {file = "uvloop-0.14.0-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:4544dcf77d74f3a84f03dd6278174575c44c67d7165d4c42c71db3fdc3860726"}, - {file = "uvloop-0.14.0-cp36-cp36m-macosx_10_11_x86_64.whl", hash = "sha256:b4f591aa4b3fa7f32fb51e2ee9fea1b495eb75b0b3c8d0ca52514ad675ae63f7"}, - {file = "uvloop-0.14.0-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:f07909cd9fc08c52d294b1570bba92186181ca01fe3dc9ffba68955273dd7362"}, - {file = "uvloop-0.14.0-cp37-cp37m-macosx_10_11_x86_64.whl", hash = "sha256:afd5513c0ae414ec71d24f6f123614a80f3d27ca655a4fcf6cabe50994cc1891"}, - {file = "uvloop-0.14.0-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:e7514d7a48c063226b7d06617cbb12a14278d4323a065a8d46a7962686ce2e95"}, - {file = "uvloop-0.14.0-cp38-cp38-macosx_10_11_x86_64.whl", hash = "sha256:bcac356d62edd330080aed082e78d4b580ff260a677508718f88016333e2c9c5"}, - {file = "uvloop-0.14.0-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4315d2ec3ca393dd5bc0b0089d23101276778c304d42faff5dc4579cb6caef09"}, - {file = "uvloop-0.14.0.tar.gz", hash = "sha256:123ac9c0c7dd71464f58f1b4ee0bbd81285d96cdda8bc3519281b8973e3a461e"}, + {file = "uvloop-0.16.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6224f1401025b748ffecb7a6e2652b17768f30b1a6a3f7b44660e5b5b690b12d"}, + {file = "uvloop-0.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:30ba9dcbd0965f5c812b7c2112a1ddf60cf904c1c160f398e7eed3a6b82dcd9c"}, + {file = "uvloop-0.16.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bd53f7f5db562f37cd64a3af5012df8cac2c464c97e732ed556800129505bd64"}, + {file = "uvloop-0.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:772206116b9b57cd625c8a88f2413df2fcfd0b496eb188b82a43bed7af2c2ec9"}, + {file = "uvloop-0.16.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b572256409f194521a9895aef274cea88731d14732343da3ecdb175228881638"}, + {file = "uvloop-0.16.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:04ff57aa137230d8cc968f03481176041ae789308b4d5079118331ab01112450"}, + {file = "uvloop-0.16.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a19828c4f15687675ea912cc28bbcb48e9bb907c801873bd1519b96b04fb805"}, + {file = "uvloop-0.16.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e814ac2c6f9daf4c36eb8e85266859f42174a4ff0d71b99405ed559257750382"}, + {file = "uvloop-0.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bd8f42ea1ea8f4e84d265769089964ddda95eb2bb38b5cbe26712b0616c3edee"}, + {file = "uvloop-0.16.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:647e481940379eebd314c00440314c81ea547aa636056f554d491e40503c8464"}, + {file = "uvloop-0.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e0d26fa5875d43ddbb0d9d79a447d2ace4180d9e3239788208527c4784f7cab"}, + {file = "uvloop-0.16.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6ccd57ae8db17d677e9e06192e9c9ec4bd2066b77790f9aa7dede2cc4008ee8f"}, + {file = "uvloop-0.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:089b4834fd299d82d83a25e3335372f12117a7d38525217c2258e9b9f4578897"}, + {file = "uvloop-0.16.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98d117332cc9e5ea8dfdc2b28b0a23f60370d02e1395f88f40d1effd2cb86c4f"}, + {file = "uvloop-0.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e5f2e2ff51aefe6c19ee98af12b4ae61f5be456cd24396953244a30880ad861"}, + {file = "uvloop-0.16.0.tar.gz", hash = "sha256:f74bc20c7b67d1c27c72601c78cf95be99d5c2cdd4514502b4f3eb0933ff1228"}, ] wasabi = [ {file = "wasabi-0.9.0-py3-none-any.whl", hash = "sha256:f40f317981d019903db5b69eb2bf78519c9e165c1dfdbd0452e4ca81ff9a31d2"}, @@ -5825,54 +5819,54 @@ webexteamssdk = [ {file = "webexteamssdk-1.6.tar.gz", hash = "sha256:980f268d89187d1a157dfbadcb626fce849080a31550e549cfe838f0203b3a3d"}, ] websockets = [ - {file = "websockets-10.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:38db6e2163b021642d0a43200ee2dec8f4980bdbda96db54fde72b283b54cbfc"}, - {file = "websockets-10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e1b60fd297adb9fc78375778a5220da7f07bf54d2a33ac781319650413fc6a60"}, - {file = "websockets-10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3477146d1f87ead8df0f27e8960249f5248dceb7c2741e8bbec9aa5338d0c053"}, - {file = "websockets-10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb01ea7b5f52e7125bdc3c5807aeaa2d08a0553979cf2d96a8b7803ea33e15e7"}, - {file = "websockets-10.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9fd62c6dc83d5d35fb6a84ff82ec69df8f4657fff05f9cd6c7d9bec0dd57f0f6"}, - {file = "websockets-10.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3bbf080f3892ba1dc8838786ec02899516a9d227abe14a80ef6fd17d4fb57127"}, - {file = "websockets-10.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5560558b0dace8312c46aa8915da977db02738ac8ecffbc61acfbfe103e10155"}, - {file = "websockets-10.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:667c41351a6d8a34b53857ceb8343a45c85d438ee4fd835c279591db8aeb85be"}, - {file = "websockets-10.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:468f0031fdbf4d643f89403a66383247eb82803430b14fa27ce2d44d2662ca37"}, - {file = "websockets-10.1-cp310-cp310-win32.whl", hash = "sha256:d0d81b46a5c87d443e40ce2272436da8e6092aa91f5fbeb60d1be9f11eff5b4c"}, - {file = "websockets-10.1-cp310-cp310-win_amd64.whl", hash = "sha256:b68b6caecb9a0c6db537aa79750d1b592a841e4f1a380c6196091e65b2ad35f9"}, - {file = "websockets-10.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a249139abc62ef333e9e85064c27fefb113b16ffc5686cefc315bdaef3eefbc8"}, - {file = "websockets-10.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8877861e3dee38c8d302eee0d5dbefa6663de3b46dc6a888f70cd7e82562d1f7"}, - {file = "websockets-10.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e3872ae57acd4306ecf937d36177854e218e999af410a05c17168cd99676c512"}, - {file = "websockets-10.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b66e6d514f12c28d7a2d80bb2a48ef223342e99c449782d9831b0d29a9e88a17"}, - {file = "websockets-10.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:9f304a22ece735a3da8a51309bc2c010e23961a8f675fae46fdf62541ed62123"}, - {file = "websockets-10.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:189ed478395967d6a98bb293abf04e8815349e17456a0a15511f1088b6cb26e4"}, - {file = "websockets-10.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:08a42856158307e231b199671c4fce52df5786dd3d703f36b5d8ac76b206c485"}, - {file = "websockets-10.1-cp37-cp37m-win32.whl", hash = "sha256:3ef6f73854cded34e78390dbdf40dfdcf0b89b55c0e282468ef92646fce8d13a"}, - {file = "websockets-10.1-cp37-cp37m-win_amd64.whl", hash = "sha256:89e985d40d407545d5f5e2e58e1fdf19a22bd2d8cd54d20a882e29f97e930a0a"}, - {file = "websockets-10.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:002071169d2e44ce8eb9e5ebac9fbce142ba4b5146eef1cfb16b177a27662657"}, - {file = "websockets-10.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cfae282c2aa7f0c4be45df65c248481f3509f8c40ca8b15ed96c35668ae0ff69"}, - {file = "websockets-10.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:97b4b68a2ddaf5c4707ae79c110bfd874c5be3c6ac49261160fb243fa45d8bbb"}, - {file = "websockets-10.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c9407719f42cb77049975410490c58a705da6af541adb64716573e550e5c9db"}, - {file = "websockets-10.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1d858fb31e5ac992a2cdf17e874c95f8a5b1e917e1fb6b45ad85da30734b223f"}, - {file = "websockets-10.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7bdd3d26315db0a9cf8a0af30ca95e0aa342eda9c1377b722e71ccd86bc5d1dd"}, - {file = "websockets-10.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e259be0863770cb91b1a6ccf6907f1ac2f07eff0b7f01c249ed751865a70cb0d"}, - {file = "websockets-10.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6b014875fae19577a392372075e937ebfebf53fd57f613df07b35ab210f31534"}, - {file = "websockets-10.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:98de71f86bdb29430fd7ba9997f47a6b10866800e3ea577598a786a785701bb0"}, - {file = "websockets-10.1-cp38-cp38-win32.whl", hash = "sha256:3a02ab91d84d9056a9ee833c254895421a6333d7ae7fff94b5c68e4fa8095519"}, - {file = "websockets-10.1-cp38-cp38-win_amd64.whl", hash = "sha256:7d6673b2753f9c5377868a53445d0c321ef41ff3c8e3b6d57868e72054bfce5f"}, - {file = "websockets-10.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ddab2dc69ee5ae27c74dbfe9d7bb6fee260826c136dca257faa1a41d1db61a89"}, - {file = "websockets-10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:14e9cf68a08d1a5d42109549201aefba473b1d925d233ae19035c876dd845da9"}, - {file = "websockets-10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e4819c6fb4f336fd5388372cb556b1f3a165f3f68e66913d1a2fc1de55dc6f58"}, - {file = "websockets-10.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05e7f098c76b0a4743716590bb8f9706de19f1ef5148d61d0cf76495ec3edb9c"}, - {file = "websockets-10.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5bb6256de5a4fb1d42b3747b4e2268706c92965d75d0425be97186615bf2f24f"}, - {file = "websockets-10.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:888a5fa2a677e0c2b944f9826c756475980f1b276b6302e606f5c4ff5635be9e"}, - {file = "websockets-10.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6fdec1a0b3e5630c58e3d8704d2011c678929fce90b40908c97dfc47de8dca72"}, - {file = "websockets-10.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:531d8eb013a9bc6b3ad101588182aa9b6dd994b190c56df07f0d84a02b85d530"}, - {file = "websockets-10.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0d93b7cadc761347d98da12ec1930b5c71b2096f1ceed213973e3cda23fead9c"}, - {file = "websockets-10.1-cp39-cp39-win32.whl", hash = "sha256:d9b245db5a7e64c95816e27d72830e51411c4609c05673d1ae81eb5d23b0be54"}, - {file = "websockets-10.1-cp39-cp39-win_amd64.whl", hash = "sha256:882c0b8bdff3bf1bd7f024ce17c6b8006042ec4cceba95cf15df57e57efa471c"}, - {file = "websockets-10.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:10edd9d7d3581cfb9ff544ac09fc98cab7ee8f26778a5a8b2d5fd4b0684c5ba5"}, - {file = "websockets-10.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baa83174390c0ff4fc1304fbe24393843ac7a08fdd59295759c4b439e06b1536"}, - {file = "websockets-10.1-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:483edee5abed738a0b6a908025be47f33634c2ad8e737edd03ffa895bd600909"}, - {file = "websockets-10.1-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:816ae7dac2c6522cfa620947ead0ca95ac654916eebf515c94d7c28de5601a6e"}, - {file = "websockets-10.1-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:1dafe98698ece09b8ccba81b910643ff37198e43521d977be76caf37709cf62b"}, - {file = "websockets-10.1.tar.gz", hash = "sha256:181d2b25de5a437b36aefedaf006ecb6fa3aa1328ec0236cdde15f32f9d3ff6d"}, + {file = "websockets-10.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d5396710f86a306cf52f87fd8ea594a0e894ba0cc5a36059eaca3a477dc332aa"}, + {file = "websockets-10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b22bdc795e62e71118b63e14a08bacfa4f262fd2877de7e5b950f5ac16b0348f"}, + {file = "websockets-10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5b04270b5613f245ec84bb2c6a482a9d009aefad37c0575f6cda8499125d5d5c"}, + {file = "websockets-10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5c335dc0e7dc271ef36df3f439868b3c790775f345338c2f61a562f1074187b"}, + {file = "websockets-10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:6a009eb551c46fd79737791c0c833fc0e5b56bcd1c3057498b262d660b92e9cd"}, + {file = "websockets-10.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a10c0c1ee02164246f90053273a42d72a3b2452a7e7486fdae781138cf7fbe2d"}, + {file = "websockets-10.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7b38a5c9112e3dbbe45540f7b60c5204f49b3cb501b40950d6ab34cd202ab1d0"}, + {file = "websockets-10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2aa9b91347ecd0412683f28aabe27f6bad502d89bd363b76e0a3508b1596402e"}, + {file = "websockets-10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b7fe45ae43ac814beb8ca09d6995b56800676f2cfa8e23f42839dc69bba34a42"}, + {file = "websockets-10.2-cp310-cp310-win32.whl", hash = "sha256:cef40a1b183dcf39d23b392e9dd1d9b07ab9c46aadf294fff1350fb79146e72b"}, + {file = "websockets-10.2-cp310-cp310-win_amd64.whl", hash = "sha256:c21a67ab9a94bd53e10bba21912556027fea944648a09e6508415ad14e37c325"}, + {file = "websockets-10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cb316b87cbe3c0791c2ad92a5a36bf6adc87c457654335810b25048c1daa6fd5"}, + {file = "websockets-10.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f14bd10e170abc01682a9f8b28b16e6f20acf6175945ef38db6ffe31b0c72c3f"}, + {file = "websockets-10.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fa35c5d1830d0fb7b810324e9eeab9aa92e8f273f11fdbdc0741dcded6d72b9f"}, + {file = "websockets-10.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:71a4491cfe7a9f18ee57d41163cb6a8a3fa591e0f0564ca8b0ed86b2a30cced4"}, + {file = "websockets-10.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:6193bbc1ee63aadeb9a4d81de0e19477401d150d506aee772d8380943f118186"}, + {file = "websockets-10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:8beac786a388bb99a66c3be4ab0fb38273c0e3bc17f612a4e0a47c4fc8b9c045"}, + {file = "websockets-10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c67d9cacb3f6537ca21e9b224d4fd08481538e43bcac08b3d93181b0816def39"}, + {file = "websockets-10.2-cp37-cp37m-win32.whl", hash = "sha256:a03a25d95cc7400bd4d61a63460b5d85a7761c12075ee2f51de1ffe73aa593d3"}, + {file = "websockets-10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:f8296b8408ec6853b26771599990721a26403e62b9de7e50ac0a056772ac0b5e"}, + {file = "websockets-10.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:7bb9d8a6beca478c7e9bdde0159bd810cc1006ad6a7cb460533bae39da692ca2"}, + {file = "websockets-10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:05f6e9757017270e7a92a2975e2ae88a9a582ffc4629086fd6039aa80e99cd86"}, + {file = "websockets-10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1c9031e90ebfc486e9cdad532b94004ade3aa39a31d3c46c105bb0b579cd2490"}, + {file = "websockets-10.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82bc33db6d8309dc27a3bee11f7da2288ad925fcbabc2a4bb78f7e9c56249baf"}, + {file = "websockets-10.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:24b879ba7db12bb525d4e58089fcbe6a3df3ce4666523183654170e86d372cbe"}, + {file = "websockets-10.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cf931c33db9c87c53d009856045dd524e4a378445693382a920fa1e0eb77c36c"}, + {file = "websockets-10.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:669e54228a4d9457abafed27cbf0e2b9f401445c4dfefc12bf8e4db9751703b8"}, + {file = "websockets-10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:bffc65442dd35c473ca9790a3fa3ba06396102a950794f536783f4b8060af8dd"}, + {file = "websockets-10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d4d110a84b63c5cfdd22485acc97b8b919aefeecd6300c0c9d551e055b9a88ea"}, + {file = "websockets-10.2-cp38-cp38-win32.whl", hash = "sha256:117383d0a17a0dda349f7a8790763dde75c1508ff8e4d6e8328b898b7df48397"}, + {file = "websockets-10.2-cp38-cp38-win_amd64.whl", hash = "sha256:0b66421f9f13d4df60cd48ab977ed2c2b6c9147ae1a33caf5a9f46294422fda1"}, + {file = "websockets-10.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ac081aa0307f263d63c5ff0727935c736c8dad51ddf2dc9f5d0c4759842aefaa"}, + {file = "websockets-10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b4059e2ccbe6587b6dc9a01db5fc49ead9a884faa4076eea96c5ec62cb32f42a"}, + {file = "websockets-10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9ca2ca05a4c29179f06cf6727b45dba5d228da62623ec9df4184413d8aae6cb9"}, + {file = "websockets-10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:97950c7c844ec6f8d292440953ae18b99e3a6a09885e09d20d5e7ecd9b914cf8"}, + {file = "websockets-10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:98f57b3120f8331cd7440dbe0e776474f5e3632fdaa474af1f6b754955a47d71"}, + {file = "websockets-10.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a72b92f96e5e540d5dda99ee3346e199ade8df63152fa3c737260da1730c411f"}, + {file = "websockets-10.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:038afef2a05893578d10dadbdbb5f112bd115c46347e1efe99f6a356ff062138"}, + {file = "websockets-10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f09f46b1ff6d09b01c7816c50bd1903cf7d02ebbdb63726132717c2fcda835d5"}, + {file = "websockets-10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2349fa81b6b959484bb2bda556ccb9eb70ba68987646a0f8a537a1a18319fb03"}, + {file = "websockets-10.2-cp39-cp39-win32.whl", hash = "sha256:bef03a51f9657fb03d8da6ccd233fe96e04101a852f0ffd35f5b725b28221ff3"}, + {file = "websockets-10.2-cp39-cp39-win_amd64.whl", hash = "sha256:1c1f3b18c8162e3b09761d0c6a0305fd642934202541cc511ef972cb9463261e"}, + {file = "websockets-10.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5a38a0175ae82e4a8c4bac29fc01b9ee26d7d5a614e5ee11e7813c68a7d938ce"}, + {file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6e56606842bb24e16e36ae7eb308d866b4249cf0be8f63b212f287eeb76b124"}, + {file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0f73cb2526d6da268e86977b2c4b58f2195994e53070fe567d5487c6436047e6"}, + {file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0cd02f36d37e503aca88ab23cc0a1a0e92a263d37acf6331521eb38040dcf77b"}, + {file = "websockets-10.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:56d48eebe9e39ce0d68701bce3b21df923aa05dcc00f9fd8300de1df31a7c07c"}, + {file = "websockets-10.2.tar.gz", hash = "sha256:8351c3c86b08156337b0e4ece0e3c5ec3e01fcd14e8950996832a23c99416098"}, ] werkzeug = [ {file = "Werkzeug-2.0.3-py3-none-any.whl", hash = "sha256:1421ebfc7648a39a5c58c601b154165d05cf47a3cd0ccb70857cbdacf6c8f2b8"}, diff --git a/pyproject.toml b/pyproject.toml index d8113e4cdf63..ca2f6369025a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.black] line-length = 88 -target-version = [ "py37", "py38",] +target-version = [ "py37", "py38", "py39",] exclude = "((.eggs | .git | .pytest_cache | build | dist))" [tool.poetry] @@ -63,7 +63,7 @@ name = "Miscellaneous internal changes" showcontent = false [tool.poetry.dependencies] -python = ">=3.7,<3.9" +python = ">=3.7,<3.10" boto3 = "^1.12" requests = "^2.23" matplotlib = ">=3.1,<3.4" @@ -169,8 +169,8 @@ types-redis = "^4.1.16" [tool.poetry.extras] spacy = [ "spacy",] jieba = [ "jieba",] -transformers = [ "transformers",] -full = [ "spacy", "transformers", "jieba",] +transformers = [ "transformers", "sentencepiece"] +full = [ "spacy", "transformers", "sentencepiece", "jieba",] gh-release-notes = [ "github3.py",] [tool.poetry.scripts] @@ -199,6 +199,10 @@ optional = true [tool.poetry.dependencies.transformers] version = "~4.13.0" optional = true + +[tool.poetry.dependencies.sentencepiece] +version = "~0.1.96" +optional = true extras = [ "sentencepiece",] [tool.poetry.dependencies.jieba] diff --git a/rasa/cli/export.py b/rasa/cli/export.py index 4c40c17b2ee8..0fd8e5418f97 100644 --- a/rasa/cli/export.py +++ b/rasa/cli/export.py @@ -1,8 +1,8 @@ import argparse +import asyncio import logging import typing from typing import List, Text, Optional -import asyncio from rasa import telemetry from rasa.cli import SubParsersAction diff --git a/rasa/cli/initial_project/data/nlu.yml b/rasa/cli/initial_project/data/nlu.yml index 63766c4414d4..2f6c3f8c7d3e 100644 --- a/rasa/cli/initial_project/data/nlu.yml +++ b/rasa/cli/initial_project/data/nlu.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" nlu: - intent: greet diff --git a/rasa/cli/initial_project/data/rules.yml b/rasa/cli/initial_project/data/rules.yml index 04986d3b42ed..a9987ee2a3fb 100644 --- a/rasa/cli/initial_project/data/rules.yml +++ b/rasa/cli/initial_project/data/rules.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" rules: diff --git a/rasa/cli/initial_project/data/stories.yml b/rasa/cli/initial_project/data/stories.yml index a54f8480e035..6ff78ee20864 100644 --- a/rasa/cli/initial_project/data/stories.yml +++ b/rasa/cli/initial_project/data/stories.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" stories: diff --git a/rasa/cli/initial_project/domain.yml b/rasa/cli/initial_project/domain.yml index f78974463aa6..932195fe3877 100644 --- a/rasa/cli/initial_project/domain.yml +++ b/rasa/cli/initial_project/domain.yml @@ -1,4 +1,4 @@ -version: "3.0" +version: "3.1" intents: - greet diff --git a/rasa/cli/test.py b/rasa/cli/test.py index abc3a5d876b7..c9ee6e05adf6 100644 --- a/rasa/cli/test.py +++ b/rasa/cli/test.py @@ -1,8 +1,8 @@ import argparse +import asyncio import logging import os from typing import List, Optional, Text, Dict, Union, Any -import asyncio from rasa.cli import SubParsersAction import rasa.shared.data @@ -244,7 +244,6 @@ def run_nlu_test(args: argparse.Namespace) -> None: Args: args: the parsed CLI arguments for 'rasa test nlu'. """ - asyncio.run( run_nlu_test_async( args.config, diff --git a/rasa/core/brokers/broker.py b/rasa/core/brokers/broker.py index 91e38d76ef38..34db09110d03 100644 --- a/rasa/core/brokers/broker.py +++ b/rasa/core/brokers/broker.py @@ -1,6 +1,6 @@ import logging from asyncio import AbstractEventLoop -from typing import Any, Dict, Text, Optional, Union +from typing import Any, Dict, Text, Optional, Union, TypeVar, Type import aiormq @@ -12,6 +12,9 @@ logger = logging.getLogger(__name__) +EB = TypeVar("EB", bound="EventBroker") + + class EventBroker: """Base class for any event broker implementation.""" @@ -39,10 +42,10 @@ async def create( @classmethod async def from_endpoint_config( - cls, + cls: Type[EB], broker_config: EndpointConfig, event_loop: Optional[AbstractEventLoop] = None, - ) -> "EventBroker": + ) -> Optional[EB]: """Creates an `EventBroker` from the endpoint configuration. Args: diff --git a/rasa/core/channels/slack.py b/rasa/core/channels/slack.py index 644bd09a6c3f..d1c27c0cd3c2 100644 --- a/rasa/core/channels/slack.py +++ b/rasa/core/channels/slack.py @@ -67,9 +67,10 @@ async def send_image_url( channel=recipient, as_user=True, text=image, blocks=[image_block] ) - async def send_attachment( + async def send_attachment( # type: ignore[override] self, recipient_id: Text, attachment: Dict[Text, Any], **kwargs: Any ) -> None: + """Sends message with attachment.""" recipient = self.slack_channel or recipient_id await self._post_message( channel=recipient, as_user=True, attachments=[attachment], **kwargs diff --git a/rasa/core/channels/socketio.py b/rasa/core/channels/socketio.py index 70474f9320c4..ff17a0b564d8 100644 --- a/rasa/core/channels/socketio.py +++ b/rasa/core/channels/socketio.py @@ -119,7 +119,7 @@ async def send_custom_json( await self.sio.emit(self.bot_message_evt, **json_message) - async def send_attachment( + async def send_attachment( # type: ignore[override] self, recipient_id: Text, attachment: Dict[Text, Any], **kwargs: Any ) -> None: """Sends an attachment to the user.""" diff --git a/rasa/core/featurizers/tracker_featurizers.py b/rasa/core/featurizers/tracker_featurizers.py index 7375191e576c..a0764c6f2d9a 100644 --- a/rasa/core/featurizers/tracker_featurizers.py +++ b/rasa/core/featurizers/tracker_featurizers.py @@ -508,9 +508,7 @@ def training_states_labels_and_entities( domain: Domain, omit_unset_slots: bool = False, ignore_action_unlikely_intent: bool = False, - ) -> Tuple[ - List[List[State]], List[List[Optional[Text]]], List[List[Dict[Text, Any]]] - ]: + ) -> Tuple[List[List[State]], List[List[Text]], List[List[Dict[Text, Any]]]]: """Transforms trackers to states, action labels, and entity data. Args: @@ -561,7 +559,9 @@ def training_states_labels_and_entities( if not event.unpredictable: # only actions which can be # predicted at a stories start - actions.append(event.action_name or event.action_text) + action = event.action_name or event.action_text + if action is not None: + actions.append(action) entities.append(entity_data) else: # unpredictable actions can be diff --git a/rasa/core/migrate.py b/rasa/core/migrate.py index fcc8f1998a67..b82cd208d691 100644 --- a/rasa/core/migrate.py +++ b/rasa/core/migrate.py @@ -348,7 +348,10 @@ def migrate_domain_format( f"only eligible domain files." ) - if file_dict.get(KEY_TRAINING_DATA_FORMAT_VERSION) == "3.0": + if ( + file_dict.get(KEY_TRAINING_DATA_FORMAT_VERSION) + == LATEST_TRAINING_DATA_FORMAT_VERSION + ): migrated_files.append(file) if migrated_files: diff --git a/rasa/core/policies/memoization.py b/rasa/core/policies/memoization.py index 251995fb29d3..9bf0fea02657 100644 --- a/rasa/core/policies/memoization.py +++ b/rasa/core/policies/memoization.py @@ -141,7 +141,10 @@ def _create_lookup_from_states( return lookup - def _create_feature_key(self, states: List[State]) -> Text: + def _create_feature_key(self, states: List[State]) -> Optional[Text]: + if not states: + return None + # we sort keys to make sure that the same states # represented as dictionaries have the same json strings # quotes are removed for aesthetic reasons diff --git a/rasa/core/policies/ted_policy.py b/rasa/core/policies/ted_policy.py index a6f10bf1b948..a82189fb5a43 100644 --- a/rasa/core/policies/ted_policy.py +++ b/rasa/core/policies/ted_policy.py @@ -693,6 +693,7 @@ def train( training_trackers: List[TrackerWithCachedStates], domain: Domain, precomputations: Optional[MessageContainerForCoreFeaturization] = None, + **kwargs: Any, ) -> Resource: """Trains the policy (see parent class for full docstring).""" if not training_trackers: @@ -809,8 +810,8 @@ def predict_action_probabilities( self, tracker: DialogueStateTracker, domain: Domain, - precomputations: Optional[MessageContainerForCoreFeaturization] = None, rule_only_data: Optional[Dict[Text, Any]] = None, + precomputations: Optional[MessageContainerForCoreFeaturization] = None, **kwargs: Any, ) -> PolicyPrediction: """Predicts the next action (see parent class for full docstring).""" diff --git a/rasa/core/policies/unexpected_intent_policy.py b/rasa/core/policies/unexpected_intent_policy.py index 132dbaca48ab..8c45527d71e1 100644 --- a/rasa/core/policies/unexpected_intent_policy.py +++ b/rasa/core/policies/unexpected_intent_policy.py @@ -328,7 +328,7 @@ def __init__( common.mark_as_experimental_feature("UnexpecTED Intent Policy") - def _standard_featurizer(self) -> TrackerFeaturizer: + def _standard_featurizer(self) -> IntentMaxHistoryTrackerFeaturizer: return IntentMaxHistoryTrackerFeaturizer( IntentTokenizerSingleStateFeaturizer(), max_history=self.config.get(POLICY_MAX_HISTORY), @@ -565,8 +565,8 @@ def predict_action_probabilities( self, tracker: DialogueStateTracker, domain: Domain, - precomputations: Optional[MessageContainerForCoreFeaturization] = None, rule_only_data: Optional[Dict[Text, Any]] = None, + precomputations: Optional[MessageContainerForCoreFeaturization] = None, **kwargs: Any, ) -> PolicyPrediction: """Predicts the next action the bot should take after seeing the tracker. @@ -574,9 +574,9 @@ def predict_action_probabilities( Args: tracker: Tracker containing past conversation events. domain: Domain of the assistant. - precomputations: Contains precomputed features and attributes. rule_only_data: Slots and loops which are specific to rules and hence should be ignored by this policy. + precomputations: Contains precomputed features and attributes. Returns: The policy's prediction (e.g. the probabilities for the actions). diff --git a/rasa/core/tracker_store.py b/rasa/core/tracker_store.py index 4c563cd67162..5f3ad4c04dba 100644 --- a/rasa/core/tracker_store.py +++ b/rasa/core/tracker_store.py @@ -17,6 +17,8 @@ Union, TYPE_CHECKING, Generator, + TypeVar, + Generic, ) from boto3.dynamodb.conditions import Key @@ -68,6 +70,40 @@ class TrackerDeserialisationException(RasaException): """Raised when an error is encountered while deserialising a tracker.""" +SerializationType = TypeVar("SerializationType") + + +class SerializedTrackerRepresentation(Generic[SerializationType]): + """Mixin class for specifying different serialization methods per tracker store.""" + + @staticmethod + def serialise_tracker(tracker: DialogueStateTracker) -> SerializationType: + """Requires implementation to return representation of tracker.""" + raise NotImplementedError() + + +class SerializedTrackerAsText(SerializedTrackerRepresentation[Text]): + """Mixin class that returns the serialized tracker as string.""" + + @staticmethod + def serialise_tracker(tracker: DialogueStateTracker) -> Text: + """Serializes the tracker, returns representation of the tracker.""" + dialogue = tracker.as_dialogue() + + return json.dumps(dialogue.as_dict()) + + +class SerializedTrackerAsDict(SerializedTrackerRepresentation[Dict]): + """Mixin class that returns the serialized tracker as dictionary.""" + + @staticmethod + def serialise_tracker(tracker: DialogueStateTracker) -> Dict: + """Serializes the tracker, returns representation of the tracker.""" + d = tracker.as_dialogue().as_dict() + d.update({"sender_id": tracker.sender_id}) + return d + + class TrackerStore: """Represents common behavior and interface for all `TrackerStore`s.""" @@ -85,7 +121,7 @@ def __init__( destination. kwargs: Additional kwargs. """ - self.domain = domain or Domain.empty() + self._domain = domain or Domain.empty() self.event_broker = event_broker self.max_event_history = None @@ -141,10 +177,10 @@ def get_or_create_tracker( return tracker def init_tracker(self, sender_id: Text) -> "DialogueStateTracker": - """Returns a Dialogue State Tracker""" + """Returns a Dialogue State Tracker.""" return DialogueStateTracker( sender_id, - self.domain.slots if self.domain else None, + self.domain.slots, max_event_history=self.max_event_history, ) @@ -237,16 +273,9 @@ def number_of_existing_events(self, sender_id: Text) -> int: return len(old_tracker.events) if old_tracker else 0 def keys(self) -> Iterable[Text]: - """Returns the set of values for the tracker store's primary key""" + """Returns the set of values for the tracker store's primary key.""" raise NotImplementedError() - @staticmethod - def serialise_tracker(tracker: DialogueStateTracker) -> Text: - """Serializes the tracker, returns representation of the tracker.""" - dialogue = tracker.as_dialogue() - - return json.dumps(dialogue.as_dict()) - def deserialise_tracker( self, sender_id: Text, serialised_tracker: Union[Text, bytes] ) -> Optional[DialogueStateTracker]: @@ -266,9 +295,18 @@ def deserialise_tracker( return tracker + @property + def domain(self) -> Domain: + """Returns the domain of the tracker store.""" + return self._domain -class InMemoryTrackerStore(TrackerStore): - """Stores conversation history in memory""" + @domain.setter + def domain(self, domain: Optional[Domain]) -> None: + self._domain = domain or Domain.empty() + + +class InMemoryTrackerStore(TrackerStore, SerializedTrackerAsText): + """Stores conversation history in memory.""" def __init__( self, @@ -276,6 +314,7 @@ def __init__( event_broker: Optional[EventBroker] = None, **kwargs: Dict[Text, Any], ) -> None: + """Initializes the tracker store.""" self.store: Dict[Text, Text] = {} super().__init__(domain, event_broker, **kwargs) @@ -286,6 +325,7 @@ def save(self, tracker: DialogueStateTracker) -> None: self.store[tracker.sender_id] = serialised def retrieve(self, sender_id: Text) -> Optional[DialogueStateTracker]: + """Returns tracker matching sender_id.""" if sender_id in self.store: logger.debug(f"Recreating tracker for id '{sender_id}'") return self.deserialise_tracker(sender_id, self.store[sender_id]) @@ -295,12 +335,12 @@ def retrieve(self, sender_id: Text) -> Optional[DialogueStateTracker]: return None def keys(self) -> Iterable[Text]: - """Returns sender_ids of the Tracker Store in memory""" + """Returns sender_ids of the Tracker Store in memory.""" return self.store.keys() -class RedisTrackerStore(TrackerStore): - """Stores conversation history in Redis""" +class RedisTrackerStore(TrackerStore, SerializedTrackerAsText): + """Stores conversation history in Redis.""" def __init__( self, @@ -318,6 +358,7 @@ def __init__( ssl_ca_certs: Optional[Text] = None, **kwargs: Dict[Text, Any], ) -> None: + """Initializes the tracker store.""" import redis self.red = redis.StrictRedis( @@ -388,8 +429,8 @@ def keys(self) -> Iterable[Text]: return self.red.keys(self.key_prefix + "*") -class DynamoTrackerStore(TrackerStore): - """Stores conversation history in DynamoDB""" +class DynamoTrackerStore(TrackerStore, SerializedTrackerAsDict): + """Stores conversation history in DynamoDB.""" def __init__( self, @@ -451,12 +492,17 @@ def save(self, tracker: DialogueStateTracker) -> None: self.db.put_item(Item=serialized) - def serialise_tracker(self, tracker: "DialogueStateTracker") -> Dict: - """Serializes the tracker, returns object with decimal types.""" - d = tracker.as_dialogue().as_dict() - d.update({"sender_id": tracker.sender_id}) - # DynamoDB cannot store `float`s, so we'll convert them to `Decimal`s - return core_utils.replace_floats_with_decimals(d) + @staticmethod + def serialise_tracker( + tracker: "DialogueStateTracker", + ) -> Dict: + """Serializes the tracker, returns object with decimal types. + + DynamoDB cannot store `float`s, so we'll convert them to `Decimal`s. + """ + return core_utils.replace_floats_with_decimals( + SerializedTrackerAsDict.serialise_tracker(tracker) + ) def retrieve(self, sender_id: Text) -> Optional[DialogueStateTracker]: """Retrieve dialogues for a sender_id in reverse-chronological order. @@ -499,7 +545,7 @@ def keys(self) -> Iterable[Text]: return sender_ids -class MongoTrackerStore(TrackerStore): +class MongoTrackerStore(TrackerStore, SerializedTrackerAsText): """Stores conversation history in Mongo. Property methods: @@ -778,7 +824,7 @@ def validate_port(port: Any) -> Optional[int]: return port -class SQLTrackerStore(TrackerStore): +class SQLTrackerStore(TrackerStore, SerializedTrackerAsText): """Store which can save and retrieve trackers from an SQL database.""" Base: DeclarativeMeta = declarative_base() @@ -1110,8 +1156,10 @@ def _additional_events( class FailSafeTrackerStore(TrackerStore): - """Wraps a tracker store so that we can fallback to a different tracker store in - case of errors.""" + """Tracker store wrapper. + + Allows a fallback to a different tracker store in case of errors. + """ def __init__( self, @@ -1134,7 +1182,8 @@ def __init__( super().__init__(tracker_store.domain, tracker_store.event_broker) @property - def domain(self) -> Optional[Domain]: + def domain(self) -> Domain: + """Returns the domain of the primary tracker store.""" return self._tracker_store.domain @domain.setter diff --git a/rasa/jupyter.py b/rasa/jupyter.py index 42cc9addc079..4f8992bc19c5 100644 --- a/rasa/jupyter.py +++ b/rasa/jupyter.py @@ -1,7 +1,7 @@ +import asyncio import pprint as pretty_print import typing from typing import Any, Dict, Optional, Text -import asyncio from rasa.shared.exceptions import RasaException from rasa.shared.utils.cli import print_success diff --git a/rasa/nlu/classifiers/logistic_regression_classifier.py b/rasa/nlu/classifiers/logistic_regression_classifier.py index 7b0eb8817a99..d243ab6adfd5 100644 --- a/rasa/nlu/classifiers/logistic_regression_classifier.py +++ b/rasa/nlu/classifiers/logistic_regression_classifier.py @@ -173,6 +173,7 @@ def load( model_storage: ModelStorage, resource: Resource, execution_context: ExecutionContext, + **kwargs: Any, ) -> GraphComponent: """Loads trained component (see parent class for full docstring).""" try: diff --git a/rasa/nlu/persistor.py b/rasa/nlu/persistor.py index 057c8da851f6..202b2bd404fe 100644 --- a/rasa/nlu/persistor.py +++ b/rasa/nlu/persistor.py @@ -69,7 +69,7 @@ def retrieve(self, model_name: Text, target_path: Text) -> None: self._copy(os.path.basename(tar_name), target_path) @abc.abstractmethod - def _retrieve_tar(self, filename: Text) -> Text: + def _retrieve_tar(self, filename: Text) -> None: """Downloads a model previously persisted to cloud storage.""" raise NotImplementedError diff --git a/rasa/nlu/selectors/response_selector.py b/rasa/nlu/selectors/response_selector.py index f3ba95fdd08c..e8e0571d762b 100644 --- a/rasa/nlu/selectors/response_selector.py +++ b/rasa/nlu/selectors/response_selector.py @@ -331,7 +331,9 @@ def label_sub_key(self) -> Text: return LABEL_SUB_KEY @staticmethod - def model_class(use_text_as_label: bool) -> Type[RasaModel]: + def model_class( # type: ignore[override] + use_text_as_label: bool, + ) -> Type[RasaModel]: """Returns model class.""" if use_text_as_label: return DIET2DIET diff --git a/rasa/shared/constants.py b/rasa/shared/constants.py index e77a4b8c95e8..a7035d7d3aee 100644 --- a/rasa/shared/constants.py +++ b/rasa/shared/constants.py @@ -44,7 +44,7 @@ CONFIG_SCHEMA_FILE = "shared/utils/schemas/config.yml" RESPONSES_SCHEMA_FILE = "shared/nlu/training_data/schemas/responses.yml" SCHEMA_EXTENSIONS_FILE = "shared/utils/pykwalify_extensions.py" -LATEST_TRAINING_DATA_FORMAT_VERSION = "3.0" +LATEST_TRAINING_DATA_FORMAT_VERSION = "3.1" DOMAIN_SCHEMA_FILE = "shared/utils/schemas/domain.yml" diff --git a/rasa/shared/core/domain.py b/rasa/shared/core/domain.py index 49bba476fe29..06f4ecc7001d 100644 --- a/rasa/shared/core/domain.py +++ b/rasa/shared/core/domain.py @@ -19,6 +19,7 @@ NamedTuple, Callable, ) +from dataclasses import dataclass from ruamel.yaml.scalarstring import DoubleQuotedScalarString @@ -70,6 +71,7 @@ IS_RETRIEVAL_INTENT_KEY = "is_retrieval_intent" ENTITY_ROLES_KEY = "roles" ENTITY_GROUPS_KEY = "groups" +ENTITY_FEATURIZATION_KEY = "influence_conversation" KEY_SLOTS = "slots" KEY_INTENTS = "intents" @@ -136,6 +138,16 @@ def as_dict(self) -> Dict: } +@dataclass +class EntityProperties: + """Class for keeping track of the properties of entities in the domain.""" + + entities: List[Text] + roles: Dict[Text, List[Text]] + groups: Dict[Text, List[Text]] + default_ignored_entities: List[Text] + + class Domain: """The domain specifies the universe in which the bot's policy acts. @@ -461,16 +473,13 @@ def collect_slots(slot_dict: Dict[Text, Any]) -> List[Slot]: @staticmethod def _transform_intent_properties_for_internal_use( - intent: Dict[Text, Any], - entities: List[Text], - roles: Dict[Text, List[Text]], - groups: Dict[Text, List[Text]], + intent: Dict[Text, Any], entity_properties: EntityProperties ) -> Dict[Text, Any]: """Transforms the intent's parameters in a format suitable for internal use. When an intent is retrieved from the `domain.yml` file, it contains two - parameters, the `use_entities` and the `ignore_entities` parameter. With - the values of these two parameters the Domain class is updated, a new + parameters, the `use_entities` and the `ignore_entities` parameter. + With the values of these two parameters the Domain class is updated, a new parameter is added to the intent called `used_entities` and the two previous parameters are deleted. This happens because internally only the parameter `used_entities` is needed to list all the entities that should be @@ -479,9 +488,7 @@ def _transform_intent_properties_for_internal_use( Args: intent: The intent as retrieved from the `domain.yml` file thus having two parameters, the `use_entities` and the `ignore_entities` parameter. - entities: All entities as provided by a domain file. - roles: All roles for entities as provided by a domain file. - groups: All groups for entities as provided by a domain file. + entity_properties: Entity properties as provided by the domain file. Returns: The intent with the new format thus having only one parameter called @@ -504,7 +511,9 @@ def _transform_intent_properties_for_internal_use( f" when to use the ':' character after an intent's name." ) - properties.setdefault(IGNORE_ENTITIES_KEY, []) + properties.setdefault( + IGNORE_ENTITIES_KEY, entity_properties.default_ignored_entities + ) if not properties[USE_ENTITIES_KEY]: # this covers False, None and [] properties[USE_ENTITIES_KEY] = [] @@ -514,22 +523,32 @@ def _transform_intent_properties_for_internal_use( # label with the corresponding role or group label to make sure roles and # groups can also influence the dialogue predictions if properties[USE_ENTITIES_KEY] is True: - included_entities = set(entities) - included_entities.update(Domain.concatenate_entity_labels(roles)) - included_entities.update(Domain.concatenate_entity_labels(groups)) + included_entities = set(entity_properties.entities) - set( + entity_properties.default_ignored_entities + ) + included_entities.update( + Domain.concatenate_entity_labels(entity_properties.roles) + ) + included_entities.update( + Domain.concatenate_entity_labels(entity_properties.groups) + ) else: included_entities = set(properties[USE_ENTITIES_KEY]) for entity in list(included_entities): included_entities.update( - Domain.concatenate_entity_labels(roles, entity) + Domain.concatenate_entity_labels(entity_properties.roles, entity) ) included_entities.update( - Domain.concatenate_entity_labels(groups, entity) + Domain.concatenate_entity_labels(entity_properties.groups, entity) ) excluded_entities = set(properties[IGNORE_ENTITIES_KEY]) for entity in list(excluded_entities): - excluded_entities.update(Domain.concatenate_entity_labels(roles, entity)) - excluded_entities.update(Domain.concatenate_entity_labels(groups, entity)) + excluded_entities.update( + Domain.concatenate_entity_labels(entity_properties.roles, entity) + ) + excluded_entities.update( + Domain.concatenate_entity_labels(entity_properties.groups, entity) + ) used_entities = list(included_entities - excluded_entities) used_entities.sort() @@ -564,31 +583,36 @@ def retrieval_intents(self) -> List[Text]: @classmethod def collect_entity_properties( cls, domain_entities: List[Union[Text, Dict[Text, Any]]] - ) -> Tuple[List[Text], Dict[Text, List[Text]], Dict[Text, List[Text]]]: + ) -> EntityProperties: """Get entity properties for a domain from what is provided by a domain file. Args: domain_entities: The entities as provided by a domain file. Returns: - A list of entity names. - A dictionary of entity names to roles. - A dictionary of entity names to groups. + An instance of EntityProperties. """ - entities: List[Text] = [] - roles: Dict[Text, List[Text]] = {} - groups: Dict[Text, List[Text]] = {} + entity_properties = EntityProperties([], {}, {}, []) for entity in domain_entities: if isinstance(entity, str): - entities.append(entity) + entity_properties.entities.append(entity) elif isinstance(entity, dict): for _entity, sub_labels in entity.items(): - entities.append(_entity) + entity_properties.entities.append(_entity) if sub_labels: if ENTITY_ROLES_KEY in sub_labels: - roles[_entity] = sub_labels[ENTITY_ROLES_KEY] + entity_properties.roles[_entity] = sub_labels[ + ENTITY_ROLES_KEY + ] if ENTITY_GROUPS_KEY in sub_labels: - groups[_entity] = sub_labels[ENTITY_GROUPS_KEY] + entity_properties.groups[_entity] = sub_labels[ + ENTITY_GROUPS_KEY + ] + if ( + ENTITY_FEATURIZATION_KEY in sub_labels + and sub_labels[ENTITY_FEATURIZATION_KEY] is False + ): + entity_properties.default_ignored_entities.append(_entity) else: raise InvalidDomain( f"In the `domain.yml` file, the entity '{_entity}' cannot" @@ -608,23 +632,19 @@ def collect_entity_properties( f"not supported: '{type(entity).__name__}'" ) - return entities, roles, groups + return entity_properties @classmethod def collect_intent_properties( cls, intents: List[Union[Text, Dict[Text, Any]]], - entities: List[Text], - roles: Dict[Text, List[Text]], - groups: Dict[Text, List[Text]], + entity_properties: EntityProperties, ) -> Dict[Text, Dict[Text, Union[bool, List]]]: """Get intent properties for a domain from what is provided by a domain file. Args: intents: The intents as provided by a domain file. - entities: All entities as provided by a domain file. - roles: The roles of entities as provided by a domain file. - groups: The groups of entities as provided by a domain file. + entity_properties: Entity properties as provided by the domain file. Returns: The intent properties to be stored in the domain. @@ -635,9 +655,7 @@ def collect_intent_properties( duplicates = set() for intent in intents: - intent_name, properties = cls._intent_properties( - intent, entities, roles, groups - ) + intent_name, properties = cls._intent_properties(intent, entity_properties) if intent_name in intent_properties.keys(): duplicates.add(intent_name) @@ -651,28 +669,29 @@ def collect_intent_properties( f"Either rename or remove the duplicate ones." ) - cls._add_default_intents(intent_properties, entities, roles, groups) + cls._add_default_intents(intent_properties, entity_properties) return intent_properties @classmethod def _intent_properties( - cls, - intent: Union[Text, Dict[Text, Any]], - entities: List[Text], - roles: Dict[Text, List[Text]], - groups: Dict[Text, List[Text]], + cls, intent: Union[Text, Dict[Text, Any]], entity_properties: EntityProperties ) -> Tuple[Text, Dict[Text, Any]]: if not isinstance(intent, dict): intent_name = intent - intent = {intent_name: {USE_ENTITIES_KEY: True, IGNORE_ENTITIES_KEY: []}} + intent = { + intent_name: { + USE_ENTITIES_KEY: True, + IGNORE_ENTITIES_KEY: entity_properties.default_ignored_entities, + } + } else: intent_name = list(intent.keys())[0] return ( intent_name, cls._transform_intent_properties_for_internal_use( - intent, entities, roles, groups + intent, entity_properties ), ) @@ -680,15 +699,11 @@ def _intent_properties( def _add_default_intents( cls, intent_properties: Dict[Text, Dict[Text, Union[bool, List]]], - entities: List[Text], - roles: Optional[Dict[Text, List[Text]]], - groups: Optional[Dict[Text, List[Text]]], + entity_properties: EntityProperties, ) -> None: for intent_name in rasa.shared.core.constants.DEFAULT_INTENTS: if intent_name not in intent_properties: - _, properties = cls._intent_properties( - intent_name, entities, roles, groups - ) + _, properties = cls._intent_properties(intent_name, entity_properties) intent_properties.update(properties) def __init__( @@ -721,11 +736,9 @@ def __init__( session_config: Configuration for conversation sessions. Conversations are restarted at the end of a session. """ - self.entities, self.roles, self.groups = self.collect_entity_properties( - entities - ) + self.entity_properties = self.collect_entity_properties(entities) self.intent_properties = self.collect_intent_properties( - intents, self.entities, self.roles, self.groups + intents, self.entity_properties ) self.overridden_default_intents = self._collect_overridden_default_intents( intents @@ -1023,10 +1036,13 @@ def slot_states(self) -> List[Text]: @rasa.shared.utils.common.lazy_property def entity_states(self) -> List[Text]: """Returns all available entity state strings.""" - entity_states = copy.deepcopy(self.entities) - entity_states.extend(Domain.concatenate_entity_labels(self.roles)) - entity_states.extend(Domain.concatenate_entity_labels(self.groups)) + entity_states.extend( + Domain.concatenate_entity_labels(self.entity_properties.roles) + ) + entity_states.extend( + Domain.concatenate_entity_labels(self.entity_properties.groups) + ) return entity_states @@ -1524,6 +1540,11 @@ def intents(self) -> List[Text]: """Returns sorted list of intents.""" return sorted(self.intent_properties.keys()) + @rasa.shared.utils.common.lazy_property + def entities(self) -> List[Text]: + """Returns sorted list of entities.""" + return sorted(self.entity_properties.entities) + @property def _slots_for_domain_warnings(self) -> List[Text]: """Fetch names of slots that are used in domain warnings. diff --git a/rasa/shared/core/events.py b/rasa/shared/core/events.py index 8164f673281e..fc1ed0787f3f 100644 --- a/rasa/shared/core/events.py +++ b/rasa/shared/core/events.py @@ -20,6 +20,7 @@ Iterable, cast, Tuple, + TypeVar, ) import rasa.shared.utils.common @@ -243,6 +244,9 @@ def do_events_begin_with_session_start(events: List["Event"]) -> bool: ) +E = TypeVar("E", bound="Event") + + class Event(ABC): """Describes events in conversation and how the affect the conversation state. @@ -305,7 +309,9 @@ def from_parameters( return event_class._from_parameters(parameters) @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List["Event"]]: + def _from_story_string( + cls: Type[E], parameters: Dict[Text, Any] + ) -> Optional[List[E]]: """Called to convert a parsed story line into an event.""" return [cls(parameters.get("timestamp"), parameters.get("metadata"))] @@ -605,7 +611,9 @@ def as_sub_state(self) -> Dict[Text, Union[None, Text, List[Optional[Text]]]]: return out @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["UserUttered"]]: try: return [ cls._from_parse_data( @@ -1185,7 +1193,9 @@ def as_dict(self) -> Dict[Text, Any]: return d @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["ReminderScheduled"]]: trigger_date_time = parser.parse(parameters.get("date_time")) @@ -1299,7 +1309,9 @@ def as_story_string(self) -> Text: return f"{self.type_name}{props}" @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["ReminderCancelled"]]: return [ ReminderCancelled( parameters.get("name"), @@ -1363,7 +1375,9 @@ def __hash__(self) -> int: return hash(32143124319) @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["StoryExported"]]: return [ StoryExported( parameters.get("path"), @@ -1431,7 +1445,9 @@ def as_story_string(self) -> Text: return f"{self.type_name}{props}" @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["FollowupAction"]]: return [ FollowupAction( @@ -1536,6 +1552,13 @@ def __init__( self.action_text = action_text self.hide_rule_turn = hide_rule_turn + if self.action_name is None and self.action_text is None: + raise ValueError( + "Both the name of the action and the end-to-end " + "predicted text are missing. " + "The `ActionExecuted` event cannot be initialised." + ) + super().__init__(timestamp, metadata) def __members__(self) -> Tuple[Optional[Text], Optional[Text], Text]: @@ -1548,9 +1571,9 @@ def __repr__(self) -> Text: self.action_name, self.policy, self.confidence ) - def __str__(self) -> Optional[Text]: + def __str__(self) -> Text: """Returns event as human readable string.""" - return self.action_name or self.action_text + return str(self.action_name) or str(self.action_text) def __hash__(self) -> int: """Returns unique hash for event.""" @@ -1575,7 +1598,9 @@ def as_story_string(self) -> Optional[Text]: return self.action_name @classmethod - def _from_story_string(cls, parameters: Dict[Text, Any]) -> Optional[List[Event]]: + def _from_story_string( + cls, parameters: Dict[Text, Any] + ) -> Optional[List["ActionExecuted"]]: return [ ActionExecuted( parameters.get("name"), diff --git a/rasa/shared/core/generator.py b/rasa/shared/core/generator.py index a4b17ee31581..023580b4f36c 100644 --- a/rasa/shared/core/generator.py +++ b/rasa/shared/core/generator.py @@ -3,9 +3,21 @@ import copy import logging import random +from contextlib import contextmanager from tqdm import tqdm -from typing import Optional, List, Text, Set, Dict, Tuple, Deque, Any +from typing import ( + Optional, + List, + Text, + Set, + Dict, + Tuple, + Deque, + Any, + Iterable, + Generator, +) from rasa.shared.constants import DOCS_URL_STORIES from rasa.shared.core.constants import SHOULD_NOT_BE_SET @@ -52,12 +64,13 @@ class TrackerWithCachedStates(DialogueStateTracker): def __init__( self, sender_id: Text, - slots: Optional[List[Slot]], + slots: Optional[Iterable[Slot]], max_event_history: Optional[int] = None, domain: Optional[Domain] = None, is_augmented: bool = False, is_rule_tracker: bool = False, ) -> None: + """Initializes a tracker with cached states.""" super().__init__( sender_id, slots, max_event_history, is_rule_tracker=is_rule_tracker ) @@ -65,18 +78,20 @@ def __init__( self.domain = domain if domain is not None else Domain.empty() # T/F property to filter augmented stories self.is_augmented = is_augmented + self.__skip_states = False @classmethod def from_events( cls, sender_id: Text, evts: List[Event], - slots: Optional[List[Slot]] = None, + slots: Optional[Iterable[Slot]] = None, max_event_history: Optional[int] = None, sender_source: Optional[Text] = None, domain: Optional[Domain] = None, is_rule_tracker: bool = False, ) -> "TrackerWithCachedStates": + """Initializes a tracker with given events.""" tracker = cls( sender_id, slots, max_event_history, domain, is_rule_tracker=is_rule_tracker ) @@ -159,14 +174,22 @@ def init_copy(self) -> "TrackerWithCachedStates": self.is_rule_tracker, ) + @contextmanager + def _skip_states_manager(self) -> Generator[None, None, None]: + self.__skip_states = True + try: + yield + finally: + self.__skip_states = False + def copy( self, sender_id: Text = "", sender_source: Text = "" ) -> "TrackerWithCachedStates": """Creates a duplicate of this tracker. A new tracker will be created and all events - will be replayed.""" - + will be replayed. + """ # This is an optimization, we could use the original copy, but # the states would be lost and we would need to recalculate them @@ -174,8 +197,9 @@ def copy( tracker.sender_id = sender_id tracker.sender_source = sender_source - for event in self.events: - tracker.update(event, skip_states=True) + with self._skip_states_manager(): + for event in self.events: + tracker.update(event) tracker._states_for_hashing = copy.copy(self._states_for_hashing) @@ -189,18 +213,22 @@ def _append_current_state(self) -> None: frozen_state = self.freeze_current_state(state) self._states_for_hashing.append(frozen_state) - def update(self, event: Event, skip_states: bool = False) -> None: + def update( + self, + event: Event, + domain: Optional[Domain] = None, + ) -> None: """Modify the state of the tracker according to an ``Event``.""" # if `skip_states` is `True`, this function behaves exactly like the # normal update of the `DialogueStateTracker` - if not self._states_for_hashing and not skip_states: + if not self._states_for_hashing and not self.__skip_states: # rest of this function assumes we have the previous state # cached. let's make sure it is there. self._states_for_hashing = self.past_states_for_hashing(self.domain) super().update(event) - if not skip_states: + if not self.__skip_states: if isinstance(event, ActionExecuted): pass elif isinstance(event, ActionReverted): diff --git a/rasa/shared/core/trackers.py b/rasa/shared/core/trackers.py index dbe1efa4c3d3..a8627418ecee 100644 --- a/rasa/shared/core/trackers.py +++ b/rasa/shared/core/trackers.py @@ -121,7 +121,7 @@ def __missing__(self, key: Text) -> Slot: value = self[key] = Slot(key, mappings=[]) return value - def __contains__(self, key: Text) -> bool: + def __contains__(self, key: Any) -> bool: return True @@ -136,13 +136,14 @@ def from_dict( cls, sender_id: Text, events_as_dict: List[Dict[Text, Any]], - slots: Optional[List[Slot]] = None, + slots: Optional[Iterable[Slot]] = None, max_event_history: Optional[int] = None, ) -> "DialogueStateTracker": """Create a tracker from dump. The dump should be an array of dumped events. When restoring - the tracker, these events will be replayed to recreate the state.""" + the tracker, these events will be replayed to recreate the state. + """ evts = events.deserialise_events(events_as_dict) return cls.from_events(sender_id, evts, slots, max_event_history) diff --git a/rasa/shared/core/training_data/story_writer/story_writer.py b/rasa/shared/core/training_data/story_writer/story_writer.py index d92f72426787..d82787d120b5 100644 --- a/rasa/shared/core/training_data/story_writer/story_writer.py +++ b/rasa/shared/core/training_data/story_writer/story_writer.py @@ -10,8 +10,10 @@ class StoryWriter: - @staticmethod + """Writes story training data to file.""" + def dumps( + self, story_steps: List["StoryStep"], is_appendable: bool = False, is_test_story: bool = False, @@ -30,8 +32,8 @@ def dumps( """ raise NotImplementedError - @staticmethod def dump( + self, target: Union[Text, Path, yaml.StringIO], story_steps: List["StoryStep"], is_appendable: bool = False, diff --git a/rasa/shared/nlu/training_data/formats/dialogflow.py b/rasa/shared/nlu/training_data/formats/dialogflow.py index ac89edd4f740..c0ee20918a50 100644 --- a/rasa/shared/nlu/training_data/formats/dialogflow.py +++ b/rasa/shared/nlu/training_data/formats/dialogflow.py @@ -1,6 +1,7 @@ import logging import os -from typing import Any, Dict, Optional, Text, List, Tuple +from pathlib import Path +from typing import Any, Dict, Optional, Text, List, Tuple, Union import rasa.shared.nlu.training_data.util from rasa.shared.constants import DOCS_BASE_URL @@ -24,7 +25,9 @@ class DialogflowReader(TrainingDataReader): - def read(self, fn: Text, **kwargs: Any) -> "TrainingData": + """Reader for NLU training data.""" + + def read(self, filename: Union[Text, Path], **kwargs: Any) -> "TrainingData": """Loads training data stored in the Dialogflow data format.""" language = kwargs["language"] fformat = kwargs["fformat"] @@ -35,12 +38,16 @@ def read(self, fn: Text, **kwargs: Any) -> "TrainingData": "".format(DIALOGFLOW_INTENT, DIALOGFLOW_ENTITIES) ) - root_js = rasa.shared.utils.io.read_json_file(fn) - examples = self._read_examples(fn, language, fformat) + root_js = rasa.shared.utils.io.read_json_file(filename) + + if isinstance(filename, Path): + filename = str(filename) + + examples = self._read_examples(filename, language, fformat) if not examples: rasa.shared.utils.io.raise_warning( - f"No training examples found for dialogflow file {fn}!", + f"No training examples found for dialogflow file {filename}!", docs=DOCS_URL_MIGRATE_GOOGLE, ) return TrainingData() diff --git a/rasa/shared/nlu/training_data/formats/rasa_yaml.py b/rasa/shared/nlu/training_data/formats/rasa_yaml.py index 9bfc060c5ced..042e8df28604 100644 --- a/rasa/shared/nlu/training_data/formats/rasa_yaml.py +++ b/rasa/shared/nlu/training_data/formats/rasa_yaml.py @@ -68,7 +68,9 @@ def validate(self, string: Text) -> None: e.filename = self.filename raise e - def reads(self, string: Text, **kwargs: Any) -> "TrainingData": + def reads( # type: ignore[override] + self, string: Text, **kwargs: Any + ) -> "TrainingData": """Reads TrainingData in YAML format from a string. Args: diff --git a/rasa/utils/common.py b/rasa/utils/common.py index 9a8c42f9f018..bc4ce03677ec 100644 --- a/rasa/utils/common.py +++ b/rasa/utils/common.py @@ -66,7 +66,7 @@ def __enter__(self) -> "TempDirectoryPath": def __exit__( self, _exc: Optional[Type[BaseException]], - _value: Optional[Exception], + _value: Optional[BaseException], _tb: Optional[TracebackType], ) -> None: if os.path.exists(self): diff --git a/rasa/utils/tensorflow/layers.py b/rasa/utils/tensorflow/layers.py index 78501aebe4dc..7e46221587dd 100644 --- a/rasa/utils/tensorflow/layers.py +++ b/rasa/utils/tensorflow/layers.py @@ -1157,7 +1157,7 @@ def _chosen_loss(self) -> Callable: ) # noinspection PyMethodOverriding - def call( + def call( # type: ignore[override] self, inputs_embed: tf.Tensor, labels_embed: tf.Tensor, @@ -1256,7 +1256,7 @@ def __init__( model_confidence=model_confidence, ) - def call( + def call( # type: ignore[override] self, batch_inputs_embed: tf.Tensor, batch_labels_embed: tf.Tensor, diff --git a/setup.cfg b/setup.cfg index c729c20197f3..6915e7b23646 100644 --- a/setup.cfg +++ b/setup.cfg @@ -47,4 +47,4 @@ disallow_untyped_decorators = True # FIXME: working our way towards removing these # see https://github.com/RasaHQ/rasa/pull/6470 # the list below is sorted by the number of errors for each error code, in decreasing order -disable_error_code = arg-type, assignment, override, misc +disable_error_code = arg-type, assignment, misc diff --git a/tests/cli/test_rasa_data.py b/tests/cli/test_rasa_data.py index 700d2beaf1e9..d042c164b82d 100644 --- a/tests/cli/test_rasa_data.py +++ b/tests/cli/test_rasa_data.py @@ -206,8 +206,8 @@ def test_validate_files_form_not_found_invalid_domain( def test_validate_files_with_active_loop_null(tmp_path: Path): file_name = tmp_path / "rules.yml" file_name.write_text( - """ - version: "3.0" + f""" + version: "{LATEST_TRAINING_DATA_FORMAT_VERSION}" rules: - rule: test path steps: diff --git a/tests/cli/test_rasa_run.py b/tests/cli/test_rasa_run.py index 7cea40c9ca44..f9885cda85b2 100644 --- a/tests/cli/test_rasa_run.py +++ b/tests/cli/test_rasa_run.py @@ -1,4 +1,5 @@ import os +import sys from typing import Callable from _pytest.pytester import RunResult @@ -14,16 +15,30 @@ def test_run_does_not_start(run_in_simple_project: Callable[..., RunResult]): assert any(error in line for line in output.outlines) -def test_run_help(run: Callable[..., RunResult]): +def test_run_help( + run: Callable[..., RunResult], +): output = run("run", "--help") - help_text = """usage: rasa run [-h] [-v] [-vv] [--quiet] [-m MODEL] [--log-file LOG_FILE] + if sys.version_info.minor >= 9: + # This is required because `argparse` behaves differently on + # Python 3.9 and above. The difference is the changed formatting of help + # output for CLI arguments with `nargs="*" + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] [--cors [CORS ...]] + [--enable-api] [--response-timeout RESPONSE_TIMEOUT]""" + else: + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] + [--cors [CORS [CORS ...]]] [--enable-api] + [--response-timeout RESPONSE_TIMEOUT]""" + + help_text = ( + """usage: rasa run [-h] [-v] [-vv] [--quiet] [-m MODEL] [--log-file LOG_FILE] [--use-syslog] [--syslog-address SYSLOG_ADDRESS] [--syslog-port SYSLOG_PORT] [--syslog-protocol SYSLOG_PROTOCOL] [--endpoints ENDPOINTS] - [-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] - [--cors [CORS [CORS ...]]] [--enable-api] - [--response-timeout RESPONSE_TIMEOUT] + """ + + version_dependent + + """ [--remote-storage REMOTE_STORAGE] [--ssl-certificate SSL_CERTIFICATE] [--ssl-keyfile SSL_KEYFILE] [--ssl-ca-file SSL_CA_FILE] @@ -31,6 +46,7 @@ def test_run_help(run: Callable[..., RunResult]): [--connector CONNECTOR] [--jwt-secret JWT_SECRET] [--jwt-method JWT_METHOD] {actions} ... [model-as-positional-argument]""" + ) lines = help_text.split("\n") # expected help text lines should appear somewhere in the output @@ -39,10 +55,19 @@ def test_run_help(run: Callable[..., RunResult]): assert line in printed_help -def test_run_action_help(run: Callable[..., RunResult]): +def test_run_action_help( + run: Callable[..., RunResult], +): output = run("run", "actions", "--help") - help_text = """usage: rasa run actions [-h] [-v] [-vv] [--quiet] [-p PORT] + if sys.version_info.minor >= 9: + # This is required because `argparse` behaves differently on + # Python 3.9 and above. The difference is the changed formatting of help + # output for CLI arguments with `nargs="*" + help_text = """usage: rasa run actions [-h] [-v] [-vv] [--quiet] [-p PORT] + [--cors [CORS ...]] [--actions ACTIONS]""" + else: + help_text = """usage: rasa run actions [-h] [-v] [-vv] [--quiet] [-p PORT] [--cors [CORS [CORS ...]]] [--actions ACTIONS]""" lines = help_text.split("\n") diff --git a/tests/cli/test_rasa_shell.py b/tests/cli/test_rasa_shell.py index 8cd15c98649c..41b213ee6a10 100644 --- a/tests/cli/test_rasa_shell.py +++ b/tests/cli/test_rasa_shell.py @@ -1,3 +1,4 @@ +import sys from typing import Callable from _pytest.pytester import RunResult @@ -5,15 +6,27 @@ def test_shell_help(run: Callable[..., RunResult]): output = run("shell", "--help") - help_text = """usage: rasa shell [-h] [-v] [-vv] [--quiet] + if sys.version_info.minor >= 9: + # This is required because `argparse` behaves differently on + # Python 3.9 and above. The difference is the changed formatting of help + # output for CLI arguments with `nargs="*" + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] [--cors [CORS ...]] + [--enable-api] [--response-timeout RESPONSE_TIMEOUT]""" + else: + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] + [--cors [CORS [CORS ...]]] [--enable-api] + [--response-timeout RESPONSE_TIMEOUT]""" + + help_text = ( + """usage: rasa shell [-h] [-v] [-vv] [--quiet] [--conversation-id CONVERSATION_ID] [-m MODEL] [--log-file LOG_FILE] [--use-syslog] [--syslog-address SYSLOG_ADDRESS] [--syslog-port SYSLOG_PORT] [--syslog-protocol SYSLOG_PROTOCOL] [--endpoints ENDPOINTS] - [-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] - [--cors [CORS [CORS ...]]] [--enable-api] - [--response-timeout RESPONSE_TIMEOUT] + """ + + version_dependent + + """ [--remote-storage REMOTE_STORAGE] [--ssl-certificate SSL_CERTIFICATE] [--ssl-keyfile SSL_KEYFILE] [--ssl-ca-file SSL_CA_FILE] @@ -21,6 +34,7 @@ def test_shell_help(run: Callable[..., RunResult]): [--connector CONNECTOR] [--jwt-secret JWT_SECRET] [--jwt-method JWT_METHOD] {nlu} ... [model-as-positional-argument]""" + ) lines = help_text.split("\n") # expected help text lines should appear somewhere in the output diff --git a/tests/cli/test_rasa_test.py b/tests/cli/test_rasa_test.py index 947297701389..cd468a7e592b 100644 --- a/tests/cli/test_rasa_test.py +++ b/tests/cli/test_rasa_test.py @@ -59,7 +59,7 @@ def test_test_core_warnings(run_in_simple_project_with_model: Callable[..., RunR - intent: affirm - action: utter_happy """ - with open("tests/test_stories.yaml", "w") as f: + with open("tests/test_stories.yml", "w") as f: f.write(simple_test_story_yaml) run_in_simple_project_with_model("test", "core", "--no-warnings") diff --git a/tests/cli/test_rasa_train.py b/tests/cli/test_rasa_train.py index 64d0ebcb5bd6..b03fbe6a5826 100644 --- a/tests/cli/test_rasa_train.py +++ b/tests/cli/test_rasa_train.py @@ -1,5 +1,6 @@ import os import tempfile +import sys from pathlib import Path from _pytest.capture import CaptureFixture @@ -451,7 +452,19 @@ def test_train_nlu_help(run: Callable[..., RunResult]): def test_train_core_help(run: Callable[..., RunResult]): output = run("train", "core", "--help") - help_text = """usage: rasa train core [-h] [-v] [-vv] [--quiet] [-s STORIES] [-d DOMAIN] + if sys.version_info.minor >= 9: + # This is required because `argparse` behaves differently on + # Python 3.9 and above. The difference is the changed formatting of help + # output for CLI arguments with `nargs="*" + help_text = """usage: rasa train core [-h] [-v] [-vv] [--quiet] [-s STORIES] [-d DOMAIN] + [-c CONFIG [CONFIG ...]] [--out OUT] + [--augmentation AUGMENTATION] [--debug-plots] [--force] + [--fixed-model-name FIXED_MODEL_NAME] + [--percentages [PERCENTAGES ...]] [--runs RUNS] + [--finetune [FINETUNE]] + [--epoch-fraction EPOCH_FRACTION]""" + else: + help_text = """usage: rasa train core [-h] [-v] [-vv] [--quiet] [-s STORIES] [-d DOMAIN] [-c CONFIG [CONFIG ...]] [--out OUT] [--augmentation AUGMENTATION] [--debug-plots] [--force] [--fixed-model-name FIXED_MODEL_NAME] diff --git a/tests/cli/test_rasa_x.py b/tests/cli/test_rasa_x.py index fd6d2cc9753c..9981fbd87cdd 100644 --- a/tests/cli/test_rasa_x.py +++ b/tests/cli/test_rasa_x.py @@ -1,3 +1,4 @@ +import sys import argparse from pathlib import Path @@ -6,8 +7,6 @@ from _pytest.monkeypatch import MonkeyPatch from _pytest.pytester import RunResult - - from aioresponses import aioresponses import rasa.shared.utils.io @@ -19,20 +18,33 @@ def test_x_help(run: Callable[..., RunResult]): output = run("x", "--help") - help_text = """usage: rasa x [-h] [-v] [-vv] [--quiet] [-m MODEL] [--data DATA [DATA ...]] + if sys.version_info.minor >= 9: + # This is required because `argparse` behaves differently on + # Python 3.9 and above. The difference is the changed formatting of help + # output for CLI arguments with `nargs="*" + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] [--cors [CORS ...]] + [--enable-api] [--response-timeout RESPONSE_TIMEOUT]""" + else: + version_dependent = """[-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] + [--cors [CORS [CORS ...]]] [--enable-api] + [--response-timeout RESPONSE_TIMEOUT]""" + + help_text = ( + """usage: rasa x [-h] [-v] [-vv] [--quiet] [-m MODEL] [--data DATA [DATA ...]] [-c CONFIG] [-d DOMAIN] [--no-prompt] [--production] [--rasa-x-port RASA_X_PORT] [--config-endpoint CONFIG_ENDPOINT] [--log-file LOG_FILE] [--use-syslog] [--syslog-address SYSLOG_ADDRESS] [--syslog-port SYSLOG_PORT] [--syslog-protocol SYSLOG_PROTOCOL] [--endpoints ENDPOINTS] - [-i INTERFACE] [-p PORT] [-t AUTH_TOKEN] - [--cors [CORS [CORS ...]]] [--enable-api] - [--response-timeout RESPONSE_TIMEOUT] + """ + + version_dependent + + """ [--remote-storage REMOTE_STORAGE] [--ssl-certificate SSL_CERTIFICATE] [--ssl-keyfile SSL_KEYFILE] [--ssl-ca-file SSL_CA_FILE] [--ssl-password SSL_PASSWORD] [--credentials CREDENTIALS] [--connector CONNECTOR] [--jwt-secret JWT_SECRET] [--jwt-method JWT_METHOD]""" + ) lines = help_text.split("\n") # expected help text lines should appear somewhere in the output diff --git a/tests/core/test_migrate.py b/tests/core/test_migrate.py index cc68983bc774..b18e015e856b 100644 --- a/tests/core/test_migrate.py +++ b/tests/core/test_migrate.py @@ -865,8 +865,8 @@ def test_migrate_domain_raises_when_migrated_files_are_found(tmp_path: Path): domain_dir.mkdir() prepare_domain_path( domain_dir, - """ - version: "3.0" + f""" + version: "{LATEST_TRAINING_DATA_FORMAT_VERSION}" intents: [] """, "domain.yml", diff --git a/tests/core/test_processor.py b/tests/core/test_processor.py index 2e138733c3c1..3acfbc49a18c 100644 --- a/tests/core/test_processor.py +++ b/tests/core/test_processor.py @@ -112,13 +112,14 @@ async def test_parsing(default_processor: MessageProcessor): async def test_check_for_unseen_feature(default_processor: MessageProcessor): message = UserMessage('/greet{"name": "Joe"}') old_domain = default_processor.domain - new_domain = Domain.from_dict(old_domain.as_dict()) - new_domain.intent_properties = { - name: intent - for name, intent in new_domain.intent_properties.items() - if name != "greet" - } - new_domain.entities = [e for e in new_domain.entities if e != "name"] + dict_for_new_domain = old_domain.as_dict() + dict_for_new_domain["intents"] = [ + intent for intent in dict_for_new_domain["intents"] if intent != "greet" + ] + dict_for_new_domain["entities"] = [ + entity for entity in dict_for_new_domain["entities"] if entity != "name" + ] + new_domain = Domain.from_dict(dict_for_new_domain) default_processor.domain = new_domain parsed = await default_processor.parse_message(message) diff --git a/tests/shared/core/test_domain.py b/tests/shared/core/test_domain.py index c62a974c80da..eba1b955640b 100644 --- a/tests/shared/core/test_domain.py +++ b/tests/shared/core/test_domain.py @@ -29,6 +29,7 @@ from rasa.shared.core.domain import ( InvalidDomain, SessionConfig, + EntityProperties, ENTITY_ROLES_KEY, USED_ENTITIES_KEY, USE_ENTITIES_KEY, @@ -596,13 +597,16 @@ def test_merge_domain_with_forms(): @pytest.mark.parametrize( - "intents, entities, roles, groups, intent_properties", + "intents, entity_properties, intent_properties", [ ( ["greet", "goodbye"], - ["entity", "other", "third"], - {"entity": ["role-1", "role-2"]}, - {}, + { + "entities": ["entity", "other", "third"], + "roles": {"entity": ["role-1", "role-2"]}, + "groups": {}, + "default_ignored_entities": [], + }, { "greet": { USED_ENTITIES_KEY: [ @@ -626,9 +630,12 @@ def test_merge_domain_with_forms(): ), ( [{"greet": {USE_ENTITIES_KEY: []}}, "goodbye"], - ["entity", "other", "third"], - {}, - {"other": ["1", "2"]}, + { + "entities": ["entity", "other", "third"], + "roles": {}, + "groups": {"other": ["1", "2"]}, + "default_ignored_entities": [], + }, { "greet": {USED_ENTITIES_KEY: []}, "goodbye": { @@ -653,9 +660,12 @@ def test_merge_domain_with_forms(): }, "goodbye", ], - ["entity", "other", "third"], - {"entity": ["role"], "other": ["role"]}, - {}, + { + "entities": ["entity", "other", "third", "unused"], + "roles": {"entity": ["role"], "other": ["role"]}, + "groups": {}, + "default_ignored_entities": ["unused"], + }, { "greet": { "triggers": "utter_goodbye", @@ -680,9 +690,12 @@ def test_merge_domain_with_forms(): {"greet": {"triggers": "utter_goodbye", USE_ENTITIES_KEY: None}}, {"goodbye": {USE_ENTITIES_KEY: [], IGNORE_ENTITIES_KEY: []}}, ], - ["entity", "other", "third"], - {}, - {}, + { + "entities": ["entity", "other", "third"], + "roles": {}, + "groups": {}, + "default_ignored_entities": [], + }, { "greet": {USED_ENTITIES_KEY: [], "triggers": "utter_goodbye"}, "goodbye": {USED_ENTITIES_KEY: []}, @@ -694,9 +707,12 @@ def test_merge_domain_with_forms(): "goodbye", {"chitchat": {"is_retrieval_intent": True, "use_entities": None}}, ], - ["entity", "other", "third"], - {}, - {}, + { + "entities": ["entity", "other", "third"], + "roles": {}, + "groups": {}, + "default_ignored_entities": [], + }, { "greet": {USED_ENTITIES_KEY: ["entity", "other", "third"]}, "goodbye": {USED_ENTITIES_KEY: ["entity", "other", "third"]}, @@ -707,19 +723,40 @@ def test_merge_domain_with_forms(): ) def test_collect_intent_properties( intents: Union[Set[Text], List[Union[Text, Dict[Text, Any]]]], - entities: List[Text], - roles: Dict[Text, List[Text]], - groups: Dict[Text, List[Text]], + entity_properties: Dict[Text, Union[List[Text], Dict[Text, List[Text]]]], intent_properties: Dict[Text, Dict[Text, Union[bool, List]]], ): - Domain._add_default_intents(intent_properties, entities, roles, groups) + entity_properties = EntityProperties(**entity_properties) + Domain._add_default_intents(intent_properties, entity_properties) assert ( - Domain.collect_intent_properties(intents, entities, roles, groups) + Domain.collect_intent_properties(intents, entity_properties) == intent_properties ) +@pytest.mark.parametrize( + "entities, entity_properties", + [ + ( + ["plain_entity", {"ignored_entity": {"influence_conversation": False}}], + { + "entities": ["plain_entity", "ignored_entity"], + "roles": {}, + "groups": {}, + "default_ignored_entities": ["ignored_entity"], + }, + ), + ], +) +def test_collect_entity_properties( + entities: List[Union[Text, Dict[Text, Any]]], + entity_properties: Dict[Text, Union[List[Text], Dict[Text, List[Text]]]], +): + expected_entity_properties = EntityProperties(**entity_properties) + assert Domain.collect_entity_properties(entities) == expected_entity_properties + + def test_load_domain_from_directory_tree(): domain_path = "data/test_domains/test_domain_from_directory_tree" @@ -1049,10 +1086,10 @@ def test_load_domain_with_entity_roles_groups(): assert domain.entities is not None assert "GPE" in domain.entities assert "name" in domain.entities - assert "name" not in domain.roles - assert "GPE" in domain.roles - assert "origin" in domain.roles["GPE"] - assert "destination" in domain.roles["GPE"] + assert "name" not in domain.entity_properties.roles + assert "GPE" in domain.entity_properties.roles + assert "origin" in domain.entity_properties.roles["GPE"] + assert "destination" in domain.entity_properties.roles["GPE"] def test_is_empty(): @@ -1068,7 +1105,7 @@ def test_load_intents_from_as_dict_representation(): {"ask": {USE_ENTITIES_KEY: True}}, {"default": {IGNORE_ENTITIES_KEY: ["unrelated_recognized_entity"]}}, {"goodbye": {USE_ENTITIES_KEY: []}}, - {"greet": {USE_ENTITIES_KEY: ["name"]}}, + {"greet": {USE_ENTITIES_KEY: ["name", "used_entity"]}}, "pure_intent", {"thank": {USE_ENTITIES_KEY: []}}, {"why": {USE_ENTITIES_KEY: []}}, diff --git a/tests/shared/core/test_events.py b/tests/shared/core/test_events.py index e2934792b6a8..c0c910cba8fc 100644 --- a/tests/shared/core/test_events.py +++ b/tests/shared/core/test_events.py @@ -305,34 +305,41 @@ def test_correct_timestamp_setting(event_class): @pytest.mark.parametrize("event_class", rasa.shared.utils.common.all_subclasses(Event)) def test_event_metadata_dict(event_class: Type[Event]): metadata = {"foo": "bar", "quux": 42} + parameters = { + "metadata": metadata, + "event": event_class.type_name, + "parse_data": {}, + "date_time": "2019-11-20T16:09:16Z", + } + # `ActionExecuted` class and its subclasses require either that action_name + # is not None if it is not an end-to-end predicted action + if event_class.type_name in ["action", "wrong_action", "warning_predicted"]: + parameters["name"] = "test" # Create the event from a `dict` that will be accepted by the # `_from_parameters` method of any `Event` subclass (the values themselves # are not important). - event = Event.from_parameters( - { - "metadata": metadata, - "event": event_class.type_name, - "parse_data": {}, - "date_time": "2019-11-20T16:09:16Z", - } - ) + event = Event.from_parameters(parameters) assert event.as_dict()["metadata"] == metadata @pytest.mark.parametrize("event_class", rasa.shared.utils.common.all_subclasses(Event)) def test_event_default_metadata(event_class: Type[Event]): + parameters = { + "event": event_class.type_name, + "parse_data": {}, + "date_time": "2019-11-20T16:09:16Z", + } + # `ActionExecuted` class and its subclasses require either that action_name + # is not None if it is not an end-to-end predicted action + if event_class.type_name in ["action", "wrong_action", "warning_predicted"]: + parameters["name"] = "test" + # Create an event without metadata. When converting the `Event` to a # `dict`, it should not include a `metadata` property - unless it's a # `UserUttered` or a `BotUttered` event (or subclasses of them), in which # case the metadata should be included with a default value of {}. - event = Event.from_parameters( - { - "event": event_class.type_name, - "parse_data": {}, - "date_time": "2019-11-20T16:09:16Z", - } - ) + event = Event.from_parameters(parameters) if isinstance(event, BotUttered) or isinstance(event, UserUttered): assert event.as_dict()["metadata"] == {} @@ -763,7 +770,7 @@ def test_event_executed_comparison(events: List[Event], comparison_result: bool) action_name_target="demo", action_text_target="example", ), - WarningPredictedAction(action_name_prediction="test"), + WarningPredictedAction(action_name="action_listen", action_name_prediction="test"), ] diff --git a/tests/shared/core/test_trackers.py b/tests/shared/core/test_trackers.py index 905756dd5f02..1a869bad4346 100644 --- a/tests/shared/core/test_trackers.py +++ b/tests/shared/core/test_trackers.py @@ -1541,7 +1541,7 @@ def build_tracker(domain: Domain) -> DialogueStateTracker: def test_model_id_is_added_to_events(): tracker = DialogueStateTracker("bloop", []) tracker.model_id = "some_id" - tracker.update(ActionExecuted()) + tracker.update(ActionExecuted(action_name="test")) tracker.update_with_events([UserUttered(), SessionStarted()], None) assert all(e.metadata[METADATA_MODEL_ID] == "some_id" for e in tracker.events) @@ -1549,5 +1549,7 @@ def test_model_id_is_added_to_events(): def test_model_id_is_not_added_to_events_with_id(): tracker = DialogueStateTracker("bloop", []) tracker.model_id = "some_id" - tracker.update(ActionExecuted(metadata={METADATA_MODEL_ID: "old_id"})) + tracker.update( + ActionExecuted(action_name="test", metadata={METADATA_MODEL_ID: "old_id"}) + ) assert tracker.events[-1].metadata[METADATA_MODEL_ID] == "old_id"