From 2597b0550be749f5ab846924da5e8a22d113ff07 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Fri, 22 Apr 2022 14:36:27 +0100 Subject: [PATCH 01/56] Update runner --- .github/workflows/ci.yml | 36 ++++++++++++++++++++++++++---------- pyproject.toml | 2 +- 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 98850e73..77c7cc5d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,10 @@ jobs: #Run pytest and build package test_build: runs-on: ubuntu-latest - + # strategy: + # matrix: + # # os: [macos-latest, ] + # python: [3.8, 3.9, 3.10] steps: - name: Checkout repository uses: actions/checkout@v2 @@ -21,10 +24,10 @@ jobs: - name: Install python uses: actions/setup-python@v2 with: - python-version: '3.7' + python-version: ${{ matrix.python }} - name: Install poetry - uses: Gr1N/setup-poetry@v4 + uses: Gr1N/setup-poetry@v7 - name: Cache poetry dependencies uses: actions/cache@v2 @@ -64,19 +67,32 @@ jobs: - name: Install poetry uses: Gr1N/setup-poetry@v4 - - name: Install toml - run: pip install toml - name: Check for version bump and tag id: version_check - uses: salsify/action-detect-and-tag-new-version@v2 + uses: salsify/action-detect-and-tag-new-version@v2.0.1 with: tag-template: "{VERSION}" create-tag: ${{ github.ref == 'refs/heads/master' }} # only create new tag on master version-command: | python get_version.py - - name: Publish - # Only publish if there is a new tag - if: ${{ steps.version_check.tag }} - run: poetry publish --build -u ${{ secrets.PYPI_USERNAME }} -p ${{ secrets.PYPI_PASSWORD }} + # - name: Publish to pypi + # uses: JRubics/poetry-publish@v1.10 + # if: ${{ steps.version_check.tag }} + # with: + # repository_username: ${{ secrets.PYPI_USERNAME }} + # repository_password: ${{ secrets.PYPI_PASSWORD }} + # repository_name: "summit" + # repository_url: "https://test.pypi.org/legacy/" + + # - name: Publish + # # Only publish if there is a new tag + # if: startsWith(github.ref, 'refs/tags/') + # run: poetry publish --build -u -p --dry-run + - name: Publish to pypi + uses: coveooss/pypi-publish-with-poetry@main + with: + project-name: summit + pypi-token: ${{ secrets.PYPI_TOKEN }} + dry-run: ${{ github.ref != 'refs/heads/main'}} diff --git a/pyproject.toml b/pyproject.toml index 74018f37..df395fb2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "summit" -version = "0.8.4" +version = "0.8.5" description = "Tools for optimizing chemical processes" authors = ["Kobi Felton ", "Jan Rittig"] license = "MIT" From d9be56b891e96aaf80664073e17d98e609b6d568 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Fri, 22 Apr 2022 15:13:24 +0100 Subject: [PATCH 02/56] Add back toml --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 77c7cc5d..fc2ee135 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,6 +67,8 @@ jobs: - name: Install poetry uses: Gr1N/setup-poetry@v4 + - name: Install toml + run: pip install toml - name: Check for version bump and tag id: version_check From 05d784169ea9269e79042dee856d39f291d333f4 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 18:05:12 +0100 Subject: [PATCH 03/56] Rework GH workflows into separate steps --- .github/workflows/publish.yml | 32 ++++++++++++++ .github/workflows/{ci.yml => test.yml} | 59 ++++++++------------------ 2 files changed, 49 insertions(+), 42 deletions(-) create mode 100644 .github/workflows/publish.yml rename .github/workflows/{ci.yml => test.yml} (54%) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..6b7f0748 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,32 @@ +name: Publish +on: + workflow_run: + workflows: [Run Tests] + types: + - completed + workflow_dispatch + + + +jobs: + # Publish to pypi on version change + publish: + needs: test_build + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Setup python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + + - name: Publish to pypi + uses: coveooss/pypi-publish-with-poetry@main + with: + project-name: summit + pypi-token: ${{ secrets.PYPI_TOKEN }} + dry-run: ${{ github.ref != 'refs/heads/main'}} diff --git a/.github/workflows/ci.yml b/.github/workflows/test.yml similarity index 54% rename from .github/workflows/ci.yml rename to .github/workflows/test.yml index fc2ee135..1a5271d5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/test.yml @@ -1,4 +1,4 @@ -name: Test & Publish +name: Run Tests on: push: pull_request: @@ -24,7 +24,7 @@ jobs: - name: Install python uses: actions/setup-python@v2 with: - python-version: ${{ matrix.python }} + python-version: '3.9' - name: Install poetry uses: Gr1N/setup-poetry@v7 @@ -49,49 +49,24 @@ jobs: # Publish to pypi on version change publish: - needs: test_build - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - with: - # Make sure to fetch the last two commits - # Needed forthe version bump and tag - fetch-depth: 2 - - - name: Install python - uses: actions/setup-python@v2 - with: - python-version: '3.7' - - - name: Install poetry - uses: Gr1N/setup-poetry@v4 - - - name: Install toml - run: pip install toml + needs: test_build + runs-on: ubuntu-latest - - name: Check for version bump and tag - id: version_check - uses: salsify/action-detect-and-tag-new-version@v2.0.1 - with: - tag-template: "{VERSION}" - create-tag: ${{ github.ref == 'refs/heads/master' }} # only create new tag on master - version-command: | - python get_version.py + steps: + - name: Checkout repository + uses: actions/checkout@v2 - # - name: Publish to pypi - # uses: JRubics/poetry-publish@v1.10 - # if: ${{ steps.version_check.tag }} - # with: - # repository_username: ${{ secrets.PYPI_USERNAME }} - # repository_password: ${{ secrets.PYPI_PASSWORD }} - # repository_name: "summit" - # repository_url: "https://test.pypi.org/legacy/" + - name: Setup python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 - # - name: Publish - # # Only publish if there is a new tag - # if: startsWith(github.ref, 'refs/tags/') - # run: poetry publish --build -u -p --dry-run + - name: Publish to pypi + uses: ./ + with: + project-name: pypi-publish-with-poetry-dogfood + pypi-token: ${{ secrets.PYPI_TOKEN_DOGFOOD }} + pyproject-folder: ./pypi-publish-with-poetry-dogfood - name: Publish to pypi uses: coveooss/pypi-publish-with-poetry@main with: From 04c758c94d7cd767d1365f77e5e1c9e0ba04b85a Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 18:14:08 +0100 Subject: [PATCH 04/56] Correct yaml syntax --- .github/workflows/publish.yml | 4 ---- .github/workflows/test.yml | 33 ++------------------------------- pyproject.toml | 2 +- 3 files changed, 3 insertions(+), 36 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 6b7f0748..3e6c2874 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -4,9 +4,6 @@ on: workflows: [Run Tests] types: - completed - workflow_dispatch - - jobs: # Publish to pypi on version change @@ -23,7 +20,6 @@ jobs: with: python-version: 3.9 - - name: Publish to pypi uses: coveooss/pypi-publish-with-poetry@main with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1a5271d5..bbf24fca 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,13 +10,10 @@ on: - '**:**' jobs: - #Run pytest and build package + # Run pytest and build package test_build: runs-on: ubuntu-latest - # strategy: - # matrix: - # # os: [macos-latest, ] - # python: [3.8, 3.9, 3.10] + steps: - name: Checkout repository uses: actions/checkout@v2 @@ -47,29 +44,3 @@ jobs: - name: Build package run: poetry build - # Publish to pypi on version change - publish: - needs: test_build - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Setup python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - - name: Publish to pypi - uses: ./ - with: - project-name: pypi-publish-with-poetry-dogfood - pypi-token: ${{ secrets.PYPI_TOKEN_DOGFOOD }} - pyproject-folder: ./pypi-publish-with-poetry-dogfood - - name: Publish to pypi - uses: coveooss/pypi-publish-with-poetry@main - with: - project-name: summit - pypi-token: ${{ secrets.PYPI_TOKEN }} - dry-run: ${{ github.ref != 'refs/heads/main'}} diff --git a/pyproject.toml b/pyproject.toml index df395fb2..74018f37 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "summit" -version = "0.8.5" +version = "0.8.4" description = "Tools for optimizing chemical processes" authors = ["Kobi Felton ", "Jan Rittig"] license = "MIT" From 5df42fce34989889a6af156a84bf6aa1950d006f Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 18:37:54 +0100 Subject: [PATCH 05/56] Simplify workflows for testing --- .github/workflows/publish.yml | 78 +++++++++++++++++++++++++---------- .github/workflows/test.yml | 47 ++++++++++----------- 2 files changed, 81 insertions(+), 44 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 3e6c2874..c32b5494 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,28 +1,64 @@ name: Publish on: workflow_run: - workflows: [Run Tests] - types: - - completed + workflows: [Test] + types: [completed] jobs: - # Publish to pypi on version change - publish: - needs: test_build + on-success: runs-on: ubuntu-latest - + if: ${{ github.event.workflow_run.conclusion == 'success' }} + steps: + - run: echo 'The triggering workflow passed' + on-failure: + runs-on: ubuntu-latest + if: ${{ github.event.workflow_run.conclusion == 'failure' }} steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Setup python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - - name: Publish to pypi - uses: coveooss/pypi-publish-with-poetry@main - with: - project-name: summit - pypi-token: ${{ secrets.PYPI_TOKEN }} - dry-run: ${{ github.ref != 'refs/heads/main'}} + - run: echo 'The triggering workflow failed' +# name: Publish +# on: +# workflow_run: +# workflows: [Run Tests] +# types: +# - completed + +# jobs: +# # Publish to pypi on version change +# publish: +# needs: test_build +# runs-on: ubuntu-latest + +# steps: +# - name: Checkout repository +# uses: actions/checkout@v2 + +# - name: Setup python 3.9 +# uses: actions/setup-python@v2 +# with: +# python-version: 3.9 + +# - name: Publish to pypi +# uses: coveooss/pypi-publish-with-poetry@main +# with: +# project-name: summit +# pypi-token: ${{ secrets.PYPI_TOKEN }} +# dry-run: ${{ github.ref != 'refs/heads/main'}} + # publish: + # needs: test_build + # runs-on: ubuntu-latest + + # steps: + # - name: Checkout repository + # uses: actions/checkout@v2 + + # - name: Setup python 3.9 + # uses: actions/setup-python@v2 + # with: + # python-version: 3.9 + + # - name: Publish to pypi + # uses: coveooss/pypi-publish-with-poetry@main + # with: + # project-name: summit + # pypi-token: ${{ secrets.PYPI_TOKEN }} + # dry-run: ${{ github.ref != 'refs/heads/main'}} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index bbf24fca..bedec636 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,4 +1,4 @@ -name: Run Tests +name: Test on: push: pull_request: @@ -15,32 +15,33 @@ jobs: runs-on: ubuntu-latest steps: - - name: Checkout repository - uses: actions/checkout@v2 + - run: echo 'The triggering workflow failed' + # - name: Checkout repository + # uses: actions/checkout@v2 - - name: Install python - uses: actions/setup-python@v2 - with: - python-version: '3.9' + # - name: Install python + # uses: actions/setup-python@v2 + # with: + # python-version: '3.9' - - name: Install poetry - uses: Gr1N/setup-poetry@v7 + # - name: Install poetry + # uses: Gr1N/setup-poetry@v7 - - name: Cache poetry dependencies - uses: actions/cache@v2 - with: - path: ~/.cache/pypoetry/virtualenvs - key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }} - restore-keys: | - ${{ runner.os }}-poetry- + # - name: Cache poetry dependencies + # uses: actions/cache@v2 + # with: + # path: ~/.cache/pypoetry/virtualenvs + # key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }} + # restore-keys: | + # ${{ runner.os }}-poetry- - - name: Install dependencies - run: poetry install -E experiments -E entmoot + # - name: Install dependencies + # run: poetry install -E experiments -E entmoot - - name: Run pytest - run: poetry run pytest --doctest-modules --ignore=experiments --disable-warnings + # - name: Run pytest + # run: poetry run pytest --doctest-modules --ignore=experiments --disable-warnings - # Check that the build process works correctly - - name: Build package - run: poetry build + # # Check that the build process works correctly + # - name: Build package + # run: poetry build From e1fb0f94acea0ec204768997f7ba4a4c2b8d3957 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 18:48:05 +0100 Subject: [PATCH 06/56] Back to one workflow --- .github/workflows/{test.yml => ci.yml} | 23 ++++++++- .github/workflows/publish.yml | 64 -------------------------- 2 files changed, 22 insertions(+), 65 deletions(-) rename .github/workflows/{test.yml => ci.yml} (71%) delete mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/test.yml b/.github/workflows/ci.yml similarity index 71% rename from .github/workflows/test.yml rename to .github/workflows/ci.yml index bedec636..e66a816e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -name: Test +name: Test and Publish on: push: pull_request: @@ -44,4 +44,25 @@ jobs: # # Check that the build process works correctly # - name: Build package # run: poetry build + + # Publish to pypi on version change + publish: + needs: test_build + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Setup python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Publish to pypi + uses: coveooss/pypi-publish-with-poetry@main + with: + project-name: summit + pypi-token: ${{ secrets.PYPI_TOKEN }} + dry-run: ${{ github.ref != 'refs/heads/main'}} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml deleted file mode 100644 index c32b5494..00000000 --- a/.github/workflows/publish.yml +++ /dev/null @@ -1,64 +0,0 @@ -name: Publish -on: - workflow_run: - workflows: [Test] - types: [completed] - -jobs: - on-success: - runs-on: ubuntu-latest - if: ${{ github.event.workflow_run.conclusion == 'success' }} - steps: - - run: echo 'The triggering workflow passed' - on-failure: - runs-on: ubuntu-latest - if: ${{ github.event.workflow_run.conclusion == 'failure' }} - steps: - - run: echo 'The triggering workflow failed' -# name: Publish -# on: -# workflow_run: -# workflows: [Run Tests] -# types: -# - completed - -# jobs: -# # Publish to pypi on version change -# publish: -# needs: test_build -# runs-on: ubuntu-latest - -# steps: -# - name: Checkout repository -# uses: actions/checkout@v2 - -# - name: Setup python 3.9 -# uses: actions/setup-python@v2 -# with: -# python-version: 3.9 - -# - name: Publish to pypi -# uses: coveooss/pypi-publish-with-poetry@main -# with: -# project-name: summit -# pypi-token: ${{ secrets.PYPI_TOKEN }} -# dry-run: ${{ github.ref != 'refs/heads/main'}} - # publish: - # needs: test_build - # runs-on: ubuntu-latest - - # steps: - # - name: Checkout repository - # uses: actions/checkout@v2 - - # - name: Setup python 3.9 - # uses: actions/setup-python@v2 - # with: - # python-version: 3.9 - - # - name: Publish to pypi - # uses: coveooss/pypi-publish-with-poetry@main - # with: - # project-name: summit - # pypi-token: ${{ secrets.PYPI_TOKEN }} - # dry-run: ${{ github.ref != 'refs/heads/main'}} From 6368d7b4380db9a7075aecee19633df2c0a18010 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:25:40 +0100 Subject: [PATCH 07/56] Separate build and test --- .github/workflows/ci.yml | 162 +++++++++++++++++++++++++++++++-------- 1 file changed, 130 insertions(+), 32 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e66a816e..7dd40659 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,15 +10,64 @@ on: - '**:**' jobs: - # Run pytest and build package - test_build: + # Build the package + build: runs-on: ubuntu-latest steps: - - run: echo 'The triggering workflow failed' - # - name: Checkout repository - # uses: actions/checkout@v2 + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install python + uses: actions/setup-python@v2 + with: + python-version: '3.9' + + - name: Install poetry + uses: Gr1N/setup-poetry@v7 + + - name: Build package + run: poetry build + + - name: Upload built package + uses: actions/upload-artifact@v3 + with: + name: dist + path: dist + retention-days: 1 + # Run pytest using built package + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install python + uses: actions/setup-python@v2 + with: + python-version: '3.9' + cache: 'pip' + + - name: Download built package + uses: actions/download-artifact@v3 + with: + name: dist + + - name: Install summit and pytest + run: pip install dist/summit-*.tar.gz pytest + + - name: Run pytest + run: pytest --doctest-modules --ignore=experiments --disable-warnings + + # Publish to pypi on version change + # This is based on https://github.com/coveooss/pypi-publish-with-poetry + # publish: + # needs: test_build + # runs-on: ubuntu-latest + + # steps: # - name: Install python # uses: actions/setup-python@v2 # with: @@ -26,7 +75,7 @@ jobs: # - name: Install poetry # uses: Gr1N/setup-poetry@v7 - + # - name: Cache poetry dependencies # uses: actions/cache@v2 # with: @@ -34,35 +83,84 @@ jobs: # key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }} # restore-keys: | # ${{ runner.os }}-poetry- - - # - name: Install dependencies - # run: poetry install -E experiments -E entmoot - # - name: Run pytest - # run: poetry run pytest --doctest-modules --ignore=experiments --disable-warnings + # - name: Install coveo-pypi-cli + # shell: bash + # run: pipx install coveo-pypi-cli${{ inputs.pypi-cli-version }} - # # Check that the build process works correctly - # - name: Build package - # run: poetry build + # - name: Determine the minimum version for this release (the one in the pyproject.toml file) + # id: get-minimum-version + # shell: bash + # working-directory: ${{ inputs.pyproject-folder }} + # run: echo "::set-output name=minimum-version::$(python $GITHUB_ACTION_PATH/get-minimum-version.py)" - # Publish to pypi on version change - publish: - needs: test_build - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v2 + # - name: Compute the release and prerelease versions + # id: get-versions + # shell: bash + # run: | + # RELEASE="$(pypi next-version ${{ inputs.project-name }} --minimum-version ${{ steps.get-minimum-version.outputs.minimum-version }})" + # PRERELEASE="$(pypi next-version ${{ inputs.project-name }} --prerelease --minimum-version ${{ steps.get-minimum-version.outputs.minimum-version }})" + # echo "::set-output name=release::$RELEASE" + # echo "Next release: $RELEASE" + # echo "::set-output name=prerelease::$PRERELEASE" + # echo "Next prerelease: $PRERELEASE" + # - name: Determine the version to publish. + # shell: bash + # id: get-next-version + # run: | + # if [[ ${{ inputs.pre-release }} == true ]]; then + # echo "::set-output name=version::${{ steps.get-versions.outputs.prerelease }}" + # else + # echo "::set-output name=version::${{ steps.get-versions.outputs.release }}" + # fi + # - name: Setup poetry for publish + # working-directory: ${{ inputs.pyproject-folder }} + # shell: bash + # run: | + # poetry version ${{ steps.get-next-version.outputs.version }} + # poetry build + # poetry config pypi-token.pypi ${{ inputs.pypi-token }} + # - name: Publish to pypi.org + # working-directory: ${{ inputs.pyproject-folder }} + # shell: bash + # run: | + # if [[ ${{ inputs.dry-run }} == false ]]; then + # poetry publish --no-interaction + # else + # echo "Just a dry run; we're not actually publishing" + # fi + # - name: Tag repository + # shell: bash + # id: get-next-tag + # run: | + # TAG_NAME=${{ inputs.tag-prefix }}${{ steps.get-next-version.outputs.version }} + # echo "::set-output name=tag-name::$TAG_NAME" + # echo "This release will be tagged as $TAG_NAME" + # git config user.name "github-actions" + # git config user.email "actions@users.noreply.github.com" + # git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} + # - name: Push the tag + # shell: bash + # env: + # TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} + # run: | + # if [[ ${{ inputs.dry-run }} == false && ${{ inputs.disable-repository-tags }} != true ]]; then + # git push origin $TAG_NAME + # else + # echo "If this wasn't a dry run, I would push this new tag named $TAG_NAME" + # fi + # - name: Checkout repository + # uses: actions/checkout@v2 - - name: Setup python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 + # - name: Setup python 3.9 + # uses: actions/setup-python@v2 + # with: + # python-version: 3.9 - - name: Publish to pypi - uses: coveooss/pypi-publish-with-poetry@main - with: - project-name: summit - pypi-token: ${{ secrets.PYPI_TOKEN }} - dry-run: ${{ github.ref != 'refs/heads/main'}} + # - name: Publish to pypi + # uses: coveooss/pypi-publish-with-poetry@main + # with: + # project-name: summit + # pypi-token: ${{ secrets.PYPI_TOKEN }} + # dry-run: ${{ github.ref != 'refs/heads/main'}} From ae3cd3583f8c3790aeb945a5f41bbd51c04e5bf0 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:27:27 +0100 Subject: [PATCH 08/56] Test depends on build --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7dd40659..562bb3cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,6 +38,7 @@ jobs: # Run pytest using built package test: + needs: build runs-on: ubuntu-latest steps: From 39de18a4fe0b034ee88461d56716987e693d9ad5 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:31:10 +0100 Subject: [PATCH 09/56] Cache based on poetry --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 562bb3cb..dae3d68a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,6 +50,7 @@ jobs: with: python-version: '3.9' cache: 'pip' + cache-dependency-path: "poetry.lock" - name: Download built package uses: actions/download-artifact@v3 From ef6a5392d63e537d01a86bf643b7aa4c7395a401 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:34:29 +0100 Subject: [PATCH 10/56] What's happening --- .github/workflows/ci.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dae3d68a..c2f35051 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: dist - path: dist + path: dist/ retention-days: 1 # Run pytest using built package @@ -56,12 +56,14 @@ jobs: uses: actions/download-artifact@v3 with: name: dist + + - run: pwd - - name: Install summit and pytest - run: pip install dist/summit-*.tar.gz pytest + # - name: Install summit and pytest + # run: pip install dist/summit-*.tar.gz pytest - - name: Run pytest - run: pytest --doctest-modules --ignore=experiments --disable-warnings + # - name: Run pytest + # run: pytest --doctest-modules --ignore=experiments --disable-warnings # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From 48c7412d9a366b5e7ef01a4bc6e169ba88063615 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:37:22 +0100 Subject: [PATCH 11/56] List files --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c2f35051..27c47f17 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -57,7 +57,7 @@ jobs: with: name: dist - - run: pwd + - run: ls # - name: Install summit and pytest # run: pip install dist/summit-*.tar.gz pytest From 5b9bf393fee8125f202547a1ca7227eb66b0de3e Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:40:04 +0100 Subject: [PATCH 12/56] Fix path to built package --- .github/workflows/ci.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 27c47f17..07df07ea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,14 +56,12 @@ jobs: uses: actions/download-artifact@v3 with: name: dist - - - run: ls - # - name: Install summit and pytest - # run: pip install dist/summit-*.tar.gz pytest + - name: Install summit and pytest + run: pip install summit-*.tar.gz pytest - # - name: Run pytest - # run: pytest --doctest-modules --ignore=experiments --disable-warnings + - name: Run pytest + run: pytest --doctest-modules --ignore=experiments --disable-warnings # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From dc72b0de1f0635a12659f80688809e24a93ccfff Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 19:45:34 +0100 Subject: [PATCH 13/56] Remove get_version --- get_version.py | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 get_version.py diff --git a/get_version.py b/get_version.py deleted file mode 100644 index d7191da8..00000000 --- a/get_version.py +++ /dev/null @@ -1,8 +0,0 @@ -import toml - -with open("pyproject.toml", "r") as f: - text = f.read() - -toml_dict = toml.loads(text) - -print(toml_dict["tool"]["poetry"]["version"]) From 4d86fd340c9b0de0d8ce4da89dddcfde11601502 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 20:49:53 +0100 Subject: [PATCH 14/56] Add a run_tests script --- run_tests.sh | 5 +++++ 1 file changed, 5 insertions(+) create mode 100755 run_tests.sh diff --git a/run_tests.sh b/run_tests.sh new file mode 100755 index 00000000..d9c48073 --- /dev/null +++ b/run_tests.sh @@ -0,0 +1,5 @@ +#/bin/bash +# package_path=$(python -c "import sys;print(sys.prefix)") +# summit_path="$package_path/site-packages/summit" +summit_path=$(python -c "import importlib.util;print(importlib.util.find_spec('summit').submodule_search_locations[0])") +pytest $summit_path $summit_path/../tests --doctest-modules --disable-warnings From b2804294cd33ed063737e4fafa1716cbea5ea0db Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 20:54:11 +0100 Subject: [PATCH 15/56] Somehow missed things --- .github/workflows/ci.yml | 4 ++-- docs/source/installation.rst | 2 ++ run_tests.sh | 2 -- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 07df07ea..dda6232d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,8 +60,8 @@ jobs: - name: Install summit and pytest run: pip install summit-*.tar.gz pytest - - name: Run pytest - run: pytest --doctest-modules --ignore=experiments --disable-warnings + - name: Run tests + run: ./run_tests # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry diff --git a/docs/source/installation.rst b/docs/source/installation.rst index 2db9c44a..611ac687 100644 --- a/docs/source/installation.rst +++ b/docs/source/installation.rst @@ -59,6 +59,8 @@ You might run into some issues when installing scientific python packages such a brew install hdf5 HDF5_DIR=/opt/homebrew/opt/hdf5 PIP_NO_BINARY="h5py" LLVM_CONFIG="/opt/homebrew/Cellar/llvm@11/11.1.0_3/bin/llvm-config" arch -arm64 poetry install +If this commnad fails, make sure to check the version of LLVM that was actually installed (i.e., run `ls /opt/homebrew/Cellar/llvm@11/` and replace 11.1.0_3 wit the correct version in the third line above. + More resources * [LLVM isssue](https://github.com/numba/llvmlite/issues/693#issuecomment-909501195) diff --git a/run_tests.sh b/run_tests.sh index d9c48073..945c2c42 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -1,5 +1,3 @@ #/bin/bash -# package_path=$(python -c "import sys;print(sys.prefix)") -# summit_path="$package_path/site-packages/summit" summit_path=$(python -c "import importlib.util;print(importlib.util.find_spec('summit').submodule_search_locations[0])") pytest $summit_path $summit_path/../tests --doctest-modules --disable-warnings From ea7f2bfc335b8a5da388c0a9dcb174446eb6226d Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 21:10:24 +0100 Subject: [PATCH 16/56] Cache dependencies --- .github/workflows/ci.yml | 7 +++++-- run_tests.sh | 6 ++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dda6232d..81516127 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,8 +60,11 @@ jobs: - name: Install summit and pytest run: pip install summit-*.tar.gz pytest - - name: Run tests - run: ./run_tests + # - name: Run tests + # run: | + # package_path=$(python -c "import sys;print(sys.prefix)") + # summit_path="$package_path/site-packages/summit" + # pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry diff --git a/run_tests.sh b/run_tests.sh index 945c2c42..3c18aa26 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -1,3 +1,5 @@ #/bin/bash -summit_path=$(python -c "import importlib.util;print(importlib.util.find_spec('summit').submodule_search_locations[0])") -pytest $summit_path $summit_path/../tests --doctest-modules --disable-warnings +# package_path=$(python -c "import sys;print(sys.prefix)") +# summit_path="$package_path/site-packages/summit" +# summit_path=$(python -c "import importlib.util;print(importlib.util.find_spec('summit').submodule_search_locations[0])") +# pytest $summit_path $summit_path/../tests --doctest-modules --disable-warnings From 434560eaa747bd3de4cabb6f0bd49b936e49f769 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 21:15:38 +0100 Subject: [PATCH 17/56] Actually run tests --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 81516127..10d3174e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,11 +60,11 @@ jobs: - name: Install summit and pytest run: pip install summit-*.tar.gz pytest - # - name: Run tests - # run: | - # package_path=$(python -c "import sys;print(sys.prefix)") - # summit_path="$package_path/site-packages/summit" - # pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings + - name: Run tests + run: | + package_path=$(python -c "import sys;print(sys.prefix)") + summit_path="$package_path/site-packages/summit" + pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From fe26fd104e36abbe98a45140997aa03ca4a90449 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 21:20:59 +0100 Subject: [PATCH 18/56] Get path --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 10d3174e..8af36ba1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -64,7 +64,8 @@ jobs: run: | package_path=$(python -c "import sys;print(sys.prefix)") summit_path="$package_path/site-packages/summit" - pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings + # pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings + ls $summit_path # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From 91106d561654cbbddba4a82be2b0850b1ae4cbea Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 23:02:15 +0100 Subject: [PATCH 19/56] Correct script path --- pyproject.toml | 3 +++ run_tests.sh | 12 ++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 74018f37..0f643485 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,6 +62,9 @@ ipdb = "0.13.4" rope = "^0.17.0" black = {version = "^20.8b1", allow-prereleases = true} +[tool.poetry.scripts] +poetry = 'poetry.console:run' + [build-system] requires = ["poetry>=0.12"] diff --git a/run_tests.sh b/run_tests.sh index 3c18aa26..a8ab1e36 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -1,5 +1,9 @@ #/bin/bash -# package_path=$(python -c "import sys;print(sys.prefix)") -# summit_path="$package_path/site-packages/summit" -# summit_path=$(python -c "import importlib.util;print(importlib.util.find_spec('summit').submodule_search_locations[0])") -# pytest $summit_path $summit_path/../tests --doctest-modules --disable-warnings +SCRIPT_PATH="${BASH_SOURCE}" +while [ -L "${SCRIPT_PATH}" ]; do + SCRIPT_DIR="$(cd -P "$(dirname "${SCRIPT_PATH}")" >/dev/null 2>&1 && pwd)" + SCRIPT_PATH="$(readlink "${SCRIPT_PATH}")" + [[ ${SCRIPT_PATH} != /* ]] && SCRIPT_PATH="${SCRIPT_DIR}/${SCRIPT_PATH}" +done +SCRIPT_DIR="$(cd -P "$(dirname -- "${SCRIPT_PATH}")" >/dev/null 2>&1 && pwd)" +pytest $SCRIPT_DIR --ignore=experiments --doctest-modules --disable-warnings From 40e8925851f08663748a83ada7a1c65961ae4644 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 23:07:37 +0100 Subject: [PATCH 20/56] Updates --- .github/workflows/ci.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8af36ba1..dda6232d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,11 +61,7 @@ jobs: run: pip install summit-*.tar.gz pytest - name: Run tests - run: | - package_path=$(python -c "import sys;print(sys.prefix)") - summit_path="$package_path/site-packages/summit" - # pytest $summit_path --ignore=experiments --doctest-modules --disable-warnings - ls $summit_path + run: ./run_tests # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From 87d536ad1d6e8049dc63cac367c04109cb8b64a6 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 23:19:50 +0100 Subject: [PATCH 21/56] Updates --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dda6232d..92b17868 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,7 @@ jobs: run: pip install summit-*.tar.gz pytest - name: Run tests - run: ./run_tests + run: ls # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From 919ff2ee1e09705f3e0a60a885b1957d923cae54 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sun, 24 Apr 2022 23:33:41 +0100 Subject: [PATCH 22/56] Make sure to chmod run_tests --- .github/workflows/ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 92b17868..e6526015 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,9 @@ jobs: run: pip install summit-*.tar.gz pytest - name: Run tests - run: ls + run: | + chmod +x run_tests.sh + ./run_tests.sh # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry From 3f15f38152cc1fbefe42184f8cb28b95005b8acf Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 00:03:58 +0100 Subject: [PATCH 23/56] Inline tests --- pyproject.toml | 7 +++++-- summit/__init__.py | 10 ++++++++++ {tests => summit/tests}/__init__.py | 0 .../reizman_test/reizman_suzuki_case_1.json | 1 + .../reizman_suzuki_case_1_predictor_0.pt | Bin 0 -> 30175 bytes .../reizman_suzuki_case_1_predictor_1.pt | Bin 0 -> 30175 bytes .../reizman_suzuki_case_1_predictor_2.pt | Bin 0 -> 30175 bytes .../reizman_suzuki_case_1_predictor_3.pt | Bin 0 -> 30175 bytes .../reizman_suzuki_case_1_predictor_4.pt | Bin 0 -> 30175 bytes {tests => summit/tests}/test_benchmarks.py | 0 {tests => summit/tests}/test_domain.py | 0 {tests => summit/tests}/test_runner.py | 0 {tests => summit/tests}/test_strategies.py | 0 {tests => summit/tests}/test_utils.py | 2 +- 14 files changed, 17 insertions(+), 3 deletions(-) rename {tests => summit/tests}/__init__.py (100%) create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1.json create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_1.pt create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt create mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt rename {tests => summit/tests}/test_benchmarks.py (100%) rename {tests => summit/tests}/test_domain.py (100%) rename {tests => summit/tests}/test_runner.py (100%) rename {tests => summit/tests}/test_strategies.py (100%) rename {tests => summit/tests}/test_utils.py (96%) diff --git a/pyproject.toml b/pyproject.toml index 0f643485..0bc95413 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,6 +37,9 @@ SQSnobFit = "^0.4.3" botorch = "^0.5.0" gpytorch = "^1.5.0" +# Tests +pytest = "^3.0" + # Optional dependencies xlrd = {version="^1.2.0", optional=true} streamlit = {version="^0.67.1", optional=true} @@ -57,13 +60,13 @@ experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "st docs = ["sphinx", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] [tool.poetry.dev-dependencies] -pytest = "^3.0" + ipdb = "0.13.4" rope = "^0.17.0" black = {version = "^20.8b1", allow-prereleases = true} [tool.poetry.scripts] -poetry = 'poetry.console:run' +summit-tests = 'summit:run_tests' [build-system] diff --git a/summit/__init__.py b/summit/__init__.py index 62f75976..096ebc0a 100644 --- a/summit/__init__.py +++ b/summit/__init__.py @@ -21,3 +21,13 @@ def clean_house(config_dir_name=".summit"): from summit.benchmarks import * from summit.utils.dataset import DataSet from summit.utils.multiobjective import pareto_efficient, hypervolume + + +def run_tests(): + import pytest + import importlib.util + + summit_path = importlib.util.find_spec("summit").submodule_search_locations[0] + retcode = pytest.main( + ["--doctest-modules", "--disable-warnings", "--pyargs", "summit"] + ) diff --git a/tests/__init__.py b/summit/tests/__init__.py similarity index 100% rename from tests/__init__.py rename to summit/tests/__init__.py diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1.json b/summit/tests/reizman_test/reizman_suzuki_case_1.json new file mode 100644 index 00000000..e7a348c3 --- /dev/null +++ b/summit/tests/reizman_test/reizman_suzuki_case_1.json @@ -0,0 +1 @@ +{"domain": [{"type": "CategoricalVariable", "is_objective": false, "name": "catalyst", "description": "Catalyst type - different ligands", "units": null, "levels": ["P1-L1", "P2-L1", "P1-L2", "P1-L3", "P1-L4", "P1-L5", "P1-L6", "P1-L7"], "ds": null}, {"type": "ContinuousVariable", "is_objective": false, "name": "t_res", "description": "Residence time in seconds (s)", "units": null, "bounds": [60.0, 600.0]}, {"type": "ContinuousVariable", "is_objective": false, "name": "temperature", "description": "Reactor temperature in degrees Celsius (\u00baC)", "units": null, "bounds": [30.0, 110.0]}, {"type": "ContinuousVariable", "is_objective": false, "name": "catalyst_loading", "description": "Catalyst loading in mol%", "units": null, "bounds": [0.5, 2.5]}, {"type": "ContinuousVariable", "is_objective": true, "name": "ton", "description": "Turnover number - moles product generated divided by moles catalyst used", "units": null, "bounds": [0.0, 200.0]}, {"type": "ContinuousVariable", "is_objective": true, "name": "yld", "description": "Yield", "units": null, "bounds": [0.0, 100.0]}], "name": "ExperimentalEmulator", "data": {"index": [], "columns": [["catalyst", "DATA"], ["t_res", "DATA"], ["temperature", "DATA"], ["catalyst_loading", "DATA"], ["ton", "DATA"], ["yld", "DATA"], ["computation_t", "METADATA"], ["experiment_t", "METADATA"], ["strategy", "METADATA"]], "data": []}, "experiment_params": {"model_name": "reizman_suzuki_case_1", "regressor_name": "ANNRegressor", "n_features": 11, "n_examples": 96, "descriptors_features": [], "output_variable_names": ["ton", "yld"], "predictors": [{"input_preprocessor": {"num": {"mean_": [354.6367647058824, 90.41176470588233, 1.5091323529411764], "var_": [62058.067030709346, 856.9578027681664, 0.6407359677768167], "scale_": [249.11456607494742, 29.273841612746462, 0.8004598476980695], "n_samples_seen_": 68}}, "output_preprocessor": {"mean_": [29.770588225958978, 42.80588223303066], "var_": [651.2808946894866, 1133.6181886600473], "scale_": [25.520205616128695, 33.669246927426926], "n_samples_seen_": 68}}, {"input_preprocessor": {"num": {"mean_": [337.81594202898555, 90.76521739130433, 1.6082028985507244], "var_": [61360.203948750255, 893.3579206049147, 0.6506816689771056], "scale_": [247.70991895511625, 29.88909367319315, 0.8066484172036201], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [26.78405798258989, 42.16231853201769], "var_": [591.6181499933147, 1159.234789639669], "scale_": [24.323201886127464, 34.047537203734265], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [310.5333333333333, 94.18840579710144, 1.675086956521739], "var_": [62602.373816425126, 693.127691661416, 0.6574878475110272], "scale_": [250.2046638582605, 26.327318353022893, 0.8108562434309964], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [27.789855110256568, 43.197101280309155], "var_": [559.7530837177713, 1073.8440359163853], "scale_": [23.659101498530568, 32.769559592957386], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [329.2057971014492, 93.6072463768116, 1.6579855072463767], "var_": [61654.62228523419, 744.3029909682841, 0.6553404490653224], "scale_": [248.30348826634352, 27.281916922538343, 0.809531005623208], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [30.686956586181253, 46.066666471785396], "var_": [620.105771871771, 1037.4929356927937], "scale_": [24.901923055695338, 32.21013715731111], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [323.0521739130435, 91.17246376811593, 1.6174347826086957], "var_": [61032.82017643353, 807.4419953791219, 0.6792392022684309], "scale_": [247.04821427493366, 28.415523844883133, 0.8241596946395953], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [28.008695737607237, 42.30144915373429], "var_": [610.0315189422902, 1071.4108555931718], "scale_": [24.69881614455013, 32.73241292042449], "n_samples_seen_": 69}}], "clip": true}, "extras": []} \ No newline at end of file diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt new file mode 100644 index 0000000000000000000000000000000000000000..3ed18caad2a1a7071c77ee02786e33ed9cddb3a1 GIT binary patch literal 30175 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 paLT8`+sfwe*m}dn@0cu literal 0 HcmV?d00001 diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt new file mode 100644 index 0000000000000000000000000000000000000000..2880b592af7bb3504be40fe9f925f75ac8678252 GIT binary patch literal 30175 zcmZ^~by!qU*EbA^pmd8OAqYr^62jRFl#o&okPc~(Zb3l0yRk*FP(;OovzM6I9iS+7 zgP4dI-`vmr&-=XJ_sw<9HP_6ZS!d6#wSIA29H;Seam|>)_5XT^aY=9mC51#rrG@E* z2Bie)CPc^BE*0VO`CpG*o{*6En3%ATl&JW)WC7=-(6FSiQ0u6W6oEu84cA2O1zr-I z&{1&-sVRXmK^b95y6It25s@j0JRvFZobbAVsVPx0$pV2%VZo_UF`|MBe}YM8GyCJ}AZQzaI)DPWR&Gd`CZ#&ubdzH6$T5k$*Xt zOiJR6m5yA?xp*7}ixX!$3OaHZCkm8B{-;lZDTzX^iNaoD|5wL?qk@tXMIt#@jpU8| zZ&ZUs(MV1-o|Htf|3)iH6nEqm|7VcX z!jh6XbC{^*$ervZ$Z7gN<}6V=J5eX{e_Dh%E&u0VP1Ma!)cc>N)Z}1Y7f1dXmhIaQ ziSlr9{pacO|GT_IxQzbS^3v0{U25=uEw2By(*D2Sd|D<1?^>F1i&H#KBvipSCqDGt zxr01h$pv9X5)l3L6X_&*_?+t&-Ml9OPZfS9Z?11)9P`Wi91e@XdmUL={`eJfw00qS z1+}=iwwJ8&DWcx{7NgSUxhONR1Q&^`vZ>RmK{-Gd)hrWmlWG+NkJR8b?U|%D+XvnG z4-)BB*Jh##*I(UvuW^`xDh>Zrn%ScvDGQ}7WkCapR<=%eR6a1`uW50@A?nPv^C!vt8x zCbTNC#=hBa$%cOkv~}%ia&Br4R_jzl@TJpqy#G3xDp&`xi&wx}mmwN+O%QC<>mk8Z z1V1%~L8HJ1*syIUO-alH{rx`VPfarvCau7*GFg!J5P=6?>!4|*8FCL1+7RE0&wU%Q zF{cTRbG4xRA`hIgjTd@;ouV^Wv!uJk7{dG_;DE9n{23Dh+xi7i+US8~v>FF?Md4w+ zqpX0zdbnp}hAmz3=7Bz;(0M5jY8=jzIcbN@5lh+aR!qYJ5qGH)ohKlh1rQ4))Ul~ja zN5To`6U6lRXZriIDJ<=OK(x0z;IXJ;I{c{xT|!GxD#Qlfe_DpMtyuNdm5{iNFj&QqmkGjIt1L0h^F zY4hiA^j=aq!P_^9i8B(tyyXyltsJjPE(Ue$7MgIRgG_G~Kok_gtfQ^0$H*mGT$cz- z!pF(WmP<6Jy%3L>Tp(Nf(lD)04z$PD;8zhoJUF(I`1g)5o3+wGa-aq6-nwAvojkNo zS^~wf);K}Kz}jdU&3d~K@7?tyn#ap=#;qzG94=s;_Rc^>QE9N;HV>X0VtREom8fqV zFHD!JgFR;+v5gzGNaCqJs#(}aUV1Dik0S%A?2%S9_?(8b!i!iMaja@NjJ(}5s1}JwWy#pMq}v^**O@E*J5smlv*{`04Oms_#EE&zHO8zED#04;}&aDDL|YSLAK8-MjO z<=ZY3Y9E1_S8L%=qzp}KFGiV7d+FHCT6lUel-LEV#<3+0aQ6KK6^i>o2h*}aZ8ksH z?`?pAQ&v#BkPn0YdQ$ZxO<==Q4XLDZN%9;6))ef!=)!v=>5=1W?R1;^KI}83HxIOjH4pvo*82!4d0VRpBLcs z6^3j=X%F>Iw?#|yDMneV3_I^P(@zgeN$bZSWMY*cmH!)!o(f^G^h6b2_KOAObs{Wm zvBfi!U)jNbI>hpLIb7DPfZtmSaKd&oIq_12co;t;GpHKe%CIGS)-D3RTZO3O!HpZ9 zogfz$sL=eA`50WWjp!$?!oh+2w55s6~xGoU|iEX4iBM)CRhmkMhGf;VPK3soa0S=ie zknl#B=!SnJjmI-_XFvlC?(>FsEayzk3P5^70kUV`rn-J(tcU*_^5K~*{t9&fE!A$S zaJLb&rca|5-37Q~)qKz&y~-xJ=b^o|KH5IbBbp|gsB`LN!aFONsW)}S?Y0d#Bl#go zl}y7u9eMD@&jytYuhP%+-cj+_%FsA!k3Txo8QH5PaPa6}68YQ*b>}wY0|-628Z&8#6?xT?+eTsFtJE^Sbld717=SOFH1 zoc(_?4_7@dgq;SL>F**X_@TEJe#XX9|5_RN{n-l^Zt*4kp{rqs@nP0=v;en1Y&4H= z@JD`2bqI?1&0N_ggjbJ6lIwE~;9LJnvUO}87Va!D-_TtF_KR)dyLKYHJ|_)l>z; zL*y$SP`|OCigwk4p8pgt5`=v7Yd!MC~=b~}bomS%aq8zrDDdDZTdGJTP6i)=TLffZoJi{eL_buec z-vu-2(np`^=*%{FKbFfpZH~d+2MRG~zAl+*I7YW{&fVSh#SmOqOyv7QsMW>k&~f(y z!(Ng^9t~mK{iBnp4ryWaeg}M`l8GlT&S1{1dQTU>KR`q4OX!x!4$7lYh2L6>;9Y4E zT8Zu^f+kyNpY1 zxpkFJ=Lx|Vxv6;9M;H!TaIU4hi#%Nxk5RK+&`Z%9j{j=_v#_)DQPvV%s5qA_khsiQ zCyQ`J`ORLd>%!1IeGwcySp)ZLd~x;CTHM}vkf_KM!rO)3z3u+j$e?2mRKMki!{K%K z@`nm2{Pt!FENXB!6(t#KWAWYjCfI&J8bWd!pm#C}^jBA)@rr7AeE$=3S4|JO?^u9v zqZH=sJwsc^GsxOFe{@(RfYn#OGQ-72u*Eg1@6N*zDEcl<1nyP9(yK~TVNV~4(aeVD z>E76@7lDUQoFo#XepD__hD2`uO{86WXyyEP`2Kr@wK5U`$BdLd0hzTplvRc7(`%&j z+&;4LLK+bXG$TnTy-_cx0u*Zh(23v0@a^Vd@;uxbzEC7?UAf>{V?h7VxDehr)y|$gEl1lb4bVcW6bwglQE9T6L`!d>!S|xD z)s2g0+_WL*uIFG<+dg8f&)EkzlkwcFdYE}G9OR>YXoetXUhdCF$=wxHrd%I~t{UU` zvVJybS0OnaB1F!c1d)Km<&apIOU8S0S#{D&;)P>CyqpV;$UdWX@?nrM&lkF8-68kq z=d!{JDxi6_JVf0wp;DhiNnU9xa-BI!?j%>>0)Y~&nt9l~{?|rox&J=RI*^5B^{46k zoMEc_*PUeEY(Z}cSJ>L8idHihgOFeoeEnC9f?w=V^k^xrI2(x5Z_dXc>p767u7Ho; zwZY3XVwiomhPEDm!tCyOMx-M{V6|2~ls(+c+?tmQ2O8_hN>KsKslG;vmYd?hlPofE z^AgogYNZuZ!Q^&g8@(;<4hG5^=vZUS6h%E}oVH}4<`ExwQ0j`Ozdohge%PYKWCom? zBY}rQ?eSG-1h(uBgg&(lBr<8BSHA%_XP02kt4heX@+Ot5KNE2wd5rzq2wQ)Z!jSE4 z+SIQKrpC*t>b`VnewUA$W64fZd()9X&d=Z%X?QhR2qx7U_%g!}Q_kh0b3;B% zla9tS=MrGuw*u12u(mOu|~9qf>} zLSN^s#>`1xTHBaH?N3_6nYIRa`|UYx`ql*5OnByQ3%631 zz$}mExCXKLFY~ExAEUQA&}_VoAAJP&5hLXsoN>AY zmvcMyrN1+VfWJ=E^=&bIvA&rE#B8S*A9T@#)I}H*T?+Lh4fMl~R+RG;#0x(Lh^~G$ z4N9I(xg%>a`-CZd?~sdP8Bus}%RzRrcShfv<1*MCvxa!*mzoOlfte>PQ7u3kx4ICV4caN%eHK4ec2yStlO|I5OgOpn#ShX-L zkJAaW2kX`G8J7mURdj?(PR%-X+#Ht7sX;5LP%NELh0M%GG`Recygj}ORz?)!nGp?g zkcq&az+8BkIv>8*`oO~N^e>xhkNPAo8OtNd-b?CcqXl!2**bA20Z89$i~f!1$*@vaGrLSjyG0OI_D^L+`pBY z+;x0#TB zzV+1mg&xWWRl+~%AiCdO7L?=O6OpUc?B}4v=FS26eap|d({&1I_-@l9HUKIx>mFxp zv^J7|M_A^2j|1u}1;ZU>Wh^&Y%+#5w(@I4-eChs(F4$AgSp0s`r|75wyqYyw7F7W{ zU6!z9JO=}l+s!LZIl_YhZJbdd38i@NP%@N3$xh@xvWv^Mhi*9|9zp z+lrLA11euw2(6nM%#Umyqjr^{(06tP@XniyN1|WTbFx#1eBAxQE;GQ$q^L(SXKWrnV?nl|7UKMz( zB~S8nTfk+{LOSxN9z8}IK}U#Tg+8f3^H(`IGChwzOsfHH!MQlY|0VSmUkIx=h>}F_ zALic4d)S*f=je0+^}d`#P1LOF4PCovIZfSnn)sf+M#PGpG0uVu&5dlJZFd1&)s2O- znNA-MRmm*ug^hF#*dpq>|qS7RIDq-s7~T+0&K@z3bokV-^7~3P02g+?F(Ei+mZ9D7%8^o%>zcv)A^BN(3Y$*u% zeWf3-rGezxJ#5PID44V03tjx&fOShAq`oSA^kk?Tp0dk8iTW(mf3TmL`Y(gi<(#_3 zZXFHN;=&yv0?hJBS(u+7hJ6Q1=+nqDTw7oc+cMXKSVBI$oTZA3PX8m34b^x?ZHT^Z zZNN>|AJ}!bXTnz1C)D!?KUNw~2j2ok;&`Nw7%VLZ*02pV433eI+iCb&F9)mFiR1N+ zC#b4M0TiE##*IATkZjsPFEjJ7x7?f5EscQKFmbr#nMm)p%!90tO1M%(28T1-$&3q& zVB4rTv?fPjL1+_XG_;`h-o==>_g7zPx+mCJZX$o}r-QL>9p#z57TH%tBxIryGt{$y z^=|}jiy655fDn0Mb)nZeii4j%MB}2gb2Rsv2j%T-#qUv}&>+DJg4Y_++r|iwXavBV z^H#vUxey0lnZs=kZ&uY_1l(K=B(rOjsCpN{!apG-bV3?^rk!UrEo#75U=_J8^t$)h z0dL6C5QNoR6WN8LwK%*gA47V1fJrLCXYq#2;t^vEx6Or(Vs3D)TZKIQ!NGYexv{#d z28WJt@JrE8(({p_G73Gk=X@z_w5_M&-@Gt{6Q^UU2?nOmz{snWQ1RXdjwbWs#O6_! zM>z}KZ{;wf;pKF{q9?A82!YqK1-P+TlZM>o!cRhc#LBsy+1wBf`m+pZX+#p~-k*gb zPH%}=iaTmG?q+66y28P~P58rUCh0#J1K2&AMpb^MZq9-jaJUBTd7H7O+5nc@YCxs9 zC%}qubgC?YOL0vg>-Ud({EJ~z7pw%~6|Ml{HMpW72t>zn$z^FjnDf0B<3c_QG-7E(mKD5G3xqpzoct`G6-`m0ZsWiaCoKyalIEzS+Q!e!~Hv>?yZheuS>AN;-`7= zpcH(|&xal_3ABo#WJR1Ujx}7SVYi}~8h0D!UD$DwZt;=itZ;$Vm9to`L_zZ(f93Fm z?jmZe_LN9POw#aSUhGH`NAqHG%NQBZCAN zb~5X0<`YF5TRPLj40oX)@UIajWIM@B-_`WB$7;y(eL}akFT_>JqS(5uk3Npgf+w2BASuL!r5jGLuAa-t zf)AbKV^$R`IW12X-ZceHX-eCV6%cR?R=`)0< zgTKipM+eycFL|6AqZXXooaipkL(Gk? zlY}_5(d!p&;pdyfo+lIyXFY+nXN!ipV5va`k>-|brC24{At!4~9f1S8G zh=F%sEy=xkhux`uj&9t&5EBj4;fi4)%pK_?w|*7lbMI<6r6mQ2lB;Q}LLx8;&FIVi zqgQgXiFTX@4P2gygS9*8ky#tiTger>{O+>pCY6L-b>q}7PW1Z<*8KCAN;0-J7!O>Y z0XEzYFcx-;s%xG#53VlKYozR>5|Mwmsq^_&K^IEyeH!JYtXHC2B>N< zxIfVWn(unS`W6RN&V5H}jV{oL;TlNm$|Vbrw6J1rxqbP@j_~cVJNbOGi5_5-;ZKe! zuKah4wn)XpoA>LH-K+vB)91m{Y7d-sE) z^z>!He$@;p%1s9K<8hcLv71Wk9PC?nS_sp^j}g^5C&+u%a%y62LePH?>tYpypMym~ z&{G#RmFsZ}XRn;Ho&{-t?$V_ptI2xr1nBG)fSHg_pC)?1SBDnR9gl(4BElRF!wQE2 zO;GG#4s_=WAe2qV=T(|i-R3zHD>WU;nhLPN#+Vexv{La7ak?mF10-dCBCnSP!&1wA z#O!iBnd6@T>33$rmM&#fxc`;*>|F|YR~){XI8d+UZ6I=`0mLHDl1@d1zG0ha>`ZV% zadrjv-g!n}4$Z|o11wSEZ9$)5J{bM#hVOb5iFZa5C(rXD&%+oze|Z&^D^j5zNufB> zahF!i%*Ua=)i9E)g9G>TNbkeXbXi$3it{k&cuEX@FVe#LUjnc@z5>6+C85{W8jx8# z4GcNhaU$XqQI}|dLa7;Gb>9RsrX54>#E?hY9l?sb^(NEDDF!xC=w)`uC zv!g3;kIHE()i?uqPFmoh-UzDap+lNDXQjcrY#e;7j6d8LVCfBcI6X5M8YeS|!}}!C ze$)($>($VBDhjKQr$Iz%C>)w@13C9S$oS7a^y-Cb`dvU4{k;r9|5p`?o~uQ-D+Y9i zVkHgK8el}9K-|nZ?v3B&T z-Wbgvm=4^(%b>^L2UT8XNE}oR;OA8((m1vVr`!`}sKnt#a?jl} ze`2`;T@s4u%ZED9B$JBiU_sStTXBq6gDg1_LPO7#QcJG@D!0WSVkG!c;%Yd$e{X?H z3;EHmE*ZMSorvG{r*z1F6VLY?#Vo2+3rXVCF|l`(F#<` zPhvCQ)Z*{UYj9C;33AE#(UIfg_*82qYWu3uHC0vk*q0le_Q~TbsZ6@}~KI2E%IqeDt*40P<5>;3iNE4gYE( zt)`bAZHNKU`w|eT{e-BjTuvBI3%0?l9)IRH;ul?xwtU+Xm)vxM$T{|m)4f#OaBPz9 z7W>IkyBfSWS&!q}3L!s$63d+z`p(~420YiEP!)^WI2N3TCn5@v#tf518*34-J|hiN z(fB@xvtE)!fj6`qD*adDmTR7v$*TskeT@`FR>5n#UsN%s0wS&~K>h`lSRkheLX8cy zcytrt(HJMP$ErX(uY`QpG^VxX8rW?7naRjr4Wr(9)MZSVc--dfsckLrioX_@{8ofr zV) z1)a%HNU63BEOV`ceP?D9J6~y7bfOG?XRLilDnvD(38q!5!u=nf};Fc47N9GV7!){Jp^8d)Be^;<^E1Wnu$w z$~|DLT9pJSWx}{#3pUo*f}G7P67*UU2hD02kvWg3r8XBWaEm39^{(K(P!>V&D`O_Y z(135Nm}-rqRQN|TY-f`I7a!^S@?0Kkn!PaN8?d$mOX($>jUB;9RBn+ji0#zJ zNTcQOz|IVBU)W5=oT7X>pu4lZ8VNPi_Z!UwfR6c6U`5<+um?vlk| zJDiSVM(UT8vDoxUA6GsfLTtQEXpCPxxIQqV;0p3t*gmdTRU^J%|E8QyLXNxty|ENUl zW2A9N+YRQv%EPd+-DH!)9jf&$A58hev4!_1InM0{Aq(U|X(NY!+arPV9Tb^m7WLSg z{Er3I)qIc%2q1o=C+KB6Z8*yDQ!p#CiIBM=s?J^p*NR5S$8R!_;9Nj5?(5PO zTSL$&O$ySinovJT6st{hVShsr{z^-wi)-^}X*QtS^D1oHQ%FMBOR}SHC1f)C4KaFsiJoF{@VRe|_9?E%q`;-Xtl$HC(ISLA}nd**4H6?uQ?2929K zLKX-l!1ZVOc;!<86dg}vmpobvSMPJYBSQsHHx&kZd#&-4{BgE=pFK{TTY*+fi~5`v zzNDotf^h5RI63gwnR+Ue;qBZ`ntP>^39Pe2^~`F3@7x$GV!(Qwb%*l?-DJN`02O&0etGy?GzZ*%l;K%(ee>$B zMr6*`g3bvS*uOcIJa3gn`*eOVp1y-*{+J|1camw|u3yZdfm+ntQOl@!zhgGf5v5bp z3~)N16U=`*8!)e!B)##YpLbN_%z%-M!ip3My(f8%wlJnULbr*U zl8uXPV6N{W=3LkomPz(QnYj^6YIhmouN1;B&Wf0kG#3V6pJ8VuO~-&O$C-j9KJc`~ zAJ*taLB%^u+}YbtbVGUI{F!7DofgZfTP%tCmu1)|po<1fBWU+VW6&pmP~3Q(X=tiK zn{&>n(lkJ{J9OC>Kf_`7_(^iyJdz~uJIYMP-=r<=YvA3{E_z??GMyP&09)pH5&L-| z@Mtf?T5|M_nL&4mgJCLY=#}B3DVBa0uE&$Zw&1rTkc3Lxz-hI9sxogaJ9DHJa+fZ~ z6%_(7S)PCbe@*Cjt^3q`tr$Ld?*!%j&CtD3omBp3%u>?f#yv$G2&_dX&VJorYDXUh zs6#qagY#AxLpiF$s&{6z^SVEI|HKW~*RJ94w?&x$dnuNF&m_0?8$tdNKb(A0g|5?D z(0t`=n%9|xbNp2C)_NYSwOI!*vqjgrM_XA$-$Z4@-`=VsNn`h6ja${=7!m(Uk>_R#%8#%^;0SA0fpKu~5+5PUbvp zgccrU43W}+K~qUcah9T;+m^tZnTlw?su2QQ((ok5PnDcAPVx;;lA{luaQeX(%-r>y z^d&!}H(vEIc`tHs7)sW;b(ip#%{3Iav33ko3K%hc$HyO#73I$MGFnj!# zI?g@86m1@4oU&u#Mx711{yxCm+xDIrhFNreZ~{!-YJ%H_Gr>i8ihV5X4V7AJC>P&H zb6K-RbgDlDtPg#nEuT#=qA?GaKT`lp2?-`_n8CHYQP|UwLf5~Rf#gwPa>%a|M@R+a zD%8P)$C;RWTZXK;l7)s75?GlSg6`q=xR;~v{+`UITB$BDaBK~6-MtcjRq`$&^_aWm9@}z7 znud=BBKM+3a=jrLgKpQO&&MK^IC+tdJT;@bTpSH~M>L!^QO7lR3pqMa0xZ|{g(Z3B zNTo$-)$2@rE6xk64!x$rZN+G&orF*KiXoXhm-+Tu6{NfbnA}f~n4to3==W~|{ojX) zY)3ZP;(M29sir}GQzD3u*<;fS88muZil!%K(4=^6EP5`B;X^A?G50dPWNwPbqiQkq zS2-?&mvnHh9QYT-VwFh_{8idXW{bw7`R8Qpi&O!gi#1?s%{d1;%3#SqZ+v6j0x~7? zFt#`czn%r0b8IE9n0t|!UH3wv+F-o0gu&^J{Um}!fx+1qG@H8s7W~!+>Sf0G=8w`3 zGVz!ozX8)Ob}?qNM0*AL_^Io}dG_q$&2;MhO5~b+PgTc}CD^mjku0p{#jn35%ss}_uuZds_%71|hvF8qtDHQb#xIE3 z-9B*dLOeJM>%&5we8`{nj!3rW!{6s?fH#~|KA-NUnGf{HNJ~9zC}7CK*&Er81V<1) ze~ao?D1heMay(=Aj^mZ6#9Z$p#@%I{XbRdwONu@6EpMmu-FB0s11m_s|1R@v?i!q1 z9EcwWn~9TSC^ToL;mC3^+&ILAs#_ZHgj+6LbFn7tgsV`DuLw`y;KF^Y4Y6J|6+~M^ zSm_V-)V|jl29~t-jd$Ck{u*B3Zg@_P4Gxi7pMKJN@HP2+@Di2!WrL!f71+|<0&Ux$ z(Y_0^7~Sgzv9rC<;DjxDsw>j34xdOPhreGS>Pe32RHCU=2}X>pftSPKG*z208i#!t zIT}P|cdF8^&zG3amJ+b&TMW^gcCwc?caX59zEGdI6vqz?)92^*QMUnMTsA%%0v!Ed zTXGp`?I_2bx%nXctBtCrc|hV#2^`Kc?yGGw#r0}#uqLq_7VS+z^{vau?eTX+#6Ave zYP(6exG*ctlS{_BCD8av1uHw|O1U`RD3P3F6fMNiyU`Ic=9JPO6C>=j4pXx2c^*`1 z=0f*EJ7DjdW16ug8pV|nS@AS@dUy$&v@rBg)kg(-@+d5ZlITkTiBz8L*(i5OB@ej5x!m- z4E*JysJCbXnsTt#u6A46)trYZA3u|T>?X2jFdXA=%*Jei3aoRjfy!z=OjK0FZ6`U} z_NxMracm_A6357>w;&V_d?Tw~^$}0^aF}f@jy{YxBXdC;6#m&jDyzZq#zui}*Hz-7 z)Wx0@aHpk-r5K`bOOMwzqW+{O-dq{M2#ngG_?gvs`*j)nXPz^(wEv*;zf&25aRs{e zh7;CKY$iid+<0bB1DMXqMRw2!_j-7M$@+Ojr@9b(GmKH=LKteAT4By(8!Wz*1-$}A zxR&&gq$Sg-L&{93Fl_<7kw~1lTR|HobD(uZn!Y=|i0-=-4vDS4FuCyyskl;v>qC2( zeFL+I@~*`gxmpRv+NH2?AP;^g)v#`UELpkt5P2cIio&ZuWZIEts2LQ%p)J+0>P8>& z=#+wOp_`fR`n_zy-8v2~&!V2D`-s@xZB!<=nvom%!tfPcVN+9L(3jq1o$>@>{jXJ| z{oocRT#5^uhV1bn&o6Ravy7%qlw(!tXL_zL1IIrtLd6jk^T=TxY;#h?W625N?V-q) z6yB%%f5)Jh{33|^m4@+_H6;82hbz9V4cEVUg64-XqSwTYO}wu7;A#tmeaU3u)NdLt zYXw3gqA+_$0p9(i2iNqH(fWcl9DlVGiiNHalip0oERMt{Rh^VeOOqJa+Ck577QWgN zijvow=n->X99mM0gN8Nu*nT?N>7S$(FIC7Tn+RAT8w86w`&svJA;!wg3ajo3fG)?M zm=k@1N-i#kD{ie=H`W5;TMN-st%AhAXK8NvHBy_N51KDH{uujJ?9g0aw41dUnRyEE z_FOR3#jGQ1Ie6~M(RkQ&Srq-pdTH>K65;7f$BRFo_S%kbq{iA!;BKG=LB1h4eMK8w zxsXj8eX{5a%O4y+fC%zaOUTR?!DXW>L3TwZiF}xh%R*{k?yxZ$uQf)+560kPyl(oN3Ac0pHHYRtH z9f!H;svIQyEy_uHS`pjQU)$DPUCfLsiGH4nZWxk8-GPf~|RYS6-{f&cYpbeXRMwLLaOGKL2#Z{_3hVJmjw zu>@xFLpcb%utn>I7R)1u>-5M`ZKPA(=KZTn`%advg|!0t@X50oI>+Zii%AZ)mMuii zY{KNSGR*9WV0$<|igD$$Y~-Xq^s3Lmo%?I?)$J6#RC|MQ4=7;#(^W9y3CCm0sN$~6 z0ua>M0_&az0e9^JkmGLQaM+ao==ngb^#pOM%2`rM|bTCL+%$dVeb=1=+bncFO@V= zd{q;691X3PdX{h6>LZUe%;$7KH-Gp10Z2FE7WV`ae{e7wAx>A7{C&YkR_5B7xOMP(yo z#SHMvBT7RDN11gKb>NzDk0x8nK_7P``@u{YG%uK9!b2liYf%dQ1J3k8(<3VNb{Bg- zwgyj16ykQyzRpZp2lCsK=$})wz_`nwtUt|7)rce0KVyWpBsyd6axL=las^qSycVMt zHo|v_bTqx-NVh7?qQS?jP(SNCsaN|=-8=veB(B4bCIhNE>HvWsZkT%=5~4>A*Wo2s zrM{xgNqAH;j5O9MLUPP9l;z-|4^JCto&F@kv}poGlND4cn;5PACY z@YwV?)H^v3HM9?q1%1vW_|E`Ucz1$fC0lVkemhxob|E$S#>vUUx!BFgou&bqpwa9K z#~YhLsBAB}xYidYwin{UMMwI~b^*ywFC?+&W8hg_Iwp?JfE+?Gz~;748@;cym~(^^qIj2ohbKe2x= z>|!>TDd34Wf~0|SX2J17P#gPAR$1I7tAzzgWx^OS5&lQt{MyG#H3^cAE@k?B)=OeN zuK^qz3fK!lPRvqWO?o9}8GKIaW;fM1GyZ{!ur+laKD2tsToSlJ*GeW}^G7{cKcR-* z<#Hr5Qve=MwZNWiLGpXiPxQ#@;MiIAEacz41E zrV^y#5sx)J(&Yg)kCaeXG!0KZ*h{B63Soz=DXtrSOh!090TVGbXjqruC#RuB?nWLU z>&4zPq54^@V2wTH%8P-=`ReBXgcR_Ub4K4xGX~a)sj{XaEpRte6t(_lK<8^u+?Uf! z3+)?d`JMALeu@v2Lxri7i6o@$yGiAr*5U7iP2}99Ki+R?pzj{#gXC5bOdiZd84&~e z^rKf_FNgb^OJ~3fmv#8%mJ9CY;fMRDR^i>Oe0GVdB56*k#cf$0P|_lWQl9ha=FVCu z$XL*OOwJkVw?(u3(rH96uLMgTw?fh`s z6>-?LdD49UU@>Z{cQEOnC1K9ZIpDSAU|(*gHyqNFB1;PQF^>BqL95A!obW7zVrg?Y z^HT=mOL*~@!6vrn)f6>xZNkurV$3#lN7W1oIJrHN;M^KqFi=6LUn)8GL=zE-rTIC6QeUwD3pNf z&@4Q{FNHU+EXJGKv3Oyd066xpfdP)E@b4v0SXJ_+Z(3v>s&0Bh^4?d`Pe#-5#AG9^ zlQ_hl32cQQcLLcx!nLS)I|T1K8)Ew5Rb(kt+m?a2y<7sfnO~%f+HcYZ zKO<)TuUc60vJ^juD`AZZhl~8CfEGH^@H<)+@k1-rp0A{?3QOSbi4rU{Glk>Dwj7Q# zkMx9}A_R`c=LW&CT%V8O)*0O^Lwi*eA|NG4%o9v&VHa-| z{xZ5tO)5FL`;-Up9=5=K{{gDBwiK6$|D~*yHu{v962^^_M-C8DIqeheUJ#G7o9v-! zfCpSSJ}a4jCs~X2+@Qh=(zuZt_;>FRnani9^=u_PJC#K(j#NQVW-c)Q7UEjxdFI~E z`HWWRZ&Du7L*B_)!HKY+v{L&Rdpf=hJv_LWnv9L~{$M?H#7ootOFxpaXcG);>Z1t{ zWoh&t4mRL9!t}IOLu4&Si+Gs?xuFT*x;6~oF!SNsp(C{I(R2`+T0(~dN>OdX0A>!1 zP_g4hbk>rCRQ2&ZuvL9P%hpywto3c?*w`tmb1E0VEZI!_QaGB*mc6V)R2vwz8lXg@ zIPT+pM`hpG<7{s);^lXaR5VOdwKYblve|`tXcaSGe`vxr11l0>v=r)Y9ANi5Er;v> zM(G>#06hG}2*xH9pr$5|5#lwXheIPEs5O)Fx2(g8u2MA7HHP6f5q$1kfs49}ICzbK z*pm75s7fhuQVGF7qf)4F#Q<(Q3c%VcD!_fF33xGud{sTnrqvgM{<0P(?Yuo~=*+_( ze@@fdgUxK#^~Ly_d?w~{6KqFV3oPXKh42AQ@a~?CQwrITaD4@-ePV%cnb*uzrXg1A z3P3euhCSUug#X4YOzjE+KfP?+k*$q(liO(NXEE4zzzjnY(jkHB!bh8YII<%XU)B_| z4MBPkUssQ7V>EHb#zvTv+D|Wa`om(5-->HND89PfO0vY;n4fKdpnX~!YKR{S&X^** zg*`zsv5OQx(uR_petJEm1g6icz~}yTWQ$@HBgXZO$}Ug`(^GSStGyhzTfC+RZ}X!z zuEKDRF611!6kklV6Yrx9n8NX^-+al@&5XX1$2X?qDjx?}!QprIaCrQ-j!Dw(HJAJ| zYeQkHDCE9sf=W8q$Yl+VUtqB|8T?s?Nxka$-Mf@t>h2^@s2JqsapBtH?bLTyK3?3; zMMReEr&r@r@O`8gd{ob(AD3)ng`S&|7GeM!Mg>5VKO18fn^R_>3}(&Z?Cax8SR;>> zu-V`j>o2SUS_vX(E2@c)CY4DeXI@q2SKzPXd=T|-7o*8jhwU^L8X1E$%OaJ07zzpB53dxJ&f7Y&jU`&nIE-og_BJo?NwA0%FZ|WRR^xrF~(< z?0X<+T;$Y&bJv*nC!4~x%Utv?*8(d2&kg2*3^={^NBx;!X<42>_!?ODHAMSi$LG-$O6M#;P+JhY~pd~MBxqv1XtCqt@^cA36HA}7-7J<*7 zvt*Q0Gk2jf@_+Fm=T|htG%sEB4HSXVX5KI6TZis{c*4UaJsZY~4nCRw|Nj z%jTo|gdawy>%!C}9rzd-Nru~{VBKO#IuU+~jz!vGNV6gQI&2F9QVUV1fius0%)v0G z6s+IJK@ztWxMwwhcJfkuMz!&M?_uKbp$1;|1d*Y!_vSAr%3$oxL)tOl3px*Q(~I@e zps>yeR(`leA4cz|PT`-(>K%XC!MDCNsKpx$cWL4&?i9EfjAX|@BPdaFgn63}F^%nI zxN)u}lElhz^l$-V^c#a&@e6^7x*q4l^}f*Uu7`M`+IE#moG8@+Z|;l_1)Y0yY0 zG1oT5*C&^u)@2R4!AKHncP7HLDHBZ1{maaLVvEPzDJS7aTL z;_xUdIe8$&vKg&G0fJ?=)14tjl&0p9Zo4Vcv~($Hd|wXf^?o=r`V&2Ao`Ih^-o4;? zrYIlPh%f8BQN}A9Q?+|&(LG5x82gHIFLVViuZ55U>Qsl-@Zdgl&I{drefD(B|*| zQ`whCW7W3pONGpdqLdP4%vj>St}_x6m7$43gJh@_MFS%cu z?r}L;z_QzepWIJgE}10&3%-i0zAXpk*FqWrrgxEW{x z9a6S1jJU%xUrTybrkeh``-dD^d5{`>Z#`4~Iul++ufi!FuJl}EgiuddMYYE7pckfH zuGyi$=#^6xonoW$>77`(lsO&mxOrp8w-u0IHW&K5eW1Zq)N54ogS+^NHSutI%nFjiCOF;4ZAY8Q20qX|z!QCVkzfBUjTYcil%s~>+ z^JhHv_liWx-~@P7ZiO@4_ftcs2{3GXJKuRP8Go-i1@_Yj=rTUUj@Rs->Q7+s#qSOpN~%450e9z{NQD$G!;7)pxWbLxS!V-JwI>5 zk@j}q>69E*LLl)>f6HmKs7a5@WV$c7A*cpc5sEmixI7dukEtL?@t*{}tYGdNRcLn8T*u zqhXejG=JDW1@;nWsLIwr7jX{F`+9)~s}6!wA7VhsP7m)cpNU?PI%vEr5391;>Gj~j zc+Kz^T^V+e_EAlO>V==^DUl+q+?|h^i{xpPwHHlRh=FUj&(d*DBe0?Vi|C-;diK}c zr5HZ=6@S&Mg)5#SP4NB=b6ZJY@U&kcoNMFqHe!*(9v7|ySD z&cYwr!*J(?4cL4l9CxUR`Tpb#7(6waJ9ZEl)Q3~mk0t!KnG4b@Mi6%<6x)o_Fy*m4 zJ_#FuU%&Wc{1Z+sda~d{ukZ}}yasOtc%h%E5k1(Mk6UuBc;>?pu#`e*MR`I z8RjLrCMtk;gB($9$u1i6`7^OxI3E|N_Y*DH5r%R%6*JUNV ztKki}Yzy+;xiH0SIk@$#LJN=EEbFYm`*^3wR+L=euf{mi$+`L{r$>2rSttFl>^3`t zWwfHo5{ABNpw)+-@`tr!=!Qo@uzk-q%-qz6S4b2>oWBWQxvqq(pCRyYcMu)(dmz*l z$HSeUQ_#ZZDA%|%fJfD)iSjbXLfpV&?yf!nN0bZLLp>c}s(w(VCvX}h8dz$TGaWGR z6%rx;O*t1s5oPoa9)jqVIMY8gTw+*Dv{&~4I1!d%rMZ_N`r?v z0%rHcP`X{(k6((;rF#Mg(T0Li7+fS!w=cfqYnt2ngFRBDRptu)(U}crN3O%Nz*c%w zXBl4ge#~bLI8Noqy`uBgi(qr@a{>P>QN`2O@mjZu=xeqL+NG`G_|ma(=8Gi$8lg{? zeVz=?N`;V;kp#Mna$xMo3HUXvLG&{41MRU(#ddX7_Wj#1oMY2Md%2d_J~Wz4G?)W- zzNF#o%PBPFWFFWGF)(r609U>xpj=c2wzoxt#gkl|Wo%1bb`Qp-p$GU()sX@g@;zP9 zv=MFgYvT7gy?o~9IM}-AG+*5?0@nK!^ZWf)z)g$Qp!xj|y-?I2tlYcV1ltsL$WRLZ znq-bQ$}X~?3|0KNNge!Ji}1OWDqb>E1j&BBAg(B zxaw&k)z_E7DFej(k9rn4-IGSY&ne-@S4v^!w+D3G-0ysk!*3dpc8j07J&1i95rr>y z$U>L)0(>ZKghPAYP$%^uq+^D_xi{nKYM*lc%jh-Diiv^V(BU>m7Z+mqu|f!MbOvR^ zjd0n1I0O&7$=7)+GAm0Zuyju#e)Avm@yFuerI~>H=$V7IZyj;xmaXUzISo$#&H%T1 zAJ{)%nt_WaU)AD)kzK;l?kOr3%E#Zi7vEavF=koh+^TnO+OlsCg z(fV#loPTTv9I;=5fBo?1Uw;|lk(hL>`YsRMN`s(WdlXFbi=y|W48dpYdK}pQ2USQB zV$I$e^t{|k=<5>3)sK$>qYqiQDE9#EC*c3qi`SvnsRDGKd4OJfJsmDy(15$TU+Kno z1>k9}3nObsVcJhCm~q!0^~c4+^KO64_3h+Vt{Kq2Fh^XUF_B-GsmE19fAFD3muODP z8ZbD$hq#WJ!JWs4!s1gNF!_i)1di(>FTae$6T5=YK`jZG%C8!aFbnSVvz{NZE5_?j z4TRV@kyx@x&^=}y%)L7g=2iK@NyT(XNKb{as_wYo+!s!~{la%2HGqE2KKT2hI%)|R z&iZ@aVA?x`nut$QLx}`vPmL4e^KGy_vOqj(jW?P#8^M(Dq3}q41`LC5aS#vX|! zv}26|JJeEf?a7;=zzoF%K?`Sqde;;xI7g9e=tw1@-6F z@r>0OkS*v@Xud0@{wofPx5(RIMRz@|68u|nm;-ElI|wdp*vk`R=AoLZCwl%=0C^G% z*I(pk-4o&4kr-HO*G{vJ>+!V$=Va5>YI^gS52}9|gZ+XP=>m_n zxL7Ni8!uT8o?B<~rPnsn>8{dvt*Vs!2>1WzN6CN>OKSP*^`33KgWZs=2SZC(gZLa*+ZtPALqX#wc(sNntpgNfF4Z!#_#Vi z!1MhJ=-DiRC$rQ7##>wAWa!GMN0{Q3+5*U#FAeE)UW-}ZY;>>@>Z*JXQA?(E9#SoDi!4S$DOd_S-9Z-QxitGVU19;Qe9m zwEI-~?Jk<=wSwMAFvrHmDNronKP$wB{7&9dT&%gBYc;M#sosz4w5@KiE)%#h`g{#`;Y zO&8t$gFsw9TqIF7ABJu7!Kt$s;**WC^m>CI=IxBaYd4m`6X`;(JaQhMm?VpRpEhy_ z({_4zu{KaYZS0U1Fy5NBSbPbv*wq$nkLJ-SEu43}qcpFdGX_35$;U0(hUF0iGjB}c z{f}fpj8%V7zg|YqWvG+xyZ5QvwiIZwCMefnhaOYiFjq#xh?~1QN|KiOs4^NfF!nouaI4$Zkf2`=+-bQ@n2b))5)vQ`xR49q3%SYp$rB0}2 zkc8J2&Co}P$8L!h(gW)HxL>oI$2sSsqJ9^hTp2-?rwe)XGA*!KsmRm)=OMjiLnoPR zp#H}uVqioBJlpRDu<#upoZG?I@5$j)jEZQ_**IKaG7;Y#9?h#Ym2g^Q96nO+=8OMQ zqBDmV)4h?G$St8ZeZS)_eVDV1gxfB|1LGplHq{hNtXIR_M+q=IzYjEh)qomtG`4?+O#|IACScBL4aI3zi);6pywIfq`ys zd7taXncli$fXz4-$mmY#o&ZOeD(8?joy!yJslk+drDHM9ZFziqFI)gL2WT!5owt6-i#BAr5mj z<+#)t4SF=mt8pipy1fb8JI9n-xMg9$mMAjix*3%{cAvjp6oaRNM!~hsS?J@o4dW+j zfP39emT_DWOt=5!nYPb)NL4tFU6+cN?Hu9Yx+C1TG96C3Pe$#@Ce*G~3cZ|;Q_tR^ zu)aAH6kP>Q+B-9W-`!5!Li_OL>!t|2jVtu6Qxe$z3gemcSJRi9;$Xo1Vo;1qMcc0m zq<4xAmL&?p6qNjMfn+u*N?xjbp>95{V)FV!3Pj*g${h&tMt*gf0;Mjs1@ z3cr=4P}c~~wKa(+C2r@F+SPEtHWM!8F&@6J&Eo8!Evt_0PfxUb;du|f(5^8VRH89h zH2Yu{T!<|K#~3YYsFw$ijMl+3;hAl|J{8`uT z=XeP|L2nb)>#e6LToW_5Ct=+}5l(ZPj)xa}VWM6>b;;TY5hHJKkcsBog*n|!GvJmu z1Vf)>qMwNd`X}}h(@W>*oYh&l``uG=KKm*izcd4Xehv8`_{pJ$~?YYy;{O9#5SheZBR^Q68hxL zaGYXd3}Y{iLWiuabm(8Dbk@Ec2uLC#-63I6wK*1y`VhPsAn-=|Xu<1i!@%oBG6cwl zVSRw0(K37n&T@^!kt_QU!}W%I^Wm}F_t79!kd?vaWqz=*$qEmRod}CJ`{CJxQP3;s zA@$pLm+zaLgXss-pm|_1T`+AM z9&^5vjv*zF=np}!XiB>e*QvTiC1Sg4+F#1x5dk@KX>SZlgj{3yVxVAV)`-KAEe&C5F13Map~=A@yT66Ee|}S)jn%rfZD(BSr7K7QR+>Q_G-J5>e> z8a$&hz}BBjw@BmG+Y=zT*AZ2t^)OB60xxQJ#l6WZF|%?W?o?N%UveGr{re$!GChUY z8oR*8D-@#U*%IZcg8t)g1&A$-<_FR?;Y7DdkO+&g-{V@MC>2Vk%ddql(@3n|7{-+b zMx!Xwoc?&Ci=PbC&?+@mnCniyAzFeq7W(1tmFC>+-5l1s?HQlAM-B!G7|2gu<6zH( z0vKVt4oc@mfP~a_ap|6XY#ccmq8rU{NNx$wb600Sb}qo5J(jrX^>VyCZ?$-1v@M>k zZej`DZ|S~jRe0EthY}sz7qUC| z_{F(-xOwX{E|s0Xu)|+B7J-ydyRAv7yZi zpJ(&$>wWRs6n}xcmjj7m7T~sR3Y{5liJ^QZf4ka`)_%6;_H|+OZ^7ZseOqlM{#G*< zmj6v~xZi&Y4x2enmXO%6a~;(^3;groeKc&)5t=M;=F(2=<7MWlSodKvKQ3{Z?mcXY zCEB~GNB%R~x9>|@Ak-`aUd=@DXlvNKbuBi%--4z0%V^R2XzC;IHmhqUL)Q`q{8PD+ zFMFK5H8d?yM2~I^ts8i&Fm!HhSWbZ7lHmH-fCARY~ zK>;{p#z^|kcQ7ssA4+e5HY&;~A?|m8SJ@I^@1zD@@>6;K)jXUxcrFA;x)J6)1pQx+ zfRdAPI9Mi&M(R1zS|44aF>480_;N6GJc-uzwSq_avLJg} zz%!*<(B`llUNblb=S-A>vE%dM8=+U6XPZM;JFvI+Q?wgps8PsRJKX>@;?1SSc7 z%$YCcv_$xBXys8_zswzecnUm=jmu%L+Ek1SF93HZX?Pt_gbyY1Q7bqaR{ZkCtY^lw zW9C#$5~X3*&Mc^YmMT!F}7rIo0AHz@QO#dn}BKc9PrE@ zj^n#saM`y8zW(MR_I-X4s0H;>D(DXwn}p)(Tb=xKOc2i~uj5Lw84!Fgi@sT!4%5ev zpn6jVbCq*}*!wOY^r#12Gk*j$Pqjpk0f$MdR3Sz`4COmC1^)NdqdcI05}+9;ZEl=bb@7NMe{6Z{U*kz*aX_6t zpFARy_{0}sZ+<$K&6@-C;v zGJ$w|k$_o98U;B$t@J_4Y_#t6fuT>!MNM6`G-GoM@fxLt?x%a{##JIP{3c-Ctv2G2 z#nISxb1Z!P90fZC?&zMIb7AI5Z$7hP1+cMAbaC7Tp)?_AFnszzO`oUY*-t{8TNuiV z%O-&PnJ{dv55ei9?lARl8Ti(?Klbsm;`WPriTUnL=<1)0o7BwU*zFK>2-pbY&F4YF zgMCEJc@x~Je!$;p2H?bL=W2?ZlW|>I4u3A~0O3_)N<$O)o$2!AmUtU%^c*BM6Y8WJ z)}NyLhnKL|!rcBUO{LF@2g0&{K0 zr>l+|l{{f=^>*4IT8TBXvcMm%!Zh0%aQ~|i9}D+lV)2>V+Fau@>c?r(R$FMf?g}NP zUA*<85ly+V1vfMs@(+~>(A>5JLtTbJv9<ztuuryBTX7V>pdrG z8#1Oi?BEFSI2n%vXLM2dv174Gau!57oTtqPLRpEP8BLX50Lk|^AeoXd-ED2qWh6!0RRs*^$vr z9{n24lcWR1pfH-=DY(wc9fxtXC1uQiM?E>(n9MSc{2^~MGMHK0Iu>wRz2^P7ULyT| zCuu8p7Jas3oxnw$Y=bP99`2*?&m+ z4qfq}aVor9_8!}~c>x_^RLFvbZCUgiL?3upvAGI9BB{R;IoxzT|`JXR`HP5nGfZMb@=^CpGV$ zk>oAa?6ZZKyf&F5T6=XkJM=7;!6|cY%*7$+B`gjq0 zS}n)7)O3n(%k5)%Yl4VUVJo|)P$v#k(4unJ8){;7JD7RJ57D6&l5|F^68|GzN+N`7 z+&)v8Mu+t04-$40(e{44T`yI%>)u7SWrGw~n54oanr5(dRdUq&9_6F=C6dii3gY$k zoW%ESV|wZ%=$iOC@v`hOw6NwRo9&p!5-l$itu@6Yd8-494Z2Fk<}{1$uk&Z_yGmG) zr9IJne@?tm)XSoDbx3Ack4X98d+~-KN$xqj&E|AuKS49kfZpF>!82uFvYdBAY*sn+ zh_ba-iFa;(VAJ#=i`i9PAjvNG2hdHQAm|bhKpnNf{;4j*3zA*B(>a*87Nrb+4ueXN~3_>%2(G zt`j16H5Avi>yk+K{p{UGO}?_ohZXu>Wyk$ZMNI>nS<0RRq+s}Uvh?a7cI@1C^8BkV z&un}_-UmgA^q+CD>)>1L<)*Kq522^Tt;(u&%!R|^zYh45)&g~2l3r-m&7nHI0{ZEiZ15dJ& zLRmf~Z32BRtITIzH4uOLaG9ip)iKW%X7uL5TP*WgUvk^Ef^B(eO&8DmLXLW=u-(x^ z1$}DZAEK^``N3G`FSk%~`kn49 zulO7rlX000lCh#I-v_Z%<#@%w(6+U>o>BPqwzp$w(TtYUhc=wF=>7@eK`x;uS}06xrls2N||rFh_~IiA_{3f zLS*;J(PHaLrqDfzUOONr?nh1d#pNE{`_xvFUbK#_t9PN%UE#DxF^$E%+D(jGd&!ZO z2jpR_m|W4UVbc_DGCg}K`pq(jv{pc+`~JGg$5*x zv_22#FKd$66}5+=CCe4L`}Qtk+ndFvdP|EHnvRIKK968mdneP<=fk-AS_5u+Zy~E& zRLw@VjNv{5AF}e5hV;t4e!MnyG=JpUAUfI8!zyn`5b5i6ti^6Ix%t?Rm(?YcaA!+4 z>%A2Hk?@0k+EGR}4=E<{YlCcloiV05HpN7C^Dw&2<_N?0tHh~gVkTKTjOsKECr@kC zZ8pewFj*gW@lp3DqH%VI$p{o#$xC`yN|KR$F#4&r@>5;l3h`F}qAYG&GQHGi2x$+iPrYhAO=gV8=Ws52RB| zEO~0GsaU4Ex+YU?1l`_xk`?Pn@qG3ZRbG8pPOt52D z_q#Hwp)KN`1(%4ust(;Vd<@r3?IpdwhWt&BJpWwm&IA05g_jPesUVSXh!uH4By=bF;m5C`UX>nKZ%SEIX{yIHf~qiDDk zlatDlbl0x|0#J;TDVHA+S_Wl^I{@t&cA$e;JYS^iQj{AmUOP2_^X!MxIMVd42&L%f=Vw~uW0Dc z-@Uy;b|t5iY59d@#fe~czImYdj(s9|ylEckEUP5NA^qs^%oy@)O)`^xUnf33U?i8A z>q_TcY!g}8J*b&@aUQ3W&a%-$PnnnDI`o?T8fMA_ZibX49b8e#{9@&4MdxV}d*=j; zdXz}oefzRan+t^b{X`DDH|O+zC%Ko?L00WrLmE>ikloMsl9w*B^wN_a=B;%@)RZYf zGHD!}FPm56nKFoH>grLs>|ZRzaU6eCCePbXJ!5`9RCs=kAwO#UfISq=B|jvQgh=ma zn~y5d?+^9)9O3vn&3(=i`z!Guox4QGZ>#dF18#|Rzl4i71l|_!^4c^}(nycgm&%GK z6xovJ_YL{Ay)7ht{cF-P<`Q|*o4{1Yc9FFa?Zh|Tjct`YBXYG=WvvsE$SCz@cEQn$ znH+gB@z=VwVWmB+W)?(^qsZmFwM)BeJJa##b)%#`4(KGYL+V>uQVw4Nzk%3xjh zREY7ha58GR4Ucp(XE7a}a^Q@B)P0^z-t1A z@J~zovfau?Hh$K3nUh7SIHpya>wD*s;m-TT1C3O7#+R^5WABQ+ zO4^CMdIiCp3X*#8FtPoU%9ggs(bK^q5}qhaAFtg{%ob0j=3^^Zo^idXP}7V(r?PZd z(I4{ZR5$tQ7EPQ7?`8DaXJ)_ElzXr*#7<&5DIIRc9SxF5t!OE+?0msC1@;wJnYXYV z2dwzYNrB?oMpfjo|1`QyYdCQY)S(tL#5Ipy)M(!P$E-Q*n232MF_n^fvb?-mJZ6yt z(`^_?-?wRT+d4@>TeXoiMNB2SIe(GJN<*IK*}}s0ZP}aTI;KDFE2|iCr=}wB36pGK zWXvHGzVll;GtJPU$|1YNlUn+5mA;*1;S6mu{D(WSEz}cTJTaP|FjJ$g1)+?nRgx9I zhI8lDlSOmXWO?F^o1zDO-m%1=NGh_o5N3UVXQH|mNmEa}SjWdS**XXOyzru0HJhW)te1 zdzI)EY$1oP_On@LY{v&y)ryU0D6{P4` zn3R(RT&Kd4y;P}SGa@Cqf=>lNF`k*)K@_uM;3)hJy)df8TH zB>jN3SeuH+t&k%1?-cmuMG9QHs7d5^*Muzkaf>7=-XaU0Mw8?x5;aRYwva8oTUgel zO7<}+i}@wLW9ZhOCF^-`<0tC;utc+HwwAu=e9SA7KI=9K8zDif)g?q3U7gJ0^AV=t zJ%;`9v7k=_#cZ0!QSn1h2^PP;4}UwwoDITCc1XoreCb*fTYU93IjJSYV84G5&zJjI z?<`Y7zDv<*k}aa}C=H@zbzN-wRGVm&C)sRE9YRZVUD!+6Lh++w%EgN=ll1Q7kf3NK&&(1$0X>+u>?5X26!~E3wodv&1pxtb8Nz$C9A9mw=ZAJ^aDM94G zCSBfI5hdRF*S`vRZ zlN6T!L;k?x@BBf1S~7XC*X+NxQ}OJ|pMRwx{+I12Nr?WZj`6RajgFJ8{_mX=|GS@} zh3wyZaC_IX*+REQiN6;&mp*^5{--DCzqfPzdnf<%_0JBW|Fr)1+Kl3VnEDC-^6%Cr zrvJ44_q@!1+TQa1hppK^ZU22v{?k@@$vy@6Uh#?B>${ QzlKXmNJ;!X{=dimKgO6|_y7O^ literal 0 HcmV?d00001 diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt new file mode 100644 index 0000000000000000000000000000000000000000..b3d4eb3ec8289ac3f05ef7d73f1f275bab4efecd GIT binary patch literal 30175 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 Y9{=;Sr_0#?JA9nLIDvo0|JT_61Ks@|U;qFB literal 0 HcmV?d00001 diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt new file mode 100644 index 0000000000000000000000000000000000000000..bf78410e3bd23d2ce1d628bef7b0ec867b5f9c18 GIT binary patch literal 30175 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 Date: Mon, 25 Apr 2022 00:04:52 +0100 Subject: [PATCH 24/56] Use console script to run tests --- .github/workflows/ci.yml | 4 +--- run_tests.sh | 9 --------- .../reizman_test/reizman_suzuki_case_1.json | 1 - .../reizman_suzuki_case_1_predictor_0.pt | Bin 30175 -> 0 bytes .../reizman_suzuki_case_1_predictor_1.pt | Bin 30175 -> 0 bytes .../reizman_suzuki_case_1_predictor_2.pt | Bin 30175 -> 0 bytes .../reizman_suzuki_case_1_predictor_3.pt | Bin 30175 -> 0 bytes .../reizman_suzuki_case_1_predictor_4.pt | Bin 30175 -> 0 bytes 8 files changed, 1 insertion(+), 13 deletions(-) delete mode 100755 run_tests.sh delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1.json delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_1.pt delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt delete mode 100644 summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6526015..e6010f5c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,9 +61,7 @@ jobs: run: pip install summit-*.tar.gz pytest - name: Run tests - run: | - chmod +x run_tests.sh - ./run_tests.sh + run: summit-tests # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry diff --git a/run_tests.sh b/run_tests.sh deleted file mode 100755 index a8ab1e36..00000000 --- a/run_tests.sh +++ /dev/null @@ -1,9 +0,0 @@ -#/bin/bash -SCRIPT_PATH="${BASH_SOURCE}" -while [ -L "${SCRIPT_PATH}" ]; do - SCRIPT_DIR="$(cd -P "$(dirname "${SCRIPT_PATH}")" >/dev/null 2>&1 && pwd)" - SCRIPT_PATH="$(readlink "${SCRIPT_PATH}")" - [[ ${SCRIPT_PATH} != /* ]] && SCRIPT_PATH="${SCRIPT_DIR}/${SCRIPT_PATH}" -done -SCRIPT_DIR="$(cd -P "$(dirname -- "${SCRIPT_PATH}")" >/dev/null 2>&1 && pwd)" -pytest $SCRIPT_DIR --ignore=experiments --doctest-modules --disable-warnings diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1.json b/summit/tests/reizman_test/reizman_suzuki_case_1.json deleted file mode 100644 index e7a348c3..00000000 --- a/summit/tests/reizman_test/reizman_suzuki_case_1.json +++ /dev/null @@ -1 +0,0 @@ -{"domain": [{"type": "CategoricalVariable", "is_objective": false, "name": "catalyst", "description": "Catalyst type - different ligands", "units": null, "levels": ["P1-L1", "P2-L1", "P1-L2", "P1-L3", "P1-L4", "P1-L5", "P1-L6", "P1-L7"], "ds": null}, {"type": "ContinuousVariable", "is_objective": false, "name": "t_res", "description": "Residence time in seconds (s)", "units": null, "bounds": [60.0, 600.0]}, {"type": "ContinuousVariable", "is_objective": false, "name": "temperature", "description": "Reactor temperature in degrees Celsius (\u00baC)", "units": null, "bounds": [30.0, 110.0]}, {"type": "ContinuousVariable", "is_objective": false, "name": "catalyst_loading", "description": "Catalyst loading in mol%", "units": null, "bounds": [0.5, 2.5]}, {"type": "ContinuousVariable", "is_objective": true, "name": "ton", "description": "Turnover number - moles product generated divided by moles catalyst used", "units": null, "bounds": [0.0, 200.0]}, {"type": "ContinuousVariable", "is_objective": true, "name": "yld", "description": "Yield", "units": null, "bounds": [0.0, 100.0]}], "name": "ExperimentalEmulator", "data": {"index": [], "columns": [["catalyst", "DATA"], ["t_res", "DATA"], ["temperature", "DATA"], ["catalyst_loading", "DATA"], ["ton", "DATA"], ["yld", "DATA"], ["computation_t", "METADATA"], ["experiment_t", "METADATA"], ["strategy", "METADATA"]], "data": []}, "experiment_params": {"model_name": "reizman_suzuki_case_1", "regressor_name": "ANNRegressor", "n_features": 11, "n_examples": 96, "descriptors_features": [], "output_variable_names": ["ton", "yld"], "predictors": [{"input_preprocessor": {"num": {"mean_": [354.6367647058824, 90.41176470588233, 1.5091323529411764], "var_": [62058.067030709346, 856.9578027681664, 0.6407359677768167], "scale_": [249.11456607494742, 29.273841612746462, 0.8004598476980695], "n_samples_seen_": 68}}, "output_preprocessor": {"mean_": [29.770588225958978, 42.80588223303066], "var_": [651.2808946894866, 1133.6181886600473], "scale_": [25.520205616128695, 33.669246927426926], "n_samples_seen_": 68}}, {"input_preprocessor": {"num": {"mean_": [337.81594202898555, 90.76521739130433, 1.6082028985507244], "var_": [61360.203948750255, 893.3579206049147, 0.6506816689771056], "scale_": [247.70991895511625, 29.88909367319315, 0.8066484172036201], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [26.78405798258989, 42.16231853201769], "var_": [591.6181499933147, 1159.234789639669], "scale_": [24.323201886127464, 34.047537203734265], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [310.5333333333333, 94.18840579710144, 1.675086956521739], "var_": [62602.373816425126, 693.127691661416, 0.6574878475110272], "scale_": [250.2046638582605, 26.327318353022893, 0.8108562434309964], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [27.789855110256568, 43.197101280309155], "var_": [559.7530837177713, 1073.8440359163853], "scale_": [23.659101498530568, 32.769559592957386], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [329.2057971014492, 93.6072463768116, 1.6579855072463767], "var_": [61654.62228523419, 744.3029909682841, 0.6553404490653224], "scale_": [248.30348826634352, 27.281916922538343, 0.809531005623208], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [30.686956586181253, 46.066666471785396], "var_": [620.105771871771, 1037.4929356927937], "scale_": [24.901923055695338, 32.21013715731111], "n_samples_seen_": 69}}, {"input_preprocessor": {"num": {"mean_": [323.0521739130435, 91.17246376811593, 1.6174347826086957], "var_": [61032.82017643353, 807.4419953791219, 0.6792392022684309], "scale_": [247.04821427493366, 28.415523844883133, 0.8241596946395953], "n_samples_seen_": 69}}, "output_preprocessor": {"mean_": [28.008695737607237, 42.30144915373429], "var_": [610.0315189422902, 1071.4108555931718], "scale_": [24.69881614455013, 32.73241292042449], "n_samples_seen_": 69}}], "clip": true}, "extras": []} \ No newline at end of file diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_0.pt deleted file mode 100644 index 3ed18caad2a1a7071c77ee02786e33ed9cddb3a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30175 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 paLT8`+sfwe*m}dn@0cu diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_2.pt deleted file mode 100644 index 2880b592af7bb3504be40fe9f925f75ac8678252..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30175 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 QzlKXmNJ;!X{=dimKgO6|_y7O^ diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_3.pt deleted file mode 100644 index b3d4eb3ec8289ac3f05ef7d73f1f275bab4efecd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30175 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 Y9{=;Sr_0#?JA9nLIDvo0|JT_61Ks@|U;qFB diff --git a/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt b/summit/tests/reizman_test/reizman_suzuki_case_1_predictor_4.pt deleted file mode 100644 index bf78410e3bd23d2ce1d628bef7b0ec867b5f9c18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30175 zcmZ^~byQVR+dWE(fP{onA`;T2pu}DeNS6{SAR!_lUD5*5-JJ$vpr9gRz+R7tjf&V} zcZ=Aq_q^Zx&+q%)d(RjQ#yR_(dDdBL?I-4(%gvdWkBe*ibguu`L!3*3D=;A_EIc_x zKR7TkP%kbr%FarZ%jbVRvU!4nVxyu$f)c}HW7Z3~CIp8hgaq4!2PF!{b7^|Sb8C1@ zaG=9u;*t^rq5{)G67*6+!qFfb;3~oOcGU3yJ6Z??;5}qGAIRm;d)gp?H38Zq9oQ;-`7@a{dR!CB+LY z<(ickKi%D#Ybh6xvv6U&ptG_u!72VPyoK>|!vvf;V^jJc zxPth3{~4O{e}PmI<5fN4)siyf=X(oszyhK}5(EFUj`8aMGYOoj<-E!jubCOI^*@uG z9Fnk}vxf27&fM$0g*li0k2QAhI%$7kXZ1Uh<+7E zw}(+w?ZX~w&3s{^?N2hts3Rol%|ON370~@?H7wyZL0h31yn0xQE^yHVwe{<yac|VC$7CSmh}JN&RbZa#bZR*j~)O8j2*&-lrLZ^`dARpMyP$ zBXs_Oc-F!14tc)U3btomBZI1Ipd;D>s%9FIk3!8j_IWw_o$^Ja>_xygs}P4?`N6Zo zR;m`L1yO7B;CyohirieoG6JTwM{F&GzFS1RB{U)Q);$_u$pz;&Y13El7?`o)AALHj zha8dXCzc(BaQ=5K9%*gD9V@z7sr!2HC5)eX`Xqqsj`?_5C@v0_7c>AJxs#G2n2yJB>vn;*B+p*H!qQMI--zk z$p@42dekC&E6q;#$3TydWK`7~ELK>;pMsNQeaSq;KXte>Uy?LiwL!&jS>7C zaK>dX@YN3k{?x6Mw@Csw7tO+_lFR9Xum70Wn~u=#H8+{q1=Z$%R)t~D=?1(W`I{_v znj$)x8ZdK%Ijn0e$H|RV2#a`PO!~HN6`_=+h zej)Jf*+Tqu$PaT=w-3!qvZm#_LimHrpL{=8hBL;l(HOl_=;>OEqR$q=mF#*pz@ipc zT}Jx6dVrkj48n>p^0+j<79TqIli7jXWeqauIE7aj0$$TcnQyq%s#c`{6HT3+n1#3Sg98sMCU)OtK!B_^e`d`_qV@b$~ zQy9<|0U3jegW+B#OyZW$>?WyNTydll`*#+Bk4QP)%{>p}&qbn_j56HXr3UJ|QgL#z z3O%|ig?W;OBxz+R*cW(V@UL-dV^cNG}3$K~v!H#WK@Hbxwr9NAs<0(Oiiao|WuAPG~ zJ_keaM^Sw5*#u%v25g~gC8lPoQ{}_!z`6M-J+dFYx*44m%49apDIrPCxBVW_E8Ryos_nuHg(%I;!>3Hx1=ZUEoL4Jq=Q3u zJM&d-7HkTy#0_ySu*T~t$$K{qOJ?fP3F|rN<=FseT;^_@#p&Z zrKbrd859uv8{Uvtoy?X#6NasZ0ib&_hs;_yo1Q)&4nq#fRCu)(9JzLk9^0P|)!L@y zvmZnIqQ*(st#KNsX9=|jqj1MY1$@8p2mN@V3hXRPFx@eW6y(n$-pXGYPcaFQvMt8> zXIkiRkUkb)ssT{=Oxw4`fT{~OdMDMvu}?pTgxri_Lr*WWFQf=Fg3pszlV#|5rkQ=a zq8SzxBr|Zhi=_Jm;^?-u#94s{Vp_$Bre81H6~7#tWpq&a^faowGZQ+Y8tqNAh}pVu zM00-#UYkYBp1=FFN12o(A7|In=AbK)%g9d}%TdJ#Lj@ z*QrX-%DY5FW){Jvl~J(w{We~U5aaszN_uLL`T%jVp9 z%>a|t*qVNZo&QD_%W4G(Yrg@;i{_!NKMyuUKZcR1l zTk_&=+qXnQCmlbiRM7AaOW^(bl}QL$0AWlVxwE;K+?&r0@AtZ3o%BlB9#sIl>j#+! z>sG=P-w z=S=2mwi5np1z7YU3QImU0OP5LL0;?7`|LJKXD$J=>?C+t*Ft~46~o7))!?VCfDuQ| z4xTGmfwAjyX``GQ9PyovdsfBc%hD{+xX4ZH`)!Jk&PdS)RMZVtxLKb3IX zG8=yHT?Ac^r_(v&6ZFeHL5%kJ!%Tggg%icHFtV_n7Rp3p-RpW#92lX?mNvruX@z*N zH;0|6+JI|5MBw+I8uWhh445`Ei4}S~NU9_9ao^+!)zDZ6*5%zymu@}m8kmOxHfGo> zUJGBlOF^c)1!w&JO&ep|scL}%o-&^ePK*jpe0xb}Xs#ovxA%}A=fpvJu`zC%EW*X1 z++eh)7FvzuiOfkZ)Jka`l&mX-_lyXtkL{zUZxlmYs0(g5Yyn{!E8zAyZZz8JPYY)K zqmp4N>}G{}+In;eJ+j>sIzOo~;g6#rCc_V_Bm1f3_h#_ca3uP>h2U0~JIar*AP;#O z@T__|dMw&Sg(p^^&gEBBH+?Z?I`F_rT}s`AHRxt_ZO{(U#hSq2|ICFieuan|h@Jzy(_wi&&|YM2x6TWeUW z9p!Kv189RuBDoQHkbZlb3w=>*XtBi-`qfDtojQuZsPZ{UnI*-3kT0j5;w`W>Fcil7 z{IQ-DJ`(l02xGrhqmSHkV!y=(T|;J(&9Y-Oz`Jeed9e=F+gM5Bo8)oTc0pL-lfvG2 z8epu&@=3dR4t?^m0@7yAqEo4^*tk9i;LcL$iZQ?=i?);T*L`&5rW5qCnH!w0ufciI zCS>Y)BaA;+z=n&FD9YC3G+T418#l(zz3h;xd@0OZ8-kwYIZ)D`LrbMy;l8Fae)^J$ ztAl+}r6?55{~aUuAC$p|)`#SIcRo@1R0(A-R=~wICrR5;ancgEkxFjYzynK6XtAd| z-byHdTA@R!kNyfScS1|tdiFiDT!8ciM#BOIQBwBLTxTFMk&*8!q z%Zy}R74THXVK;6lcByb=Cmg)Di6_4){vANet)5rwN|9zNj zu;?>?>NU$o<{9v$>`fR2Ap$+8%0ypz5HreDuT z`F)MlGdYU!3NFKteonrzaz$rO{WSQt4%5Z<(3!7?X`0v)I9RY6#zTAQ;WMvkMbs-Z zu>-Euz91KLC9hN3{D%5FEQFbNbl|Ox0_2q}2el3z9Gz1MuV0110i95Mbv*@j6vmkM z9=8~->AEl@-U7v!LsdU@TdD zPZ`2{E2+}#GIk`O6mL(dRjBzsV@T4pkYN>lQSqHG zC`_fJjF%!PaIM9J;uvU6drIoo-K6^mE8*AlMm$;21Pw8&Q1V9+^h9L9<8~dOwG@={ zt(n^|J%ZQ_Y2eJ6U`t6g&N^HI zfkt^K@2Lr%ZAHW^^A!p2k)opVOF?yQ4IWCagV~vLVb!^7%!xyekRE@S{%Y0z)F%)8C9Y^US_P5Mw6LwV8XLcDrFE78U^6O$vZ4Vnk$9U%IHc0DPliy* zvzyL#l)$WnMl_awK6Elpk4_u^GW5r=5mHy#(C!v*ylS)zO4etipmqtw<2iCH+6&_f z=R(cJN|dgiPj*Y|!^RvR;N#OJfowKi-RFf{a&+hp^G5ttt&BrgP3hoh5^m`(MDZ`i zG(I2_*ZS`w2deK;u4! zA&V(p9)gb}UD>>!!O-373O_cN!l660csOwrHCN}2G3T9qU!SoP>e(nX80-HF}ob9VTGbQbWIO zSI1kqugEU3C|a2j1Zg!jsO7hricgf%^()J8jRewOb4B`=dpdmIzXqRvn1%u_6?n-{ z3L1>!@r`~pjtnh=e>d(D^<+&j7;vK7-^QcpG+kKO*+azR)#(ARaWbHHjItG3crE!1 znI4~n13u;;8yG{P9%^8=Y#E7qkcU~1mQYLoDR$PCA~=>KL4?1Kkz(!u@~cV$PkL#< z+G|{3#J> zv>v*-o|7-aCzw^=-_WUmh3u^E<7C225rwlGSi|c9M9TIm)w?_c*{$3|Pmg9m!q-R$ zWz-l&1*uJ@+im}gWd2cLkN-E=UJk>Dl7Yz|3 zo2YbuF`OtpLsct=$=eqOjC*P>e7T+vuTOQ6!xjXW&k@DgJyFyZ#H!lY_zV^iRQ3uG$C7fDx-eq#7VUp=Sr_K2LFCdz# zhuDFfYh*?5I^6wW?cnM!iL}Tp8vF|M*Z|ouJW|WaA>Y&pYTy3NT+ z(#MI=&CTT4!@u;ZXC<8Uf6wgZc}7>%`lmN4_2?cMKI#llp;X>zh!uRd0b&A;k=;^(PNEsq-lqUFD3ULGN~tVQDSml77eey)&^`q# z%+*iFI{6Yh!%H8tr^@NAZAoPFvUOlf#=c1%>w!w?&ay zCM1UImX)H&<3bSAO2OL7rMRWv5=?*O!;x3U7_h9C9OJ8j7k#-HaHx!)*RMtIBg(k$ zt0I2n9FL;S)~)>AVA=8^{ZHM0u**GQtos2g5IU1*;W!v(1eU|xGM zTzZ~N1I7$6^W9kv*H%O0Uag^SK?;yA%nM=zX;|v}gYrK0#l`z{aq*XOoV|VrEf{IR zMf;V2e|sq|QoKprH45;$nllT(AKbQ6rGw^_9HUi^ul^i`jr7M>JNsLbvbNhGLTxY{}b3;jJ-dEDU4{l7rCV z;27(lR!U{=#hV2k=pzf)%|(9Q73jTV2^eOE(T2ESXuI1-UaiWdKflz$2Wbyt$LY^^ ze~tl0(1uLsGl!2JD`;*+1*vzuK~-LZxxRcNM$jEpv2K{0{oMkN2^-Pd-U^1In&8Ue z+3b^pc~GSJoH^a(1ee47IWhMJ+n8N~e~R5OwMv;B?JB17&pQ|q`F!Z8h{joGMyc+e zn}oM{5rlur$GI1eGD)*GlSft+7@k#&l~?BC^mIPluU-fJTRAm(sU#XH8KKOh&1AvH zA{-2><*cI(ET0mgJ3fiSjb0TPPguoFZu&^a0(o$@tr{xx1Vfco89g^>gemz0q`xW! z7u6&})pH#>`(`0MTrETTXaVKXo?wEi2ia^+?bPuk17;ntfuVP~^ps`;^nF-^e~#;d zY3zPh>$oD;mVaj*-&sT2b2oyQ-jP(%{q#_m9^Go}N`6lKCiH6{$)2$R)vqYSf3%e> zT^Gn-R>wRqoFgfs@(oNbNtwcc#(q2asp{07XX`V6Ocq9f9 z%0(F5B}vo&nZUNMIXKhL9%d@ffTX8O7~bL8@I+byztujc0{*Scqu*}m`eLJ*m6;7J zI4^;}6SCp(Xd!;qmPR8^oZ4+P2ZF!GVa{_;I8TPMf4kN%Kh3 z=2Bv!(14LQJm8Gv9GLw4kqpn5hC}1rOy&KT%=GP%cqOZpD37zGU!WXJR!3p%Dg~&n z76+I8_P8(fB2(?(Lsaexquq~mymxFfaX*&@`YUWP;_EZI>y0{i2|Q$ZqMI??afFVp z$OZ>n4qtO-lGeS=SXAI-y9V2yJT*!?S%ec4pH4RSvYN#51PIf zh4#ni$wK=j&>hjtNWQM6my2UzK{-Dp$K-+IkSBbeQwMw9-BJ9WCq#7*Q`eUw;Bfgo zYxa6By>l^}{NQMr*E^TN(0PJUTM6}*+eFVl^nuULd2nes5=Ki@k$1i|DY9yYJ-?UX z^dM1ullqiJo4sM+ZtEH+j zW+WZ^CUQ7+tP8fD+Xx=dVuAG-7|K3=i&THkgEqDac#?HU`LT7l%>9~~hOaG18qTC` zOeW4#5CGnseKhE5HRavB5kCngLS(WvEZOTz5A$)up)1k2bt?~8cNC!Vg%*4pm5)LP zQ^=HnKXz1TKx&u)2rdx7i(g9cu1D+8a&K$W)c(ZWF-!P;QOA@aDfT#t&`ZHHgKx>{>^`b_FASDTrIPH?R>mha1D0h< zlHw41d~j$M9iCQ(Z|^9=t5kr!iX6p|lYcu8{hEU4{Ub%W0|cuFfdU zse^WpTfu$v`XQt3uL+s;lO!tCV}aK~EPunPgU`)ozqn=68j+ zR^hBUx;XC7Vp&7#h9iZXE zHKtomiTU3ChoG|p{5dmB-d#$9g-4#UilcXkwpWF@MMOPtdxSup{!X&%_;MV+R02=g zN{$Y-n_A~rz{=%vuy?CJI$C}rz1CVVV`>gQOwL1op#p4sIY=D$ek8B?o-@yVFFRSE|BrAvgV$T!i;SACSnF6x`Az0)(ps zqD`Ygf(uNoXdV1uUeGJ=r)Z(wJ!0LE3#lWea3OUO+OMd=#taAGvRy%=r`5m- z4#$>e(v10^VsO_h8N424z#5eIk=FPk;ukHT{p(8KYc}rX1s^MIic1Mbd;BdpTD!~Lqr0{WD5tjZC zfy<3n7?AD@t>*<8ne|-sq>CR6J#R#T5qWr4k_i*>+ssR@7s0mD$An+V3=(hElc7ht z@JJvVQ)3EH_MJYuf6D`t88_+qi|N!PD;-+Bt57zw9u9fEBiCou;c>MbwER{;i49~b=@xYftj805iI}xE zmfZJug0ee;KwnA$UyuUMS;hs*KC#q)Ry|~E7ZT^<7F=#&fUr&gy$&?u-^Nl1{2W45$LJVI??Ipn#2h(&#ZJiCNZ7Xz6K>?*kU%W1jD1c7HK>eRv+6 zylsfH?W{o7Xam{M{f68vU5&?@E5O@32lEmwV8bFatf)Y$*;@{tJa0&7Z2)F1d&6Ex zErq)u%RuOt3i|V9fm|B{PZPe-smzbGzWzDMySK|MI=q3%UMj(dg$1x$b1R(=WyED% z9&)W)VeOw#kPGyp?Jq;nw%LYpcz%^io$)@p|Gqg6Or4?S!I7BrA_scy+em+T4!TB4 zKvZ-tlF3_Cs4NV%9g`q$sGYSqypa`f;DcTJFA>GinNY4a3-3%U1I4Q=nC0f#(4^Od zo3+l+BBg)C^uiXh^RX;yuZp5eZ&ZT!`xX%IZo>4aQsN?dp4_#ZB55D;AhWQ7)@&@n zIf_kipZh)8cVjmra@`yxj#ofQw;v{rRMDq23^q6{f{hne;fr`%PQI>2i$Bfgue&nI zyvX&mWqXLZkzpDqCfk74NDh8AI8QsY%BZ%V4Qv~}NIXs)CgY6^Tz=?{JT^6See@*z z#KjciHh7_wMKZoHDZskhS;&={PmU_`!v4qf|6 zmY!>b8}a*x_*a@^Qv`siSRr+B7RIMy6=1IF1Ct85D0K8Odp5}n5_jj~=c0I&ui$u^ zf-Q(ntTvM=DhJ^`hF~aB0yb}dlIh=4XildVNQ{<}8GUl}(v2@eB|GLJzutO`+`t7r z)Ah)5V*}VTr9bpuy^_d$^~S9yt3YQjFIC!;2TO!s5vQazSiM{i(@$h0pI9>v#5ckK zPrP~gv0#!S{gsr2&BVcr8?f~AIw%b+ApC3ju}$$Xy?u5W?zB8h|1@a9!biDu{LFTS z>(w37TNQ=O^Je(i=7e8@*TPWe8a$eB3 z3&RUfd?Dt-I{Y+ti`J29Xqz98Ta8*VCweJ%7WUI`)%%$K9tNWo`$)Q^Ed9jk2RAk? z#l(%biQ$(g=4%&r6CEyFnmSt&j&CsH_{9XFP3R-xT^mm2cWT4+?j_`);eK-2rk0rP zI808r-J{{I1oU&bU=hCoOgt_`k=|VRZoq&-E-%g;8YIthwCJ(UM{IEEF2XfWn{jce z0x0#x-rokWKCb|Gl`JJ{qp589y-?f{{*4&rl!3RlILt|of-N&;Fw;B;{&Y2<`EVl+ zSNUV>-Gw06zJj#L9;Y`=OR%jn2qd&7$+g3Jc>RhRl{OcG=vT#%TN%Wz(W^meueWqD z7XVGD0Noyz@X0PCA&-^e#`krs!oU|Mm;#Jk3yDN#J)@(Pj-KyE+=%zu|^pTHk|11i7(#lD>Lz215hD+pwgD^T9 zhQlv~<#fzQ6T&!p@X@pS=*IESnI=TTRNWeUHsA^#lWK54u@qB}mr<`z!fdi0H*T5i zC1Xj=ps800?ALK0`cTtK)HHM^x=hg>@Z~WU~{;o0Oe_jP+wSs&*zk zU3iX8dz=f|N&3{ML<-6rl2Ly0Fu5S|jEp?w=<_#CV7Ix=qAp1k_l1`C5L)+X-@OQix)(8$$vr8M% z7CrG(U@6oLs}j49yfn<3L9OchB+NwuMYo)x-^)@-SVazuY@MXyW67L*sR_JJd7;?o zb4G5c8aF)R#cozY7+Esm?Z%sar*> zZ@18a-Br*jp9$^}@0t9t@9cKtt@Oc!AwC_^p~Zn4K{9L(MroX5Iu>uDx!=>^+BF~M z$X-{rWAX`G#EFRo$Bxt6d{U?)vWJF8&H=q!N;r%4hZSPR=0YvG)TUFPgY5uwlX=Ka z+Z|+4f)f0Zcx<+dClM~KeMTFX`{C4TL((wCz!;RF$s=B(@zWIFdoQ@{sL^#ii0BGr?m8A z5NtN)q1hk$hn%({|^3t+~v^+V)dRH|>0GsiBAmbX>@wqfIU_sNsiqqvvyUUkR9$tA`V3C+Y7Cd1TsxHgac|B;b!_ zuw~dAj`P>h0%vXL<$*P_0D;#M|2y#%!`M zs45!;)|KG}bt!tSt_BMCFT|v{1vp!mP}y(?Y%WTGIGITbBWLM+xl!ia77qyKS&bWi zakS;paOPfrI@x%a3$2wR7|H1C^t0>?JbdabC!RM`vp0Hh+NK)JV;eDgxSOW#$wViS z6c~xfr)%#Pl0{i-VC>Lh&^>>NXzyKs_VdHdByM|9{s?}&{LKp@w=Sp8boFrFRRw6U z7ly2MRpi!HCuX&IxJo)3$G6+Uzhx2BP9+WcJr_}hZh`UY?DeZ>3uIl_m^_*2{ydm_{@ z8ZyB6fhvcWw1nAVIStnL5Ppmu`LquHN==e9#rfz~D1+8^Vne;j zb>x_27G=gokm`RT_R_iNKADMsFZPhD@9f}#jvdAg&fAr)?oR( zLb|JToCNA_CH*Jr@YK!qRMXFx{_~K8CNBxPy)h1kgfsD=P!2X^ zIjj`W#RE6yqD@8#w?(zbIkuX-7~cxgKGj}+17 zfG$Sr&2rW%#sr=BwNTYffka}Y2BsICru<94u&>+e&~Zc+wmL*((JXuLIn4uG|5>0~ zi#)yGR6u-YnzEfbl^AE($L5CSL8Pw={^Rtyy9cY-l^*u^-hR>@G2gb8-%&K@dP z?MRqZ6*k;F2H*C5Bi>h}aN7wf;8zbc4N+_(J`)CX_yIrRF)~K=41Z`>`b>OyRS`e! zCMk1GU~*aj!v3A?)W@5o@?Q+RioZdfc6h+uUx{dW$R5{k7pC5I&B(sbMsCc43_%^V z@QQ&1AA34y=4`MM{Yp-lNyFYl$z~FN%3yegC>rwB5m^pTTo~m;=iE{TFK=ClI9hFP zKC=-7f}hc|9Pg0p7+~59L7ZVuSSVnRyoXegG$vyPr-serTL*lr)KF6< zgBeQ|#c2n7$ob1n2(=qjPTm;H`L*o0}fi4(H=P;l(+E&{~to2 z?-B`NiT;?|xOXU^W*NOKmJNHJ^^lr`P|EKnjgmL=ae~8@)dq^<;As~iW$DcM+4DJh zS_GD{hESlD3k!qHKp)0vnRzA3F3;oiF#+^@WdjDyn?t#dEg@T$oF}P|^KgUT6S}&? z4yFybF}@iovUoi^*xzMZ_sKhE^QRg^btD5VwCX zeRIBnyw*KMJq!Pml(#W7QRfnKN$x3Gd6eTjO|-;IrY5lKd@hau9Ev9C9B=EUg?Rk| zupQfH5y#Jw@MfzI4Eb7-re}X?N+B=hQA;GgSDLX(u!cTJk459;Tx!OZO@`L`;`Mu* zm?BR*TzI_}mTi4Q4`f-85;{(Pckx2q++WN$eNHauk%0(}W#?pxaZ?h zqJJhF{72=$<(&$61`ANDh8;A{*pbTaQHJW~7VPMaAUyj-$c|%6!T56vNJhONLR%EE z|4|B2GcP3y22${~%?NUue-qzd9i;8rRkH&e-*B&KDbZP^NMpl)lFhe^pwH87=c@Oxtd z+(??BvOg-x`fa)>Emnm*C;I6AgnP`%%Sv#x`4RnM+Rdy@=JbIF&ytgj8Zmv42jjDw zpkv=Tb7$*(SU)!aZx(Cg?P4`77t6yD&YT|ISq&EdHjo0-Tb%i*hOh5*p(b`IXrl(L zxu1{Dcl0rCn+@FA(=gcE`-;t%N~GJ0w7`C!257I)=Ju5HeOME1j`=BbwFRA`vgm&?%#s3TAAfc9BEO_PRne_Ywx4 z-y!7DGaFpDZ?yb@k(&&O@)YIsp$kUSsdc$gMuL;rvpRw(w-&7rG-)fpjg9{Qv0 z-`Q|kjSD43UE%ev?m_>%ByLz=DR^uYkUPg)k;xjPp%=QuwKMzzvX~#B0`i*Gzy|oS7j%>;hMV!a&X`$+x0aKbAQM}N17P?Tv&roV8~~L|RM2D_#vs`FGO(_!s73S?+MX#0~t`%A=Rg z98#~*1UW$r*_YyjEa#lh3ti4RgHd7BY28hn_;lbyav{@cdyEb?tOC3igWn_4;8dnA zT-i~M^GchTHKqV4{+7&Iti>GEO~dfX)r7n+!j9Q_a4dI%U{RVP^#+C&p3Yan^71=Oxd0iL6j`4ob)txwU9qxN|BoDVUFe6YJ>!&vFQ zq&3mv=&)@+eN=v)c*RL!)FXmNB=t!hr?(2us6y|zTS##H9dfqU7|Swp@p_glE*f9X zvSBsg9`b;CKAVfmB4y-gtTxU)rGo7hOJS^OoF4vOh9@rNprqJbOq%_MNf`75JMSup zI#Ytf6R&7&u`lNKjF7=(KKjAX89k1?AUY=17%jVrhSut0#4ZiY;rJ|*XfY@pt3x%n zIxtR7Cy5uOabt8ggbDs5=EmXhF{*_g9a2Jr_Bv|fR*To3%maUtLDOms(EmBd#}Ju> zhn7x9m$MvQfYHRQo%t~3=>dC1)X{t_2y)G~u{n$K$vLCN7}3Bv`?>f9+xzq=5ji*m z{=879uWcFV;2lF;&LZNOFas@l!jkfie%_WFE3iS|+>Sm!U z8TMjeG`jKELDYaf)+SfM!mk-*|N2ez{sB>_{ap|BpQAD6fCspa8bA-nA4wPfq7U|p zqugmveA!h2-!_EdyW7SXt)p&j)8BL zz+&Gix;ifnF1SyU)toxcMzx+e+$bauTeR3pUT%D1xdgLa^Qo3oIsJZqjM(HilF{OF zZ2okV$mW^Ct}Z@Yd_cfl(M=q-zmFN3T)vgGY!F7#S1zC`S%bn66AX{r8aSp<3Qw(@ z%@yws()#P}%=stB%~w9@B2s1R!259ty%Sasaqsr9pX%-4@LX4HUs;G^ORa$);y~!D zEi0FOmhNa;j}KRKLD}IJl(XY!bvi=G`xH;$auUa7VFl1M;EzT1MyPp-a~7n&n5hFh zOfp#oB0u0(8~uo()GZb^nwoT%^*PyC2;-wbyB69L91rHBR*nxD6=Pk!4587u41SJ})2V@9 z=HBlNP+LUC<+i{P~i(N^cTT zNSF@R8Ht!IrG=8;6>+q@io+@coTCLG`RgeY2OQ1UbV92pLtO9YySXwmXqSRJ$!n}+A3K-4BSCGiTAx|u-V zKnx5oa>mNLiS%&N0dnM#1YTM-L5{!oraF3;nVlicSlq)orzFhJUV1G|xk8+Y&}n1# z)`<#oa_9%;+Pi&lQEw(xJMLksFD@c$k4j>O)EX?}aGg1G%Sp!K75K~T9KAnB5TAR@ z!i`KTI9*7FM`0tZWdX-8anl`cFBV|4CUr4<#g=?C6}EN<<}< zqv>`^AaDCzFd1D*ej1HZ<=ayP@r9|?+-CY=Q7mwO-%He2ZzlWFlp!)R8b^|qaca2) zDQ#B9uKTg@Zd*PiBy)k@*lzafJT5evrUuNkTKtz^0UhCANZ#i2BzAKRzL@cn^o%Ib z(;L;{_J!T_)x08X5ZX&x9~59mNHAXAHbwT%lBT-zZV+dOY>fS+iLrCI7`I9V%#9U8 z>$GfeTvP(vTQyPM=^q`mdqhH9Z82tF2<{ov1(~J*e6>;*vr|W5kWA3hy)b{6%bTVP=bn)jXWhr0?^vuAHbAlohj>cc6FAKT6=?m6J6`5&pbC*e*lQFx4|;`{DW z_R*)2e63KXO9g##=#65wCAXV>uq=S{;s|hi6$THN_HYZi&9qji%d|EqgkOpld{f?P zU|+S#**DXKSeP`PJ93Z@4fsQI9Da~!+kr5rGY6K)D}b7B4eG7%#wXQ|__6Xhy(Q$! z6pwx9m4<+G=X_(E%&o`)!ywq#O(8XK5uX1Pfi@EjP*X<P0d3aptj6aAyd!{Mkj=-s)UCkWR??G93p--96W%R;Vs zL5=>|byd_*q$_B&S_J?gJC&G91mVz`x_)*UGBu876^ zjYmmfMF6e(;E#5rYw-4n6MW9+a@3yh2VMn3sJ>MU__)bJj7*+T(@-|OMxh!b4;$OO1+T7|8r4e{st zcU*V>IbM74qj;mND{M1)$A|1K!1GZG)G22m*124#_0c8h#?0a2G7&fPUCw2F1HjiI z79~bm!~9RF)OTAJzQ`AWLBIseve2R@zm`IaR~4?Pe#zHwb*GhHW-zc&#QVqP;*yqQ zeEY8qezRdWPd;Ic^NJ$z?WHw5cJ^v4@VY_6a`n*bX)&nCPQ>|{QlO-}kvpF%N526v zWJ#VMtv0iuqXvHEU(QUNO}^>} z32~Zb(3P5uy$PXEpD~e~CV%sGV;3sF$ra!Icthm{t)}f@BYJ&pIM_|e$HUYE&RDGj z#qnkI%x&QuQ{wp|8w*Uz7jo@!YoO3V3Q8_Wq7yNL*GsC{`Qg*xI9mmuuGzt&lW~~p zQjY#p&9U359PSjS!L-CO?2{_x=erj`QGgoX<~9gOY!J@MPU3RAHR0K7OHg@|hhDzv z_;+sz%+c{ikLe}Q*cXM>FN7G))`jr&Mjlt$sQ`CvCWFnJ8+>l69*o)OM*{>+)cZ5J zeAUD-Jm$NLYMnI3dtzM-)9j-rebxBLBMyEXo`|ovN1z9vL%Zi?K$?|3%(}UYuIaae zZ}ODE*OD3Fr!?A4@s6kXT}~N>9pS8Exo&@SX`jChR)xUKz&-Ix%Uq>K6F?%y)vhOPF*}5 zHHt-WII@Z8m8{?+CmV9t%~Ckv$wXLIU&l8UECi*s+R(bKi^mU13YIRs?_=k^|n2klJin#7YRhE45 zIhRj1!53$y05r=(>>ghz>D7R|7BRnAT1yL-_lXnh@?ca!J`7)*0oupQAr4Y`ib@Ui zWfft(=r7*dAcD7tCX3HkY17D;iIj`p@WvtExWAG-#D|{a=H6v^Z-zP?3Tfr<>(#Mb z=LhG3?szx1l~-Nvqv0WySh{W=7|6NvA&r00Ur9o}!}dfR7;u^nGP+9k6e_{-@<>#v zNrP_{)$qDYo6mF!BK=q`Ii zhe(9;QIl6e|Jy#;T3&=F?)g#wp%S$Hb0RG%Dx{INeXOqa3NL9m#nS}e@mSmfh(B2a zC*#xbf~6c@aasQShpSs1-Y1WJl))blbe78 zCOLDnpfN(c-x%5h7a}$X^Oov$Fk$mrJnuZ086kHiN@XyD+# zmcr7+Ado)jjdDW0Roi5t>SyUPOd76%lV`eNSb7ZvzV?D)!Sc9#lQotWS)irtZMs1s z8{PNkW9iWW+-LhowocG-E53E2s;8Eqx?=_^7Z%{j=ixZVHV*PX=F%TW#$!;WDYshe zjd3ww`Ru<+smVH_ekOPXnmxDS8+T2{H)?uxMhEgWkIJ}BXC4-0ZD#3ei*d4-79UK; z@wYR!(M$VI@fB6RF!laps+!!+wzjXpnZu&Eb9W#%HGJTutExfrRRNZ+-OjHPC0IJf z0@kVw#uMUD90e_G&a2fpwQCh>=Jc{aE}`Fke-ZF3&UV}{Bo>P zm&857xsBLe4fjSZ#o8hHs5U|mSL=P@o(ppDRf-ZWyt9$ojCQ6UBZT$l+)`XJKNCd9 z-ctBb%RAacu+AbGQ!NL=?Q^Dhza;|x1Qf!M&Lq51LHQLYAtx1-hx#TZ@L@p+EWPhU z-g;P|s8kQ^-|eOP?*?GEgEYll7j%0x71W-7V_y}j!KL0Fd(YZ4(XTU9rZF4N2s+h> z>Cc;;H|Ue>*$JTbU@<&adMs{u8P6TQ_=`v6O~Az(fAO^$i=daMf_MKn?xKq&p!{G7 z?h4a|Yd`(T=m5ZR%@m`5L}H)yMH<`Wj_axyVal#Nm~~JNwH7Mlg21&n-Z>dp45|@g zvw{ySe2&%LnqhkLIUaQ^1Fy_4fIrE9(=#J)(jbA~kt%DArk<%-X0L?@wX^VW>IeSv z@k4qc+Lzy3=F7iW-lGfZq%g=>3Qh0lLG*#Qq&K>Q+qY15CucWbU!B2CBvNqWv^btN zAccEhI74GTY@#D+08Sk@56A3nX~v(tlZTkdR4!JJ zz&-E#p;tpY{b=pY=gzdnqLO`lMWZAtl#IrJmzCr;oeh`urr`=BX_%Lu1=I3fY1{Vu zTxFI9{%&7`6B9jo&dq3g_2L(yj1x+RmSb`k=kt!YFtPMe`ZZ`X9V*U&J$c61`D7Da zV)>ny`y8c9=1hY8`SuWgCK(^b`{BOe1-QM!2kM-r;k33Y=nfZnGv+V(uVpoO&R`wL zAC5=6*yD7Yqb;g7m+*$CLP*T%4lR(`&qvgM5VY?0xXE!9C{B*WH3k7Fc?jv{r0djY z!dfD)X~1{+5)4S2k4C!1{Hak78}+UbT8x!Bo(O@M8SD8x`wLd;k5_l=GGojCG zI%LU@g@F%CVf?gN5O;qC#^hh4&gT?BN2Ub3PW_=4(@arrV+I5s@xXg_j_9=WDOvC{ zhgKHs;aPGmye!BV7sw67shhK4bcH=Ws;{EUsw3du7zt6BhnNR$(1DVXTgY@*fj9M6 z0X3L-nObZek6~xNbKMP>sIGDcwND)^#QCgwO2u6I_1smu_Umm{GcFF*)n-7Nkmn!r zUdTPn{Yfj;ib2hC6&xHDjnUU~A@*uE9xBSlSeA|+4Kf%{O+^DQDnm?H_TNmCmSyqJ zQ>$Ucj7)s`!561#X2Ol+5f}m^W zQ4%vK6KsTam0>sG4_kuxi5m(uZrEbFX6166C!0--`=>K)TVqIXcjER#Cu2d`1k~_L z!`7w8>CX)lY3-JL+9W-J%Zw|6u?=eIX4*lgO6!2`^-z@Gl!LWaVdRW=JO6vtDtNQr z5T1ux;Y`n0)Iu?Vmg5E%aMBQGe_Fw7-;M#(oDBHB#S=eYnTX%>i!o(qDL%-t!ztfN zak`WgTNdhq8P~gswEYSgId2@gs&Yzh7ed|O0$6rJ$m?{M@w>-l;G}vid?FI~;7|}` z%9o>pR1WWG=ugL&Wnzwx14PY@f{;B6V2EBPH?UjFJMRt#_gl8;Gd>4I8G-m@LM|u= zd&BI*5-@3QiM!vLAKYt~0@ZmK1A|;**{Ur+=zv^-r*yl9JIAZzm6Cbjzt)re%nXOH zPl`CQYCC`6SdMEXR^p20*?1^;CF*IFqfzP{s2U@UiC4FZ6Vg_~4OW6D&&I$PryS~1 z@tZkV=EJ6@&}REHKZ$MfXgoFLGuhrD@7lIR4cpfG;g+v+>F)2_`HT1;^hZk$G5?SN zClkB*p0`b0{x4g6xZV=NN3DX28IBlXI2p2heQ@FKPQGjHNZkL;o#yyg;O45&)YAVD zpRZL*AMTDtX@eVd{I>|2(r+D|#vh268~cOPh+$OmhY>b3l+)Bz3*f=e5QwUs2OZrv z`KhVnVdb*3{OGqzE)^Gx2VVc8=N^6F#}`#Y@!F|8z_kcR{~nI2w+Xo3AJ3oa`=E7M z6LHsT<$3e+aB#z6K41BjpwC!B_MR-JjaNmmX-z5K@fsm8Jqlrlizf#O8yt4zDfcgE zV#gn^g}Em)aM$TlWLGLNQo53tH_r#V)hpoz*MJKXGoUAX4a80yicc?D;);upxP1Qz zND1`CnTxBa?x0>8?>!WL?d)Jm9r|E4)){3h%poxP2hBUW9M877pubKL-dq>NfBv0} z6Gl&j>8+tK@uvwME0ctEj|{L?bBxGMq)QgmXyKD*5x6Vz37tK?KR$LaqFz&?K=FG7 zT1Jn7yL(r{{`C`JsNg^NnN)M#1%n{PY9RE!9F4i(rr_^OJ~%<65_;R`@flCoU}Tgh zbb5w@X*iNa7uKTvSUG`(ag+~;7!O;TmDrW-{&;x563ko~hAxq&kbWUV&_`@@KYOhL zZeJH+iTZrFsU0h5cQRm56Ve5&nVGC9#{1)r(gfSZkZu|V(YLnoCo13B#h5qTVuBnD zk{F8v`gQZ(y_@*1swq4${0i;fx)P&g!=W+!Fr86uf zSEJ$Sh$`gU3vrW+9G7!k4ox1mc+w&Ylpg5tcLiZ^clRYV1Km6P23L(Wp;J64y$WKY0pPxP=-Lxu(imr~J$M#29faOJ^7s4sTINF5KX`%s7p(pgk} zWFxg2KOM{~6ItX5$`=gHf^DI5xZ_esSY%pDhpP#-agR5X86EL3-?xIQYS!~Z&!y4o zrv|)OJO%Y%nZr@*3JAKM3$xx{;k&9^N$j*X8e(D#p8Ns#dr?nxY6`{LpQHr;A`^-S zm}1J^OFWd^<#X&rxP7vq7oWaVU^#YBgjcdH- zLo%4y4(IVthvIWZX^3$X{5O3q?kC{_%F+*LfSM8x^(p3)-@c&E#FGEx$NFeiKHsQW=ML0*{G!lE$tjWJw4SBkGYHBlY+^T8&Uc%rNdwEsQaS{0W-=JDD=KChnO|rx!Hy+Jb(Nwf3nO0mUtXv z8`SOj4&N}SSzSoqT)D;j8Na3%p00K;m0rW`whTo%Z4*ps*i18nZ7Dy0osM!Y7S;nQ zz$PB2{fuuj5Bcr%X>ls?EUdy<%@n-X(m@lZ$Y4pbHg=!9%-hovA)@;=_m+*L9*+uP zs{yA{sFf4HZsh;Nz)B`{?YWW~kXug~uA(LCP}=csNt=b=xX5}mN^DGkm;S~9JN z54fEPFE7Yo%d(^Nv8*=m&eiZ?@>opLZK7tL1^6Z71dlp^?&%}qVY=CAdP2qw2fq15 z*qB*p#WUgLD;>5YayU)M-9XpDbGqklIjjs_%1gS-@vYk=xaFDLyzi7PzVWT6W5=ZP z7ZJ}%;2A5}9Uck#&tD7L^Eo)yw-CJlRKWdvCz>BEln1SxAyj5!H9nOw#@-%VSf4o$ zD-SJ&_B@I!y!zucmp!y5=L&bu-OaB#D^kPoT>Kbk3s2q!@vCuVP}?5F%Wt;Qo*a3c zH+LGwgm%-e_$-WhQw=#|TY1LU<)nGbLg@NA2_+h*VzG@s%rb1}cNW!A=P?35Dn1(0 zihqi-`jFNSIwiJzu^if?R^#-&xm?mF1x-@ka^(p=Fe1Dd&l|K+)rWUzZSj1Vt{FRue7{-GHQ+y4(Z-0$Ck!y~*$ z3*$qxLHR=tOy~p->(E`i|5GJYJ?V_E<`68g8-QE? zUWp^G%0bxkFw}W{gAK1S;khO$7IH%rLZoLEbKj!?w|A10y7 z3O`U>C4%&XZ~S>@8LW~`Lef`+L28nK`&^)PqXxch9*kM4wrF>IDLn4j$y;Xc<3&u8 z%T0`dPs?vs3fki_aI2`EHn^UmVTDEzoF;>Xek;+#^CUNR97Wsi z&B2Brj(p$P04`M%hUHz&WYfA(obLFC%d{rKuIrX?X?iGe?vVibt7qtDfq5bMfI@5L zacW^(gJuf5_}r3YpyowbyZUfMmQS+V4Xk;$(l&^4I2)quz=_vORF!`I)fgN)g@g+f%6F>!GsK%^~7+ ze>6T355BJBDR?f1ysK*=Jv<8J8gKDq7Q?7+=@+_jgfGg@kB5Ps&ivsQz~RAObd_cz zOv%mQAJuA@|DXZf@NzvLyjlv(9!%#i%*?s@_$2Lfq?jq$WQ3u?FS*cX8u(JD&V911yyf@!1lLng&k5fYQ0p zw!W5jOKhZRIdS~&v3KZBXEiL4ej@&DMX@LIw#c!d7)mZp09&mmd~H$(A9JJ_>y}H= z8K*6vH+>(eUPa*iUUhhU@FGnevj7GUiAu8Q zaig2`Q|^9#%r+b=6cjOdb`T8q*-1K-ykSR?6z|zo1KZPOVf?E~{3SI6Z66iExOx52 zV$E_K-xoEom=6klLExUyN(#qKrXu4^u(H;KuXXQf>kJ2&ysn(& z_^pOVYgWRT(H`Onb=P$Y^L4t2Kk$MpaR^NjlIe9qdU#?)eb;YPL z*@?}0Ukoo_*@{QGRbhxrKNvT3Ep&S=fI+jib0>rGpnA2D2JI`N0|t9z(570Vy4sFA z>Dz$S{%72OR2r{(=LdsNE{FLZ&#CQ6TYMzU`+fV|a9tN=VFGV@#nN1X<9vs!eA_`S z3snHl9pNXPW#Ng9Bi1;4q={a;Y3aEmd^wwpc>Za>9E)`Ju||1u&+hg_{+Z;d7>k`)w7$Tvr|zhiSk} zyLDW*cOITzqsx27OyfSa)dCM<9sO{@1%iBKvG4Uxesj%UE|I^Rf4BTaCSE4g^yy!` zw9o~tJQfI?9)|6Dh;uRY3 zEjk*02YOSBAxr5gr#O1}_5~X4)kN=aa)m_08VvkA69!&XfzsY};%z+@{FGEWw#nZh z@AO2lx+jsZm{Nx4$KK*`NeReihoeIFNxCxnE`Po>3=}q63w0-XZ2#OsaJwDOOP5@y zIyIT#_hJR=KCj`k6Q%KBTN)1O%LbqErYO-m2x^B*K+lxPu-hjN%XNohnrb2@v-uXp+CN8%sF)+yrFZAW}oJv(F&?!T$7qg*Z^C%$? zmWU6FpKzCL8u(I915d^%V&W-5hjwc+wtc9C7S~t2O~{Ewj?aR`gTZL?X)Bvr;v^0q zF$y{bzD)9{Lu6Y~K1SqL3oNiNyuN(^HeXc1^PyeDTz&(o56Q)$TYPx-X;Y{Vn+uC> z<~GaUkc6R8b<`7t;IsZ3bat)A)Zt+mn(EE3mWD%K&N^5wOVQ*+C8m$e$5Va5xYD-* z>bMYZon4B@1dd7O+;liM>@5Gsf6zC{Ix6u`2Ml5RU-%F9|M(9l%e{D?g%Pp%pvIkd z-(v2ovsmr524=RXA6+5!n`Q0q$DJ!ZY3OW6KI+8=7O~}a^YCm7A~|TQXm0sV;&ONh z9sE;`C+`bq18!{;^{fKYem-9{XkilTXu~hYgX#>7IRB-|A!eZdGniC6_^p@B_e)W`=BVkZV&sh zV*LcFpsl}Z2@MJ&A1)kwsbMG0s}f^Ulr+U{Ugq@j3rkWon&J_iHJZ%W#Mt#iM!-ZvMk7)Cr!9Q42<)L zmWLx(-RZ)-%3sc8fYveDwzhbEK4UKP4zN<2|rHA-~nt`S)+a$@Cc-xIT2DMZ#= zgLxWFqz;y|M6#8tY)rsG()}e`oEy8J&9grxdO|KW>#bJdp4a5*$?W6oX4VweGGVhQ zIJKC$D1K&_h8WXryF=yq%g)85Y`KiU^XMU$Y$l2`wl@pvaB9Puyx|=tSkE%Y1!n+W%NF=B*7nF5dWMJV!-4ss&M(uh2%+>BfoG= zmw(LuK~&!Av8+43#EYae8LN|QosK14oM1~2T>sqsQhqxNF;yf3KOJK&J@PzbN;T8{ zB`2DB`k`1yZ6dujE~B}dUu28+NKw-ZoY_WZiCjnbl69eD`IjFh>y3rXapefA{Fq%39*RbDNKw zoajg6nv0q5J~Q$;KA284xWGbM~3U&2J~x!>V=D&YGRB zH4@udNQeeB88M!m$ab!(Vy`N*$WL2mw=e4?dEEh^?{|Cf>1G?)ad~Y%^7NjiDsX%e?-2xT|-5UW|I#d2z! z$uu7WUj3(>WKPQyU%D`f_7^n6`yw*Lu@Cl>+P#z5?6IY!G)bM4@OSPhrO8A)XFXf! z^vT`xySHd}r5iup-70?7p~Wvd-(ev~C1~d^O-g+|=qoQX9#~vP9?$^%aCiS=(G3k<|O6kAF_#>2@88~D%JCpRraXUAwO;S1pBQd z#B(iEZIb8FK3$~i;~l2>;v8$vtS4Kuio}n~?f7#2QqfrjZ93A=lFoQ{gQ&7fmRYMn z<8S1$kZLQ^zeAlm_tul5**^T%(siPy6Q7y)++*Sws~MTLt(5W?;s|1N0p|emXKY3xlI53bvDQS8qph|-(1tH;#QzNm$h|1CQWx$=%#7?c*@eR z%{yAu`J+eGEURiC+r9m`sA#%2&ENaY{ZFDYPf?Sh(f!5{MGj(Rb$NQxeHL4C;wc;G z{fc?Z6=9bKiS3`lSG$Yty%U8S2}OlLGt+E4YAgq>#QT#nh!Cy;t$4|(!o7z zMN0|{xum)zzt+*ojDHxABHvs#$i|8nJ!mBrszyB7RgoPI*QRd@?~-qA27F=L1#wEo zA7)~Gmt7Km=RbNWQw5jL;-jy!h{(QHJpS-=ao!zSvKj|-=`EX?LowwgMu(aGD=VVwLu!1rZah3IFazxUU9&7tT<{tSiKA2TSjzsIzNM~u@&}7Q1>e5)k zF?(+JLW>1I=whxKm&AW3J|fi#9i$6WS;q#k$Z5C9wE{ zItRu1XP=NLXDu3&uueQb%a^uoR1kM%#gN_AZ$v?Z--*gpABl2qDD$y)+Rg1ZABwQ| zGP&R|l`mSPz!dZBxbOUKRwQV@g1w^IwzLXDKMZE3^KP=kA3l?3J#zGD)l;H7{Vy^n z%F-!RFK|&8rBzo3{G-2W%)~GXx<+cTi z1}c6h7C)`&r}I6c`HLl~%>^SW+tZdu zZbmO%YGDuCkCUn4mqefc45I_LoA8hXRjQmnf+V&bVBN*vn9HgK?9mU#4(IiW6}#t< z(MrOxm+SLN$6?~XUqlnlO=e{3tp;-PWi2`6J%U>3nX$4zcC@;@oS0`ECFhsS6Px^b z!|FteB=OiV@kN92tRSgXeE3o&F*F=WI?sWqcx(ju6|Bj#8%I$uuE)33%JCdEPaayP z%N?IO(5|S#Oik&5XlQ4m{&azPvB_el$r}*6`h0R545_v+3E~%{-DV>-gj$Te^ zewrc=S@(qPmz>8Bo;yH#7i=d<#FQ)Ps_=VC-^r0}EyVeN6;~hgj5!@xLTKzt@nYe< zoxNZs`PCIk4oz7~(q1bIu{BLPX4Gh=`%;ttt-X{HROX?lN75G60etU~>0l zd!qMKN3r4Ur&;r_^Q1N2fY7|ZSX9GMro|dW24^;~Z+ipCrNZ~kXB(SX`C@_7pLBr* z-4J@IxD4m#k6a+>*R{B^x;uS)`7Rmh*U03j%W%VAX{&c{YAMU8F z$Kp*svkx9JG@z{?$Fq9;;(#Bb+8YL>KQr%MR6=Q=_?8N$!CQ#K3a}aSi0ep~9SgY^oNm%CBl}zc`5>RBR!? zcX=}wqs%Xr+0d$&J4oXof%lv5LUkf_xxY-fsLVK(Swxu7Y(qn?Nb&o}_7a2AKBm-ZP4C-FkYJfacF~LQt*0wl&H@ekP5V6y_kPWOL@Ck(u9S~U z&Lr#oTtzxBPOu-(-my80VyVaZ!)~TId)V1&Bk4u`Vbn2q9Iaa&&KH!)(~!*$RBzNI zVrtYtBHmpVzyEu;=uc)2Au%JwJLPW^#V0ZB#-it>;nWo-zI>gGDwZV0-kMzUUV+F+ zRhh`N^)U;tp>*-+dNyKqC$k;V#p;SBc-x{sqBvhe8k#(aX1bY(_9rmW+m{>J*bTBm zs&KH-KVuzpvhQQ+F&f;f=_)(_@uzrD=Lcdf#2jbbOJdpf=Ir>+&17U&54#Z{L$8PZ zBKA^~_~a`ZZ1f{ZQEu=bVrktb?&!CTiG+Ki*7KC~`>jE5EtoBiP}%G5I8K(=o`1_u z7lx6UwWG+Urh(#IGJ@r9Un4$UY%F>@5gQkM z>TmBzn(ncO@Ym~Rvc-tUL^BrH2J>`56v?wB>rh8DQy3X_<_Se@dM-PH{`%s zN&3(0Op446{qHcu|L1j7Bt-v{$N2A_jozbO{`Z{||Er&(!+?K|e6u!Yve2zj;-4*G zyyQQ-|LF<(uk9TFxyXNi{AY*I|Fr(s+>G+Sna&iB@~_smcK>PnuW^}ww`~di58Dy{ zX*=>??#aK~4vhW}Tl@dC{nz{O@3sL+|6%L!pSJ({POALd_1650?SJ35fbp`j!~c7b zzO?oK443`yzy9Ao?w Date: Mon, 25 Apr 2022 01:29:29 +0100 Subject: [PATCH 25/56] Add publish step --- .github/workflows/ci.yml | 174 ++++++++++++++++----------------------- pyproject.toml | 1 - 2 files changed, 71 insertions(+), 104 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6010f5c..d27bc620 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -60,109 +60,77 @@ jobs: - name: Install summit and pytest run: pip install summit-*.tar.gz pytest - - name: Run tests - run: summit-tests + # - name: Run tests + # run: summit-tests # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry - # publish: - # needs: test_build - # runs-on: ubuntu-latest - - # steps: - # - name: Install python - # uses: actions/setup-python@v2 - # with: - # python-version: '3.9' - - # - name: Install poetry - # uses: Gr1N/setup-poetry@v7 - - # - name: Cache poetry dependencies - # uses: actions/cache@v2 - # with: - # path: ~/.cache/pypoetry/virtualenvs - # key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }} - # restore-keys: | - # ${{ runner.os }}-poetry- - - # - name: Install coveo-pypi-cli - # shell: bash - # run: pipx install coveo-pypi-cli${{ inputs.pypi-cli-version }} - - # - name: Determine the minimum version for this release (the one in the pyproject.toml file) - # id: get-minimum-version - # shell: bash - # working-directory: ${{ inputs.pyproject-folder }} - # run: echo "::set-output name=minimum-version::$(python $GITHUB_ACTION_PATH/get-minimum-version.py)" - - # - name: Compute the release and prerelease versions - # id: get-versions - # shell: bash - # run: | - # RELEASE="$(pypi next-version ${{ inputs.project-name }} --minimum-version ${{ steps.get-minimum-version.outputs.minimum-version }})" - # PRERELEASE="$(pypi next-version ${{ inputs.project-name }} --prerelease --minimum-version ${{ steps.get-minimum-version.outputs.minimum-version }})" - # echo "::set-output name=release::$RELEASE" - # echo "Next release: $RELEASE" - # echo "::set-output name=prerelease::$PRERELEASE" - # echo "Next prerelease: $PRERELEASE" - # - name: Determine the version to publish. - # shell: bash - # id: get-next-version - # run: | - # if [[ ${{ inputs.pre-release }} == true ]]; then - # echo "::set-output name=version::${{ steps.get-versions.outputs.prerelease }}" - # else - # echo "::set-output name=version::${{ steps.get-versions.outputs.release }}" - # fi - # - name: Setup poetry for publish - # working-directory: ${{ inputs.pyproject-folder }} - # shell: bash - # run: | - # poetry version ${{ steps.get-next-version.outputs.version }} - # poetry build - # poetry config pypi-token.pypi ${{ inputs.pypi-token }} - # - name: Publish to pypi.org - # working-directory: ${{ inputs.pyproject-folder }} - # shell: bash - # run: | - # if [[ ${{ inputs.dry-run }} == false ]]; then - # poetry publish --no-interaction - # else - # echo "Just a dry run; we're not actually publishing" - # fi - # - name: Tag repository - # shell: bash - # id: get-next-tag - # run: | - # TAG_NAME=${{ inputs.tag-prefix }}${{ steps.get-next-version.outputs.version }} - # echo "::set-output name=tag-name::$TAG_NAME" - # echo "This release will be tagged as $TAG_NAME" - # git config user.name "github-actions" - # git config user.email "actions@users.noreply.github.com" - # git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - # - name: Push the tag - # shell: bash - # env: - # TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} - # run: | - # if [[ ${{ inputs.dry-run }} == false && ${{ inputs.disable-repository-tags }} != true ]]; then - # git push origin $TAG_NAME - # else - # echo "If this wasn't a dry run, I would push this new tag named $TAG_NAME" - # fi - # - name: Checkout repository - # uses: actions/checkout@v2 - - # - name: Setup python 3.9 - # uses: actions/setup-python@v2 - # with: - # python-version: 3.9 - - # - name: Publish to pypi - # uses: coveooss/pypi-publish-with-poetry@main - # with: - # project-name: summit - # pypi-token: ${{ secrets.PYPI_TOKEN }} - # dry-run: ${{ github.ref != 'refs/heads/main'}} - + publish: + needs: test + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install python + uses: actions/setup-python@v2 + with: + python-version: '3.9' + + - name: Download built package + uses: actions/download-artifact@v3 + with: + name: dist + path: dist/ + + - name: Install poetry + uses: Gr1N/setup-poetry@v7 + + - name: Install coveo-pypi-cli + run: pip install coveo-pypi-cli + + - name: Determine the version for this release from the build + id: current + run: | + summit_build="ls summit-*.tar.gz" + echo "::set-output name=version::$($summit_build =~ (summit-)([^,][0-9.]{4}))" + + - name: Get latest published version + id: published + run: | + RELEASE="$(pypi current-version summit)" + echo "::set-output name=version::$RELEASE" + + - name: Publish to pypi if new version on master + if: ${{ steps.outputs.currrent.version != steps.outputs.published.version }} + run: | + poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} + if [[ ${{ github.ref_name }} == "master"]]; then + poetry publish + else + poetry publish --dry-run + fi + + - name: Tag repository + shell: bash + id: get-next-tag + if: ${{ steps.outputs.currrent.version != steps.outputs.published.version }} + run: | + TAG_NAME=${{ steps.outputs.currrent.version }} + echo "::set-output name=tag-name::$TAG_NAME" + echo "This release will be tagged as $TAG_NAME" + git config user.name "github-actions" + git config user.email "actions@users.noreply.github.com" + git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} + + - name: Push the tag + shell: bash + env: + TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} + run: | + if [[ ${{ github.ref_name }} == "master"]]; then + git push origin $TAG_NAME + else + echo "If this was the master branch, I would push this new tag named $TAG_NAME" + fi diff --git a/pyproject.toml b/pyproject.toml index 0bc95413..3a5626ce 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,7 +60,6 @@ experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "st docs = ["sphinx", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] [tool.poetry.dev-dependencies] - ipdb = "0.13.4" rope = "^0.17.0" black = {version = "^20.8b1", allow-prereleases = true} From eef86192cdd632989c4f3019cdab14ac85bd3b4b Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 01:36:54 +0100 Subject: [PATCH 26/56] Correct version matching --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d27bc620..5cab439f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,8 @@ jobs: id: current run: | summit_build="ls summit-*.tar.gz" - echo "::set-output name=version::$($summit_build =~ (summit-)([^,][0-9.]{4}))" + $summit_build =~ (summit-)([^,][0-9.]{4})) + echo "::set-output name=version::${BASH_REMATCH[2]}" - name: Get latest published version id: published From 7d9eb929772551500dafd26d9b912e4bde267a19 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 01:42:40 +0100 Subject: [PATCH 27/56] Fix syntax error --- .github/workflows/ci.yml | 47 ++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5cab439f..5ea74873 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,28 +37,28 @@ jobs: retention-days: 1 # Run pytest using built package - test: - needs: build - runs-on: ubuntu-latest - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Install python - uses: actions/setup-python@v2 - with: - python-version: '3.9' - cache: 'pip' - cache-dependency-path: "poetry.lock" - - - name: Download built package - uses: actions/download-artifact@v3 - with: - name: dist + # test: + # needs: build + # runs-on: ubuntu-latest + + # steps: + # - name: Checkout repository + # uses: actions/checkout@v2 + + # - name: Install python + # uses: actions/setup-python@v2 + # with: + # python-version: '3.9' + # cache: 'pip' + # cache-dependency-path: "poetry.lock" + + # - name: Download built package + # uses: actions/download-artifact@v3 + # with: + # name: dist - - name: Install summit and pytest - run: pip install summit-*.tar.gz pytest + # - name: Install summit and pytest + # run: pip install summit-*.tar.gz pytest # - name: Run tests # run: summit-tests @@ -66,7 +66,8 @@ jobs: # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry publish: - needs: test + # needs: test + needs: build runs-on: ubuntu-latest steps: @@ -94,7 +95,7 @@ jobs: id: current run: | summit_build="ls summit-*.tar.gz" - $summit_build =~ (summit-)([^,][0-9.]{4})) + $summit_build =~ (summit-)([^,][0-9.]{4}) echo "::set-output name=version::${BASH_REMATCH[2]}" - name: Get latest published version From 4737350a5dad789feb2452c718a9edf0ee2081bd Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 01:47:38 +0100 Subject: [PATCH 28/56] Fix syntax error --- .github/workflows/ci.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5ea74873..3afa7a6a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,9 +94,13 @@ jobs: - name: Determine the version for this release from the build id: current run: | - summit_build="ls summit-*.tar.gz" - $summit_build =~ (summit-)([^,][0-9.]{4}) - echo "::set-output name=version::${BASH_REMATCH[2]}" + str="ls summit-*.tar.gz" + if [[ $str =~ (summit-)([^,][0-9.]{4}) ]]; then + echo "::set-output name=version::${BASH_REMATCH[2]}" + else + echo "No version found found" + fi + - name: Get latest published version id: published From 0b9562d9173f8f37d97e1d73e0c0c425d8897840 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 01:49:27 +0100 Subject: [PATCH 29/56] Fix syntax error --- .github/workflows/ci.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3afa7a6a..ac7d17cf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,12 +94,13 @@ jobs: - name: Determine the version for this release from the build id: current run: | - str="ls summit-*.tar.gz" - if [[ $str =~ (summit-)([^,][0-9.]{4}) ]]; then - echo "::set-output name=version::${BASH_REMATCH[2]}" - else - echo "No version found found" - fi + str="ls summit-*.tar.gz" + if [[ $str =~ (summit-)([^,][0-9.]{4}) ]]; then + echo "::set-output name=version::${BASH_REMATCH[2]}" + else + echo "No version found found" + ::set-output name=version::"" + fi - name: Get latest published version From 25059b3c689e02f0d70a67656f30e3ee0b3a9343 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 01:56:40 +0100 Subject: [PATCH 30/56] Conditionals --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac7d17cf..aa99a1d3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -99,7 +99,7 @@ jobs: echo "::set-output name=version::${BASH_REMATCH[2]}" else echo "No version found found" - ::set-output name=version::"" + echo "::set-output name=version::"" fi @@ -110,7 +110,7 @@ jobs: echo "::set-output name=version::$RELEASE" - name: Publish to pypi if new version on master - if: ${{ steps.outputs.currrent.version != steps.outputs.published.version }} + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == "master"]]; then @@ -122,7 +122,7 @@ jobs: - name: Tag repository shell: bash id: get-next-tag - if: ${{ steps.outputs.currrent.version != steps.outputs.published.version }} + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) run: | TAG_NAME=${{ steps.outputs.currrent.version }} echo "::set-output name=tag-name::$TAG_NAME" @@ -132,7 +132,7 @@ jobs: git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - name: Push the tag - shell: bash + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) env: TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} run: | From e7c972cfcd70308fefbf9c73c579ab71baca4ee4 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:01:59 +0100 Subject: [PATCH 31/56] Conditionals --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index aa99a1d3..f84a0d52 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -110,7 +110,7 @@ jobs: echo "::set-output name=version::$RELEASE" - name: Publish to pypi if new version on master - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == "master"]]; then @@ -122,7 +122,7 @@ jobs: - name: Tag repository shell: bash id: get-next-tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) run: | TAG_NAME=${{ steps.outputs.currrent.version }} echo "::set-output name=tag-name::$TAG_NAME" @@ -132,7 +132,7 @@ jobs: git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - name: Push the tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != "" ) + if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) env: TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} run: | From d4cfad88867ca4ca6281f91f2868d45fef32ccc9 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:05:15 +0100 Subject: [PATCH 32/56] Autonull --- .github/workflows/ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f84a0d52..342328c3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -99,7 +99,6 @@ jobs: echo "::set-output name=version::${BASH_REMATCH[2]}" else echo "No version found found" - echo "::set-output name=version::"" fi From be94fec8d8f04f409b2610640fbb763f45ad43fe Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:07:28 +0100 Subject: [PATCH 33/56] Try bumping version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 3a5626ce..bd16f0c7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "summit" -version = "0.8.4" +version = "0.8.5" description = "Tools for optimizing chemical processes" authors = ["Kobi Felton ", "Jan Rittig"] license = "MIT" From 784ec5052c6474c71e8559de7a1310199a3cf3aa Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:13:33 +0100 Subject: [PATCH 34/56] Fix path to builds --- .github/workflows/ci.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 342328c3..07b89ac4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,9 +94,10 @@ jobs: - name: Determine the version for this release from the build id: current run: | - str="ls summit-*.tar.gz" - if [[ $str =~ (summit-)([^,][0-9.]{4}) ]]; then + BUILD_VER="ls dist/summit-*.tar.gz" + if [[ $BUILD_VER =~ (summit-)([^,][0-9.]{4}) ]]; then echo "::set-output name=version::${BASH_REMATCH[2]}" + echo "Version of build: $BUILD_VERx" else echo "No version found found" fi @@ -105,8 +106,9 @@ jobs: - name: Get latest published version id: published run: | - RELEASE="$(pypi current-version summit)" - echo "::set-output name=version::$RELEASE" + PUB_VER="$(pypi current-version summit)" + echo "::set-output name=version::$PUB_VER" + echo "Latest published version: $PUB_VER" - name: Publish to pypi if new version on master if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) From a0b1045191c3af79d239af475c09ce58d86160e4 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:15:57 +0100 Subject: [PATCH 35/56] Check path --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 07b89ac4..12e74533 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -95,9 +95,10 @@ jobs: id: current run: | BUILD_VER="ls dist/summit-*.tar.gz" + echo "Path: $BUILD_VER" if [[ $BUILD_VER =~ (summit-)([^,][0-9.]{4}) ]]; then echo "::set-output name=version::${BASH_REMATCH[2]}" - echo "Version of build: $BUILD_VERx" + echo "Version of build: ${BASH_REMATCH[2]}" else echo "No version found found" fi From 9d680d5101376aba8a9819f2795bc073b58714a1 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:18:58 +0100 Subject: [PATCH 36/56] Wrong syntax --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 12e74533..95129b5a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,7 @@ jobs: - name: Determine the version for this release from the build id: current run: | - BUILD_VER="ls dist/summit-*.tar.gz" + BUILD_VER="$(ls dist/summit-0.8.4.tar.gz)" echo "Path: $BUILD_VER" if [[ $BUILD_VER =~ (summit-)([^,][0-9.]{4}) ]]; then echo "::set-output name=version::${BASH_REMATCH[2]}" From a21c8c0c29e242d4619319826956830255ee2853 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:21:47 +0100 Subject: [PATCH 37/56] Wildcard --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 95129b5a..c9b84fff 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,7 +94,7 @@ jobs: - name: Determine the version for this release from the build id: current run: | - BUILD_VER="$(ls dist/summit-0.8.4.tar.gz)" + BUILD_VER="$(ls dist/summit-*.tar.gz)" echo "Path: $BUILD_VER" if [[ $BUILD_VER =~ (summit-)([^,][0-9.]{4}) ]]; then echo "::set-output name=version::${BASH_REMATCH[2]}" From 8f9fc2ac8ed5fc8f7152b087bfbe8378b5a3920b Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:25:52 +0100 Subject: [PATCH 38/56] More fixes --- .github/workflows/ci.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c9b84fff..95e8dd91 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -112,7 +112,7 @@ jobs: echo "Latest published version: $PUB_VER" - name: Publish to pypi if new version on master - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) + if: (steps.outputs.currrent.version != steps.outputs.published.version) run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == "master"]]; then @@ -124,8 +124,7 @@ jobs: - name: Tag repository shell: bash id: get-next-tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) - run: | + if: (steps.outputs.currrent.version != steps.outputs.published.version) TAG_NAME=${{ steps.outputs.currrent.version }} echo "::set-output name=tag-name::$TAG_NAME" echo "This release will be tagged as $TAG_NAME" @@ -134,7 +133,7 @@ jobs: git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - name: Push the tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) && ( steps.outputs.currrent.version != null ) + if: (steps.outputs.currrent.version != steps.outputs.published.version) env: TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} run: | From e4852e7458b94a003b8b44e1a17a6726a19c5099 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:27:55 +0100 Subject: [PATCH 39/56] Syntax --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 95e8dd91..f4895de9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -125,6 +125,7 @@ jobs: shell: bash id: get-next-tag if: (steps.outputs.currrent.version != steps.outputs.published.version) + run: TAG_NAME=${{ steps.outputs.currrent.version }} echo "::set-output name=tag-name::$TAG_NAME" echo "This release will be tagged as $TAG_NAME" From 567157e3ea6d77886ab21c1303b5007f0751951d Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:32:24 +0100 Subject: [PATCH 40/56] Syntax --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4895de9..3dcdb6b2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -110,9 +110,13 @@ jobs: PUB_VER="$(pypi current-version summit)" echo "::set-output name=version::$PUB_VER" echo "Latest published version: $PUB_VER" + + - run: | + echo "$Current: {{ steps.outputs.currrent.version }}" + echo "$Published {{ steps.outputs.published.version }}" - - name: Publish to pypi if new version on master - if: (steps.outputs.currrent.version != steps.outputs.published.version) + - name: Publish to pypi if new version + if: steps.outputs.currrent.version != steps.outputs.published.version run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == "master"]]; then From 7f673e34dec9fe7aa53c5a70b128d54a219e3c48 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 02:34:27 +0100 Subject: [PATCH 41/56] I give up --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3dcdb6b2..2c922dad 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -112,8 +112,8 @@ jobs: echo "Latest published version: $PUB_VER" - run: | - echo "$Current: {{ steps.outputs.currrent.version }}" - echo "$Published {{ steps.outputs.published.version }}" + echo "Current: ${{ steps.outputs.currrent.version }}" + echo "Published ${{ steps.outputs.published.version }}" - name: Publish to pypi if new version if: steps.outputs.currrent.version != steps.outputs.published.version From 2a5cad800e7bbf8a13dc72bb8fa986a979c3ff4d Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:22:10 +0100 Subject: [PATCH 42/56] Got the variable names wrong --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2c922dad..f712a777 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -112,11 +112,11 @@ jobs: echo "Latest published version: $PUB_VER" - run: | - echo "Current: ${{ steps.outputs.currrent.version }}" - echo "Published ${{ steps.outputs.published.version }}" + echo "Current: ${{ steps.currrent.outputs.version }}" + echo "Published ${{ steps.published.outputs.version }}" - name: Publish to pypi if new version - if: steps.outputs.currrent.version != steps.outputs.published.version + if: (steps.currrent.outputs.version != steps.published.outputs.version) run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == "master"]]; then @@ -128,7 +128,7 @@ jobs: - name: Tag repository shell: bash id: get-next-tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) + if: (steps.currrent.outputs.version != steps.published.outputs.version) run: TAG_NAME=${{ steps.outputs.currrent.version }} echo "::set-output name=tag-name::$TAG_NAME" @@ -138,7 +138,7 @@ jobs: git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - name: Push the tag - if: (steps.outputs.currrent.version != steps.outputs.published.version) + if: (steps.currrent.outputs.version != steps.published.outputs.version) env: TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} run: | From 2b6419e59259fc6b0cd8b2655c19a13e2e079b1e Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:30:02 +0100 Subject: [PATCH 43/56] fix if/then --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f712a777..82bce411 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -119,7 +119,7 @@ jobs: if: (steps.currrent.outputs.version != steps.published.outputs.version) run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} - if [[ ${{ github.ref_name }} == "master"]]; then + if [[ ${{ github.ref_name }} == 'master' ]]; then poetry publish else poetry publish --dry-run From 5cdacfb1fcb6fcc8be4639f80f8eda20f89213fc Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:32:32 +0100 Subject: [PATCH 44/56] Use bash --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 82bce411..ac38611c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -117,6 +117,7 @@ jobs: - name: Publish to pypi if new version if: (steps.currrent.outputs.version != steps.published.outputs.version) + shell: bash run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} if [[ ${{ github.ref_name }} == 'master' ]]; then From 27f12ef278e6808b1f61cf229d0c7e612f85fcc9 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:48:41 +0100 Subject: [PATCH 45/56] Bash is annoying --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac38611c..7daa92f0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -120,7 +120,7 @@ jobs: shell: bash run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} - if [[ ${{ github.ref_name }} == 'master' ]]; then + if [[ '${{ github.ref_name }}' == 'master' ]]; then poetry publish else poetry publish --dry-run From f99be99481437ef66f7fe3251b478e2ecfb04196 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:53:55 +0100 Subject: [PATCH 46/56] Last corrections --- .github/workflows/ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7daa92f0..21694909 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -123,6 +123,7 @@ jobs: if [[ '${{ github.ref_name }}' == 'master' ]]; then poetry publish else + echo "Dry run of publishing the package" poetry publish --dry-run fi @@ -131,7 +132,7 @@ jobs: id: get-next-tag if: (steps.currrent.outputs.version != steps.published.outputs.version) run: - TAG_NAME=${{ steps.outputs.currrent.version }} + TAG_NAME=${{ steps.currrent.outputs.version }} echo "::set-output name=tag-name::$TAG_NAME" echo "This release will be tagged as $TAG_NAME" git config user.name "github-actions" @@ -143,7 +144,7 @@ jobs: env: TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} run: | - if [[ ${{ github.ref_name }} == "master"]]; then + if [[ ${{ github.ref_name }} == 'master' ]]; then git push origin $TAG_NAME else echo "If this was the master branch, I would push this new tag named $TAG_NAME" From f6c710cc28eac3d509d12efa620f488cc218aff5 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 11:58:54 +0100 Subject: [PATCH 47/56] Forget multiline --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 21694909..476e3c46 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -131,7 +131,7 @@ jobs: shell: bash id: get-next-tag if: (steps.currrent.outputs.version != steps.published.outputs.version) - run: + run: | TAG_NAME=${{ steps.currrent.outputs.version }} echo "::set-output name=tag-name::$TAG_NAME" echo "This release will be tagged as $TAG_NAME" From ed427e34e4c09aa94d636257021b2ae104881366 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:04:53 +0100 Subject: [PATCH 48/56] More fixes --- .github/workflows/ci.yml | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 476e3c46..9b87d0d7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -103,7 +103,6 @@ jobs: echo "No version found found" fi - - name: Get latest published version id: published run: | @@ -111,12 +110,9 @@ jobs: echo "::set-output name=version::$PUB_VER" echo "Latest published version: $PUB_VER" - - run: | - echo "Current: ${{ steps.currrent.outputs.version }}" - echo "Published ${{ steps.published.outputs.version }}" - name: Publish to pypi if new version - if: (steps.currrent.outputs.version != steps.published.outputs.version) + if: (steps.current.outputs.version != steps.published.outputs.version) shell: bash run: | poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} @@ -130,9 +126,9 @@ jobs: - name: Tag repository shell: bash id: get-next-tag - if: (steps.currrent.outputs.version != steps.published.outputs.version) + if: (steps.current.outputs.version != steps.published.outputs.version) run: | - TAG_NAME=${{ steps.currrent.outputs.version }} + TAG_NAME=${{ steps.current.outputs.version }} echo "::set-output name=tag-name::$TAG_NAME" echo "This release will be tagged as $TAG_NAME" git config user.name "github-actions" @@ -140,12 +136,10 @@ jobs: git tag --annotate --message="Automated tagging system" $TAG_NAME ${{ github.sha }} - name: Push the tag - if: (steps.currrent.outputs.version != steps.published.outputs.version) - env: - TAG_NAME: ${{ steps.get-next-tag.outputs.tag-name }} + if: (steps.current.outputs.version != steps.published.outputs.version) run: | if [[ ${{ github.ref_name }} == 'master' ]]; then - git push origin $TAG_NAME + git push origin ${{ steps.current.outputs.version }} else echo "If this was the master branch, I would push this new tag named $TAG_NAME" fi From d592670ada2111c4f0ff299f9447caea3ccb80b1 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:07:39 +0100 Subject: [PATCH 49/56] tag name --- .github/workflows/ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9b87d0d7..9b70f571 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -137,9 +137,11 @@ jobs: - name: Push the tag if: (steps.current.outputs.version != steps.published.outputs.version) + env: + TAG_NAME: ${{ steps.current.outputs.version }} run: | if [[ ${{ github.ref_name }} == 'master' ]]; then - git push origin ${{ steps.current.outputs.version }} + git push origin $TAG_NAME else - echo "If this was the master branch, I would push this new tag named $TAG_NAME" + echo "If this was the master branch, I would push a new tag named $TAG_NAME" fi From 86bdfa81ac9ae80ad9620f4ab7cb0a3613730825 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:11:43 +0100 Subject: [PATCH 50/56] Matrix of os and python versions --- .github/workflows/ci.yml | 53 +++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9b70f571..d26ed8ee 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,37 +37,40 @@ jobs: retention-days: 1 # Run pytest using built package - # test: - # needs: build - # runs-on: ubuntu-latest - - # steps: - # - name: Checkout repository - # uses: actions/checkout@v2 - - # - name: Install python - # uses: actions/setup-python@v2 - # with: - # python-version: '3.9' - # cache: 'pip' - # cache-dependency-path: "poetry.lock" - - # - name: Download built package - # uses: actions/download-artifact@v3 - # with: - # name: dist + test: + needs: build + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + python: [3.8, 3.9, 3.10] + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python }} + cache: 'pip' + cache-dependency-path: "poetry.lock" + + - name: Download built package + uses: actions/download-artifact@v3 + with: + name: dist - # - name: Install summit and pytest - # run: pip install summit-*.tar.gz pytest + - name: Install summit and pytest + run: pip install summit-*.tar.gz pytest - # - name: Run tests - # run: summit-tests + - name: Run tests + run: summit-tests # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry publish: - # needs: test - needs: build + needs: test runs-on: ubuntu-latest steps: From e0d046ab907768f43c406e12745e70dd97b37ea1 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:13:41 +0100 Subject: [PATCH 51/56] Correct python v names --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d26ed8ee..39e2e155 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,7 +43,7 @@ jobs: strategy: matrix: os: [ubuntu-latest, windows-latest, macos-latest] - python: [3.8, 3.9, 3.10] + python: ["3.8", "3.9", "3.10"] steps: - name: Checkout repository From 0ccea27903be52e849f01f7727ce95f22f9f2abc Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:19:19 +0100 Subject: [PATCH 52/56] Try using bash --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 39e2e155..8dd38735 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,9 +62,11 @@ jobs: name: dist - name: Install summit and pytest + shell: bash run: pip install summit-*.tar.gz pytest - name: Run tests + shell: bash run: summit-tests # Publish to pypi on version change From 6b722a5ee038551c1b4b32cfdd2e917ff17517d5 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:37:15 +0100 Subject: [PATCH 53/56] Update packages due to issue with python 3.10 --- poetry.lock | 1545 +++++++++++++++++++++++++----------------------- pyproject.toml | 12 +- 2 files changed, 813 insertions(+), 744 deletions(-) diff --git a/poetry.lock b/poetry.lock index f2f5ad28..c2e343f5 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2,8 +2,8 @@ name = "alabaster" version = "0.7.12" description = "A configurable sidebar-enabled Sphinx theme" -category = "main" -optional = true +category = "dev" +optional = false python-versions = "*" [[package]] @@ -29,13 +29,13 @@ dev = ["black", "docutils", "ipython", "flake8", "pytest", "sphinx", "mistune (< name = "appdirs" version = "1.4.4" description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "main" +category = "dev" optional = false python-versions = "*" [[package]] name = "appnope" -version = "0.1.2" +version = "0.1.3" description = "Disable App Nap on macOS >= 10.9" category = "main" optional = false @@ -129,7 +129,7 @@ tests_no_zope = ["coverage[toml] (>=5.0.2)", "hypothesis", "pympler", "pytest (> [[package]] name = "autograd" -version = "1.3" +version = "1.4" description = "Efficiently computes derivatives of numpy code." category = "main" optional = false @@ -141,11 +141,11 @@ numpy = ">=1.12" [[package]] name = "babel" -version = "2.9.1" +version = "2.10.1" description = "Internationalization utilities" -category = "main" -optional = true -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +category = "dev" +optional = false +python-versions = ">=3.6" [package.dependencies] pytz = ">=2015.7" @@ -198,11 +198,11 @@ typecheck = ["mypy"] [[package]] name = "beautifulsoup4" -version = "4.10.0" +version = "4.11.1" description = "Screen-scraping library" category = "main" -optional = true -python-versions = ">3.0.0" +optional = false +python-versions = ">=3.6.0" [package.dependencies] soupsieve = ">1.2" @@ -215,7 +215,7 @@ lxml = ["lxml"] name = "black" version = "20.8b1" description = "The uncompromising code formatter." -category = "main" +category = "dev" optional = false python-versions = ">=3.6" @@ -235,17 +235,20 @@ d = ["aiohttp (>=3.3.2)", "aiohttp-cors"] [[package]] name = "bleach" -version = "4.1.0" +version = "5.0.0" description = "An easy safelist-based HTML-sanitizing tool." category = "main" -optional = true -python-versions = ">=3.6" +optional = false +python-versions = ">=3.7" [package.dependencies] -packaging = "*" six = ">=1.9.0" webencodings = "*" +[package.extras] +css = ["tinycss2 (>=1.1.0)"] +dev = ["pip-tools (==6.5.1)", "pytest (==7.1.1)", "flake8 (==4.0.1)", "tox (==3.24.5)", "sphinx (==4.3.2)", "twine (==4.0.0)", "wheel (==0.37.1)", "hashin (==0.17.0)", "black (==22.3.0)", "mypy (==0.942)"] + [[package]] name = "blinker" version = "1.4" @@ -256,15 +259,15 @@ python-versions = "*" [[package]] name = "boto3" -version = "1.21.1" +version = "1.21.46" description = "The AWS SDK for Python" category = "main" optional = true python-versions = ">= 3.6" [package.dependencies] -botocore = ">=1.24.1,<1.25.0" -jmespath = ">=0.7.1,<1.0.0" +botocore = ">=1.24.46,<1.25.0" +jmespath = ">=0.7.1,<2.0.0" s3transfer = ">=0.5.0,<0.6.0" [package.extras] @@ -272,19 +275,19 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] [[package]] name = "botocore" -version = "1.24.1" +version = "1.24.46" description = "Low-level, data-driven core of boto 3." category = "main" optional = true python-versions = ">= 3.6" [package.dependencies] -jmespath = ">=0.7.1,<1.0.0" +jmespath = ">=0.7.1,<2.0.0" python-dateutil = ">=2.1,<3.0.0" urllib3 = ">=1.25.4,<1.27" [package.extras] -crt = ["awscrt (==0.12.5)"] +crt = ["awscrt (==0.13.8)"] [[package]] name = "botorch" @@ -367,7 +370,7 @@ name = "certifi" version = "2021.10.8" description = "Python package for providing Mozilla's CA Bundle." category = "main" -optional = true +optional = false python-versions = "*" [[package]] @@ -375,7 +378,7 @@ name = "cffi" version = "1.15.0" description = "Foreign Function Interface for Python calling C code." category = "main" -optional = true +optional = false python-versions = "*" [package.dependencies] @@ -386,7 +389,7 @@ name = "charset-normalizer" version = "2.0.12" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "main" -optional = true +optional = false python-versions = ">=3.5.0" [package.extras] @@ -394,11 +397,11 @@ unicode_backport = ["unicodedata2"] [[package]] name = "click" -version = "8.0.3" +version = "8.1.2" description = "Composable command line interface toolkit" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} @@ -421,7 +424,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "cryptography" -version = "36.0.1" +version = "36.0.2" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." category = "main" optional = true @@ -456,11 +459,11 @@ python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" [[package]] name = "debugpy" -version = "1.5.1" +version = "1.6.0" description = "An implementation of the Debug Adapter Protocol for Python" category = "main" optional = true -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +python-versions = ">=3.7" [[package]] name = "decorator" @@ -475,15 +478,15 @@ name = "defusedxml" version = "0.7.1" description = "XML bomb protection for Python stdlib modules" category = "main" -optional = true +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "docutils" version = "0.16" description = "Docutils -- Python Documentation Utilities" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] @@ -505,7 +508,7 @@ name = "entrypoints" version = "0.4" description = "Discover and load entry points from installed packages." category = "main" -optional = true +optional = false python-versions = ">=3.6" [[package]] @@ -518,12 +521,23 @@ python-versions = "*" [[package]] name = "executing" -version = "0.8.2" +version = "0.8.3" description = "Get the currently executing AST node of a frame, and other information" category = "main" optional = false python-versions = "*" +[[package]] +name = "fastjsonschema" +version = "2.15.3" +description = "Fastest Python implementation of JSON schema" +category = "main" +optional = false +python-versions = "*" + +[package.extras] +devel = ["colorama", "jsonschema", "json-spec", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] + [[package]] name = "fastprogress" version = "0.2.6" @@ -534,14 +548,15 @@ python-versions = ">=3.6" [[package]] name = "flask" -version = "2.0.3" +version = "2.1.1" description = "A simple framework for building complex web applications." category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] -click = ">=7.1.2" +click = ">=8.0" +importlib-metadata = {version = ">=3.6.0", markers = "python_version < \"3.10\""} itsdangerous = ">=2.0" Jinja2 = ">=3.0" Werkzeug = ">=2.0" @@ -552,7 +567,7 @@ dotenv = ["python-dotenv"] [[package]] name = "flask-compress" -version = "1.10.1" +version = "1.11" description = "Compress responses in your Flask app with gzip, deflate or brotli." category = "main" optional = true @@ -564,19 +579,20 @@ flask = "*" [[package]] name = "fonttools" -version = "4.29.1" +version = "4.33.2" description = "Tools to manipulate font files" category = "main" optional = false python-versions = ">=3.7" [package.extras] -all = ["fs (>=2.2.0,<3)", "lxml (>=4.0,<5)", "zopfli (>=0.1.4)", "lz4 (>=1.7.4.2)", "matplotlib", "sympy", "skia-pathops (>=0.5.0)", "brotlicffi (>=0.8.0)", "scipy", "brotli (>=1.0.1)", "munkres", "unicodedata2 (>=14.0.0)", "xattr"] +all = ["fs (>=2.2.0,<3)", "lxml (>=4.0,<5)", "zopfli (>=0.1.4)", "lz4 (>=1.7.4.2)", "matplotlib", "sympy", "skia-pathops (>=0.5.0)", "uharfbuzz (>=0.23.0)", "brotlicffi (>=0.8.0)", "scipy", "brotli (>=1.0.1)", "munkres", "unicodedata2 (>=14.0.0)", "xattr"] graphite = ["lz4 (>=1.7.4.2)"] interpolatable = ["scipy", "munkres"] lxml = ["lxml (>=4.0,<5)"] pathops = ["skia-pathops (>=0.5.0)"] plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] symfont = ["sympy"] type1 = ["xattr"] ufo = ["fs (>=2.2.0,<3)"] @@ -612,7 +628,7 @@ smmap = ">=3.0.1,<6" [[package]] name = "gitpython" -version = "3.1.26" +version = "3.1.27" description = "GitPython is a python library used to interact with Git repositories" category = "main" optional = true @@ -708,31 +724,47 @@ name = "idna" version = "3.3" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" -optional = true +optional = false python-versions = ">=3.5" [[package]] name = "imagesize" version = "1.3.0" description = "Getting image size from png/jpeg/jpeg2000/gif file" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[[package]] +name = "importlib-metadata" +version = "4.11.3" +description = "Read metadata from Python packages" category = "main" optional = true -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.7" + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +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 (>=0.9.1)", "importlib-resources (>=1.3)"] [[package]] name = "importlib-resources" -version = "5.4.0" +version = "5.7.1" description = "Read resources from Python packages" category = "main" -optional = true -python-versions = ">=3.6" +optional = false +python-versions = ">=3.7" [package.dependencies] zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} [package.extras] -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)", "pytest-black (>=0.3.7)", "pytest-mypy"] +docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"] [[package]] name = "ipdb" @@ -747,7 +779,7 @@ ipython = {version = ">=5.1.0", markers = "python_version >= \"3.4\""} [[package]] name = "ipykernel" -version = "6.9.1" +version = "6.13.0" description = "IPython Kernel for Jupyter" category = "main" optional = true @@ -755,20 +787,22 @@ python-versions = ">=3.7" [package.dependencies] appnope = {version = "*", markers = "platform_system == \"Darwin\""} -debugpy = ">=1.0.0,<2.0" +debugpy = ">=1.0" ipython = ">=7.23.1" -jupyter-client = "<8.0" -matplotlib-inline = ">=0.1.0,<0.2.0" +jupyter-client = ">=6.1.12" +matplotlib-inline = ">=0.1" nest-asyncio = "*" -tornado = ">=4.2,<7.0" -traitlets = ">=5.1.0,<6.0" +packaging = "*" +psutil = "*" +tornado = ">=6.1" +traitlets = ">=5.1.0" [package.extras] -test = ["pytest (!=5.3.4)", "pytest-cov", "flaky", "ipyparallel"] +test = ["pytest (>=6.0)", "pytest-cov", "flaky", "ipyparallel", "pre-commit", "pytest-timeout"] [[package]] name = "ipython" -version = "8.0.1" +version = "8.2.0" description = "IPython: Productive Interactive Computing" category = "main" optional = false @@ -777,7 +811,6 @@ python-versions = ">=3.8" [package.dependencies] appnope = {version = "*", markers = "sys_platform == \"darwin\""} backcall = "*" -black = "*" colorama = {version = "*", markers = "sys_platform == \"win32\""} decorator = "*" jedi = ">=0.16" @@ -785,21 +818,22 @@ matplotlib-inline = "*" pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} pickleshare = "*" prompt-toolkit = ">=2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.1.0" -pygments = "*" +pygments = ">=2.4.0" stack-data = "*" traitlets = ">=5" [package.extras] -all = ["Sphinx (>=1.3)", "curio", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.19)", "pandas", "pygments", "pytest", "pytest-asyncio", "qtconsole", "testpath", "trio"] +all = ["black", "Sphinx (>=1.3)", "ipykernel", "nbconvert", "nbformat", "ipywidgets", "notebook", "ipyparallel", "qtconsole", "pytest (<7.1)", "pytest-asyncio", "testpath", "curio", "matplotlib (!=3.2.0)", "numpy (>=1.19)", "pandas", "trio"] +black = ["black"] doc = ["Sphinx (>=1.3)"] kernel = ["ipykernel"] nbconvert = ["nbconvert"] nbformat = ["nbformat"] -notebook = ["notebook", "ipywidgets"] +notebook = ["ipywidgets", "notebook"] parallel = ["ipyparallel"] qtconsole = ["qtconsole"] -test = ["pytest", "pytest-asyncio", "testpath", "pygments"] -test_extra = ["pytest", "testpath", "curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.19)", "pandas", "pygments", "trio"] +test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] +test_extra = ["pytest (<7.1)", "pytest-asyncio", "testpath", "curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.19)", "pandas", "trio"] [[package]] name = "ipython-genutils" @@ -811,7 +845,7 @@ python-versions = "*" [[package]] name = "ipywidgets" -version = "7.6.5" +version = "7.7.0" description = "IPython HTML widgets for Jupyter" category = "main" optional = true @@ -824,7 +858,7 @@ ipython-genutils = ">=0.2.0,<0.3.0" jupyterlab-widgets = {version = ">=1.0.0", markers = "python_version >= \"3.6\""} nbformat = ">=4.2.0" traitlets = ">=4.3.1" -widgetsnbextension = ">=3.5.0,<3.6.0" +widgetsnbextension = ">=3.6.0,<3.7.0" [package.extras] test = ["pytest (>=3.6.0)", "pytest-cov", "mock"] @@ -842,11 +876,11 @@ arrow = ">=0.15.0" [[package]] name = "itsdangerous" -version = "2.0.1" +version = "2.1.2" description = "Safely pass data to untrusted environments and back." category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "jedi" @@ -868,7 +902,7 @@ name = "jinja2" version = "3.0.3" description = "A very fast and expressive template engine." category = "main" -optional = true +optional = false python-versions = ">=3.6" [package.dependencies] @@ -879,11 +913,11 @@ i18n = ["Babel (>=2.7)"] [[package]] name = "jmespath" -version = "0.10.0" +version = "1.0.0" description = "JSON Matching Expressions" category = "main" optional = true -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +python-versions = ">=3.7" [[package]] name = "joblib" @@ -895,7 +929,7 @@ python-versions = ">=3.6" [[package]] name = "jsonpointer" -version = "2.2" +version = "2.3" description = "Identify specific nodes in a JSON document (RFC 6901)" category = "main" optional = true @@ -914,7 +948,7 @@ name = "jsonschema" version = "4.4.0" description = "An implementation of JSON Schema validation for Python" category = "main" -optional = true +optional = false python-versions = ">=3.7" [package.dependencies] @@ -936,51 +970,51 @@ format_nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- [[package]] name = "jupyter-client" -version = "7.1.2" +version = "7.2.2" description = "Jupyter protocol implementation and client libraries" category = "main" -optional = true -python-versions = ">=3.6.1" +optional = false +python-versions = ">=3.7" [package.dependencies] entrypoints = "*" -jupyter-core = ">=4.6.0" -nest-asyncio = ">=1.5" -python-dateutil = ">=2.1" -pyzmq = ">=13" -tornado = ">=4.1" +jupyter-core = ">=4.9.2" +nest-asyncio = ">=1.5.4" +python-dateutil = ">=2.8.2" +pyzmq = ">=22.3" +tornado = ">=6.0" traitlets = "*" [package.extras] -doc = ["myst-parser", "sphinx (>=1.3.6)", "sphinx-rtd-theme", "sphinxcontrib-github-alt"] -test = ["codecov", "coverage", "ipykernel", "ipython", "mock", "mypy", "pre-commit", "pytest", "pytest-asyncio", "pytest-cov", "pytest-timeout", "jedi (<0.18)"] +doc = ["ipykernel", "myst-parser", "sphinx (>=1.3.6)", "sphinx-rtd-theme", "sphinxcontrib-github-alt"] +test = ["codecov", "coverage", "ipykernel (>=6.5)", "ipython", "mypy", "pre-commit", "pytest", "pytest-asyncio (>=0.18)", "pytest-cov", "pytest-timeout"] [[package]] name = "jupyter-core" -version = "4.9.2" +version = "4.10.0" description = "Jupyter core package. A base package on which Jupyter projects rely." category = "main" -optional = true -python-versions = ">=3.6" +optional = false +python-versions = ">=3.7" [package.dependencies] pywin32 = {version = ">=1.0", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} traitlets = "*" +[package.extras] +test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] + [[package]] name = "jupyterlab-pygments" -version = "0.1.2" +version = "0.2.2" description = "Pygments theme using JupyterLab CSS variables" category = "main" -optional = true -python-versions = "*" - -[package.dependencies] -pygments = ">=2.4.1,<3" +optional = false +python-versions = ">=3.7" [[package]] name = "jupyterlab-widgets" -version = "1.0.2" +version = "1.1.0" description = "A JupyterLab extension." category = "main" optional = true @@ -988,7 +1022,7 @@ python-versions = ">=3.6" [[package]] name = "kiwisolver" -version = "1.3.2" +version = "1.4.2" description = "A fast implementation of the Cassowary constraint solver" category = "main" optional = false @@ -1020,11 +1054,11 @@ python-versions = ">=3.7,<3.11" [[package]] name = "markupsafe" -version = "2.0.1" +version = "2.1.1" description = "Safely add untrusted strings to HTML/XML markup." category = "main" -optional = true -python-versions = ">=3.6" +optional = false +python-versions = ">=3.7" [[package]] name = "matplotlib" @@ -1061,7 +1095,7 @@ name = "mistune" version = "0.8.4" description = "The fastest markdown parser in pure Python" category = "main" -optional = true +optional = false python-versions = "*" [[package]] @@ -1092,82 +1126,84 @@ python-versions = "*" name = "mypy-extensions" version = "0.4.3" description = "Experimental type system extensions for programs checked with the mypy typechecker." -category = "main" +category = "dev" optional = false python-versions = "*" [[package]] name = "nbclient" -version = "0.5.11" +version = "0.6.0" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." category = "main" -optional = true +optional = false python-versions = ">=3.7.0" [package.dependencies] jupyter-client = ">=6.1.5" nbformat = ">=5.0" nest-asyncio = "*" -traitlets = ">=4.2" +traitlets = ">=5.0.0" [package.extras] -sphinx = ["Sphinx (>=1.7)", "sphinx-book-theme", "mock", "moto", "myst-parser"] -test = ["ipython (<8.0.0)", "ipykernel", "ipywidgets (<8.0.0)", "pytest (>=4.1)", "pytest-asyncio", "pytest-cov (>=2.6.1)", "check-manifest", "flake8", "mypy", "xmltodict", "black", "pip (>=18.1)", "wheel (>=0.31.0)", "setuptools (>=38.6.0)", "twine (>=1.11.0)"] +sphinx = ["mock", "moto", "myst-parser", "Sphinx (>=1.7)", "sphinx-book-theme"] +test = ["black", "check-manifest", "flake8", "ipykernel", "ipython (<8.0.0)", "ipywidgets (<8.0.0)", "mypy", "pip (>=18.1)", "pre-commit", "pytest (>=4.1)", "pytest-asyncio", "pytest-cov (>=2.6.1)", "setuptools (>=60.0)", "testpath", "twine (>=1.11.0)", "xmltodict"] [[package]] name = "nbconvert" -version = "6.4.2" +version = "6.5.0" description = "Converting Jupyter Notebooks" category = "main" -optional = true +optional = false python-versions = ">=3.7" [package.dependencies] +beautifulsoup4 = "*" bleach = "*" defusedxml = "*" entrypoints = ">=0.2.2" -jinja2 = ">=2.4" -jupyter-core = "*" +jinja2 = ">=3.0" +jupyter-core = ">=4.7" jupyterlab-pygments = "*" +MarkupSafe = ">=2.0" mistune = ">=0.8.1,<2" -nbclient = ">=0.5.0,<0.6.0" -nbformat = ">=4.4" +nbclient = ">=0.5.0" +nbformat = ">=5.1" +packaging = "*" pandocfilters = ">=1.4.1" pygments = ">=2.4.1" -testpath = "*" +tinycss2 = "*" traitlets = ">=5.0" [package.extras] -all = ["pytest", "pytest-cov", "pytest-dependency", "ipykernel", "ipywidgets (>=7)", "pyppeteer (>=1,<1.1)", "tornado (>=4.0)", "sphinx (>=1.5.1)", "sphinx-rtd-theme", "nbsphinx (>=0.2.12)", "ipython"] +all = ["pytest", "pytest-cov", "pytest-dependency", "ipykernel", "ipywidgets (>=7)", "pre-commit", "pyppeteer (>=1,<1.1)", "tornado (>=6.1)", "sphinx (>=1.5.1)", "sphinx-rtd-theme", "nbsphinx (>=0.2.12)", "ipython"] docs = ["sphinx (>=1.5.1)", "sphinx-rtd-theme", "nbsphinx (>=0.2.12)", "ipython"] -serve = ["tornado (>=4.0)"] -test = ["pytest", "pytest-cov", "pytest-dependency", "ipykernel", "ipywidgets (>=7)", "pyppeteer (>=1,<1.1)"] +serve = ["tornado (>=6.1)"] +test = ["pytest", "pytest-cov", "pytest-dependency", "ipykernel", "ipywidgets (>=7)", "pre-commit", "pyppeteer (>=1,<1.1)"] webpdf = ["pyppeteer (>=1,<1.1)"] [[package]] name = "nbformat" -version = "5.1.3" +version = "5.3.0" description = "The Jupyter Notebook format" category = "main" -optional = true -python-versions = ">=3.5" +optional = false +python-versions = ">=3.7" [package.dependencies] -ipython-genutils = "*" -jsonschema = ">=2.4,<2.5.0 || >2.5.0" +fastjsonschema = "*" +jsonschema = ">=2.6" jupyter-core = "*" traitlets = ">=4.1" [package.extras] -fast = ["fastjsonschema"] -test = ["check-manifest", "fastjsonschema", "testpath", "pytest", "pytest-cov"] +test = ["check-manifest", "testpath", "pytest", "pre-commit"] [[package]] name = "nbsphinx" version = "0.8.8" description = "Jupyter Notebook Tools for Sphinx" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.6" [package.dependencies] @@ -1203,19 +1239,19 @@ websocket-client = ">=0.35.0" [[package]] name = "nest-asyncio" -version = "1.5.4" +version = "1.5.5" description = "Patch asyncio to allow nested event loops" category = "main" -optional = true +optional = false python-versions = ">=3.5" [[package]] name = "notebook" -version = "6.4.8" +version = "6.4.11" description = "A web-based notebook environment for interactive computing" category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] argon2-cffi = "*" @@ -1224,7 +1260,7 @@ ipython-genutils = "*" jinja2 = "*" jupyter-client = ">=5.3.4" jupyter-core = ">=4.6.1" -nbconvert = "*" +nbconvert = ">=5" nbformat = "*" nest-asyncio = ">=1.5" prometheus-client = "*" @@ -1237,7 +1273,7 @@ traitlets = ">=4.2.1" [package.extras] docs = ["sphinx", "nbsphinx", "sphinxcontrib-github-alt", "sphinx-rtd-theme", "myst-parser"] json-logging = ["json-logging"] -test = ["pytest", "coverage", "requests", "nbval", "selenium", "pytest-cov", "requests-unixsocket"] +test = ["pytest", "coverage", "requests", "testpath", "nbval", "selenium", "pytest-cov", "requests-unixsocket"] [[package]] name = "numba" @@ -1253,7 +1289,7 @@ numpy = ">=1.18,<1.22" [[package]] name = "numpy" -version = "1.21.5" +version = "1.21.6" description = "NumPy is the fundamental package for array computing with Python." category = "main" optional = false @@ -1274,7 +1310,7 @@ signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] [[package]] name = "opencv-python" -version = "4.5.5.62" +version = "4.5.5.64" description = "Wrapper package for OpenCV python bindings." category = "main" optional = true @@ -1301,7 +1337,7 @@ pyparsing = ">=2.0.2,<3.0.5 || >3.0.5" [[package]] name = "pandas" -version = "1.4.1" +version = "1.4.2" description = "Powerful data structures for data analysis, time series, and statistics" category = "main" optional = false @@ -1325,12 +1361,12 @@ name = "pandocfilters" version = "1.5.0" description = "Utilities for writing pandoc filters in python" category = "main" -optional = true +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "paramiko" -version = "2.9.2" +version = "2.10.3" description = "SSH2 protocol library" category = "main" optional = true @@ -1340,6 +1376,7 @@ python-versions = "*" bcrypt = ">=3.1.3" cryptography = ">=2.5" pynacl = ">=1.0.1" +six = "*" [package.extras] all = ["pyasn1 (>=0.1.7)", "pynacl (>=1.0.1)", "bcrypt (>=3.1.3)", "invoke (>=1.3)", "gssapi (>=1.4.1)", "pywin32 (>=2.1.8)"] @@ -1382,7 +1419,7 @@ testing = ["docopt", "pytest (<6.0.0)"] name = "pathspec" version = "0.9.0" description = "Utility library for gitignore style pattern matching of file paths." -category = "main" +category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" @@ -1407,12 +1444,16 @@ python-versions = "*" [[package]] name = "pillow" -version = "9.0.1" +version = "9.1.0" description = "Python Imaging Library (Fork)" category = "main" optional = false python-versions = ">=3.7" +[package.extras] +docs = ["olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-issues (>=3.0.1)", "sphinx-removed-in", "sphinx-rtd-theme (>=1.0)", "sphinxext-opengraph"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] + [[package]] name = "pluggy" version = "1.0.0" @@ -1427,7 +1468,7 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "prometheus-client" -version = "0.13.1" +version = "0.14.1" description = "Python client for the Prometheus monitoring system." category = "main" optional = true @@ -1438,7 +1479,7 @@ twisted = ["twisted"] [[package]] name = "prompt-toolkit" -version = "3.0.28" +version = "3.0.29" description = "Library for building powerful interactive command lines in Python" category = "main" optional = false @@ -1449,11 +1490,22 @@ wcwidth = "*" [[package]] name = "protobuf" -version = "3.19.4" +version = "3.20.1" description = "Protocol Buffers" category = "main" optional = true -python-versions = ">=3.5" +python-versions = ">=3.7" + +[[package]] +name = "psutil" +version = "5.9.0" +description = "Cross-platform lib for process and system monitoring in Python." +category = "main" +optional = true +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + +[package.extras] +test = ["ipaddress", "mock", "unittest2", "enum34", "pywin32", "wmi"] [[package]] name = "ptyprocess" @@ -1498,7 +1550,7 @@ name = "pycparser" version = "2.21" description = "C parser in Python" category = "main" -optional = true +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] @@ -1521,11 +1573,11 @@ testing = ["pytest"] [[package]] name = "pygments" -version = "2.11.2" +version = "2.12.0" description = "Pygments is a syntax highlighting package written in Python." category = "main" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" [[package]] name = "pyjwt" @@ -1573,14 +1625,14 @@ tests = ["pytest (>=3.2.1,!=3.3.0)", "hypothesis (>=3.27.0)"] [[package]] name = "pyparsing" -version = "3.0.7" -description = "Python parsing module" +version = "3.0.8" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.6.8" [package.extras] -diagrams = ["jinja2", "railroad-diagrams"] +diagrams = ["railroad-diagrams", "jinja2"] [[package]] name = "pyrecorder" @@ -1617,7 +1669,7 @@ name = "pyrsistent" version = "0.18.1" description = "Persistent/Functional/Immutable data structures" category = "main" -optional = true +optional = false python-versions = ">=3.7" [[package]] @@ -1650,7 +1702,7 @@ six = ">=1.5" [[package]] name = "pytz" -version = "2021.3" +version = "2022.1" description = "World timezone definitions, modern and historical" category = "main" optional = false @@ -1673,16 +1725,16 @@ name = "pywin32" version = "303" description = "Python for Window Extensions" category = "main" -optional = true +optional = false python-versions = "*" [[package]] name = "pywinpty" -version = "2.0.2" +version = "2.0.5" description = "Pseudo terminal support for Windows from Python." category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "pyyaml" @@ -1697,7 +1749,7 @@ name = "pyzmq" version = "22.3.0" description = "Python bindings for 0MQ" category = "main" -optional = true +optional = false python-versions = ">=3.6" [package.dependencies] @@ -1706,18 +1758,18 @@ py = {version = "*", markers = "implementation_name == \"pypy\""} [[package]] name = "regex" -version = "2022.1.18" +version = "2022.4.24" description = "Alternative regular expression module, to replace re." -category = "main" +category = "dev" optional = false -python-versions = "*" +python-versions = ">=3.6" [[package]] name = "requests" version = "2.27.1" description = "Python HTTP for Humans." category = "main" -optional = true +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" [package.dependencies] @@ -1777,7 +1829,7 @@ dev = ["pytest"] [[package]] name = "s3transfer" -version = "0.5.1" +version = "0.5.2" description = "An Amazon S3 Transfer Manager" category = "main" optional = true @@ -1896,24 +1948,24 @@ python-versions = ">=3.6" name = "snowballstemmer" version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -category = "main" -optional = true +category = "dev" +optional = false python-versions = "*" [[package]] name = "soupsieve" -version = "2.3.1" +version = "2.3.2.post1" description = "A modern CSS selector implementation for Beautiful Soup." category = "main" -optional = true +optional = false python-versions = ">=3.6" [[package]] name = "sphinx" version = "3.5.4" description = "Python documentation generator" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.dependencies] @@ -1943,8 +1995,8 @@ test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"] name = "sphinx-reredirects" version = "0.0.0" description = "Handles redirects for moved pages in Sphinx documentation projects" -category = "main" -optional = true +category = "dev" +optional = false python-versions = "*" [package.dependencies] @@ -1954,8 +2006,8 @@ sphinx = "*" name = "sphinx-rtd-theme" version = "0.5.2" description = "Read the Docs theme for Sphinx" -category = "main" -optional = true +category = "dev" +optional = false python-versions = "*" [package.dependencies] @@ -1969,8 +2021,8 @@ dev = ["transifex-client", "sphinxcontrib-httpdomain", "bump2version"] name = "sphinxcontrib-applehelp" version = "1.0.2" description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.extras] @@ -1981,8 +2033,8 @@ test = ["pytest"] name = "sphinxcontrib-devhelp" version = "1.0.2" description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.extras] @@ -1993,8 +2045,8 @@ test = ["pytest"] name = "sphinxcontrib-htmlhelp" version = "2.0.0" description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.6" [package.extras] @@ -2005,8 +2057,8 @@ test = ["pytest", "html5lib"] name = "sphinxcontrib-jsmath" version = "1.0.1" description = "A sphinx extension which renders display math in HTML via JavaScript" -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.extras] @@ -2016,8 +2068,8 @@ test = ["pytest", "flake8", "mypy"] name = "sphinxcontrib-qthelp" version = "1.0.3" description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.extras] @@ -2028,8 +2080,8 @@ test = ["pytest"] name = "sphinxcontrib-serializinghtml" version = "1.1.5" description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." -category = "main" -optional = true +category = "dev" +optional = false python-versions = ">=3.5" [package.extras] @@ -2134,7 +2186,7 @@ widechars = ["wcwidth"] [[package]] name = "terminado" -version = "0.13.1" +version = "0.13.3" description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." category = "main" optional = true @@ -2148,17 +2200,6 @@ tornado = ">=4" [package.extras] test = ["pytest"] -[[package]] -name = "testpath" -version = "0.5.0" -description = "Test utilities for code working with files and commands" -category = "main" -optional = true -python-versions = ">= 3.5" - -[package.extras] -test = ["pytest", "pathlib2"] - [[package]] name = "threadpoolctl" version = "3.1.0" @@ -2167,6 +2208,21 @@ category = "main" optional = false python-versions = ">=3.6" +[[package]] +name = "tinycss2" +version = "1.1.1" +description = "A tiny CSS parser" +category = "main" +optional = false +python-versions = ">=3.6" + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx-rtd-theme"] +test = ["pytest", "pytest-cov", "pytest-flake8", "pytest-isort", "coverage"] + [[package]] name = "toml" version = "0.10.2" @@ -2193,11 +2249,11 @@ python-versions = ">=3.5" [[package]] name = "torch" -version = "1.10.2" +version = "1.11.0" description = "Tensors and Dynamic neural networks in Python with strong GPU acceleration" category = "main" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7.0" [package.dependencies] typing-extensions = "*" @@ -2207,12 +2263,12 @@ name = "tornado" version = "6.1" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." category = "main" -optional = true +optional = false python-versions = ">= 3.5" [[package]] name = "tqdm" -version = "4.62.3" +version = "4.64.0" description = "Fast, Extensible Progress Meter" category = "main" optional = false @@ -2224,6 +2280,7 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} [package.extras] dev = ["py-make (>=0.1.0)", "twine", "wheel"] notebook = ["ipywidgets (>=6)"] +slack = ["slack-sdk"] telegram = ["requests"] [[package]] @@ -2239,23 +2296,23 @@ test = ["pytest"] [[package]] name = "typed-ast" -version = "1.5.2" +version = "1.5.3" description = "a fork of Python 2 and 3 ast modules with type comment support" -category = "main" +category = "dev" optional = false python-versions = ">=3.6" [[package]] name = "typing-extensions" -version = "4.1.1" -description = "Backported and Experimental Type Hints for Python 3.6+" +version = "4.2.0" +description = "Backported and Experimental Type Hints for Python 3.7+" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "tzdata" -version = "2021.5" +version = "2022.1" description = "Provider of IANA time zone data" category = "main" optional = true @@ -2263,7 +2320,7 @@ python-versions = ">=2" [[package]] name = "tzlocal" -version = "4.1" +version = "4.2" description = "tzinfo object for the local timezone" category = "main" optional = true @@ -2280,25 +2337,25 @@ test = ["pytest-mock (>=3.3)", "pytest (>=4.3)"] [[package]] name = "uri-template" -version = "1.1.0" +version = "1.2.0" description = "RFC 6570 URI Template Processor" category = "main" optional = true python-versions = ">=3.6" [package.extras] -dev = ["mypy", "flake8", "flake8-import-order", "flake8-annotations", "flake8-type-annotations", "flake8-docstrings", "pep8-naming"] +dev = ["mypy", "flake8 (<4.0.0)", "flake8-annotations", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-noqa", "flake8-requirements", "flake8-type-annotations", "flake8-use-fstring", "pep8-naming"] [[package]] name = "urllib3" -version = "1.26.8" +version = "1.26.9" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" -optional = true +optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" [package.extras] -brotli = ["brotlipy (>=0.6.0)"] +brotli = ["brotlicffi (>=0.8.0)", "brotli (>=1.0.9)", "brotlipy (>=0.6.0)"] secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] @@ -2319,7 +2376,7 @@ test = ["pytest (>=2.2.3)", "flake8 (>=2.4.0)", "isort (>=4.2.2)"] [[package]] name = "watchdog" -version = "2.1.6" +version = "2.1.7" description = "Filesystem events monitoring" category = "main" optional = true @@ -2349,16 +2406,16 @@ name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" category = "main" -optional = true +optional = false python-versions = "*" [[package]] name = "websocket-client" -version = "1.2.3" +version = "1.3.2" description = "WebSocket client for Python with low level API options" category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] docs = ["Sphinx (>=3.4)", "sphinx-rtd-theme (>=0.5)"] @@ -2367,18 +2424,18 @@ test = ["websockets"] [[package]] name = "werkzeug" -version = "2.0.3" +version = "2.1.1" description = "The comprehensive WSGI web application library." category = "main" optional = true -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] watchdog = ["watchdog"] [[package]] name = "widgetsnbextension" -version = "3.5.2" +version = "3.6.0" description = "IPython HTML widgets for Jupyter" category = "main" optional = true @@ -2397,26 +2454,24 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "zipp" -version = "3.7.0" +version = "3.8.0" description = "Backport of pathlib-compatible object wrapper for zip files" category = "main" -optional = true +optional = false python-versions = ">=3.7" [package.extras] -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"] +docs = ["sphinx", "jaraco.packaging (>=9)", "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 (>=0.9.1)"] [extras] -bnn = [] -docs = ["sphinx", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] entmoot = ["entmoot"] experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "streamlit"] [metadata] lock-version = "1.1" python-versions = "^3.8, <3.11" -content-hash = "b8ef95465a1305ff306bf57f94f9366d74445e2ffcde9b5d61f3985f033a8f42" +content-hash = "ce548065f44ccfc88a1a72b3ce67056efe238f14fa0992a9a27a78eeb8d214c1" [metadata.files] alabaster = [ @@ -2432,8 +2487,8 @@ appdirs = [ {file = "appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41"}, ] appnope = [ - {file = "appnope-0.1.2-py2.py3-none-any.whl", hash = "sha256:93aa393e9d6c54c5cd570ccadd8edad61ea0c4b9ea7a01409020c9aa019eb442"}, - {file = "appnope-0.1.2.tar.gz", hash = "sha256:dd83cd4b5b460958838f6eb3000c660b1f9caf2a5b1de4264e941512f603258a"}, + {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, + {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, ] argon2-cffi = [ {file = "argon2-cffi-21.3.0.tar.gz", hash = "sha256:d384164d944190a7dd7ef22c6aa3ff197da12962bd04b17f64d4e93d934dba5b"}, @@ -2483,11 +2538,12 @@ attrs = [ {file = "attrs-21.4.0.tar.gz", hash = "sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd"}, ] autograd = [ - {file = "autograd-1.3.tar.gz", hash = "sha256:a15d147577e10de037de3740ca93bfa3b5a7cdfbc34cfb9105429c3580a33ec4"}, + {file = "autograd-1.4-py3-none-any.whl", hash = "sha256:5cd6051bf1440643bf8f1104c933b2dedefb7610b951091768c1c680b1e0ceda"}, + {file = "autograd-1.4.tar.gz", hash = "sha256:383de0f537ef2e38b85ff9692593b0cfae8958c9b3bd451b52c255fd9171ffce"}, ] babel = [ - {file = "Babel-2.9.1-py2.py3-none-any.whl", hash = "sha256:ab49e12b91d937cd11f0b67cb259a57ab4ad2b59ac7a3b41d6c06c0ac5b0def9"}, - {file = "Babel-2.9.1.tar.gz", hash = "sha256:bc0c176f9f6a994582230df350aa6e05ba2ebe4b3ac317eab29d9be5d2768da0"}, + {file = "Babel-2.10.1-py3-none-any.whl", hash = "sha256:3f349e85ad3154559ac4930c3918247d319f21910d5ce4b25d439ed8693b98d2"}, + {file = "Babel-2.10.1.tar.gz", hash = "sha256:98aeaca086133efb3e1e2aad0396987490c8425929ddbcfe0550184fdc54cd13"}, ] backcall = [ {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, @@ -2528,26 +2584,26 @@ bcrypt = [ {file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"}, ] beautifulsoup4 = [ - {file = "beautifulsoup4-4.10.0-py3-none-any.whl", hash = "sha256:9a315ce70049920ea4572a4055bc4bd700c940521d36fc858205ad4fcde149bf"}, - {file = "beautifulsoup4-4.10.0.tar.gz", hash = "sha256:c23ad23c521d818955a4151a67d81580319d4bf548d3d49f4223ae041ff98891"}, + {file = "beautifulsoup4-4.11.1-py3-none-any.whl", hash = "sha256:58d5c3d29f5a36ffeb94f02f0d786cd53014cf9b3b3951d42e0080d8a9498d30"}, + {file = "beautifulsoup4-4.11.1.tar.gz", hash = "sha256:ad9aa55b65ef2808eb405f46cf74df7fcb7044d5cbc26487f96eb2ef2e436693"}, ] black = [ {file = "black-20.8b1.tar.gz", hash = "sha256:1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea"}, ] bleach = [ - {file = "bleach-4.1.0-py2.py3-none-any.whl", hash = "sha256:4d2651ab93271d1129ac9cbc679f524565cc8a1b791909c4a51eac4446a15994"}, - {file = "bleach-4.1.0.tar.gz", hash = "sha256:0900d8b37eba61a802ee40ac0061f8c2b5dee29c1927dd1d233e075ebf5a71da"}, + {file = "bleach-5.0.0-py3-none-any.whl", hash = "sha256:08a1fe86d253b5c88c92cc3d810fd8048a16d15762e1e5b74d502256e5926aa1"}, + {file = "bleach-5.0.0.tar.gz", hash = "sha256:c6d6cc054bdc9c83b48b8083e236e5f00f238428666d2ce2e083eaa5fd568565"}, ] blinker = [ {file = "blinker-1.4.tar.gz", hash = "sha256:471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6"}, ] boto3 = [ - {file = "boto3-1.21.1-py3-none-any.whl", hash = "sha256:d83e0f2dad07441c8d56542f5140e8cf264b05936e7bf64c88805ebda605cab9"}, - {file = "boto3-1.21.1.tar.gz", hash = "sha256:9ce450f97e0368cf2535acfbc562b6684ca2ef4c9f58e36dda3ab0bac91f2b5e"}, + {file = "boto3-1.21.46-py3-none-any.whl", hash = "sha256:3b13d727854aba9dea900b6c7fa134c52396869d842460d14fab8b85b69645f7"}, + {file = "boto3-1.21.46.tar.gz", hash = "sha256:9ac902076eac82112f4536cc2606a1f597a387dbc56b250575ac2d2c64c75e20"}, ] botocore = [ - {file = "botocore-1.24.1-py3-none-any.whl", hash = "sha256:fbeb774c4542f4e85a3348c1e9928a31da4f9d743669686fbd5290bf94e8cc03"}, - {file = "botocore-1.24.1.tar.gz", hash = "sha256:913542189e1df4487e354df942b9013ded7a5dc6c4e9f11af996a6c7d4aa6334"}, + {file = "botocore-1.24.46-py3-none-any.whl", hash = "sha256:663d8f02b98641846eb959c54c840cc33264d5f2dee5b8fc09ee8adbef0f8dcf"}, + {file = "botocore-1.24.46.tar.gz", hash = "sha256:89a203bba3c8f2299287e48a9e112e2dbe478cf67eaac26716f0e7f176446146"}, ] botorch = [ {file = "botorch-0.5.1-py3-none-any.whl", hash = "sha256:b2d25fe146068cf5090361f33336fad639dd158d5570e248e104b4bf7446c879"}, @@ -2690,8 +2746,8 @@ charset-normalizer = [ {file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"}, ] click = [ - {file = "click-8.0.3-py3-none-any.whl", hash = "sha256:353f466495adaeb40b6b5f592f9f91cb22372351c84caeb068132442a4518ef3"}, - {file = "click-8.0.3.tar.gz", hash = "sha256:410e932b050f5eed773c4cda94de75971c89cdb3155a72a0831139a79e5ecb5b"}, + {file = "click-8.1.2-py3-none-any.whl", hash = "sha256:24e1a4a9ec5bf6299411369b208c1df2188d9eb8d916302fe6bf03faed227f1e"}, + {file = "click-8.1.2.tar.gz", hash = "sha256:479707fe14d9ec9a0757618b7a100a0ae4c4e236fac5b7f80ca68028141a1a72"}, ] cma = [ {file = "cma-2.7.0-py2.py3-none-any.whl", hash = "sha256:136e457c97e837152404b868c4ec6f163dee923fcee8b94ff446d13d4242b227"}, @@ -2703,26 +2759,26 @@ colorama = [ {file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"}, ] cryptography = [ - {file = "cryptography-36.0.1-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:73bc2d3f2444bcfeac67dd130ff2ea598ea5f20b40e36d19821b4df8c9c5037b"}, - {file = "cryptography-36.0.1-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:2d87cdcb378d3cfed944dac30596da1968f88fb96d7fc34fdae30a99054b2e31"}, - {file = "cryptography-36.0.1-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:74d6c7e80609c0f4c2434b97b80c7f8fdfaa072ca4baab7e239a15d6d70ed73a"}, - {file = "cryptography-36.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:6c0c021f35b421ebf5976abf2daacc47e235f8b6082d3396a2fe3ccd537ab173"}, - {file = "cryptography-36.0.1-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d59a9d55027a8b88fd9fd2826c4392bd487d74bf628bb9d39beecc62a644c12"}, - {file = "cryptography-36.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a817b961b46894c5ca8a66b599c745b9a3d9f822725221f0e0fe49dc043a3a3"}, - {file = "cryptography-36.0.1-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:94ae132f0e40fe48f310bba63f477f14a43116f05ddb69d6fa31e93f05848ae2"}, - {file = "cryptography-36.0.1-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:7be0eec337359c155df191d6ae00a5e8bbb63933883f4f5dffc439dac5348c3f"}, - {file = "cryptography-36.0.1-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:e0344c14c9cb89e76eb6a060e67980c9e35b3f36691e15e1b7a9e58a0a6c6dc3"}, - {file = "cryptography-36.0.1-cp36-abi3-win32.whl", hash = "sha256:4caa4b893d8fad33cf1964d3e51842cd78ba87401ab1d2e44556826df849a8ca"}, - {file = "cryptography-36.0.1-cp36-abi3-win_amd64.whl", hash = "sha256:391432971a66cfaf94b21c24ab465a4cc3e8bf4a939c1ca5c3e3a6e0abebdbcf"}, - {file = "cryptography-36.0.1-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bb5829d027ff82aa872d76158919045a7c1e91fbf241aec32cb07956e9ebd3c9"}, - {file = "cryptography-36.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ebc15b1c22e55c4d5566e3ca4db8689470a0ca2babef8e3a9ee057a8b82ce4b1"}, - {file = "cryptography-36.0.1-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:596f3cd67e1b950bc372c33f1a28a0692080625592ea6392987dba7f09f17a94"}, - {file = "cryptography-36.0.1-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:30ee1eb3ebe1644d1c3f183d115a8c04e4e603ed6ce8e394ed39eea4a98469ac"}, - {file = "cryptography-36.0.1-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ec63da4e7e4a5f924b90af42eddf20b698a70e58d86a72d943857c4c6045b3ee"}, - {file = "cryptography-36.0.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca238ceb7ba0bdf6ce88c1b74a87bffcee5afbfa1e41e173b1ceb095b39add46"}, - {file = "cryptography-36.0.1-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:ca28641954f767f9822c24e927ad894d45d5a1e501767599647259cbf030b903"}, - {file = "cryptography-36.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:39bdf8e70eee6b1c7b289ec6e5d84d49a6bfa11f8b8646b5b3dfe41219153316"}, - {file = "cryptography-36.0.1.tar.gz", hash = "sha256:53e5c1dc3d7a953de055d77bef2ff607ceef7a2aac0353b5d630ab67f7423638"}, + {file = "cryptography-36.0.2-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:4e2dddd38a5ba733be6a025a1475a9f45e4e41139d1321f412c6b360b19070b6"}, + {file = "cryptography-36.0.2-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:4881d09298cd0b669bb15b9cfe6166f16fc1277b4ed0d04a22f3d6430cb30f1d"}, + {file = "cryptography-36.0.2-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ea634401ca02367c1567f012317502ef3437522e2fc44a3ea1844de028fa4b84"}, + {file = "cryptography-36.0.2-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:7be666cc4599b415f320839e36367b273db8501127b38316f3b9f22f17a0b815"}, + {file = "cryptography-36.0.2-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8241cac0aae90b82d6b5c443b853723bcc66963970c67e56e71a2609dc4b5eaf"}, + {file = "cryptography-36.0.2-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b2d54e787a884ffc6e187262823b6feb06c338084bbe80d45166a1cb1c6c5bf"}, + {file = "cryptography-36.0.2-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:c2c5250ff0d36fd58550252f54915776940e4e866f38f3a7866d92b32a654b86"}, + {file = "cryptography-36.0.2-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:ec6597aa85ce03f3e507566b8bcdf9da2227ec86c4266bd5e6ab4d9e0cc8dab2"}, + {file = "cryptography-36.0.2-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:ca9f686517ec2c4a4ce930207f75c00bf03d94e5063cbc00a1dc42531511b7eb"}, + {file = "cryptography-36.0.2-cp36-abi3-win32.whl", hash = "sha256:f64b232348ee82f13aac22856515ce0195837f6968aeaa94a3d0353ea2ec06a6"}, + {file = "cryptography-36.0.2-cp36-abi3-win_amd64.whl", hash = "sha256:53e0285b49fd0ab6e604f4c5d9c5ddd98de77018542e88366923f152dbeb3c29"}, + {file = "cryptography-36.0.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:32db5cc49c73f39aac27574522cecd0a4bb7384e71198bc65a0d23f901e89bb7"}, + {file = "cryptography-36.0.2-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b3d199647468d410994dbeb8cec5816fb74feb9368aedf300af709ef507e3e"}, + {file = "cryptography-36.0.2-pp37-pypy37_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:da73d095f8590ad437cd5e9faf6628a218aa7c387e1fdf67b888b47ba56a17f0"}, + {file = "cryptography-36.0.2-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:0a3bf09bb0b7a2c93ce7b98cb107e9170a90c51a0162a20af1c61c765b90e60b"}, + {file = "cryptography-36.0.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8897b7b7ec077c819187a123174b645eb680c13df68354ed99f9b40a50898f77"}, + {file = "cryptography-36.0.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82740818f2f240a5da8dfb8943b360e4f24022b093207160c77cadade47d7c85"}, + {file = "cryptography-36.0.2-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:1f64a62b3b75e4005df19d3b5235abd43fa6358d5516cfc43d87aeba8d08dd51"}, + {file = "cryptography-36.0.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e167b6b710c7f7bc54e67ef593f8731e1f45aa35f8a8a7b72d6e42ec76afd4b3"}, + {file = "cryptography-36.0.2.tar.gz", hash = "sha256:70f8f4f7bb2ac9f340655cbac89d68c527af5bb4387522a8413e841e3e6628c9"}, ] cycler = [ {file = "cycler-0.11.0-py3-none-any.whl", hash = "sha256:3a27e95f763a428a739d2add979fa7494c912a32c17c4c38c4d5f082cad165a3"}, @@ -2767,27 +2823,24 @@ cython = [ {file = "Cython-0.29.28.tar.gz", hash = "sha256:d6fac2342802c30e51426828fe084ff4deb1b3387367cf98976bb2e64b6f8e45"}, ] debugpy = [ - {file = "debugpy-1.5.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:70b422c63a833630c33e3f9cdbd9b6971f8c5afd452697e464339a21bbe862ba"}, - {file = "debugpy-1.5.1-cp310-cp310-win32.whl", hash = "sha256:3a457ad9c0059a21a6c7d563c1f18e924f5cf90278c722bd50ede6f56b77c7fe"}, - {file = "debugpy-1.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:5d76a4fd028d8009c3faf1185b4b78ceb2273dd2499447664b03939e0368bb90"}, - {file = "debugpy-1.5.1-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:16db27b4b91991442f91d73604d32080b30de655aca9ba821b1972ea8171021b"}, - {file = "debugpy-1.5.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2b073ad5e8d8c488fbb6a116986858bab0c9c4558f28deb8832c7a5a27405bd6"}, - {file = "debugpy-1.5.1-cp36-cp36m-win32.whl", hash = "sha256:318f81f37341e4e054b4267d39896b73cddb3612ca13b39d7eea45af65165e1d"}, - {file = "debugpy-1.5.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b5b3157372e0e0a1297a8b6b5280bcf1d35a40f436c7973771c972726d1e32d5"}, - {file = "debugpy-1.5.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:1ec3a086e14bba6c472632025b8fe5bdfbaef2afa1ebd5c6615ce6ed8d89bc67"}, - {file = "debugpy-1.5.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:26fbe53cca45a608679094791ce587b6e2798acd1d4777a8b303b07622e85182"}, - {file = "debugpy-1.5.1-cp37-cp37m-win32.whl", hash = "sha256:d876db8c312eeb02d85611e0f696abe66a2c1515e6405943609e725d5ff36f2a"}, - {file = "debugpy-1.5.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4404a62fb5332ea5c8c9132290eef50b3a0ba38cecacad5529e969a783bcbdd7"}, - {file = "debugpy-1.5.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:f3a3dca9104aa14fd4210edcce6d9ce2b65bd9618c0b222135a40b9d6e2a9eeb"}, - {file = "debugpy-1.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b2df2c373e85871086bd55271c929670cd4e1dba63e94a08d442db830646203b"}, - {file = "debugpy-1.5.1-cp38-cp38-win32.whl", hash = "sha256:82f5f9ce93af6861a0713f804e62ab390bb12a17f113153e47fea8bbb1dfbe36"}, - {file = "debugpy-1.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:17a25ce9d7714f92fc97ef00cc06269d7c2b163094990ada30156ed31d9a5030"}, - {file = "debugpy-1.5.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:01e98c594b3e66d529e40edf314f849cd1a21f7a013298df58cd8e263bf8e184"}, - {file = "debugpy-1.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f73988422b17f071ad3c4383551ace1ba5ed810cbab5f9c362783d22d40a08dc"}, - {file = "debugpy-1.5.1-cp39-cp39-win32.whl", hash = "sha256:23df67fc56d59e386c342428a7953c2c06cc226d8525b11319153e96afb65b0c"}, - {file = "debugpy-1.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:a2aa64f6d2ca7ded8a7e8a4e7cae3bc71866b09876b7b05cecad231779cb9156"}, - {file = "debugpy-1.5.1-py2.py3-none-any.whl", hash = "sha256:194f95dd3e84568b5489aab5689a3a2c044e8fdc06f1890b8b4f70b6b89f2778"}, - {file = "debugpy-1.5.1.zip", hash = "sha256:d2b09e91fbd1efa4f4fda121d49af89501beda50c18ed7499712c71a4bf3452e"}, + {file = "debugpy-1.6.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:eb1946efac0c0c3d411cea0b5ac772fbde744109fd9520fb0c5a51979faf05ad"}, + {file = "debugpy-1.6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e3513399177dd37af4c1332df52da5da1d0c387e5927dc4c0709e26ee7302e8f"}, + {file = "debugpy-1.6.0-cp310-cp310-win32.whl", hash = "sha256:5c492235d6b68f879df3bdbdb01f25c15be15682665517c2c7d0420e5658d71f"}, + {file = "debugpy-1.6.0-cp310-cp310-win_amd64.whl", hash = "sha256:40de9ba137d355538432209d05e0f5fe5d0498dce761c39119ad4b950b51db31"}, + {file = "debugpy-1.6.0-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:0d383b91efee57dbb923ba20801130cf60450a0eda60bce25bccd937de8e323a"}, + {file = "debugpy-1.6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1ff853e60e77e1c16f85a31adb8360bb2d98ca588d7ed645b7f0985b240bdb5e"}, + {file = "debugpy-1.6.0-cp37-cp37m-win32.whl", hash = "sha256:8e972c717d95f56b6a3a7a29a5ede1ee8f2c3802f6f0e678203b0778eb322bf1"}, + {file = "debugpy-1.6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:a8aaeb53e87225141fda7b9081bd87155c1debc13e2f5a532d341112d1983b65"}, + {file = "debugpy-1.6.0-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:132defb585b518955358321d0f42f6aa815aa15b432be27db654807707c70b2f"}, + {file = "debugpy-1.6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8ee75844242b4537beb5899f3e60a578454d1f136b99e8d57ac424573797b94a"}, + {file = "debugpy-1.6.0-cp38-cp38-win32.whl", hash = "sha256:a65a2499761d47df3e9ea9567109be6e73d412e00ac3ffcf74839f3ddfcdf028"}, + {file = "debugpy-1.6.0-cp38-cp38-win_amd64.whl", hash = "sha256:bd980d533d0ddfc451e03a3bb32acb2900049fec39afc3425b944ebf0889be62"}, + {file = "debugpy-1.6.0-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:245c7789a012f86210847ec7ee9f38c30a30d4c2223c3e111829a76c9006a5d0"}, + {file = "debugpy-1.6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0e3aa2368883e83e7b689ddff3cafb595f7b711f6a065886b46a96a7fef874e7"}, + {file = "debugpy-1.6.0-cp39-cp39-win32.whl", hash = "sha256:72bcfa97f3afa0064afc77ab811f48ad4a06ac330f290b675082c24437730366"}, + {file = "debugpy-1.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:30abefefd2ff5a5481162d613cb70e60e2fa80a5eb4c994717c0f008ed25d2e1"}, + {file = "debugpy-1.6.0-py2.py3-none-any.whl", hash = "sha256:4de7777842da7e08652f2776c552070bbdd758557fdec73a15d7be0e4aab95ce"}, + {file = "debugpy-1.6.0.zip", hash = "sha256:7b79c40852991f7b6c3ea65845ed0f5f6b731c37f4f9ad9c61e2ab4bd48a9275"}, ] decorator = [ {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, @@ -2813,24 +2866,28 @@ enum-compat = [ {file = "enum_compat-0.0.3-py3-none-any.whl", hash = "sha256:88091b617c7fc3bbbceae50db5958023c48dc40b50520005aa3bf27f8f7ea157"}, ] executing = [ - {file = "executing-0.8.2-py2.py3-none-any.whl", hash = "sha256:32fc6077b103bd19e6494a72682d66d5763cf20a106d5aa7c5ccbea4e47b0df7"}, - {file = "executing-0.8.2.tar.gz", hash = "sha256:c23bf42e9a7b9b212f185b1b2c3c91feb895963378887bb10e64a2e612ec0023"}, + {file = "executing-0.8.3-py2.py3-none-any.whl", hash = "sha256:d1eef132db1b83649a3905ca6dd8897f71ac6f8cac79a7e58a1a09cf137546c9"}, + {file = "executing-0.8.3.tar.gz", hash = "sha256:c6554e21c6b060590a6d3be4b82fb78f8f0194d809de5ea7df1c093763311501"}, +] +fastjsonschema = [ + {file = "fastjsonschema-2.15.3-py3-none-any.whl", hash = "sha256:ddb0b1d8243e6e3abb822bd14e447a89f4ab7439342912d590444831fa00b6a0"}, + {file = "fastjsonschema-2.15.3.tar.gz", hash = "sha256:0a572f0836962d844c1fc435e200b2e4f4677e4e6611a2e3bdd01ba697c275ec"}, ] fastprogress = [ {file = "fastprogress-0.2.6-py3-none-any.whl", hash = "sha256:f13593b2b1f33d93377b7e680a31a8f283862118cc6b95dcb6570b9431ea6bae"}, {file = "fastprogress-0.2.6.tar.gz", hash = "sha256:163ec01c0b4262cfa2fe3a5d3b59bd6d5f784d4c99939e3720cd67ac411cf38d"}, ] flask = [ - {file = "Flask-2.0.3-py3-none-any.whl", hash = "sha256:59da8a3170004800a2837844bfa84d49b022550616070f7cb1a659682b2e7c9f"}, - {file = "Flask-2.0.3.tar.gz", hash = "sha256:e1120c228ca2f553b470df4a5fa927ab66258467526069981b3eb0a91902687d"}, + {file = "Flask-2.1.1-py3-none-any.whl", hash = "sha256:8a4cf32d904cf5621db9f0c9fbcd7efabf3003f22a04e4d0ce790c7137ec5264"}, + {file = "Flask-2.1.1.tar.gz", hash = "sha256:a8c9bd3e558ec99646d177a9739c41df1ded0629480b4c8d2975412f3c9519c8"}, ] flask-compress = [ - {file = "Flask-Compress-1.10.1.tar.gz", hash = "sha256:28352387efbbe772cfb307570019f81957a13ff718d994a9125fa705efb73680"}, - {file = "Flask_Compress-1.10.1-py3-none-any.whl", hash = "sha256:a6c2d1ff51771e9b39d7a612754f4cb4e8af20cebe16b02fd19d98d8dd6966e5"}, + {file = "Flask-Compress-1.11.tar.gz", hash = "sha256:f569f32c446d6b25ca8e347d5003a0531811ef732678005b0036fc1c9eb1c21c"}, + {file = "Flask_Compress-1.11-py3-none-any.whl", hash = "sha256:7ccc4102104a63e6207f39eb307f99aebbfbaf4e70992d727440cff29119a0a0"}, ] fonttools = [ - {file = "fonttools-4.29.1-py3-none-any.whl", hash = "sha256:1933415e0fbdf068815cb1baaa1f159e17830215f7e8624e5731122761627557"}, - {file = "fonttools-4.29.1.zip", hash = "sha256:2b18a172120e32128a80efee04cff487d5d140fe7d817deb648b2eee023a40e4"}, + {file = "fonttools-4.33.2-py3-none-any.whl", hash = "sha256:b4da40696829845ea8c1cb33ce51c552179754cbee7ab4e8b96a6bcf421f437a"}, + {file = "fonttools-4.33.2.zip", hash = "sha256:696fe922a271584c3ec8325ba31d4001a4fd6c4953b22900b767f1cb53ce1044"}, ] fqdn = [ {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, @@ -2844,8 +2901,8 @@ gitdb = [ {file = "gitdb-4.0.9.tar.gz", hash = "sha256:bac2fd45c0a1c9cf619e63a90d62bdc63892ef92387424b855792a6cabe789aa"}, ] 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"}, ] gpy = [ {file = "GPy-1.10.0-cp35-cp35m-macosx_10_6_x86_64.whl", hash = "sha256:2049fd7e9c4a76fe4ecae72b63b9c4012c2df53f82a4b596c60682f6e8334651"}, @@ -2896,36 +2953,40 @@ imagesize = [ {file = "imagesize-1.3.0-py2.py3-none-any.whl", hash = "sha256:1db2f82529e53c3e929e8926a1fa9235aa82d0bd0c580359c67ec31b2fddaa8c"}, {file = "imagesize-1.3.0.tar.gz", hash = "sha256:cd1750d452385ca327479d45b64d9c7729ecf0b3969a58148298c77092261f9d"}, ] +importlib-metadata = [ + {file = "importlib_metadata-4.11.3-py3-none-any.whl", hash = "sha256:1208431ca90a8cca1a6b8af391bb53c1a2db74e5d1cef6ddced95d4b2062edc6"}, + {file = "importlib_metadata-4.11.3.tar.gz", hash = "sha256:ea4c597ebf37142f827b8f39299579e31685c31d3a438b59f469406afd0f2539"}, +] importlib-resources = [ - {file = "importlib_resources-5.4.0-py3-none-any.whl", hash = "sha256:33a95faed5fc19b4bc16b29a6eeae248a3fe69dd55d4d229d2b480e23eeaad45"}, - {file = "importlib_resources-5.4.0.tar.gz", hash = "sha256:d756e2f85dd4de2ba89be0b21dba2a3bbec2e871a42a3a16719258a11f87506b"}, + {file = "importlib_resources-5.7.1-py3-none-any.whl", hash = "sha256:e447dc01619b1e951286f3929be820029d48c75eb25d265c28b92a16548212b8"}, + {file = "importlib_resources-5.7.1.tar.gz", hash = "sha256:b6062987dfc51f0fcb809187cffbd60f35df7acb4589091f154214af6d0d49d3"}, ] ipdb = [ {file = "ipdb-0.13.4.tar.gz", hash = "sha256:c85398b5fb82f82399fc38c44fe3532c0dde1754abee727d8f5cfcc74547b334"}, ] ipykernel = [ - {file = "ipykernel-6.9.1-py3-none-any.whl", hash = "sha256:4fae9df6e192837552b2406a6052d707046dd2e153860be73c68484bacba18ed"}, - {file = "ipykernel-6.9.1.tar.gz", hash = "sha256:f95070a2dfd3147f8ab19f18ee46733310813758593745e07ec18fb08b409f1d"}, + {file = "ipykernel-6.13.0-py3-none-any.whl", hash = "sha256:2b0987af43c0d4b62cecb13c592755f599f96f29aafe36c01731aaa96df30d39"}, + {file = "ipykernel-6.13.0.tar.gz", hash = "sha256:0e28273e290858393e86e152b104e5506a79c13d25b951ac6eca220051b4be60"}, ] ipython = [ - {file = "ipython-8.0.1-py3-none-any.whl", hash = "sha256:c503a0dd6ccac9c8c260b211f2dd4479c042b49636b097cc9a0d55fe62dff64c"}, - {file = "ipython-8.0.1.tar.gz", hash = "sha256:ab564d4521ea8ceaac26c3a2c6e5ddbca15c8848fd5a5cc325f960da88d42974"}, + {file = "ipython-8.2.0-py3-none-any.whl", hash = "sha256:1b672bfd7a48d87ab203d9af8727a3b0174a4566b4091e9447c22fb63ea32857"}, + {file = "ipython-8.2.0.tar.gz", hash = "sha256:70e5eb132cac594a34b5f799bd252589009905f05104728aea6a403ec2519dc1"}, ] ipython-genutils = [ {file = "ipython_genutils-0.2.0-py2.py3-none-any.whl", hash = "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8"}, {file = "ipython_genutils-0.2.0.tar.gz", hash = "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"}, ] ipywidgets = [ - {file = "ipywidgets-7.6.5-py2.py3-none-any.whl", hash = "sha256:d258f582f915c62ea91023299603be095de19afb5ee271698f88327b9fe9bf43"}, - {file = "ipywidgets-7.6.5.tar.gz", hash = "sha256:00974f7cb4d5f8d494c19810fedb9fa9b64bffd3cda7c2be23c133a1ad3c99c5"}, + {file = "ipywidgets-7.7.0-py2.py3-none-any.whl", hash = "sha256:e58ff58bc94d481e91ecb6e13a5cb96a87b6b8ade135e055603d0ca24593df38"}, + {file = "ipywidgets-7.7.0.tar.gz", hash = "sha256:ab4a5596855a88b83761921c768707d65e5847068139bc1729ddfe834703542a"}, ] isoduration = [ {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, ] itsdangerous = [ - {file = "itsdangerous-2.0.1-py3-none-any.whl", hash = "sha256:5174094b9637652bdb841a3029700391451bd092ba3db90600dea710ba28e97c"}, - {file = "itsdangerous-2.0.1.tar.gz", hash = "sha256:9e724d68fc22902a1435351f84c3fb8623f303fffcc566a4cb952df8c572cff0"}, + {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, + {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, ] jedi = [ {file = "jedi-0.18.1-py2.py3-none-any.whl", hash = "sha256:637c9635fcf47945ceb91cd7f320234a7be540ded6f3e99a50cb6febdfd1ba8d"}, @@ -2936,16 +2997,16 @@ jinja2 = [ {file = "Jinja2-3.0.3.tar.gz", hash = "sha256:611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7"}, ] jmespath = [ - {file = "jmespath-0.10.0-py2.py3-none-any.whl", hash = "sha256:cdf6525904cc597730141d61b36f2e4b8ecc257c420fa2f4549bac2c2d0cb72f"}, - {file = "jmespath-0.10.0.tar.gz", hash = "sha256:b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9"}, + {file = "jmespath-1.0.0-py3-none-any.whl", hash = "sha256:e8dcd576ed616f14ec02eed0005c85973b5890083313860136657e24784e4c04"}, + {file = "jmespath-1.0.0.tar.gz", hash = "sha256:a490e280edd1f57d6de88636992d05b71e97d69a26a19f058ecf7d304474bf5e"}, ] joblib = [ {file = "joblib-1.1.0-py2.py3-none-any.whl", hash = "sha256:f21f109b3c7ff9d95f8387f752d0d9c34a02aa2f7060c2135f465da0e5160ff6"}, {file = "joblib-1.1.0.tar.gz", hash = "sha256:4158fcecd13733f8be669be0683b96ebdbbd38d23559f54dca7205aea1bf1e35"}, ] jsonpointer = [ - {file = "jsonpointer-2.2-py2.py3-none-any.whl", hash = "sha256:26d9a47a72d4dc3e3ae72c4c6cd432afd73c680164cd2540772eab53cb3823b6"}, - {file = "jsonpointer-2.2.tar.gz", hash = "sha256:f09f8deecaaa5aea65b5eb4f67ca4e54e1a61f7a11c75085e360fe6feb6a48bf"}, + {file = "jsonpointer-2.3-py2.py3-none-any.whl", hash = "sha256:51801e558539b4e9cd268638c078c6c5746c9ac96bc38152d443400e4f3793e9"}, + {file = "jsonpointer-2.3.tar.gz", hash = "sha256:97cba51526c829282218feb99dab1b1e6bdf8efd1c43dc9d57be093c0d69c99a"}, ] jsonref = [ {file = "jsonref-0.2-py3-none-any.whl", hash = "sha256:b1e82fa0b62e2c2796a13e5401fe51790b248f6d9bf9d7212a3e31a3501b291f"}, @@ -2956,66 +3017,65 @@ jsonschema = [ {file = "jsonschema-4.4.0.tar.gz", hash = "sha256:636694eb41b3535ed608fe04129f26542b59ed99808b4f688aa32dcf55317a83"}, ] jupyter-client = [ - {file = "jupyter_client-7.1.2-py3-none-any.whl", hash = "sha256:d56f1c57bef42ff31e61b1185d3348a5b2bcde7c9a05523ae4dbe5ee0871797c"}, - {file = "jupyter_client-7.1.2.tar.gz", hash = "sha256:4ea61033726c8e579edb55626d8ee2e6bf0a83158ddf3751b8dd46b2c5cd1e96"}, + {file = "jupyter_client-7.2.2-py3-none-any.whl", hash = "sha256:44045448eadc12493d819d965eb1dc9d10d1927698adbb9b14eb9a3a4a45ba53"}, + {file = "jupyter_client-7.2.2.tar.gz", hash = "sha256:8fdbad344a8baa6a413d86d25bbf87ce21cb2b4aa5a8e0413863b9754eb8eb8a"}, ] jupyter-core = [ - {file = "jupyter_core-4.9.2-py3-none-any.whl", hash = "sha256:f875e4d27e202590311d468fa55f90c575f201490bd0c18acabe4e318db4a46d"}, - {file = "jupyter_core-4.9.2.tar.gz", hash = "sha256:d69baeb9ffb128b8cd2657fcf2703f89c769d1673c851812119e3a2a0e93ad9a"}, + {file = "jupyter_core-4.10.0-py3-none-any.whl", hash = "sha256:e7f5212177af7ab34179690140f188aa9bf3d322d8155ed972cbded19f55b6f3"}, + {file = "jupyter_core-4.10.0.tar.gz", hash = "sha256:a6de44b16b7b31d7271130c71a6792c4040f077011961138afed5e5e73181aec"}, ] jupyterlab-pygments = [ - {file = "jupyterlab_pygments-0.1.2-py2.py3-none-any.whl", hash = "sha256:abfb880fd1561987efaefcb2d2ac75145d2a5d0139b1876d5be806e32f630008"}, - {file = "jupyterlab_pygments-0.1.2.tar.gz", hash = "sha256:cfcda0873626150932f438eccf0f8bf22bfa92345b814890ab360d666b254146"}, + {file = "jupyterlab_pygments-0.2.2-py2.py3-none-any.whl", hash = "sha256:2405800db07c9f770863bcf8049a529c3dd4d3e28536638bd7c1c01d2748309f"}, + {file = "jupyterlab_pygments-0.2.2.tar.gz", hash = "sha256:7405d7fde60819d905a9fa8ce89e4cd830e318cdad22a0030f7a901da705585d"}, ] jupyterlab-widgets = [ - {file = "jupyterlab_widgets-1.0.2-py3-none-any.whl", hash = "sha256:f5d9efface8ec62941173ba1cffb2edd0ecddc801c11ae2931e30b50492eb8f7"}, - {file = "jupyterlab_widgets-1.0.2.tar.gz", hash = "sha256:7885092b2b96bf189c3a705cc3c412a4472ec5e8382d0b47219a66cccae73cfa"}, + {file = "jupyterlab_widgets-1.1.0-py3-none-any.whl", hash = "sha256:c2a9bd3789f120f64d73268c066ed3b000c56bc1dda217be5cdc43e7b4ebad3f"}, + {file = "jupyterlab_widgets-1.1.0.tar.gz", hash = "sha256:d5f41bc1713795385f718d44dcba47e1e1473c6289f28a95aa6b2c0782ee372a"}, ] kiwisolver = [ - {file = "kiwisolver-1.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1d819553730d3c2724582124aee8a03c846ec4362ded1034c16fb3ef309264e6"}, - {file = "kiwisolver-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8d93a1095f83e908fc253f2fb569c2711414c0bfd451cab580466465b235b470"}, - {file = "kiwisolver-1.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c4550a359c5157aaf8507e6820d98682872b9100ce7607f8aa070b4b8af6c298"}, - {file = "kiwisolver-1.3.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2210f28778c7d2ee13f3c2a20a3a22db889e75f4ec13a21072eabb5693801e84"}, - {file = "kiwisolver-1.3.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:82f49c5a79d3839bc8f38cb5f4bfc87e15f04cbafa5fbd12fb32c941cb529cfb"}, - {file = "kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9661a04ca3c950a8ac8c47f53cbc0b530bce1b52f516a1e87b7736fec24bfff0"}, - {file = "kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ddb500a2808c100e72c075cbb00bf32e62763c82b6a882d403f01a119e3f402"}, - {file = "kiwisolver-1.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72be6ebb4e92520b9726d7146bc9c9b277513a57a38efcf66db0620aec0097e0"}, - {file = "kiwisolver-1.3.2-cp310-cp310-win32.whl", hash = "sha256:83d2c9db5dfc537d0171e32de160461230eb14663299b7e6d18ca6dca21e4977"}, - {file = "kiwisolver-1.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:cba430db673c29376135e695c6e2501c44c256a81495da849e85d1793ee975ad"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4116ba9a58109ed5e4cb315bdcbff9838f3159d099ba5259c7c7fb77f8537492"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19554bd8d54cf41139f376753af1a644b63c9ca93f8f72009d50a2080f870f77"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a7a4cf5bbdc861987a7745aed7a536c6405256853c94abc9f3287c3fa401b174"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0007840186bacfaa0aba4466d5890334ea5938e0bb7e28078a0eb0e63b5b59d5"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ec2eba188c1906b05b9b49ae55aae4efd8150c61ba450e6721f64620c50b59eb"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3dbb3cea20b4af4f49f84cffaf45dd5f88e8594d18568e0225e6ad9dec0e7967"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-win32.whl", hash = "sha256:5326ddfacbe51abf9469fe668944bc2e399181a2158cb5d45e1d40856b2a0589"}, - {file = "kiwisolver-1.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:c6572c2dab23c86a14e82c245473d45b4c515314f1f859e92608dcafbd2f19b8"}, - {file = "kiwisolver-1.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b5074fb09429f2b7bc82b6fb4be8645dcbac14e592128beeff5461dcde0af09f"}, - {file = "kiwisolver-1.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:22521219ca739654a296eea6d4367703558fba16f98688bd8ce65abff36eaa84"}, - {file = "kiwisolver-1.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c358721aebd40c243894298f685a19eb0491a5c3e0b923b9f887ef1193ddf829"}, - {file = "kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ba5a1041480c6e0a8b11a9544d53562abc2d19220bfa14133e0cdd9967e97af"}, - {file = "kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:44e6adf67577dbdfa2d9f06db9fbc5639afefdb5bf2b4dfec25c3a7fbc619536"}, - {file = "kiwisolver-1.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1d45d1c74f88b9f41062716c727f78f2a59a5476ecbe74956fafb423c5c87a76"}, - {file = "kiwisolver-1.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:70adc3658138bc77a36ce769f5f183169bc0a2906a4f61f09673f7181255ac9b"}, - {file = "kiwisolver-1.3.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b6a5431940f28b6de123de42f0eb47b84a073ee3c3345dc109ad550a3307dd28"}, - {file = "kiwisolver-1.3.2-cp38-cp38-win32.whl", hash = "sha256:ee040a7de8d295dbd261ef2d6d3192f13e2b08ec4a954de34a6fb8ff6422e24c"}, - {file = "kiwisolver-1.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:8dc3d842fa41a33fe83d9f5c66c0cc1f28756530cd89944b63b072281e852031"}, - {file = "kiwisolver-1.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a498bcd005e8a3fedd0022bb30ee0ad92728154a8798b703f394484452550507"}, - {file = "kiwisolver-1.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:80efd202108c3a4150e042b269f7c78643420cc232a0a771743bb96b742f838f"}, - {file = "kiwisolver-1.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f8eb7b6716f5b50e9c06207a14172cf2de201e41912ebe732846c02c830455b9"}, - {file = "kiwisolver-1.3.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f441422bb313ab25de7b3dbfd388e790eceb76ce01a18199ec4944b369017009"}, - {file = "kiwisolver-1.3.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:30fa008c172355c7768159983a7270cb23838c4d7db73d6c0f6b60dde0d432c6"}, - {file = "kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f8f6c8f4f1cff93ca5058d6ec5f0efda922ecb3f4c5fb76181f327decff98b8"}, - {file = "kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ba677bcaff9429fd1bf01648ad0901cea56c0d068df383d5f5856d88221fe75b"}, - {file = "kiwisolver-1.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7843b1624d6ccca403a610d1277f7c28ad184c5aa88a1750c1a999754e65b439"}, - {file = "kiwisolver-1.3.2-cp39-cp39-win32.whl", hash = "sha256:e6f5eb2f53fac7d408a45fbcdeda7224b1cfff64919d0f95473420a931347ae9"}, - {file = "kiwisolver-1.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:eedd3b59190885d1ebdf6c5e0ca56828beb1949b4dfe6e5d0256a461429ac386"}, - {file = "kiwisolver-1.3.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:dedc71c8eb9c5096037766390172c34fb86ef048b8e8958b4e484b9e505d66bc"}, - {file = "kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:bf7eb45d14fc036514c09554bf983f2a72323254912ed0c3c8e697b62c4c158f"}, - {file = "kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2b65bd35f3e06a47b5c30ea99e0c2b88f72c6476eedaf8cfbc8e66adb5479dcf"}, - {file = "kiwisolver-1.3.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25405f88a37c5f5bcba01c6e350086d65e7465fd1caaf986333d2a045045a223"}, - {file = "kiwisolver-1.3.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:bcadb05c3d4794eb9eee1dddf1c24215c92fb7b55a80beae7a60530a91060560"}, - {file = "kiwisolver-1.3.2.tar.gz", hash = "sha256:fc4453705b81d03568d5b808ad8f09c77c47534f6ac2e72e733f9ca4714aa75c"}, + {file = "kiwisolver-1.4.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6e395ece147f0692ca7cdb05a028d31b83b72c369f7b4a2c1798f4b96af1e3d8"}, + {file = "kiwisolver-1.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0b7f50a1a25361da3440f07c58cd1d79957c2244209e4f166990e770256b6b0b"}, + {file = "kiwisolver-1.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3c032c41ae4c3a321b43a3650e6ecc7406b99ff3e5279f24c9b310f41bc98479"}, + {file = "kiwisolver-1.4.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1dcade8f6fe12a2bb4efe2cbe22116556e3b6899728d3b2a0d3b367db323eacc"}, + {file = "kiwisolver-1.4.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0e45e780a74416ef2f173189ef4387e44b5494f45e290bcb1f03735faa6779bf"}, + {file = "kiwisolver-1.4.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9d2bb56309fb75a811d81ed55fbe2208aa77a3a09ff5f546ca95e7bb5fac6eff"}, + {file = "kiwisolver-1.4.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b2d6c12f2ad5f55104a36a356192cfb680c049fe5e7c1f6620fc37f119cdc2"}, + {file = "kiwisolver-1.4.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:262c248c60f22c2b547683ad521e8a3db5909c71f679b93876921549107a0c24"}, + {file = "kiwisolver-1.4.2-cp310-cp310-win32.whl", hash = "sha256:1008346a7741620ab9cc6c96e8ad9b46f7a74ce839dbb8805ddf6b119d5fc6c2"}, + {file = "kiwisolver-1.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:6ece2e12e4b57bc5646b354f436416cd2a6f090c1dadcd92b0ca4542190d7190"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b978afdb913ca953cf128d57181da2e8798e8b6153be866ae2a9c446c6162f40"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7f88c4b8e449908eeddb3bbd4242bd4dc2c7a15a7aa44bb33df893203f02dc2d"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e348f1904a4fab4153407f7ccc27e43b2a139752e8acf12e6640ba683093dd96"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c839bf28e45d7ddad4ae8f986928dbf5a6d42ff79760d54ec8ada8fb263e097c"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8ae5a071185f1a93777c79a9a1e67ac46544d4607f18d07131eece08d415083a"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:c222f91a45da9e01a9bc4f760727ae49050f8e8345c4ff6525495f7a164c8973"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-win32.whl", hash = "sha256:a4e8f072db1d6fb7a7cc05a6dbef8442c93001f4bb604f1081d8c2db3ca97159"}, + {file = "kiwisolver-1.4.2-cp37-cp37m-win_amd64.whl", hash = "sha256:be9a650890fb60393e60aacb65878c4a38bb334720aa5ecb1c13d0dac54dd73b"}, + {file = "kiwisolver-1.4.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8ec2e55bf31b43aabe32089125dca3b46fdfe9f50afbf0756ae11e14c97b80ca"}, + {file = "kiwisolver-1.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d1078ba770d6165abed3d9a1be1f9e79b61515de1dd00d942fa53bba79f01ae"}, + {file = "kiwisolver-1.4.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cbb5eb4a2ea1ffec26268d49766cafa8f957fe5c1b41ad00733763fae77f9436"}, + {file = "kiwisolver-1.4.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e6cda72db409eefad6b021e8a4f964965a629f577812afc7860c69df7bdb84a"}, + {file = "kiwisolver-1.4.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b1605c7c38cc6a85212dfd6a641f3905a33412e49f7c003f35f9ac6d71f67720"}, + {file = "kiwisolver-1.4.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81237957b15469ea9151ec8ca08ce05656090ffabc476a752ef5ad7e2644c526"}, + {file = "kiwisolver-1.4.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:240009fdf4fa87844f805e23f48995537a8cb8f8c361e35fda6b5ac97fcb906f"}, + {file = "kiwisolver-1.4.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:240c2d51d098395c012ddbcb9bd7b3ba5de412a1d11840698859f51d0e643c4f"}, + {file = "kiwisolver-1.4.2-cp38-cp38-win32.whl", hash = "sha256:8b6086aa6936865962b2cee0e7aaecf01ab6778ce099288354a7229b4d9f1408"}, + {file = "kiwisolver-1.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:0d98dca86f77b851350c250f0149aa5852b36572514d20feeadd3c6b1efe38d0"}, + {file = "kiwisolver-1.4.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:91eb4916271655dfe3a952249cb37a5c00b6ba68b4417ee15af9ba549b5ba61d"}, + {file = "kiwisolver-1.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fa4d97d7d2b2c082e67907c0b8d9f31b85aa5d3ba0d33096b7116f03f8061261"}, + {file = "kiwisolver-1.4.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:71469b5845b9876b8d3d252e201bef6f47bf7456804d2fbe9a1d6e19e78a1e65"}, + {file = "kiwisolver-1.4.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8ff3033e43e7ca1389ee59fb7ecb8303abb8713c008a1da49b00869e92e3dd7c"}, + {file = "kiwisolver-1.4.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:89b57c2984f4464840e4b768affeff6b6809c6150d1166938ade3e22fbe22db8"}, + {file = "kiwisolver-1.4.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffbdb9a96c536f0405895b5e21ee39ec579cb0ed97bdbd169ae2b55f41d73219"}, + {file = "kiwisolver-1.4.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8a830a03970c462d1a2311c90e05679da56d3bd8e78a4ba9985cb78ef7836c9f"}, + {file = "kiwisolver-1.4.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f74f2a13af201559e3d32b9ddfc303c94ae63d63d7f4326d06ce6fe67e7a8255"}, + {file = "kiwisolver-1.4.2-cp39-cp39-win32.whl", hash = "sha256:e677cc3626287f343de751e11b1e8a5b915a6ac897e8aecdbc996cd34de753a0"}, + {file = "kiwisolver-1.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:b3e251e5c38ac623c5d786adb21477f018712f8c6fa54781bd38aa1c60b60fc2"}, + {file = "kiwisolver-1.4.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0c380bb5ae20d829c1a5473cfcae64267b73aaa4060adc091f6df1743784aae0"}, + {file = "kiwisolver-1.4.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:484f2a5f0307bc944bc79db235f41048bae4106ffa764168a068d88b644b305d"}, + {file = "kiwisolver-1.4.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e8afdf533b613122e4bbaf3c1e42c2a5e9e2d1dd3a0a017749a7658757cb377"}, + {file = "kiwisolver-1.4.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:42f6ef9b640deb6f7d438e0a371aedd8bef6ddfde30683491b2e6f568b4e884e"}, + {file = "kiwisolver-1.4.2.tar.gz", hash = "sha256:7f606d91b8a8816be476513a77fd30abe66227039bd6f8b406c348cb0247dcc9"}, ] lightgbm = [ {file = "lightgbm-3.3.2-py3-none-macosx_10_14_x86_64.macosx_10_15_x86_64.macosx_11_0_x86_64.whl", hash = "sha256:2e94bd1b3ab29d173102c9c1d80db2e27ad7e43b8ff5a74c5cb7984b37d19f45"}, @@ -3052,75 +3112,46 @@ llvmlite = [ {file = "llvmlite-0.38.0.tar.gz", hash = "sha256:a99d166ccf3b116f3b9ed23b9b70ba2415640a9c978f3aaa13fad49c58f4965c"}, ] 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-musllinux_1_1_aarch64.whl", hash = "sha256:4dc8f9fb58f7364b63fd9f85013b780ef83c11857ae79f2feda41e270468dd9b"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:20dca64a3ef2d6e4d5d615a3fd418ad3bde77a47ec8a23d984a12b5b4c74491a"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:cdfba22ea2f0029c9261a4bd07e830a8da012291fbe44dc794e488b6c9bb353a"}, - {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-musllinux_1_1_aarch64.whl", hash = "sha256:deb993cacb280823246a026e3b2d81c493c53de6acfd5e6bfe31ab3402bb37dd"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:63f3268ba69ace99cab4e3e3b5840b03340efed0948ab8f78d2fd87ee5442a4f"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:8d206346619592c6200148b01a2142798c989edcb9c896f9ac9722a99d4e77e6"}, - {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-musllinux_1_1_aarch64.whl", hash = "sha256:d6c7ebd4e944c85e2c3421e612a7057a2f48d478d79e61800d81468a8d842207"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f0567c4dc99f264f49fe27da5f735f414c4e7e7dd850cfd8e69f0862d7c74ea9"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:89c687013cb1cd489a0f0ac24febe8c7a666e6e221b783e53ac50ebf68e45d86"}, - {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-musllinux_1_1_aarch64.whl", hash = "sha256:aca6377c0cb8a8253e493c6b451565ac77e98c2951c45f913e0b52facdcff83f"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:04635854b943835a6ea959e948d19dcd311762c5c0c6e1f0e16ee57022669194"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6300b8454aa6930a24b9618fbb54b5a68135092bc666f7b06901f897fa5c2fee"}, - {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-musllinux_1_1_aarch64.whl", hash = "sha256:4296f2b1ce8c86a6aea78613c34bb1a672ea0e3de9c6ba08a960efe0b0a09047"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f02365d4e99430a12647f09b6cc8bab61a6564363f313126f775eb4f6ef798e"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5b6d930f030f8ed98e3e6c98ffa0652bdb82601e7a016ec2ab5d7ff23baa78d1"}, - {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.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, + {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, ] matplotlib = [ {file = "matplotlib-3.5.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:456cc8334f6d1124e8ff856b42d2cc1c84335375a16448189999496549f7182b"}, @@ -3216,16 +3247,16 @@ mypy-extensions = [ {file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"}, ] nbclient = [ - {file = "nbclient-0.5.11-py3-none-any.whl", hash = "sha256:03e857bea3012377289daa1e1c1651f4fc0295bcd109ccd36a337efcdbebaed7"}, - {file = "nbclient-0.5.11.tar.gz", hash = "sha256:751516992f34b58172bad54eef1e4bf7e4f4460d58e255ca1a4e5c9649476007"}, + {file = "nbclient-0.6.0-py3-none-any.whl", hash = "sha256:2eed35fc954716cdf0a01ea8cbdd9f9316761479008570059e2f5de29e139423"}, + {file = "nbclient-0.6.0.tar.gz", hash = "sha256:3f89a403c6badf24d2855a455b69a80985b3b27e04111243fdb6a88a28d27031"}, ] nbconvert = [ - {file = "nbconvert-6.4.2-py3-none-any.whl", hash = "sha256:7b006ae9979af56200e7fa3db39d9d12c99e811e8843b05dbe518e5b754bcb2e"}, - {file = "nbconvert-6.4.2.tar.gz", hash = "sha256:eb2803db18f6facce6bf3b01b684fe47907994bd156d15eaccdf011e3d7f8164"}, + {file = "nbconvert-6.5.0-py3-none-any.whl", hash = "sha256:c56dd0b8978a1811a5654f74c727ff16ca87dd5a43abd435a1c49b840fcd8360"}, + {file = "nbconvert-6.5.0.tar.gz", hash = "sha256:223e46e27abe8596b8aed54301fadbba433b7ffea8196a68fd7b1ff509eee99d"}, ] nbformat = [ - {file = "nbformat-5.1.3-py3-none-any.whl", hash = "sha256:eb8447edd7127d043361bc17f2f5a807626bc8e878c7709a1c647abda28a9171"}, - {file = "nbformat-5.1.3.tar.gz", hash = "sha256:b516788ad70771c6250977c1374fcca6edebe6126fd2adb5a69aa5c2356fd1c8"}, + {file = "nbformat-5.3.0-py3-none-any.whl", hash = "sha256:38856d97de49e8292e2d5d8f595e9d26f02abfd87e075d450af4511870b40538"}, + {file = "nbformat-5.3.0.tar.gz", hash = "sha256:fcc5ab8cb74e20b19570b5be809e2dba9b82836fd2761a89066ad43394ba29f5"}, ] nbsphinx = [ {file = "nbsphinx-0.8.8-py3-none-any.whl", hash = "sha256:c6c3875f8735b9ea57d65f81a7e240542daa613cad10661c54e0adee4e77938c"}, @@ -3235,12 +3266,12 @@ neptune-client = [ {file = "neptune-client-0.4.133.tar.gz", hash = "sha256:a44e9925141b5a8a5088b7c07033535a961cb6b62ff6c5174f8c0a5042f5d8db"}, ] nest-asyncio = [ - {file = "nest_asyncio-1.5.4-py3-none-any.whl", hash = "sha256:3fdd0d6061a2bb16f21fe8a9c6a7945be83521d81a0d15cff52e9edee50101d6"}, - {file = "nest_asyncio-1.5.4.tar.gz", hash = "sha256:f969f6013a16fadb4adcf09d11a68a4f617c6049d7af7ac2c676110169a63abd"}, + {file = "nest_asyncio-1.5.5-py3-none-any.whl", hash = "sha256:b98e3ec1b246135e4642eceffa5a6c23a3ab12c82ff816a92c612d68205813b2"}, + {file = "nest_asyncio-1.5.5.tar.gz", hash = "sha256:e442291cd942698be619823a17a86a5759eabe1f8613084790de189fe9e16d65"}, ] notebook = [ - {file = "notebook-6.4.8-py3-none-any.whl", hash = "sha256:3e702fcc54b8ae597533c3864793b7a1e971dec9e112f67235828d8a798fd654"}, - {file = "notebook-6.4.8.tar.gz", hash = "sha256:1e985c9dc6f678bdfffb9dc657306b5469bfa62d73e03f74e8defbf76d284312"}, + {file = "notebook-6.4.11-py3-none-any.whl", hash = "sha256:b4a6baf2eba21ce67a0ca11a793d1781b06b8078f34d06c710742e55f3eee505"}, + {file = "notebook-6.4.11.tar.gz", hash = "sha256:709b1856a564fe53054796c80e17a67262071c86bfbdfa6b96aaa346113c555a"}, ] numba = [ {file = "numba-0.55.1-1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:be56fb78303973e6c19c7c2759996a5863bac69ca87570543d9f18f2f287a441"}, @@ -3270,84 +3301,85 @@ numba = [ {file = "numba-0.55.1.tar.gz", hash = "sha256:03e9069a2666d1c84f93b00dbd716fb8fedde8bb2c6efafa2f04842a46442ea3"}, ] numpy = [ - {file = "numpy-1.21.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:301e408a052fdcda5cdcf03021ebafc3c6ea093021bf9d1aa47c54d48bdad166"}, - {file = "numpy-1.21.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a7e8f6216f180f3fd4efb73de5d1eaefb5f5a1ee5b645c67333033e39440e63a"}, - {file = "numpy-1.21.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fc7a7d7b0ed72589fd8b8486b9b42a564f10b8762be8bd4d9df94b807af4a089"}, - {file = "numpy-1.21.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58ca1d7c8aef6e996112d0ce873ac9dfa1eaf4a1196b4ff7ff73880a09923ba7"}, - {file = "numpy-1.21.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc4b2fb01f1b4ddbe2453468ea0719f4dbb1f5caa712c8b21bb3dd1480cd30d9"}, - {file = "numpy-1.21.5-cp310-cp310-win_amd64.whl", hash = "sha256:cc1b30205d138d1005adb52087ff45708febbef0e420386f58664f984ef56954"}, - {file = "numpy-1.21.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:08de8472d9f7571f9d51b27b75e827f5296295fa78817032e84464be8bb905bc"}, - {file = "numpy-1.21.5-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:4fe6a006557b87b352c04596a6e3f12a57d6e5f401d804947bd3188e6b0e0e76"}, - {file = "numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3d893b0871322eaa2f8c7072cdb552d8e2b27645b7875a70833c31e9274d4611"}, - {file = "numpy-1.21.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:341dddcfe3b7b6427a28a27baa59af5ad51baa59bfec3264f1ab287aa3b30b13"}, - {file = "numpy-1.21.5-cp37-cp37m-win32.whl", hash = "sha256:ca9c23848292c6fe0a19d212790e62f398fd9609aaa838859be8459bfbe558aa"}, - {file = "numpy-1.21.5-cp37-cp37m-win_amd64.whl", hash = "sha256:025b497014bc33fc23897859350f284323f32a2fff7654697f5a5fc2a19e9939"}, - {file = "numpy-1.21.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3a5098df115340fb17fc93867317a947e1dcd978c3888c5ddb118366095851f8"}, - {file = "numpy-1.21.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:311283acf880cfcc20369201bd75da907909afc4666966c7895cbed6f9d2c640"}, - {file = "numpy-1.21.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b545ebadaa2b878c8630e5bcdb97fc4096e779f335fc0f943547c1c91540c815"}, - {file = "numpy-1.21.5-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c5562bcc1a9b61960fc8950ade44d00e3de28f891af0acc96307c73613d18f6e"}, - {file = "numpy-1.21.5-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:eed2afaa97ec33b4411995be12f8bdb95c87984eaa28d76cf628970c8a2d689a"}, - {file = "numpy-1.21.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:61bada43d494515d5b122f4532af226fdb5ee08fe5b5918b111279843dc6836a"}, - {file = "numpy-1.21.5-cp38-cp38-win32.whl", hash = "sha256:7b9d6b14fc9a4864b08d1ba57d732b248f0e482c7b2ff55c313137e3ed4d8449"}, - {file = "numpy-1.21.5-cp38-cp38-win_amd64.whl", hash = "sha256:dbce7adeb66b895c6aaa1fad796aaefc299ced597f6fbd9ceddb0dd735245354"}, - {file = "numpy-1.21.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:507c05c7a37b3683eb08a3ff993bd1ee1e6c752f77c2f275260533b265ecdb6c"}, - {file = "numpy-1.21.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:00c9fa73a6989895b8815d98300a20ac993c49ac36c8277e8ffeaa3631c0dbbb"}, - {file = "numpy-1.21.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:69a5a8d71c308d7ef33ef72371c2388a90e3495dbb7993430e674006f94797d5"}, - {file = "numpy-1.21.5-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2d8adfca843bc46ac199a4645233f13abf2011a0b2f4affc5c37cd552626f27b"}, - {file = "numpy-1.21.5-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c293d3c0321996cd8ffe84215ffe5d269fd9d1d12c6f4ffe2b597a7c30d3e593"}, - {file = "numpy-1.21.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c978544be9e04ed12016dd295a74283773149b48f507d69b36f91aa90a643e5"}, - {file = "numpy-1.21.5-cp39-cp39-win32.whl", hash = "sha256:2a9add27d7fc0fdb572abc3b2486eb3b1395da71e0254c5552b2aad2a18b5441"}, - {file = "numpy-1.21.5-cp39-cp39-win_amd64.whl", hash = "sha256:1964db2d4a00348b7a60ee9d013c8cb0c566644a589eaa80995126eac3b99ced"}, - {file = "numpy-1.21.5-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a7c4b701ca418cd39e28ec3b496e6388fe06de83f5f0cb74794fa31cfa384c02"}, - {file = "numpy-1.21.5.zip", hash = "sha256:6a5928bc6241264dce5ed509e66f33676fc97f464e7a919edc672fb5532221ee"}, + {file = "numpy-1.21.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8737609c3bbdd48e380d463134a35ffad3b22dc56295eff6f79fd85bd0eeeb25"}, + {file = "numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:fdffbfb6832cd0b300995a2b08b8f6fa9f6e856d562800fea9182316d99c4e8e"}, + {file = "numpy-1.21.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3820724272f9913b597ccd13a467cc492a0da6b05df26ea09e78b171a0bb9da6"}, + {file = "numpy-1.21.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f17e562de9edf691a42ddb1eb4a5541c20dd3f9e65b09ded2beb0799c0cf29bb"}, + {file = "numpy-1.21.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f30427731561ce75d7048ac254dbe47a2ba576229250fb60f0fb74db96501a1"}, + {file = "numpy-1.21.6-cp310-cp310-win32.whl", hash = "sha256:d4bf4d43077db55589ffc9009c0ba0a94fa4908b9586d6ccce2e0b164c86303c"}, + {file = "numpy-1.21.6-cp310-cp310-win_amd64.whl", hash = "sha256:d136337ae3cc69aa5e447e78d8e1514be8c3ec9b54264e680cf0b4bd9011574f"}, + {file = "numpy-1.21.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6aaf96c7f8cebc220cdfc03f1d5a31952f027dda050e5a703a0d1c396075e3e7"}, + {file = "numpy-1.21.6-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:67c261d6c0a9981820c3a149d255a76918278a6b03b6a036800359aba1256d46"}, + {file = "numpy-1.21.6-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a6be4cb0ef3b8c9250c19cc122267263093eee7edd4e3fa75395dfda8c17a8e2"}, + {file = "numpy-1.21.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c4068a8c44014b2d55f3c3f574c376b2494ca9cc73d2f1bd692382b6dffe3db"}, + {file = "numpy-1.21.6-cp37-cp37m-win32.whl", hash = "sha256:7c7e5fa88d9ff656e067876e4736379cc962d185d5cd808014a8a928d529ef4e"}, + {file = "numpy-1.21.6-cp37-cp37m-win_amd64.whl", hash = "sha256:bcb238c9c96c00d3085b264e5c1a1207672577b93fa666c3b14a45240b14123a"}, + {file = "numpy-1.21.6-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:82691fda7c3f77c90e62da69ae60b5ac08e87e775b09813559f8901a88266552"}, + {file = "numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:643843bcc1c50526b3a71cd2ee561cf0d8773f062c8cbaf9ffac9fdf573f83ab"}, + {file = "numpy-1.21.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:357768c2e4451ac241465157a3e929b265dfac85d9214074985b1786244f2ef3"}, + {file = "numpy-1.21.6-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9f411b2c3f3d76bba0865b35a425157c5dcf54937f82bbeb3d3c180789dd66a6"}, + {file = "numpy-1.21.6-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4aa48afdce4660b0076a00d80afa54e8a97cd49f457d68a4342d188a09451c1a"}, + {file = "numpy-1.21.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6a96eef20f639e6a97d23e57dd0c1b1069a7b4fd7027482a4c5c451cd7732f4"}, + {file = "numpy-1.21.6-cp38-cp38-win32.whl", hash = "sha256:5c3c8def4230e1b959671eb959083661b4a0d2e9af93ee339c7dada6759a9470"}, + {file = "numpy-1.21.6-cp38-cp38-win_amd64.whl", hash = "sha256:bf2ec4b75d0e9356edea834d1de42b31fe11f726a81dfb2c2112bc1eaa508fcf"}, + {file = "numpy-1.21.6-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4391bd07606be175aafd267ef9bea87cf1b8210c787666ce82073b05f202add1"}, + {file = "numpy-1.21.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:67f21981ba2f9d7ba9ade60c9e8cbaa8cf8e9ae51673934480e45cf55e953673"}, + {file = "numpy-1.21.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ee5ec40fdd06d62fe5d4084bef4fd50fd4bb6bfd2bf519365f569dc470163ab0"}, + {file = "numpy-1.21.6-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1dbe1c91269f880e364526649a52eff93ac30035507ae980d2fed33aaee633ac"}, + {file = "numpy-1.21.6-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:d9caa9d5e682102453d96a0ee10c7241b72859b01a941a397fd965f23b3e016b"}, + {file = "numpy-1.21.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58459d3bad03343ac4b1b42ed14d571b8743dc80ccbf27444f266729df1d6f5b"}, + {file = "numpy-1.21.6-cp39-cp39-win32.whl", hash = "sha256:7f5ae4f304257569ef3b948810816bc87c9146e8c446053539947eedeaa32786"}, + {file = "numpy-1.21.6-cp39-cp39-win_amd64.whl", hash = "sha256:e31f0bb5928b793169b87e3d1e070f2342b22d5245c755e2b81caa29756246c3"}, + {file = "numpy-1.21.6-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dd1c8f6bd65d07d3810b90d02eba7997e32abbdf1277a481d698969e921a3be0"}, + {file = "numpy-1.21.6.zip", hash = "sha256:ecb55251139706669fdec2ff073c98ef8e9a84473e51e716211b41aa0f18e656"}, ] oauthlib = [ {file = "oauthlib-3.2.0-py3-none-any.whl", hash = "sha256:6db33440354787f9b7f3a6dbd4febf5d0f93758354060e802f6c06cb493022fe"}, {file = "oauthlib-3.2.0.tar.gz", hash = "sha256:23a8208d75b902797ea29fd31fa80a15ed9dc2c6c16fe73f5d346f83f6fa27a2"}, ] opencv-python = [ - {file = "opencv-python-4.5.5.62.tar.gz", hash = "sha256:3efe232b32d5e1327e7c82bc6d61230737821c5190ce5c783e64a1bc8d514e18"}, - {file = "opencv_python-4.5.5.62-cp36-abi3-macosx_10_15_x86_64.whl", hash = "sha256:2601388def0d6b957cc30dd88f8ff74a5651ae6940dd9e488241608cfa2b15c7"}, - {file = "opencv_python-4.5.5.62-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71fdc49df412b102d97f14927321309043c79c4a3582cce1dc803370ff9c39c0"}, - {file = "opencv_python-4.5.5.62-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:130cc75d56b29aa3c5de8b6ac438242dd2574ba6eaa8bccdffdcfd6b78632f7f"}, - {file = "opencv_python-4.5.5.62-cp36-abi3-win32.whl", hash = "sha256:3a75c7ad45b032eea0c72e389aac6dd435f5c87e87f60237095c083400bc23aa"}, - {file = "opencv_python-4.5.5.62-cp36-abi3-win_amd64.whl", hash = "sha256:c463d2276d8662b972d20ca9644702188507de200ca5405b89e1fe71c5c99989"}, - {file = "opencv_python-4.5.5.62-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:ac92e743e22681f30001942d78512c1e39bce53dbffc504e5645fdc45c0f2c47"}, + {file = "opencv-python-4.5.5.64.tar.gz", hash = "sha256:f65de0446a330c3b773cd04ba10345d8ce1b15dcac3f49770204e37602d0b3f7"}, + {file = "opencv_python-4.5.5.64-cp36-abi3-macosx_10_15_x86_64.whl", hash = "sha256:a512a0c59b6fec0fac3844b2f47d6ecb1a9d18d235e6c5491ce8dbbe0663eae8"}, + {file = "opencv_python-4.5.5.64-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca6138b6903910e384067d001763d40f97656875487381aed32993b076f44375"}, + {file = "opencv_python-4.5.5.64-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b293ced62f4360d9f11cf72ae7e9df95320ff7bf5b834d87546f844e838c0c35"}, + {file = "opencv_python-4.5.5.64-cp36-abi3-win32.whl", hash = "sha256:6247e584813c00c3b9ed69a795da40d2c153dc923d0182e957e1c2f00a554ac2"}, + {file = "opencv_python-4.5.5.64-cp36-abi3-win_amd64.whl", hash = "sha256:408d5332550287aa797fd06bef47b2dfed163c6787668cc82ef9123a9484b56a"}, + {file = "opencv_python-4.5.5.64-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:7787bb017ae93d5f9bb1b817ac8e13e45dd193743cb648498fcab21d00cf20a3"}, ] packaging = [ {file = "packaging-21.3-py3-none-any.whl", hash = "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522"}, {file = "packaging-21.3.tar.gz", hash = "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb"}, ] pandas = [ - {file = "pandas-1.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3dfb32ed50122fe8c5e7f2b8d97387edd742cc78f9ec36f007ee126cd3720907"}, - {file = "pandas-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0259cd11e7e6125aaea3af823b80444f3adad6149ff4c97fef760093598b3e34"}, - {file = "pandas-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:96e9ece5759f9b47ae43794b6359bbc54805d76e573b161ae770c1ea59393106"}, - {file = "pandas-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:508c99debccd15790d526ce6b1624b97a5e1e4ca5b871319fb0ebfd46b8f4dad"}, - {file = "pandas-1.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6a7bbbb7950063bfc942f8794bc3e31697c020a14f1cd8905fc1d28ec674a01"}, - {file = "pandas-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:c614001129b2a5add5e3677c3a213a9e6fd376204cb8d17c04e84ff7dfc02a73"}, - {file = "pandas-1.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:4e1176f45981c8ccc8161bc036916c004ca51037a7ed73f2d2a9857e6dbe654f"}, - {file = "pandas-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bbb15ad79050e8b8d39ec40dd96a30cd09b886a2ae8848d0df1abba4d5502a67"}, - {file = "pandas-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6d6ad1da00c7cc7d8dd1559a6ba59ba3973be6b15722d49738b2be0977eb8a0c"}, - {file = "pandas-1.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:358b0bc98a5ff067132d23bf7a2242ee95db9ea5b7bbc401cf79205f11502fd3"}, - {file = "pandas-1.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6105af6533f8b63a43ea9f08a2ede04e8f43e49daef0209ab0d30352bcf08bee"}, - {file = "pandas-1.4.1-cp38-cp38-win32.whl", hash = "sha256:04dd15d9db538470900c851498e532ef28d4e56bfe72c9523acb32042de43dfb"}, - {file = "pandas-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:1b384516dbb4e6aae30e3464c2e77c563da5980440fbdfbd0968e3942f8f9d70"}, - {file = "pandas-1.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f02e85e6d832be37d7f16cf6ac8bb26b519ace3e5f3235564a91c7f658ab2a43"}, - {file = "pandas-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0b1a13f647e4209ed7dbb5da3497891d0045da9785327530ab696417ef478f84"}, - {file = "pandas-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:19f7c632436b1b4f84615c3b127bbd7bc603db95e3d4332ed259dc815c9aaa26"}, - {file = "pandas-1.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ea47ba1d6f359680130bd29af497333be6110de8f4c35b9211eec5a5a9630fa"}, - {file = "pandas-1.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e5a7a1e0ecaac652326af627a3eca84886da9e667d68286866d4e33f6547caf"}, - {file = "pandas-1.4.1-cp39-cp39-win32.whl", hash = "sha256:1d85d5f6be66dfd6d1d8d13b9535e342a2214260f1852654b19fa4d7b8d1218b"}, - {file = "pandas-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:3129a35d9dad1d80c234dd78f8f03141b914395d23f97cf92a366dcd19f8f8bf"}, - {file = "pandas-1.4.1.tar.gz", hash = "sha256:8db93ec98ac7cb5f8ac1420c10f5e3c43533153f253fe7fb6d891cf5aa2b80d2"}, + {file = "pandas-1.4.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:be67c782c4f1b1f24c2f16a157e12c2693fd510f8df18e3287c77f33d124ed07"}, + {file = "pandas-1.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5a206afa84ed20e07603f50d22b5f0db3fb556486d8c2462d8bc364831a4b417"}, + {file = "pandas-1.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0010771bd9223f7afe5f051eb47c4a49534345dfa144f2f5470b27189a4dd3b5"}, + {file = "pandas-1.4.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3228198333dd13c90b6434ddf61aa6d57deaca98cf7b654f4ad68a2db84f8cfe"}, + {file = "pandas-1.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b79af3a69e5175c6fa7b4e046b21a646c8b74e92c6581a9d825687d92071b51"}, + {file = "pandas-1.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:5586cc95692564b441f4747c47c8a9746792e87b40a4680a2feb7794defb1ce3"}, + {file = "pandas-1.4.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:061609334a8182ab500a90fe66d46f6f387de62d3a9cb9aa7e62e3146c712167"}, + {file = "pandas-1.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b8134651258bce418cb79c71adeff0a44090c98d955f6953168ba16cc285d9f7"}, + {file = "pandas-1.4.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:df82739e00bb6daf4bba4479a40f38c718b598a84654cbd8bb498fd6b0aa8c16"}, + {file = "pandas-1.4.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:385c52e85aaa8ea6a4c600a9b2821181a51f8be0aee3af6f2dcb41dafc4fc1d0"}, + {file = "pandas-1.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:295872bf1a09758aba199992c3ecde455f01caf32266d50abc1a073e828a7b9d"}, + {file = "pandas-1.4.2-cp38-cp38-win32.whl", hash = "sha256:95c1e422ced0199cf4a34385ff124b69412c4bc912011ce895582bee620dfcaa"}, + {file = "pandas-1.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:5c54ea4ef3823108cd4ec7fb27ccba4c3a775e0f83e39c5e17f5094cb17748bc"}, + {file = "pandas-1.4.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c072c7f06b9242c855ed8021ff970c0e8f8b10b35e2640c657d2a541c5950f59"}, + {file = "pandas-1.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f549097993744ff8c41b5e8f2f0d3cbfaabe89b4ae32c8c08ead6cc535b80139"}, + {file = "pandas-1.4.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ff08a14ef21d94cdf18eef7c569d66f2e24e0bc89350bcd7d243dd804e3b5eb2"}, + {file = "pandas-1.4.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c5bf555b6b0075294b73965adaafb39cf71c312e38c5935c93d78f41c19828a"}, + {file = "pandas-1.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51649ef604a945f781105a6d2ecf88db7da0f4868ac5d45c51cb66081c4d9c73"}, + {file = "pandas-1.4.2-cp39-cp39-win32.whl", hash = "sha256:d0d4f13e4be7ce89d7057a786023c461dd9370040bdb5efa0a7fe76b556867a0"}, + {file = "pandas-1.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:09d8be7dd9e1c4c98224c4dfe8abd60d145d934e9fc1f5f411266308ae683e6a"}, + {file = "pandas-1.4.2.tar.gz", hash = "sha256:92bc1fc585f1463ca827b45535957815b7deb218c549b7c18402c322c7549a12"}, ] pandocfilters = [ {file = "pandocfilters-1.5.0-py2.py3-none-any.whl", hash = "sha256:33aae3f25fd1a026079f5d27bdd52496f0e0803b3469282162bafdcbdf6ef14f"}, {file = "pandocfilters-1.5.0.tar.gz", hash = "sha256:0b679503337d233b4339a817bfc8c50064e2eff681314376a47cb582305a7a38"}, ] paramiko = [ - {file = "paramiko-2.9.2-py2.py3-none-any.whl", hash = "sha256:04097dbd96871691cdb34c13db1883066b8a13a0df2afd4cb0a92221f51c2603"}, - {file = "paramiko-2.9.2.tar.gz", hash = "sha256:944a9e5dbdd413ab6c7951ea46b0ab40713235a9c4c5ca81cfe45c6f14fa677b"}, + {file = "paramiko-2.10.3-py2.py3-none-any.whl", hash = "sha256:ac6593479f2b47a9422eca076b22cff9f795495e6733a64723efc75dd8c92101"}, + {file = "paramiko-2.10.3.tar.gz", hash = "sha256:ddb1977853aef82804b35d72a0e597b244fa326c404c350bd00c5b01dbfee71a"}, ] paramz = [ {file = "paramz-0.9.5.tar.gz", hash = "sha256:0917211c0f083f344e7f1bc997e0d713dbc147b6380bc19f606119394f820b9a"}, @@ -3369,81 +3401,116 @@ pickleshare = [ {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, ] pillow = [ - {file = "Pillow-9.0.1-1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a5d24e1d674dd9d72c66ad3ea9131322819ff86250b30dc5821cbafcfa0b96b4"}, - {file = "Pillow-9.0.1-1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2632d0f846b7c7600edf53c48f8f9f1e13e62f66a6dbc15191029d950bfed976"}, - {file = "Pillow-9.0.1-1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b9618823bd237c0d2575283f2939655f54d51b4527ec3972907a927acbcc5bfc"}, - {file = "Pillow-9.0.1-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:9bfdb82cdfeccec50aad441afc332faf8606dfa5e8efd18a6692b5d6e79f00fd"}, - {file = "Pillow-9.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5100b45a4638e3c00e4d2320d3193bdabb2d75e79793af7c3eb139e4f569f16f"}, - {file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:528a2a692c65dd5cafc130de286030af251d2ee0483a5bf50c9348aefe834e8a"}, - {file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0f29d831e2151e0b7b39981756d201f7108d3d215896212ffe2e992d06bfe049"}, - {file = "Pillow-9.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:855c583f268edde09474b081e3ddcd5cf3b20c12f26e0d434e1386cc5d318e7a"}, - {file = "Pillow-9.0.1-cp310-cp310-win32.whl", hash = "sha256:d9d7942b624b04b895cb95af03a23407f17646815495ce4547f0e60e0b06f58e"}, - {file = "Pillow-9.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:81c4b81611e3a3cb30e59b0cf05b888c675f97e3adb2c8672c3154047980726b"}, - {file = "Pillow-9.0.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:413ce0bbf9fc6278b2d63309dfeefe452835e1c78398efb431bab0672fe9274e"}, - {file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80fe64a6deb6fcfdf7b8386f2cf216d329be6f2781f7d90304351811fb591360"}, - {file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cef9c85ccbe9bee00909758936ea841ef12035296c748aaceee535969e27d31b"}, - {file = "Pillow-9.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d19397351f73a88904ad1aee421e800fe4bbcd1aeee6435fb62d0a05ccd1030"}, - {file = "Pillow-9.0.1-cp37-cp37m-win32.whl", hash = "sha256:d21237d0cd37acded35154e29aec853e945950321dd2ffd1a7d86fe686814669"}, - {file = "Pillow-9.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:ede5af4a2702444a832a800b8eb7f0a7a1c0eed55b644642e049c98d589e5092"}, - {file = "Pillow-9.0.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:b5b3f092fe345c03bca1e0b687dfbb39364b21ebb8ba90e3fa707374b7915204"}, - {file = "Pillow-9.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:335ace1a22325395c4ea88e00ba3dc89ca029bd66bd5a3c382d53e44f0ccd77e"}, - {file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db6d9fac65bd08cea7f3540b899977c6dee9edad959fa4eaf305940d9cbd861c"}, - {file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f154d173286a5d1863637a7dcd8c3437bb557520b01bddb0be0258dcb72696b5"}, - {file = "Pillow-9.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14d4b1341ac07ae07eb2cc682f459bec932a380c3b122f5540432d8977e64eae"}, - {file = "Pillow-9.0.1-cp38-cp38-win32.whl", hash = "sha256:effb7749713d5317478bb3acb3f81d9d7c7f86726d41c1facca068a04cf5bb4c"}, - {file = "Pillow-9.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:7f7609a718b177bf171ac93cea9fd2ddc0e03e84d8fa4e887bdfc39671d46b00"}, - {file = "Pillow-9.0.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:80ca33961ced9c63358056bd08403ff866512038883e74f3a4bf88ad3eb66838"}, - {file = "Pillow-9.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1c3c33ac69cf059bbb9d1a71eeaba76781b450bc307e2291f8a4764d779a6b28"}, - {file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12875d118f21cf35604176872447cdb57b07126750a33748bac15e77f90f1f9c"}, - {file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:514ceac913076feefbeaf89771fd6febde78b0c4c1b23aaeab082c41c694e81b"}, - {file = "Pillow-9.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3c5c79ab7dfce6d88f1ba639b77e77a17ea33a01b07b99840d6ed08031cb2a7"}, - {file = "Pillow-9.0.1-cp39-cp39-win32.whl", hash = "sha256:718856856ba31f14f13ba885ff13874be7fefc53984d2832458f12c38205f7f7"}, - {file = "Pillow-9.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:f25ed6e28ddf50de7e7ea99d7a976d6a9c415f03adcaac9c41ff6ff41b6d86ac"}, - {file = "Pillow-9.0.1-pp37-pypy37_pp73-macosx_10_10_x86_64.whl", hash = "sha256:011233e0c42a4a7836498e98c1acf5e744c96a67dd5032a6f666cc1fb97eab97"}, - {file = "Pillow-9.0.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:253e8a302a96df6927310a9d44e6103055e8fb96a6822f8b7f514bb7ef77de56"}, - {file = "Pillow-9.0.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6295f6763749b89c994fcb6d8a7f7ce03c3992e695f89f00b741b4580b199b7e"}, - {file = "Pillow-9.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:a9f44cd7e162ac6191491d7249cceb02b8116b0f7e847ee33f739d7cb1ea1f70"}, - {file = "Pillow-9.0.1.tar.gz", hash = "sha256:6c8bc8238a7dfdaf7a75f5ec5a663f4173f8c367e5a39f87e720495e1eed75fa"}, + {file = "Pillow-9.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:af79d3fde1fc2e33561166d62e3b63f0cc3e47b5a3a2e5fea40d4917754734ea"}, + {file = "Pillow-9.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:55dd1cf09a1fd7c7b78425967aacae9b0d70125f7d3ab973fadc7b5abc3de652"}, + {file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:66822d01e82506a19407d1afc104c3fcea3b81d5eb11485e593ad6b8492f995a"}, + {file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5eaf3b42df2bcda61c53a742ee2c6e63f777d0e085bbc6b2ab7ed57deb13db7"}, + {file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01ce45deec9df310cbbee11104bae1a2a43308dd9c317f99235b6d3080ddd66e"}, + {file = "Pillow-9.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:aea7ce61328e15943d7b9eaca87e81f7c62ff90f669116f857262e9da4057ba3"}, + {file = "Pillow-9.1.0-cp310-cp310-win32.whl", hash = "sha256:7a053bd4d65a3294b153bdd7724dce864a1d548416a5ef61f6d03bf149205160"}, + {file = "Pillow-9.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:97bda660702a856c2c9e12ec26fc6d187631ddfd896ff685814ab21ef0597033"}, + {file = "Pillow-9.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:21dee8466b42912335151d24c1665fcf44dc2ee47e021d233a40c3ca5adae59c"}, + {file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b6d4050b208c8ff886fd3db6690bf04f9a48749d78b41b7a5bf24c236ab0165"}, + {file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5cfca31ab4c13552a0f354c87fbd7f162a4fafd25e6b521bba93a57fe6a3700a"}, + {file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed742214068efa95e9844c2d9129e209ed63f61baa4d54dbf4cf8b5e2d30ccf2"}, + {file = "Pillow-9.1.0-cp37-cp37m-win32.whl", hash = "sha256:c9efef876c21788366ea1f50ecb39d5d6f65febe25ad1d4c0b8dff98843ac244"}, + {file = "Pillow-9.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:de344bcf6e2463bb25179d74d6e7989e375f906bcec8cb86edb8b12acbc7dfef"}, + {file = "Pillow-9.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:17869489de2fce6c36690a0c721bd3db176194af5f39249c1ac56d0bb0fcc512"}, + {file = "Pillow-9.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:25023a6209a4d7c42154073144608c9a71d3512b648a2f5d4465182cb93d3477"}, + {file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8782189c796eff29dbb37dd87afa4ad4d40fc90b2742704f94812851b725964b"}, + {file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:463acf531f5d0925ca55904fa668bb3461c3ef6bc779e1d6d8a488092bdee378"}, + {file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f42364485bfdab19c1373b5cd62f7c5ab7cc052e19644862ec8f15bb8af289e"}, + {file = "Pillow-9.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3fddcdb619ba04491e8f771636583a7cc5a5051cd193ff1aa1ee8616d2a692c5"}, + {file = "Pillow-9.1.0-cp38-cp38-win32.whl", hash = "sha256:4fe29a070de394e449fd88ebe1624d1e2d7ddeed4c12e0b31624561b58948d9a"}, + {file = "Pillow-9.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:c24f718f9dd73bb2b31a6201e6db5ea4a61fdd1d1c200f43ee585fc6dcd21b34"}, + {file = "Pillow-9.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fb89397013cf302f282f0fc998bb7abf11d49dcff72c8ecb320f76ea6e2c5717"}, + {file = "Pillow-9.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c870193cce4b76713a2b29be5d8327c8ccbe0d4a49bc22968aa1e680930f5581"}, + {file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69e5ddc609230d4408277af135c5b5c8fe7a54b2bdb8ad7c5100b86b3aab04c6"}, + {file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:35be4a9f65441d9982240e6966c1eaa1c654c4e5e931eaf580130409e31804d4"}, + {file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82283af99c1c3a5ba1da44c67296d5aad19f11c535b551a5ae55328a317ce331"}, + {file = "Pillow-9.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a325ac71914c5c043fa50441b36606e64a10cd262de12f7a179620f579752ff8"}, + {file = "Pillow-9.1.0-cp39-cp39-win32.whl", hash = "sha256:a598d8830f6ef5501002ae85c7dbfcd9c27cc4efc02a1989369303ba85573e58"}, + {file = "Pillow-9.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0c51cb9edac8a5abd069fd0758ac0a8bfe52c261ee0e330f363548aca6893595"}, + {file = "Pillow-9.1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a336a4f74baf67e26f3acc4d61c913e378e931817cd1e2ef4dfb79d3e051b481"}, + {file = "Pillow-9.1.0-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb1b89b11256b5b6cad5e7593f9061ac4624f7651f7a8eb4dfa37caa1dfaa4d0"}, + {file = "Pillow-9.1.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:255c9d69754a4c90b0ee484967fc8818c7ff8311c6dddcc43a4340e10cd1636a"}, + {file = "Pillow-9.1.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5a3ecc026ea0e14d0ad7cd990ea7f48bfcb3eb4271034657dc9d06933c6629a7"}, + {file = "Pillow-9.1.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5b0ff59785d93b3437c3703e3c64c178aabada51dea2a7f2c5eccf1bcf565a3"}, + {file = "Pillow-9.1.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7110ec1701b0bf8df569a7592a196c9d07c764a0a74f65471ea56816f10e2c8"}, + {file = "Pillow-9.1.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:8d79c6f468215d1a8415aa53d9868a6b40c4682165b8cb62a221b1baa47db458"}, + {file = "Pillow-9.1.0.tar.gz", hash = "sha256:f401ed2bbb155e1ade150ccc63db1a4f6c1909d3d378f7d1235a44e90d75fb97"}, ] pluggy = [ {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, ] prometheus-client = [ - {file = "prometheus_client-0.13.1-py3-none-any.whl", hash = "sha256:357a447fd2359b0a1d2e9b311a0c5778c330cfbe186d880ad5a6b39884652316"}, - {file = "prometheus_client-0.13.1.tar.gz", hash = "sha256:ada41b891b79fca5638bd5cfe149efa86512eaa55987893becd2c6d8d0a5dfc5"}, + {file = "prometheus_client-0.14.1-py3-none-any.whl", hash = "sha256:522fded625282822a89e2773452f42df14b5a8e84a86433e3f8a189c1d54dc01"}, + {file = "prometheus_client-0.14.1.tar.gz", hash = "sha256:5459c427624961076277fdc6dc50540e2bacb98eebde99886e59ec55ed92093a"}, ] prompt-toolkit = [ - {file = "prompt_toolkit-3.0.28-py3-none-any.whl", hash = "sha256:30129d870dcb0b3b6a53efdc9d0a83ea96162ffd28ffe077e94215b233dc670c"}, - {file = "prompt_toolkit-3.0.28.tar.gz", hash = "sha256:9f1cd16b1e86c2968f2519d7fb31dd9d669916f515612c269d14e9ed52b51650"}, + {file = "prompt_toolkit-3.0.29-py3-none-any.whl", hash = "sha256:62291dad495e665fca0bda814e342c69952086afb0f4094d0893d357e5c78752"}, + {file = "prompt_toolkit-3.0.29.tar.gz", hash = "sha256:bd640f60e8cecd74f0dc249713d433ace2ddc62b65ee07f96d358e0b152b6ea7"}, ] protobuf = [ - {file = "protobuf-3.19.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f51d5a9f137f7a2cec2d326a74b6e3fc79d635d69ffe1b036d39fc7d75430d37"}, - {file = "protobuf-3.19.4-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:09297b7972da685ce269ec52af761743714996b4381c085205914c41fcab59fb"}, - {file = "protobuf-3.19.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:072fbc78d705d3edc7ccac58a62c4c8e0cec856987da7df8aca86e647be4e35c"}, - {file = "protobuf-3.19.4-cp310-cp310-win32.whl", hash = "sha256:7bb03bc2873a2842e5ebb4801f5c7ff1bfbdf426f85d0172f7644fcda0671ae0"}, - {file = "protobuf-3.19.4-cp310-cp310-win_amd64.whl", hash = "sha256:f358aa33e03b7a84e0d91270a4d4d8f5df6921abe99a377828839e8ed0c04e07"}, - {file = "protobuf-3.19.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:1c91ef4110fdd2c590effb5dca8fdbdcb3bf563eece99287019c4204f53d81a4"}, - {file = "protobuf-3.19.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c438268eebb8cf039552897d78f402d734a404f1360592fef55297285f7f953f"}, - {file = "protobuf-3.19.4-cp36-cp36m-win32.whl", hash = "sha256:835a9c949dc193953c319603b2961c5c8f4327957fe23d914ca80d982665e8ee"}, - {file = "protobuf-3.19.4-cp36-cp36m-win_amd64.whl", hash = "sha256:4276cdec4447bd5015453e41bdc0c0c1234eda08420b7c9a18b8d647add51e4b"}, - {file = "protobuf-3.19.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6cbc312be5e71869d9d5ea25147cdf652a6781cf4d906497ca7690b7b9b5df13"}, - {file = "protobuf-3.19.4-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:54a1473077f3b616779ce31f477351a45b4fef8c9fd7892d6d87e287a38df368"}, - {file = "protobuf-3.19.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:435bb78b37fc386f9275a7035fe4fb1364484e38980d0dd91bc834a02c5ec909"}, - {file = "protobuf-3.19.4-cp37-cp37m-win32.whl", hash = "sha256:16f519de1313f1b7139ad70772e7db515b1420d208cb16c6d7858ea989fc64a9"}, - {file = "protobuf-3.19.4-cp37-cp37m-win_amd64.whl", hash = "sha256:cdc076c03381f5c1d9bb1abdcc5503d9ca8b53cf0a9d31a9f6754ec9e6c8af0f"}, - {file = "protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:69da7d39e39942bd52848438462674c463e23963a1fdaa84d88df7fbd7e749b2"}, - {file = "protobuf-3.19.4-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:48ed3877fa43e22bcacc852ca76d4775741f9709dd9575881a373bd3e85e54b2"}, - {file = "protobuf-3.19.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd95d1dfb9c4f4563e6093a9aa19d9c186bf98fa54da5252531cc0d3a07977e7"}, - {file = "protobuf-3.19.4-cp38-cp38-win32.whl", hash = "sha256:b38057450a0c566cbd04890a40edf916db890f2818e8682221611d78dc32ae26"}, - {file = "protobuf-3.19.4-cp38-cp38-win_amd64.whl", hash = "sha256:7ca7da9c339ca8890d66958f5462beabd611eca6c958691a8fe6eccbd1eb0c6e"}, - {file = "protobuf-3.19.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:36cecbabbda242915529b8ff364f2263cd4de7c46bbe361418b5ed859677ba58"}, - {file = "protobuf-3.19.4-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:c1068287025f8ea025103e37d62ffd63fec8e9e636246b89c341aeda8a67c934"}, - {file = "protobuf-3.19.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96bd766831596d6014ca88d86dc8fe0fb2e428c0b02432fd9db3943202bf8c5e"}, - {file = "protobuf-3.19.4-cp39-cp39-win32.whl", hash = "sha256:84123274d982b9e248a143dadd1b9815049f4477dc783bf84efe6250eb4b836a"}, - {file = "protobuf-3.19.4-cp39-cp39-win_amd64.whl", hash = "sha256:3112b58aac3bac9c8be2b60a9daf6b558ca3f7681c130dcdd788ade7c9ffbdca"}, - {file = "protobuf-3.19.4-py2.py3-none-any.whl", hash = "sha256:8961c3a78ebfcd000920c9060a262f082f29838682b1f7201889300c1fbe0616"}, - {file = "protobuf-3.19.4.tar.gz", hash = "sha256:9df0c10adf3e83015ced42a9a7bd64e13d06c4cf45c340d2c63020ea04499d0a"}, + {file = "protobuf-3.20.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3cc797c9d15d7689ed507b165cd05913acb992d78b379f6014e013f9ecb20996"}, + {file = "protobuf-3.20.1-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:ff8d8fa42675249bb456f5db06c00de6c2f4c27a065955917b28c4f15978b9c3"}, + {file = "protobuf-3.20.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cd68be2559e2a3b84f517fb029ee611546f7812b1fdd0aa2ecc9bc6ec0e4fdde"}, + {file = "protobuf-3.20.1-cp310-cp310-win32.whl", hash = "sha256:9016d01c91e8e625141d24ec1b20fed584703e527d28512aa8c8707f105a683c"}, + {file = "protobuf-3.20.1-cp310-cp310-win_amd64.whl", hash = "sha256:32ca378605b41fd180dfe4e14d3226386d8d1b002ab31c969c366549e66a2bb7"}, + {file = "protobuf-3.20.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:9be73ad47579abc26c12024239d3540e6b765182a91dbc88e23658ab71767153"}, + {file = "protobuf-3.20.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:097c5d8a9808302fb0da7e20edf0b8d4703274d140fd25c5edabddcde43e081f"}, + {file = "protobuf-3.20.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e250a42f15bf9d5b09fe1b293bdba2801cd520a9f5ea2d7fb7536d4441811d20"}, + {file = "protobuf-3.20.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:cdee09140e1cd184ba9324ec1df410e7147242b94b5f8b0c64fc89e38a8ba531"}, + {file = "protobuf-3.20.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:af0ebadc74e281a517141daad9d0f2c5d93ab78e9d455113719a45a49da9db4e"}, + {file = "protobuf-3.20.1-cp37-cp37m-win32.whl", hash = "sha256:755f3aee41354ae395e104d62119cb223339a8f3276a0cd009ffabfcdd46bb0c"}, + {file = "protobuf-3.20.1-cp37-cp37m-win_amd64.whl", hash = "sha256:62f1b5c4cd6c5402b4e2d63804ba49a327e0c386c99b1675c8a0fefda23b2067"}, + {file = "protobuf-3.20.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:06059eb6953ff01e56a25cd02cca1a9649a75a7e65397b5b9b4e929ed71d10cf"}, + {file = "protobuf-3.20.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:cb29edb9eab15742d791e1025dd7b6a8f6fcb53802ad2f6e3adcb102051063ab"}, + {file = "protobuf-3.20.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:69ccfdf3657ba59569c64295b7d51325f91af586f8d5793b734260dfe2e94e2c"}, + {file = "protobuf-3.20.1-cp38-cp38-win32.whl", hash = "sha256:dd5789b2948ca702c17027c84c2accb552fc30f4622a98ab5c51fcfe8c50d3e7"}, + {file = "protobuf-3.20.1-cp38-cp38-win_amd64.whl", hash = "sha256:77053d28427a29987ca9caf7b72ccafee011257561259faba8dd308fda9a8739"}, + {file = "protobuf-3.20.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6f50601512a3d23625d8a85b1638d914a0970f17920ff39cec63aaef80a93fb7"}, + {file = "protobuf-3.20.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:284f86a6207c897542d7e956eb243a36bb8f9564c1742b253462386e96c6b78f"}, + {file = "protobuf-3.20.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:7403941f6d0992d40161aa8bb23e12575637008a5a02283a930addc0508982f9"}, + {file = "protobuf-3.20.1-cp39-cp39-win32.whl", hash = "sha256:db977c4ca738dd9ce508557d4fce0f5aebd105e158c725beec86feb1f6bc20d8"}, + {file = "protobuf-3.20.1-cp39-cp39-win_amd64.whl", hash = "sha256:7e371f10abe57cee5021797126c93479f59fccc9693dafd6bd5633ab67808a91"}, + {file = "protobuf-3.20.1-py2.py3-none-any.whl", hash = "sha256:adfc6cf69c7f8c50fd24c793964eef18f0ac321315439d94945820612849c388"}, + {file = "protobuf-3.20.1.tar.gz", hash = "sha256:adc31566d027f45efe3f44eeb5b1f329da43891634d61c75a5944e9be6dd42c9"}, +] +psutil = [ + {file = "psutil-5.9.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:55ce319452e3d139e25d6c3f85a1acf12d1607ddedea5e35fb47a552c051161b"}, + {file = "psutil-5.9.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:7336292a13a80eb93c21f36bde4328aa748a04b68c13d01dfddd67fc13fd0618"}, + {file = "psutil-5.9.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:cb8d10461c1ceee0c25a64f2dd54872b70b89c26419e147a05a10b753ad36ec2"}, + {file = "psutil-5.9.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:7641300de73e4909e5d148e90cc3142fb890079e1525a840cf0dfd39195239fd"}, + {file = "psutil-5.9.0-cp27-none-win32.whl", hash = "sha256:ea42d747c5f71b5ccaa6897b216a7dadb9f52c72a0fe2b872ef7d3e1eacf3ba3"}, + {file = "psutil-5.9.0-cp27-none-win_amd64.whl", hash = "sha256:ef216cc9feb60634bda2f341a9559ac594e2eeaadd0ba187a4c2eb5b5d40b91c"}, + {file = "psutil-5.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90a58b9fcae2dbfe4ba852b57bd4a1dded6b990a33d6428c7614b7d48eccb492"}, + {file = "psutil-5.9.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff0d41f8b3e9ebb6b6110057e40019a432e96aae2008951121ba4e56040b84f3"}, + {file = "psutil-5.9.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:742c34fff804f34f62659279ed5c5b723bb0195e9d7bd9907591de9f8f6558e2"}, + {file = "psutil-5.9.0-cp310-cp310-win32.whl", hash = "sha256:8293942e4ce0c5689821f65ce6522ce4786d02af57f13c0195b40e1edb1db61d"}, + {file = "psutil-5.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:9b51917c1af3fa35a3f2dabd7ba96a2a4f19df3dec911da73875e1edaf22a40b"}, + {file = "psutil-5.9.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e9805fed4f2a81de98ae5fe38b75a74c6e6ad2df8a5c479594c7629a1fe35f56"}, + {file = "psutil-5.9.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c51f1af02334e4b516ec221ee26b8fdf105032418ca5a5ab9737e8c87dafe203"}, + {file = "psutil-5.9.0-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:32acf55cb9a8cbfb29167cd005951df81b567099295291bcfd1027365b36591d"}, + {file = "psutil-5.9.0-cp36-cp36m-win32.whl", hash = "sha256:e5c783d0b1ad6ca8a5d3e7b680468c9c926b804be83a3a8e95141b05c39c9f64"}, + {file = "psutil-5.9.0-cp36-cp36m-win_amd64.whl", hash = "sha256:d62a2796e08dd024b8179bd441cb714e0f81226c352c802fca0fd3f89eeacd94"}, + {file = "psutil-5.9.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3d00a664e31921009a84367266b35ba0aac04a2a6cad09c550a89041034d19a0"}, + {file = "psutil-5.9.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7779be4025c540d1d65a2de3f30caeacc49ae7a2152108adeaf42c7534a115ce"}, + {file = "psutil-5.9.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:072664401ae6e7c1bfb878c65d7282d4b4391f1bc9a56d5e03b5a490403271b5"}, + {file = "psutil-5.9.0-cp37-cp37m-win32.whl", hash = "sha256:df2c8bd48fb83a8408c8390b143c6a6fa10cb1a674ca664954de193fdcab36a9"}, + {file = "psutil-5.9.0-cp37-cp37m-win_amd64.whl", hash = "sha256:1d7b433519b9a38192dfda962dd8f44446668c009833e1429a52424624f408b4"}, + {file = "psutil-5.9.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:c3400cae15bdb449d518545cbd5b649117de54e3596ded84aacabfbb3297ead2"}, + {file = "psutil-5.9.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b2237f35c4bbae932ee98902a08050a27821f8f6dfa880a47195e5993af4702d"}, + {file = "psutil-5.9.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1070a9b287846a21a5d572d6dddd369517510b68710fca56b0e9e02fd24bed9a"}, + {file = "psutil-5.9.0-cp38-cp38-win32.whl", hash = "sha256:76cebf84aac1d6da5b63df11fe0d377b46b7b500d892284068bacccf12f20666"}, + {file = "psutil-5.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:3151a58f0fbd8942ba94f7c31c7e6b310d2989f4da74fcbf28b934374e9bf841"}, + {file = "psutil-5.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:539e429da49c5d27d5a58e3563886057f8fc3868a5547b4f1876d9c0f007bccf"}, + {file = "psutil-5.9.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58c7d923dc209225600aec73aa2c4ae8ea33b1ab31bc11ef8a5933b027476f07"}, + {file = "psutil-5.9.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3611e87eea393f779a35b192b46a164b1d01167c9d323dda9b1e527ea69d697d"}, + {file = "psutil-5.9.0-cp39-cp39-win32.whl", hash = "sha256:4e2fb92e3aeae3ec3b7b66c528981fd327fb93fd906a77215200404444ec1845"}, + {file = "psutil-5.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:7d190ee2eaef7831163f254dc58f6d2e2a22e27382b936aab51c835fc080c3d3"}, + {file = "psutil-5.9.0.tar.gz", hash = "sha256:869842dbd66bb80c3217158e629d6fceaecc3a3166d3d1faee515b05dd26ca25"}, ] ptyprocess = [ {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, @@ -3498,8 +3565,8 @@ pydeck = [ {file = "pydeck-0.7.1.tar.gz", hash = "sha256:907601c99f7510e16d27d7cb62bfa145216d166a2b5c9c50cfe2b65b032ebd2e"}, ] pygments = [ - {file = "Pygments-2.11.2-py3-none-any.whl", hash = "sha256:44238f1b60a76d78fc8ca0528ee429702aae011c265fe6a8dd8b63049ae41c65"}, - {file = "Pygments-2.11.2.tar.gz", hash = "sha256:4e426f72023d88d03b2fa258de560726ce890ff3b630f88c21cbb8b2503b8c6a"}, + {file = "Pygments-2.12.0-py3-none-any.whl", hash = "sha256:dc9c10fb40944260f6ed4c688ece0cd2048414940f1cea51b8b226318411c519"}, + {file = "Pygments-2.12.0.tar.gz", hash = "sha256:5eb116118f9612ff1ee89ac96437bb6b49e8f04d8a13b514ba26f620208e26eb"}, ] pyjwt = [ {file = "PyJWT-2.3.0-py3-none-any.whl", hash = "sha256:e0c4bb8d9f0af0c7f5b1ec4c5036309617d03d56932877f2f7a0beeb5318322f"}, @@ -3527,8 +3594,8 @@ pynacl = [ {file = "PyNaCl-1.5.0.tar.gz", hash = "sha256:8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba"}, ] pyparsing = [ - {file = "pyparsing-3.0.7-py3-none-any.whl", hash = "sha256:a6c06a88f252e6c322f65faf8f418b16213b51bdfaece0524c1c1bc30c63c484"}, - {file = "pyparsing-3.0.7.tar.gz", hash = "sha256:18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea"}, + {file = "pyparsing-3.0.8-py3-none-any.whl", hash = "sha256:ef7b523f6356f763771559412c0d7134753f037822dad1b16945b7b846f7ad06"}, + {file = "pyparsing-3.0.8.tar.gz", hash = "sha256:7bf433498c016c4314268d95df76c81b842a4cb2b276fa3312cfb1e1d85f6954"}, ] pyrecorder = [ {file = "pyrecorder-0.1.8.tar.gz", hash = "sha256:333990eb25b2c5d0659d46952c67499e494ba9a191178b351bc2c955239310a5"}, @@ -3569,8 +3636,8 @@ python-dateutil = [ {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, ] pytz = [ - {file = "pytz-2021.3-py2.py3-none-any.whl", hash = "sha256:3672058bc3453457b622aab7a1c3bfd5ab0bdae451512f6cf25f64ed37f5b87c"}, - {file = "pytz-2021.3.tar.gz", hash = "sha256:acad2d8b20a1af07d4e4c9d2e9285c5ed9104354062f275f3fcd88dcef4f1326"}, + {file = "pytz-2022.1-py2.py3-none-any.whl", hash = "sha256:e68985985296d9a66a881eb3193b0906246245294a881e7c8afe623866ac6a5c"}, + {file = "pytz-2022.1.tar.gz", hash = "sha256:1e760e2fe6a8163bc0b3d9a19c4f84342afa0a2affebfaa84b01b978a02ecaa7"}, ] pytz-deprecation-shim = [ {file = "pytz_deprecation_shim-0.1.0.post0-py2.py3-none-any.whl", hash = "sha256:8314c9692a636c8eb3bda879b9f119e350e93223ae83e70e80c31675a0fdc1a6"}, @@ -3591,11 +3658,11 @@ pywin32 = [ {file = "pywin32-303-cp39-cp39-win_amd64.whl", hash = "sha256:79cbb862c11b9af19bcb682891c1b91942ec2ff7de8151e2aea2e175899cda34"}, ] pywinpty = [ - {file = "pywinpty-2.0.2-cp310-none-win_amd64.whl", hash = "sha256:4b421379b407bf2f52a64a4c58f61deffe623b5add02d871acb290b771bb6227"}, - {file = "pywinpty-2.0.2-cp37-none-win_amd64.whl", hash = "sha256:238b75fc456a6bc558761a89c9e6b3c8f2f54d79db03ae28997a68313c24b2ca"}, - {file = "pywinpty-2.0.2-cp38-none-win_amd64.whl", hash = "sha256:344858a0b956fdc64a547d5e1980b0257b47f5433ed7cb89bf7b6268cb280c6c"}, - {file = "pywinpty-2.0.2-cp39-none-win_amd64.whl", hash = "sha256:a4a066eaf2e30944d3028d946883ceb7883a499b53c4b89ca2d54bd7a4210550"}, - {file = "pywinpty-2.0.2.tar.gz", hash = "sha256:20ec117183f79642eff555ce0dd1823f942618d65813fb6122d14b6e34b5d05a"}, + {file = "pywinpty-2.0.5-cp310-none-win_amd64.whl", hash = "sha256:f86c76e2881c37e69678cbbf178109f8da1fa8584db24d58e1b9369b0276cfcb"}, + {file = "pywinpty-2.0.5-cp37-none-win_amd64.whl", hash = "sha256:ff9b52f182650cfdf3db1b264a6fe0963eb9d996a7a1fa843ac406c1e32111f8"}, + {file = "pywinpty-2.0.5-cp38-none-win_amd64.whl", hash = "sha256:651ee1467bd7eb6f64d44dbc954b7ab7d15ab6d8adacc4e13299692c67c5d5d2"}, + {file = "pywinpty-2.0.5-cp39-none-win_amd64.whl", hash = "sha256:e59a508ae78374febada3e53b5bbc90b5ad07ae68cbfd72a2e965f9793ae04f3"}, + {file = "pywinpty-2.0.5.tar.gz", hash = "sha256:e125d3f1804d8804952b13e33604ad2ca8b9b2cac92b27b521c005d1604794f8"}, ] pyyaml = [ {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, @@ -3682,80 +3749,80 @@ pyzmq = [ {file = "pyzmq-22.3.0.tar.gz", hash = "sha256:8eddc033e716f8c91c6a2112f0a8ebc5e00532b4a6ae1eb0ccc48e027f9c671c"}, ] regex = [ - {file = "regex-2022.1.18-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:34316bf693b1d2d29c087ee7e4bb10cdfa39da5f9c50fa15b07489b4ab93a1b5"}, - {file = "regex-2022.1.18-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7a0b9f6a1a15d494b35f25ed07abda03209fa76c33564c09c9e81d34f4b919d7"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f99112aed4fb7cee00c7f77e8b964a9b10f69488cdff626ffd797d02e2e4484f"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a2bf98ac92f58777c0fafc772bf0493e67fcf677302e0c0a630ee517a43b949"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8618d9213a863c468a865e9d2ec50221015f7abf52221bc927152ef26c484b4c"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b52cc45e71657bc4743a5606d9023459de929b2a198d545868e11898ba1c3f59"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e12949e5071c20ec49ef00c75121ed2b076972132fc1913ddf5f76cae8d10b4"}, - {file = "regex-2022.1.18-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b02e3e72665cd02afafb933453b0c9f6c59ff6e3708bd28d0d8580450e7e88af"}, - {file = "regex-2022.1.18-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:abfcb0ef78df0ee9df4ea81f03beea41849340ce33a4c4bd4dbb99e23ec781b6"}, - {file = "regex-2022.1.18-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6213713ac743b190ecbf3f316d6e41d099e774812d470422b3a0f137ea635832"}, - {file = "regex-2022.1.18-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:61ebbcd208d78658b09e19c78920f1ad38936a0aa0f9c459c46c197d11c580a0"}, - {file = "regex-2022.1.18-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:b013f759cd69cb0a62de954d6d2096d648bc210034b79b1881406b07ed0a83f9"}, - {file = "regex-2022.1.18-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9187500d83fd0cef4669385cbb0961e227a41c0c9bc39219044e35810793edf7"}, - {file = "regex-2022.1.18-cp310-cp310-win32.whl", hash = "sha256:94c623c331a48a5ccc7d25271399aff29729fa202c737ae3b4b28b89d2b0976d"}, - {file = "regex-2022.1.18-cp310-cp310-win_amd64.whl", hash = "sha256:1a171eaac36a08964d023eeff740b18a415f79aeb212169080c170ec42dd5184"}, - {file = "regex-2022.1.18-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:49810f907dfe6de8da5da7d2b238d343e6add62f01a15d03e2195afc180059ed"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d2f5c3f7057530afd7b739ed42eb04f1011203bc5e4663e1e1d01bb50f813e3"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:85ffd6b1cb0dfb037ede50ff3bef80d9bf7fa60515d192403af6745524524f3b"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ba37f11e1d020969e8a779c06b4af866ffb6b854d7229db63c5fdddfceaa917f"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:637e27ea1ebe4a561db75a880ac659ff439dec7f55588212e71700bb1ddd5af9"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:37978254d9d00cda01acc1997513f786b6b971e57b778fbe7c20e30ae81a97f3"}, - {file = "regex-2022.1.18-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e54a1eb9fd38f2779e973d2f8958fd575b532fe26013405d1afb9ee2374e7ab8"}, - {file = "regex-2022.1.18-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:768632fd8172ae03852e3245f11c8a425d95f65ff444ce46b3e673ae5b057b74"}, - {file = "regex-2022.1.18-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:de2923886b5d3214be951bc2ce3f6b8ac0d6dfd4a0d0e2a4d2e5523d8046fdfb"}, - {file = "regex-2022.1.18-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:1333b3ce73269f986b1fa4d5d395643810074dc2de5b9d262eb258daf37dc98f"}, - {file = "regex-2022.1.18-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:d19a34f8a3429bd536996ad53597b805c10352a8561d8382e05830df389d2b43"}, - {file = "regex-2022.1.18-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:8d2f355a951f60f0843f2368b39970e4667517e54e86b1508e76f92b44811a8a"}, - {file = "regex-2022.1.18-cp36-cp36m-win32.whl", hash = "sha256:2245441445099411b528379dee83e56eadf449db924648e5feb9b747473f42e3"}, - {file = "regex-2022.1.18-cp36-cp36m-win_amd64.whl", hash = "sha256:25716aa70a0d153cd844fe861d4f3315a6ccafce22b39d8aadbf7fcadff2b633"}, - {file = "regex-2022.1.18-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:7e070d3aef50ac3856f2ef5ec7214798453da878bb5e5a16c16a61edf1817cc3"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22709d701e7037e64dae2a04855021b62efd64a66c3ceed99dfd684bfef09e38"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9099bf89078675c372339011ccfc9ec310310bf6c292b413c013eb90ffdcafc"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04611cc0f627fc4a50bc4a9a2e6178a974c6a6a4aa9c1cca921635d2c47b9c87"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:552a39987ac6655dad4bf6f17dd2b55c7b0c6e949d933b8846d2e312ee80005a"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e031899cb2bc92c0cf4d45389eff5b078d1936860a1be3aa8c94fa25fb46ed8"}, - {file = "regex-2022.1.18-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2dacb3dae6b8cc579637a7b72f008bff50a94cde5e36e432352f4ca57b9e54c4"}, - {file = "regex-2022.1.18-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:e5c31d70a478b0ca22a9d2d76d520ae996214019d39ed7dd93af872c7f301e52"}, - {file = "regex-2022.1.18-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bb804c7d0bfbd7e3f33924ff49757de9106c44e27979e2492819c16972ec0da2"}, - {file = "regex-2022.1.18-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:36b2d700a27e168fa96272b42d28c7ac3ff72030c67b32f37c05616ebd22a202"}, - {file = "regex-2022.1.18-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:16f81025bb3556eccb0681d7946e2b35ff254f9f888cff7d2120e8826330315c"}, - {file = "regex-2022.1.18-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:da80047524eac2acf7c04c18ac7a7da05a9136241f642dd2ed94269ef0d0a45a"}, - {file = "regex-2022.1.18-cp37-cp37m-win32.whl", hash = "sha256:6ca45359d7a21644793de0e29de497ef7f1ae7268e346c4faf87b421fea364e6"}, - {file = "regex-2022.1.18-cp37-cp37m-win_amd64.whl", hash = "sha256:38289f1690a7e27aacd049e420769b996826f3728756859420eeee21cc857118"}, - {file = "regex-2022.1.18-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6014038f52b4b2ac1fa41a58d439a8a00f015b5c0735a0cd4b09afe344c94899"}, - {file = "regex-2022.1.18-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0b5d6f9aed3153487252d00a18e53f19b7f52a1651bc1d0c4b5844bc286dfa52"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9d24b03daf7415f78abc2d25a208f234e2c585e5e6f92f0204d2ab7b9ab48e3"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bf594cc7cc9d528338d66674c10a5b25e3cde7dd75c3e96784df8f371d77a298"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fd914db437ec25bfa410f8aa0aa2f3ba87cdfc04d9919d608d02330947afaeab"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90b6840b6448203228a9d8464a7a0d99aa8fa9f027ef95fe230579abaf8a6ee1"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11772be1eb1748e0e197a40ffb82fb8fd0d6914cd147d841d9703e2bef24d288"}, - {file = "regex-2022.1.18-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a602bdc8607c99eb5b391592d58c92618dcd1537fdd87df1813f03fed49957a6"}, - {file = "regex-2022.1.18-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7e26eac9e52e8ce86f915fd33380f1b6896a2b51994e40bb094841e5003429b4"}, - {file = "regex-2022.1.18-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:519c0b3a6fbb68afaa0febf0d28f6c4b0a1074aefc484802ecb9709faf181607"}, - {file = "regex-2022.1.18-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:3c7ea86b9ca83e30fa4d4cd0eaf01db3ebcc7b2726a25990966627e39577d729"}, - {file = "regex-2022.1.18-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:51f02ca184518702975b56affde6c573ebad4e411599005ce4468b1014b4786c"}, - {file = "regex-2022.1.18-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:385ccf6d011b97768a640e9d4de25412204fbe8d6b9ae39ff115d4ff03f6fe5d"}, - {file = "regex-2022.1.18-cp38-cp38-win32.whl", hash = "sha256:1f8c0ae0a0de4e19fddaaff036f508db175f6f03db318c80bbc239a1def62d02"}, - {file = "regex-2022.1.18-cp38-cp38-win_amd64.whl", hash = "sha256:760c54ad1b8a9b81951030a7e8e7c3ec0964c1cb9fee585a03ff53d9e531bb8e"}, - {file = "regex-2022.1.18-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:93c20777a72cae8620203ac11c4010365706062aa13aaedd1a21bb07adbb9d5d"}, - {file = "regex-2022.1.18-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6aa427c55a0abec450bca10b64446331b5ca8f79b648531138f357569705bc4a"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c38baee6bdb7fe1b110b6b3aaa555e6e872d322206b7245aa39572d3fc991ee4"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:752e7ddfb743344d447367baa85bccd3629c2c3940f70506eb5f01abce98ee68"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8acef4d8a4353f6678fd1035422a937c2170de58a2b29f7da045d5249e934101"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c73d2166e4b210b73d1429c4f1ca97cea9cc090e5302df2a7a0a96ce55373f1c"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:24c89346734a4e4d60ecf9b27cac4c1fee3431a413f7aa00be7c4d7bbacc2c4d"}, - {file = "regex-2022.1.18-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:596f5ae2eeddb79b595583c2e0285312b2783b0ec759930c272dbf02f851ff75"}, - {file = "regex-2022.1.18-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ecfe51abf7f045e0b9cdde71ca9e153d11238679ef7b5da6c82093874adf3338"}, - {file = "regex-2022.1.18-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:1d6301f5288e9bdca65fab3de6b7de17362c5016d6bf8ee4ba4cbe833b2eda0f"}, - {file = "regex-2022.1.18-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:93cce7d422a0093cfb3606beae38a8e47a25232eea0f292c878af580a9dc7605"}, - {file = "regex-2022.1.18-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:cf0db26a1f76aa6b3aa314a74b8facd586b7a5457d05b64f8082a62c9c49582a"}, - {file = "regex-2022.1.18-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:defa0652696ff0ba48c8aff5a1fac1eef1ca6ac9c660b047fc8e7623c4eb5093"}, - {file = "regex-2022.1.18-cp39-cp39-win32.whl", hash = "sha256:6db1b52c6f2c04fafc8da17ea506608e6be7086715dab498570c3e55e4f8fbd1"}, - {file = "regex-2022.1.18-cp39-cp39-win_amd64.whl", hash = "sha256:ebaeb93f90c0903233b11ce913a7cb8f6ee069158406e056f884854c737d2442"}, - {file = "regex-2022.1.18.tar.gz", hash = "sha256:97f32dc03a8054a4c4a5ab5d761ed4861e828b2c200febd4e46857069a483916"}, + {file = "regex-2022.4.24-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f86aef546add4ff1202e1f31e9bb54f9268f17d996b2428877283146bf9bc013"}, + {file = "regex-2022.4.24-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e944268445b5694f5d41292c9228f0ca46d5a32a67f195d5f8547c1f1d91f4bc"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8da3145f4b72f7ce6181c804eaa44cdcea313c8998cdade3d9e20a8717a9cb"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0fd464e547dbabf4652ca5fe9d88d75ec30182981e737c07b3410235a44b9939"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:071bcb625e890f28b7c4573124a6512ea65107152b1d3ca101ce33a52dad4593"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c2de7f32fa87d04d40f54bce3843af430697aba51c3a114aa62837a0772f219"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1a07e8366115069f26822c47732122ab61598830a69f5629a37ea8881487c107"}, + {file = "regex-2022.4.24-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:036d1c1fbe69eba3ee253c107e71749cdbb4776db93d674bc0d5e28f30300734"}, + {file = "regex-2022.4.24-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:af1e687ffab18a75409e5e5d6215b6ccd41a5a1a0ea6ce9665e01253f737a0d3"}, + {file = "regex-2022.4.24-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:165cc75cfa5aa0f12adb2ac6286330e7229a06dc0e6c004ec35da682b5b89579"}, + {file = "regex-2022.4.24-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:3e35c50b27f36176c792738cb9b858523053bc495044d2c2b44db24376b266f1"}, + {file = "regex-2022.4.24-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:43ee0df35925ae4b0cc6ee3f60b73369e559dd2ac40945044da9394dd9d3a51d"}, + {file = "regex-2022.4.24-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:58521abdab76583bd41ef47e5e2ddd93b32501aee4ee8cee71dee10a45ba46b1"}, + {file = "regex-2022.4.24-cp310-cp310-win32.whl", hash = "sha256:275afc7352982ee947fc88f67a034b52c78395977b5fc7c9be15f7dc95b76f06"}, + {file = "regex-2022.4.24-cp310-cp310-win_amd64.whl", hash = "sha256:253f858a0255cd91a0424a4b15c2eedb12f20274f85731b0d861c8137e843065"}, + {file = "regex-2022.4.24-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:85b7ee4d0c7a46296d884f6b489af8b960c4291d76aea4b22fd4fbe05e6ec08e"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e0da7ef160d4f3eb3d4d3e39a02c3c42f7dbcfce62c81f784cc99fc7059765f"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4f2e2cef324ca9355049ee1e712f68e2e92716eba24275e6767b9bfa15f1f478"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6165e737acb3bea3271372e8aa5ebe7226c8a8e8da1b94af2d6547c5a09d689d"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f6bd8178cce5bb56336722d5569d19c50bba5915a69a2050c497fb921e7cb0f"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:45b761406777a681db0c24686178532134c937d24448d9e085279b69e9eb7da4"}, + {file = "regex-2022.4.24-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3dfbadb7b74d95f72f9f9dbf9778f7de92722ab520a109ceaf7927461fa85b10"}, + {file = "regex-2022.4.24-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:9913bcf730eb6e9b441fb176832eea9acbebab6035542c7c89d90c803f5cd3be"}, + {file = "regex-2022.4.24-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:68aed3fb0c61296bd6d234f558f78c51671f79ccb069cbcd428c2eea6fee7a5b"}, + {file = "regex-2022.4.24-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:8e7d33f93cdd01868327d834d0f5bb029241cd293b47d51b96814dec27fc9b4b"}, + {file = "regex-2022.4.24-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:82b7fc67e49fdce671bdbec1127189fc979badf062ce6e79dc95ef5e07a8bf92"}, + {file = "regex-2022.4.24-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:c36906a7855ec33a9083608e6cd595e4729dab18aeb9aad0dd0b039240266239"}, + {file = "regex-2022.4.24-cp36-cp36m-win32.whl", hash = "sha256:b2df3ede85d778c949d9bd2a50237072cee3df0a423c91f5514f78f8035bde87"}, + {file = "regex-2022.4.24-cp36-cp36m-win_amd64.whl", hash = "sha256:dffd9114ade73137ab2b79a8faf864683dbd2dbbb6b23a305fbbd4cbaeeb2187"}, + {file = "regex-2022.4.24-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6a0ef57cccd8089b4249eebad95065390e56c04d4a92c51316eab4131bca96a9"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12af15b6edb00e425f713160cfd361126e624ec0de86e74f7cad4b97b7f169b3"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7f271d0831d8ebc56e17b37f9fa1824b0379221d1238ae77c18a6e8c47f1fdce"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:37903d5ca11fa47577e8952d2e2c6de28553b11c70defee827afb941ab2c6729"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b747cef8e5dcdaf394192d43a0c02f5825aeb0ecd3d43e63ae500332ab830b0"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:582ea06079a03750b5f71e20a87cd99e646d796638b5894ff85987ebf5e04924"}, + {file = "regex-2022.4.24-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:aa6daa189db9104787ff1fd7a7623ce017077aa59eaac609d0d25ba95ed251a0"}, + {file = "regex-2022.4.24-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7dbc96419ef0fb6ac56626014e6d3a345aeb8b17a3df8830235a88626ffc8d84"}, + {file = "regex-2022.4.24-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:0fb6cb16518ac7eff29d1e0b0cce90275dfae0f17154165491058c31d58bdd1d"}, + {file = "regex-2022.4.24-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bea61de0c688198e3d9479344228c7accaa22a78b58ec408e41750ebafee6c08"}, + {file = "regex-2022.4.24-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:46cbc5b23f85e94161b093dba1b49035697cf44c7db3c930adabfc0e6d861b95"}, + {file = "regex-2022.4.24-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:50b77622016f03989cd06ecf6b602c7a6b4ed2e3ce04133876b041d109c934ee"}, + {file = "regex-2022.4.24-cp37-cp37m-win32.whl", hash = "sha256:2bde99f2cdfd6db1ec7e02d68cadd384ffe7413831373ea7cc68c5415a0cb577"}, + {file = "regex-2022.4.24-cp37-cp37m-win_amd64.whl", hash = "sha256:66fb765b2173d90389384708e3e1d3e4be1148bd8d4d50476b1469da5a2f0229"}, + {file = "regex-2022.4.24-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:709396c0c95b95045fac89b94f997410ff39b81a09863fe21002f390d48cc7d3"}, + {file = "regex-2022.4.24-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7a608022f4593fc67518c6c599ae5abdb03bb8acd75993c82cd7a4c8100eff81"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb7107faf0168de087f62a2f2ed00f9e9da12e0b801582b516ddac236b871cda"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aabc28f7599f781ddaeac168d0b566d0db82182cc3dcf62129f0a4fc2927b811"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:92ad03f928675ca05b79d3b1d3dfc149e2226d57ed9d57808f82105d511d0212"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7ba3c304a4a5d8112dbd30df8b3e4ef59b4b07807957d3c410d9713abaee9a8"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e2acf5c66fbb62b5fe4c40978ddebafa50818f00bf79d60569d9762f6356336e"}, + {file = "regex-2022.4.24-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7c4d9770e579eb11b582b2e2fd19fa204a15cb1589ae73cd4dcbb63b64f3e828"}, + {file = "regex-2022.4.24-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:02543d6d5c32d361b7cc468079ba4cddaaf4a6544f655901ba1ff9d8e3f18755"}, + {file = "regex-2022.4.24-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:73ed1b06abadbf6b61f6033a07c06f36ec0ddca117e41ef2ac37056705e46458"}, + {file = "regex-2022.4.24-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:3241db067a7f69da57fba8bca543ac8a7ca415d91e77315690202749b9fdaba1"}, + {file = "regex-2022.4.24-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:d128e278e5e554c5c022c7bed410ca851e00bacebbb4460de546a73bc53f8de4"}, + {file = "regex-2022.4.24-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b1d53835922cd0f9b74b2742453a444865a70abae38d12eb41c59271da66f38d"}, + {file = "regex-2022.4.24-cp38-cp38-win32.whl", hash = "sha256:f2a5d9f612091812dee18375a45d046526452142e7b78c4e21ab192db15453d5"}, + {file = "regex-2022.4.24-cp38-cp38-win_amd64.whl", hash = "sha256:a850f5f369f1e3b6239da7fb43d1d029c1e178263df671819889c47caf7e4ff3"}, + {file = "regex-2022.4.24-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bedb3d01ad35ea1745bdb1d57f3ee0f996f988c98f5bbae9d068c3bb3065d210"}, + {file = "regex-2022.4.24-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8bf867ba71856414a482e4b683500f946c300c4896e472e51d3db8dfa8dc8f32"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b415b82e5be7389ec5ee7ee35431e4a549ea327caacf73b697c6b3538cb5c87f"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9dae5affbb66178dad6c6fd5b02221ca9917e016c75ee3945e9a9563eb1fbb6f"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e65580ae3137bce712f505ec7c2d700aef0014a3878c4767b74aff5895fc454f"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e9e983fc8e0d4d5ded7caa5aed39ca2cf6026d7e39801ef6f0af0b1b6cd9276"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad3a770839aa456ff9a9aa0e253d98b628d005a3ccb37da1ff9be7c84fee16"}, + {file = "regex-2022.4.24-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ed625205f5f26984382b68e4cbcbc08e6603c9e84c14b38457170b0cc71c823b"}, + {file = "regex-2022.4.24-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c4fdf837666f7793a5c3cfa2f2f39f03eb6c7e92e831bc64486c2f547580c2b3"}, + {file = "regex-2022.4.24-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ed26c3d2d62c6588e0dad175b8d8cc0942a638f32d07b80f92043e5d73b7db67"}, + {file = "regex-2022.4.24-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:f89d26e50a4c7453cb8c415acd09e72fbade2610606a9c500a1e48c43210a42d"}, + {file = "regex-2022.4.24-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:97af238389cb029d63d5f2d931a7e8f5954ad96e812de5faaed373b68e74df86"}, + {file = "regex-2022.4.24-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:be392d9cd5309509175a9d7660dc17bf57084501108dbff0c5a8bfc3646048c3"}, + {file = "regex-2022.4.24-cp39-cp39-win32.whl", hash = "sha256:bcc6f7a3a95119c3568c572ca167ada75f8319890706283b9ba59b3489c9bcb3"}, + {file = "regex-2022.4.24-cp39-cp39-win_amd64.whl", hash = "sha256:5b9c7b6895a01204296e9523b3e12b43e013835a9de035a783907c2c1bc447f0"}, + {file = "regex-2022.4.24.tar.gz", hash = "sha256:92183e9180c392371079262879c6532ccf55f808e6900df5d9f03c9ca8807255"}, ] requests = [ {file = "requests-2.27.1-py2.py3-none-any.whl", hash = "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"}, @@ -3777,8 +3844,8 @@ rope = [ {file = "rope-0.17.0.tar.gz", hash = "sha256:658ad6705f43dcf3d6df379da9486529cf30e02d9ea14c5682aa80eb33b649e1"}, ] 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"}, ] scikit-learn = [ {file = "scikit-learn-1.0.2.tar.gz", hash = "sha256:b5870959a5484b614f26d31ca4c17524b1b0317522199dc985c3b4256e030767"}, @@ -3928,8 +3995,8 @@ snowballstemmer = [ {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, ] soupsieve = [ - {file = "soupsieve-2.3.1-py3-none-any.whl", hash = "sha256:1a3cca2617c6b38c0343ed661b1fa5de5637f257d4fe22bd9f1338010a1efefb"}, - {file = "soupsieve-2.3.1.tar.gz", hash = "sha256:b8d49b1cd4f037c7082a9683dfa1801aa2597fb11c3a1155b7a5b94829b4f1f9"}, + {file = "soupsieve-2.3.2.post1-py3-none-any.whl", hash = "sha256:3b2503d3c7084a42b1ebd08116e5f81aadfaea95863628c80a3b774a11b7c759"}, + {file = "soupsieve-2.3.2.post1.tar.gz", hash = "sha256:fc53893b3da2c33de295667a0e19f078c14bf86544af307354de5fcf12a3f30d"}, ] sphinx = [ {file = "Sphinx-3.5.4-py3-none-any.whl", hash = "sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"}, @@ -3989,17 +4056,17 @@ tabulate = [ {file = "tabulate-0.8.9.tar.gz", hash = "sha256:eb1d13f25760052e8931f2ef80aaf6045a6cceb47514db8beab24cded16f13a7"}, ] terminado = [ - {file = "terminado-0.13.1-py3-none-any.whl", hash = "sha256:f446b522b50a7aa68b5def0a02893978fb48cb82298b0ebdae13003c6ee6f198"}, - {file = "terminado-0.13.1.tar.gz", hash = "sha256:5b82b5c6e991f0705a76f961f43262a7fb1e55b093c16dca83f16384a7f39b7b"}, -] -testpath = [ - {file = "testpath-0.5.0-py3-none-any.whl", hash = "sha256:8044f9a0bab6567fc644a3593164e872543bb44225b0e24846e2c89237937589"}, - {file = "testpath-0.5.0.tar.gz", hash = "sha256:1acf7a0bcd3004ae8357409fc33751e16d37ccc650921da1094a86581ad1e417"}, + {file = "terminado-0.13.3-py3-none-any.whl", hash = "sha256:874d4ea3183536c1782d13c7c91342ef0cf4e5ee1d53633029cbc972c8760bd8"}, + {file = "terminado-0.13.3.tar.gz", hash = "sha256:94d1cfab63525993f7d5c9b469a50a18d0cdf39435b59785715539dd41e36c0d"}, ] threadpoolctl = [ {file = "threadpoolctl-3.1.0-py3-none-any.whl", hash = "sha256:8b99adda265feb6773280df41eece7b2e6561b772d21ffd52e372f999024907b"}, {file = "threadpoolctl-3.1.0.tar.gz", hash = "sha256:a335baacfaa4400ae1f0d8e3a58d6674d2f8828e3716bb2802c44955ad391380"}, ] +tinycss2 = [ + {file = "tinycss2-1.1.1-py3-none-any.whl", hash = "sha256:fe794ceaadfe3cf3e686b22155d0da5780dd0e273471a51846d0a02bc204fec8"}, + {file = "tinycss2-1.1.1.tar.gz", hash = "sha256:b2e44dd8883c360c35dd0d1b5aad0b610e5156c2cb3b33434634e539ead9d8bf"}, +] toml = [ {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, @@ -4013,25 +4080,25 @@ toolz = [ {file = "toolz-0.11.2.tar.gz", hash = "sha256:6b312d5e15138552f1bda8a4e66c30e236c831b612b2bf0005f8a1df10a4bc33"}, ] torch = [ - {file = "torch-1.10.2-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:8f3fd2e3ffc3bb867133fdf7fbcc8a0bb2e62a5c0696396f51856f5abf9045a8"}, - {file = "torch-1.10.2-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:258a0729fb77a3457d5822d84b536057cd119b08049a8d3c41dc3dcdeb48d56e"}, - {file = "torch-1.10.2-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:935e5ac804c5093c79f23a7e6ca5b912c166071aa9d8b4a0a3d6a85126d6a47b"}, - {file = "torch-1.10.2-cp36-cp36m-win_amd64.whl", hash = "sha256:65fd02ed889c63fd82bf1a440c5a94c1310c29f3e6f9f62add416d34da355d97"}, - {file = "torch-1.10.2-cp36-none-macosx_10_9_x86_64.whl", hash = "sha256:6a81f886823bbd15edc2dc0908fa214070df61c9f7ab8831f0a03630275cca5a"}, - {file = "torch-1.10.2-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:3eee3cf53c1f8fb3f1fe107a22025a8501fc6440d14e09599ba7153002531f84"}, - {file = "torch-1.10.2-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:ef99b8cca5f9358119b07956915faf6e7906f433ab4a603c160ae9de88918371"}, - {file = "torch-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:d43bc3f3a2d89ae185ef96d903c935c335219231e57685658648396984e2a67a"}, - {file = "torch-1.10.2-cp37-none-macosx_10_9_x86_64.whl", hash = "sha256:6da1b877880435440a5aa9678ef0f01986d4886416844db1d97ebfb7fd1778d0"}, - {file = "torch-1.10.2-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:ab77a9f838874f295ed5410c0686fa22547456e0116efb281c66ef5f9d46fe28"}, - {file = "torch-1.10.2-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:9ef4c004f9e5168bd1c1930c6aff25fed5b097de81db6271ffbb2e4fb8b89319"}, - {file = "torch-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:376fc18407add20daa6bbaaffc5a5e06d733abe53bcbd60ef2532bfed34bc091"}, - {file = "torch-1.10.2-cp38-none-macosx_10_9_x86_64.whl", hash = "sha256:f281438ee99bd72ad65c0bba1026a32e45c3b636bc067fc145ad291e9ea2faab"}, - {file = "torch-1.10.2-cp38-none-macosx_11_0_arm64.whl", hash = "sha256:3592d3dd62b32760c82624e7586222747fe2281240e8653970b35f1d6d4a434c"}, - {file = "torch-1.10.2-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:fbaf18c1b3e0b31af194a9d853e3739464cf982d279df9d34dd18f1c2a471878"}, - {file = "torch-1.10.2-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:97b7b0c667e8b0dd1fc70137a36e0a4841ec10ef850bda60500ad066bef3e2de"}, - {file = "torch-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:901b52787baeb2e9e1357ca7037da0028bc6ad743f530e0040ae96ef8e27156c"}, - {file = "torch-1.10.2-cp39-none-macosx_10_9_x86_64.whl", hash = "sha256:5b68e9108bd7ebd99eee941686046c517cfaac5331f757bcf440fe02f2e3ced1"}, - {file = "torch-1.10.2-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:b07ef01e36b716d0d65ca60c4db0ac9d094a0e797d9b55290da4dcda91463b6c"}, + {file = "torch-1.11.0-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:62052b50fffc29ca7afc0c04ef8206b6f1ca9d10629cb543077e12967e8d0398"}, + {file = "torch-1.11.0-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:866bfba29ac98dec35d893d8e17eaec149d0ac7a53be7baae5c98069897db667"}, + {file = "torch-1.11.0-cp310-cp310-win_amd64.whl", hash = "sha256:951640fb8db308a59d9b510e7d1ad910aff92913323bbe4bc75435347ddd346d"}, + {file = "torch-1.11.0-cp310-none-macosx_10_9_x86_64.whl", hash = "sha256:5d77b5ece78fdafa5c7f42995ff9474399d22571cd6b2de21a5d666306a2ff8c"}, + {file = "torch-1.11.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:b5a38682769b544c875ecc34bcb81fbad5c922139b61319aacffcfd8a32f528c"}, + {file = "torch-1.11.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:f82d77695a60626f2b7382d85bc566de8a6b3e50d32080755abc040db802e419"}, + {file = "torch-1.11.0-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b96654d42566080a134e784705f33f8536b3b95b5dcde357ed7879b1692a5f78"}, + {file = "torch-1.11.0-cp37-cp37m-win_amd64.whl", hash = "sha256:8ee7c2e8d7f7020d5bfbc1bb91b9591044c26bbd0cee5e4f694cfd7ed8649260"}, + {file = "torch-1.11.0-cp37-none-macosx_10_9_x86_64.whl", hash = "sha256:6860b1d1bf0bb0b67a6bd47f85a0e4c825b518eea13b5d6101999dbbcbd5bc0c"}, + {file = "torch-1.11.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:4322aa29f50da7f404db06cdf30896ea67b09f673af4a985afc7162bc897864d"}, + {file = "torch-1.11.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:e4d2e0ddd652f30e94cff750220324ec45705d4ecc69658f773b3cb1c7a28dd0"}, + {file = "torch-1.11.0-cp38-cp38-win_amd64.whl", hash = "sha256:34ce5ea4d8d85da32cdbadb50d4585106901e9f8a3527991daa70c13a09de1f7"}, + {file = "torch-1.11.0-cp38-none-macosx_10_9_x86_64.whl", hash = "sha256:0ccc85cd06227a3edf809e2c795fd5762c3d4e8a38b5c9f744c6e7cf841361bb"}, + {file = "torch-1.11.0-cp38-none-macosx_11_0_arm64.whl", hash = "sha256:c1554e49d74f1b2c3e7202d77056ba2dd7465437585bac64062b580f714a44e9"}, + {file = "torch-1.11.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:58c7814502b1c129a650d7092033bbb0bbd64faf1a7941631aaa1aeaddc37570"}, + {file = "torch-1.11.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:831cf588f01dda9409e75576741d2823453990dee2983d670f2584b37a01adf7"}, + {file = "torch-1.11.0-cp39-cp39-win_amd64.whl", hash = "sha256:44a1d02fd20f827f0f36dc26fdcfc45e793806a6ad52769a22260655a77a4369"}, + {file = "torch-1.11.0-cp39-none-macosx_10_9_x86_64.whl", hash = "sha256:50fd9bf85c578c871c28f1cb0ace9dfc6024401c7f399b174fb0f370899f4454"}, + {file = "torch-1.11.0-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:0e48af66ad755f0f9c5f2664028a414f57c49d6adc37e77e06fe0004da4edb61"}, ] tornado = [ {file = "tornado-6.1-cp35-cp35m-macosx_10_9_x86_64.whl", hash = "sha256:d371e811d6b156d82aa5f9a4e08b58debf97c302a35714f6f45e35139c332e32"}, @@ -4077,86 +4144,88 @@ tornado = [ {file = "tornado-6.1.tar.gz", hash = "sha256:33c6e81d7bd55b468d2e793517c909b139960b6c790a60b7991b9b6b76fb9791"}, ] 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.64.0-py2.py3-none-any.whl", hash = "sha256:74a2cdefe14d11442cedf3ba4e21a3b84ff9a2dbdc6cfae2c34addb2a14a5ea6"}, + {file = "tqdm-4.64.0.tar.gz", hash = "sha256:40be55d30e200777a307a7585aee69e4eabb46b4ec6a4b4a5f2d9f11e7d5408d"}, ] traitlets = [ {file = "traitlets-5.1.1-py3-none-any.whl", hash = "sha256:2d313cc50a42cd6c277e7d7dc8d4d7fedd06a2c215f78766ae7b1a66277e0033"}, {file = "traitlets-5.1.1.tar.gz", hash = "sha256:059f456c5a7c1c82b98c2e8c799f39c9b8128f6d0d46941ee118daace9eb70c7"}, ] typed-ast = [ - {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"}, + {file = "typed_ast-1.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ad3b48cf2b487be140072fb86feff36801487d4abb7382bb1929aaac80638ea"}, + {file = "typed_ast-1.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:542cd732351ba8235f20faa0fc7398946fe1a57f2cdb289e5497e1e7f48cfedb"}, + {file = "typed_ast-1.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dc2c11ae59003d4a26dda637222d9ae924387f96acae9492df663843aefad55"}, + {file = "typed_ast-1.5.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fd5df1313915dbd70eaaa88c19030b441742e8b05e6103c631c83b75e0435ccc"}, + {file = "typed_ast-1.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:e34f9b9e61333ecb0f7d79c21c28aa5cd63bec15cb7e1310d7d3da6ce886bc9b"}, + {file = "typed_ast-1.5.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f818c5b81966d4728fec14caa338e30a70dfc3da577984d38f97816c4b3071ec"}, + {file = "typed_ast-1.5.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3042bfc9ca118712c9809201f55355479cfcdc17449f9f8db5e744e9625c6805"}, + {file = "typed_ast-1.5.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4fff9fdcce59dc61ec1b317bdb319f8f4e6b69ebbe61193ae0a60c5f9333dc49"}, + {file = "typed_ast-1.5.3-cp36-cp36m-win_amd64.whl", hash = "sha256:8e0b8528838ffd426fea8d18bde4c73bcb4167218998cc8b9ee0a0f2bfe678a6"}, + {file = "typed_ast-1.5.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8ef1d96ad05a291f5c36895d86d1375c0ee70595b90f6bb5f5fdbee749b146db"}, + {file = "typed_ast-1.5.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed44e81517364cb5ba367e4f68fca01fba42a7a4690d40c07886586ac267d9b9"}, + {file = "typed_ast-1.5.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f60d9de0d087454c91b3999a296d0c4558c1666771e3460621875021bf899af9"}, + {file = "typed_ast-1.5.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9e237e74fd321a55c90eee9bc5d44be976979ad38a29bbd734148295c1ce7617"}, + {file = "typed_ast-1.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ee852185964744987609b40aee1d2eb81502ae63ee8eef614558f96a56c1902d"}, + {file = "typed_ast-1.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:27e46cdd01d6c3a0dd8f728b6a938a6751f7bd324817501c15fb056307f918c6"}, + {file = "typed_ast-1.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d64dabc6336ddc10373922a146fa2256043b3b43e61f28961caec2a5207c56d5"}, + {file = "typed_ast-1.5.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8cdf91b0c466a6c43f36c1964772918a2c04cfa83df8001ff32a89e357f8eb06"}, + {file = "typed_ast-1.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:9cc9e1457e1feb06b075c8ef8aeb046a28ec351b1958b42c7c31c989c841403a"}, + {file = "typed_ast-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e20d196815eeffb3d76b75223e8ffed124e65ee62097e4e73afb5fec6b993e7a"}, + {file = "typed_ast-1.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:37e5349d1d5de2f4763d534ccb26809d1c24b180a477659a12c4bde9dd677d74"}, + {file = "typed_ast-1.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9f1a27592fac87daa4e3f16538713d705599b0a27dfe25518b80b6b017f0a6d"}, + {file = "typed_ast-1.5.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:8831479695eadc8b5ffed06fdfb3e424adc37962a75925668deeb503f446c0a3"}, + {file = "typed_ast-1.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:20d5118e494478ef2d3a2702d964dae830aedd7b4d3b626d003eea526be18718"}, + {file = "typed_ast-1.5.3.tar.gz", hash = "sha256:27f25232e2dd0edfe1f019d6bfaaf11e86e657d9bdb7b0956db95f560cceb2b3"}, ] typing-extensions = [ - {file = "typing_extensions-4.1.1-py3-none-any.whl", hash = "sha256:21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2"}, - {file = "typing_extensions-4.1.1.tar.gz", hash = "sha256:1a9462dcc3347a79b1f1c0271fbe79e844580bb598bafa1ed208b94da3cdcd42"}, + {file = "typing_extensions-4.2.0-py3-none-any.whl", hash = "sha256:6657594ee297170d19f67d55c05852a874e7eb634f4f753dbd667855e07c1708"}, + {file = "typing_extensions-4.2.0.tar.gz", hash = "sha256:f1c24655a0da0d1b67f07e17a5e6b2a105894e6824b92096378bb3668ef02376"}, ] tzdata = [ - {file = "tzdata-2021.5-py2.py3-none-any.whl", hash = "sha256:3eee491e22ebfe1e5cfcc97a4137cd70f092ce59144d81f8924a844de05ba8f5"}, - {file = "tzdata-2021.5.tar.gz", hash = "sha256:68dbe41afd01b867894bbdfd54fa03f468cfa4f0086bfb4adcd8de8f24f3ee21"}, + {file = "tzdata-2022.1-py2.py3-none-any.whl", hash = "sha256:238e70234214138ed7b4e8a0fab0e5e13872edab3be586ab8198c407620e2ab9"}, + {file = "tzdata-2022.1.tar.gz", hash = "sha256:8b536a8ec63dc0751342b3984193a3118f8fca2afe25752bb9b7fffd398552d3"}, ] tzlocal = [ - {file = "tzlocal-4.1-py3-none-any.whl", hash = "sha256:28ba8d9fcb6c9a782d6e0078b4f6627af1ea26aeaa32b4eab5324abc7df4149f"}, - {file = "tzlocal-4.1.tar.gz", hash = "sha256:0f28015ac68a5c067210400a9197fc5d36ba9bc3f8eaf1da3cbd59acdfed9e09"}, + {file = "tzlocal-4.2-py3-none-any.whl", hash = "sha256:89885494684c929d9191c57aa27502afc87a579be5cdd3225c77c463ea043745"}, + {file = "tzlocal-4.2.tar.gz", hash = "sha256:ee5842fa3a795f023514ac2d801c4a81d1743bbe642e3940143326b3a00addd7"}, ] uri-template = [ - {file = "uri_template-1.1.0-py3-none-any.whl", hash = "sha256:1be2136c9fb0e2a41f22eca708202232be9cb74ea88ada7578c966a02c85dc72"}, + {file = "uri_template-1.2.0-py3-none-any.whl", hash = "sha256:f1699c77b73b925cf4937eae31ab282a86dc885c333f2e942513f08f691fc7db"}, + {file = "uri_template-1.2.0.tar.gz", hash = "sha256:934e4d09d108b70eb8a24410af8615294d09d279ce0e7cbcdaef1bd21f932b06"}, ] urllib3 = [ - {file = "urllib3-1.26.8-py2.py3-none-any.whl", hash = "sha256:000ca7f471a233c2251c6c7023ee85305721bfdf18621ebff4fd17a8653427ed"}, - {file = "urllib3-1.26.8.tar.gz", hash = "sha256:0e7c33d9a63e7ddfcb86780aac87befc2fbddf46c58dbb487e0855f7ceec283c"}, + {file = "urllib3-1.26.9-py2.py3-none-any.whl", hash = "sha256:44ece4d53fb1706f667c9bd1c648f5469a2ec925fcf3a776667042d645472c14"}, + {file = "urllib3-1.26.9.tar.gz", hash = "sha256:aabaf16477806a5e1dd19aa41f8c2b7950dd3c746362d7e3223dbe6de6ac448e"}, ] validators = [ {file = "validators-0.18.2-py3-none-any.whl", hash = "sha256:0143dcca8a386498edaf5780cbd5960da1a4c85e0719f3ee5c9b41249c4fefbd"}, {file = "validators-0.18.2.tar.gz", hash = "sha256:37cd9a9213278538ad09b5b9f9134266e7c226ab1fede1d500e29e0a8fbb9ea6"}, ] watchdog = [ - {file = "watchdog-2.1.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:9693f35162dc6208d10b10ddf0458cc09ad70c30ba689d9206e02cd836ce28a3"}, - {file = "watchdog-2.1.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:aba5c812f8ee8a3ff3be51887ca2d55fb8e268439ed44110d3846e4229eb0e8b"}, - {file = "watchdog-2.1.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4ae38bf8ba6f39d5b83f78661273216e7db5b00f08be7592062cb1fc8b8ba542"}, - {file = "watchdog-2.1.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:ad6f1796e37db2223d2a3f302f586f74c72c630b48a9872c1e7ae8e92e0ab669"}, - {file = "watchdog-2.1.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:922a69fa533cb0c793b483becaaa0845f655151e7256ec73630a1b2e9ebcb660"}, - {file = "watchdog-2.1.6-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b2fcf9402fde2672545b139694284dc3b665fd1be660d73eca6805197ef776a3"}, - {file = "watchdog-2.1.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3386b367e950a11b0568062b70cc026c6f645428a698d33d39e013aaeda4cc04"}, - {file = "watchdog-2.1.6-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8f1c00aa35f504197561060ca4c21d3cc079ba29cf6dd2fe61024c70160c990b"}, - {file = "watchdog-2.1.6-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b52b88021b9541a60531142b0a451baca08d28b74a723d0c99b13c8c8d48d604"}, - {file = "watchdog-2.1.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8047da932432aa32c515ec1447ea79ce578d0559362ca3605f8e9568f844e3c6"}, - {file = "watchdog-2.1.6-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e92c2d33858c8f560671b448205a268096e17870dcf60a9bb3ac7bfbafb7f5f9"}, - {file = "watchdog-2.1.6-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b7d336912853d7b77f9b2c24eeed6a5065d0a0cc0d3b6a5a45ad6d1d05fb8cd8"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_aarch64.whl", hash = "sha256:cca7741c0fcc765568350cb139e92b7f9f3c9a08c4f32591d18ab0a6ac9e71b6"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_armv7l.whl", hash = "sha256:25fb5240b195d17de949588628fdf93032ebf163524ef08933db0ea1f99bd685"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_i686.whl", hash = "sha256:be9be735f827820a06340dff2ddea1fb7234561fa5e6300a62fe7f54d40546a0"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_ppc64.whl", hash = "sha256:d0d19fb2441947b58fbf91336638c2b9f4cc98e05e1045404d7a4cb7cddc7a65"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:3becdb380d8916c873ad512f1701f8a92ce79ec6978ffde92919fd18d41da7fb"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_s390x.whl", hash = "sha256:ae67501c95606072aafa865b6ed47343ac6484472a2f95490ba151f6347acfc2"}, - {file = "watchdog-2.1.6-py3-none-manylinux2014_x86_64.whl", hash = "sha256:e0f30db709c939cabf64a6dc5babb276e6d823fd84464ab916f9b9ba5623ca15"}, - {file = "watchdog-2.1.6-py3-none-win32.whl", hash = "sha256:e02794ac791662a5eafc6ffeaf9bcc149035a0e48eb0a9d40a8feb4622605a3d"}, - {file = "watchdog-2.1.6-py3-none-win_amd64.whl", hash = "sha256:bd9ba4f332cf57b2c1f698be0728c020399ef3040577cde2939f2e045b39c1e5"}, - {file = "watchdog-2.1.6-py3-none-win_ia64.whl", hash = "sha256:a0f1c7edf116a12f7245be06120b1852275f9506a7d90227648b250755a03923"}, - {file = "watchdog-2.1.6.tar.gz", hash = "sha256:a36e75df6c767cbf46f61a91c70b3ba71811dfa0aca4a324d9407a06a8b7a2e7"}, + {file = "watchdog-2.1.7-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:177bae28ca723bc00846466016d34f8c1d6a621383b6caca86745918d55c7383"}, + {file = "watchdog-2.1.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1d1cf7dfd747dec519486a98ef16097e6c480934ef115b16f18adb341df747a4"}, + {file = "watchdog-2.1.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7f14ce6adea2af1bba495acdde0e510aecaeb13b33f7bd2f6324e551b26688ca"}, + {file = "watchdog-2.1.7-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:4d0e98ac2e8dd803a56f4e10438b33a2d40390a72750cff4939b4b274e7906fa"}, + {file = "watchdog-2.1.7-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:81982c7884aac75017a6ecc72f1a4fedbae04181a8665a34afce9539fc1b3fab"}, + {file = "watchdog-2.1.7-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0b4a1fe6201c6e5a1926f5767b8664b45f0fcb429b62564a41f490ff1ce1dc7a"}, + {file = "watchdog-2.1.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6e6ae29b72977f2e1ee3d0b760d7ee47896cb53e831cbeede3e64485e5633cc8"}, + {file = "watchdog-2.1.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b9777664848160449e5b4260e0b7bc1ae0f6f4992a8b285db4ec1ef119ffa0e2"}, + {file = "watchdog-2.1.7-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:19b36d436578eb437e029c6b838e732ed08054956366f6dd11875434a62d2b99"}, + {file = "watchdog-2.1.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b61acffaf5cd5d664af555c0850f9747cc5f2baf71e54bbac164c58398d6ca7b"}, + {file = "watchdog-2.1.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1e877c70245424b06c41ac258023ea4bd0c8e4ff15d7c1368f17cd0ae6e351dd"}, + {file = "watchdog-2.1.7-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d802d65262a560278cf1a65ef7cae4e2bc7ecfe19e5451349e4c67e23c9dc420"}, + {file = "watchdog-2.1.7-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b3750ee5399e6e9c69eae8b125092b871ee9e2fcbd657a92747aea28f9056a5c"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_aarch64.whl", hash = "sha256:ed6d9aad09a2a948572224663ab00f8975fae242aa540509737bb4507133fa2d"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_armv7l.whl", hash = "sha256:b26e13e8008dcaea6a909e91d39b629a39635d1a8a7239dd35327c74f4388601"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_i686.whl", hash = "sha256:0908bb50f6f7de54d5d31ec3da1654cb7287c6b87bce371954561e6de379d690"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_ppc64.whl", hash = "sha256:bdcbf75580bf4b960fb659bbccd00123d83119619195f42d721e002c1621602f"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:81a5861d0158a7e55fe149335fb2bbfa6f48cbcbd149b52dbe2cd9a544034bbd"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_s390x.whl", hash = "sha256:03b43d583df0f18782a0431b6e9e9965c5b3f7cf8ec36a00b930def67942c385"}, + {file = "watchdog-2.1.7-py3-none-manylinux2014_x86_64.whl", hash = "sha256:ae934e34c11aa8296c18f70bf66ed60e9870fcdb4cc19129a04ca83ab23e7055"}, + {file = "watchdog-2.1.7-py3-none-win32.whl", hash = "sha256:49639865e3db4be032a96695c98ac09eed39bbb43fe876bb217da8f8101689a6"}, + {file = "watchdog-2.1.7-py3-none-win_amd64.whl", hash = "sha256:340b875aecf4b0e6672076a6f05cfce6686935559bb6d34cebedee04126a9566"}, + {file = "watchdog-2.1.7-py3-none-win_ia64.whl", hash = "sha256:351e09b6d9374d5bcb947e6ac47a608ec25b9d70583e9db00b2fcdb97b00b572"}, + {file = "watchdog-2.1.7.tar.gz", hash = "sha256:3fd47815353be9c44eebc94cc28fe26b2b0c5bd889dafc4a5a7cbdf924143480"}, ] wcwidth = [ {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, @@ -4171,22 +4240,22 @@ webencodings = [ {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, ] websocket-client = [ - {file = "websocket-client-1.2.3.tar.gz", hash = "sha256:1315816c0acc508997eb3ae03b9d3ff619c9d12d544c9a9b553704b1cc4f6af5"}, - {file = "websocket_client-1.2.3-py3-none-any.whl", hash = "sha256:2eed4cc58e4d65613ed6114af2f380f7910ff416fc8c46947f6e76b6815f56c0"}, + {file = "websocket-client-1.3.2.tar.gz", hash = "sha256:50b21db0058f7a953d67cc0445be4b948d7fc196ecbeb8083d68d94628e4abf6"}, + {file = "websocket_client-1.3.2-py3-none-any.whl", hash = "sha256:722b171be00f2b90e1d4fb2f2b53146a536ca38db1da8ff49c972a4e1365d0ef"}, ] werkzeug = [ - {file = "Werkzeug-2.0.3-py3-none-any.whl", hash = "sha256:1421ebfc7648a39a5c58c601b154165d05cf47a3cd0ccb70857cbdacf6c8f2b8"}, - {file = "Werkzeug-2.0.3.tar.gz", hash = "sha256:b863f8ff057c522164b6067c9e28b041161b4be5ba4d0daceeaa50a163822d3c"}, + {file = "Werkzeug-2.1.1-py3-none-any.whl", hash = "sha256:3c5493ece8268fecdcdc9c0b112211acd006354723b280d643ec732b6d4063d6"}, + {file = "Werkzeug-2.1.1.tar.gz", hash = "sha256:f8e89a20aeabbe8a893c24a461d3ee5dad2123b05cc6abd73ceed01d39c3ae74"}, ] widgetsnbextension = [ - {file = "widgetsnbextension-3.5.2-py2.py3-none-any.whl", hash = "sha256:763a9fdc836d141fa080005a886d63f66f73d56dba1fb5961afc239c77708569"}, - {file = "widgetsnbextension-3.5.2.tar.gz", hash = "sha256:e0731a60ba540cd19bbbefe771a9076dcd2dde90713a8f87f27f53f2d1db7727"}, + {file = "widgetsnbextension-3.6.0-py2.py3-none-any.whl", hash = "sha256:4fd321cad39fdcf8a8e248a657202d42917ada8e8ed5dd3f60f073e0d54ceabd"}, + {file = "widgetsnbextension-3.6.0.tar.gz", hash = "sha256:e84a7a9fcb9baf3d57106e184a7389a8f8eb935bf741a5eb9d60aa18cc029a80"}, ] xlrd = [ {file = "xlrd-1.2.0-py2.py3-none-any.whl", hash = "sha256:e551fb498759fa3a5384a94ccd4c3c02eb7c00ea424426e212ac0c57be9dfbde"}, {file = "xlrd-1.2.0.tar.gz", hash = "sha256:546eb36cee8db40c3eaa46c351e67ffee6eeb5fa2650b71bc4c758a29a1b29b2"}, ] zipp = [ - {file = "zipp-3.7.0-py3-none-any.whl", hash = "sha256:b47250dd24f92b7dd6a0a8fc5244da14608f3ca90a5efcd37a3b1642fac9a375"}, - {file = "zipp-3.7.0.tar.gz", hash = "sha256:9f50f446828eb9d45b267433fd3e9da8d801f614129124863f9c51ebceafb87d"}, + {file = "zipp-3.8.0-py3-none-any.whl", hash = "sha256:c4f6e5bbf48e74f7a38e7cc5b0480ff42b0ae5178957d564d18932525d5cf099"}, + {file = "zipp-3.8.0.tar.gz", hash = "sha256:56bf8aadb83c24db6c4b577e13de374ccfb67da2078beba1d037c17980bf43ad"}, ] diff --git a/pyproject.toml b/pyproject.toml index bd16f0c7..6ca0b519 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,23 +46,23 @@ streamlit = {version="^0.67.1", optional=true} neptune-client = {version= "^0.4.115", optional = true} hiplot = {version= "^0.1.12", optional = true} paramiko = {version="^2.7.1", optional=true} -sphinx = {version="^3.2.1", optional=true} -nbsphinx = {version="^0.8.5", optional=true} -sphinx-rtd-theme = {version="^0.5.0", optional=true} pyrecorder = {version="^0.1.8", optional=true} entmoot = {version="^0.1.4", optional=true} -sphinx-reredirects = {version="^0.0.0", optional=true} + [tool.poetry.extras] -bnn = ["blitz-bayesian-pytorch"] entmoot = ["entmoot"] experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "streamlit"] -docs = ["sphinx", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] [tool.poetry.dev-dependencies] ipdb = "0.13.4" rope = "^0.17.0" black = {version = "^20.8b1", allow-prereleases = true} +sphinx = "3.5.4" +jinja2 = "<3.1.0" +nbsphinx = "^0.8.5" +sphinx-rtd-theme = "^0.5.0" +sphinx-reredirects = "^0.0.0" [tool.poetry.scripts] summit-tests = 'summit:run_tests' From babe2ba54aeebc2699f64541cf6d6edd2e6d6557 Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:41:32 +0100 Subject: [PATCH 54/56] Add back docs option --- pyproject.toml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 6ca0b519..5cb50d36 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,23 +46,24 @@ streamlit = {version="^0.67.1", optional=true} neptune-client = {version= "^0.4.115", optional = true} hiplot = {version= "^0.1.12", optional = true} paramiko = {version="^2.7.1", optional=true} +sphinx = {version="^3.2.1", optional=true} +jinja2 = {version="<3.1.0", optional=true} +nbsphinx = {version="^0.8.5", optional=true} +sphinx-rtd-theme = {version="^0.5.0", optional=true} pyrecorder = {version="^0.1.8", optional=true} entmoot = {version="^0.1.4", optional=true} - +sphinx-reredirects = {version="^0.0.0", optional=true} [tool.poetry.extras] +bnn = ["blitz-bayesian-pytorch"] entmoot = ["entmoot"] experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "streamlit"] +docs = ["sphinx", "jinja2", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] [tool.poetry.dev-dependencies] ipdb = "0.13.4" rope = "^0.17.0" black = {version = "^20.8b1", allow-prereleases = true} -sphinx = "3.5.4" -jinja2 = "<3.1.0" -nbsphinx = "^0.8.5" -sphinx-rtd-theme = "^0.5.0" -sphinx-reredirects = "^0.0.0" [tool.poetry.scripts] summit-tests = 'summit:run_tests' From 75dd1ec63ea9f8e651248dba90bea6928a1ebbcf Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 12:50:17 +0100 Subject: [PATCH 55/56] Update pytest --- poetry.lock | 178 +++++++++++++++++++++++++------------------------ pyproject.toml | 2 +- 2 files changed, 93 insertions(+), 87 deletions(-) diff --git a/poetry.lock b/poetry.lock index c2e343f5..c602a85b 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2,8 +2,8 @@ name = "alabaster" version = "0.7.12" description = "A configurable sidebar-enabled Sphinx theme" -category = "dev" -optional = false +category = "main" +optional = true python-versions = "*" [[package]] @@ -143,8 +143,8 @@ numpy = ">=1.12" name = "babel" version = "2.10.1" description = "Internationalization utilities" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.6" [package.dependencies] @@ -201,7 +201,7 @@ name = "beautifulsoup4" version = "4.11.1" description = "Screen-scraping library" category = "main" -optional = false +optional = true python-versions = ">=3.6.0" [package.dependencies] @@ -238,7 +238,7 @@ name = "bleach" version = "5.0.0" description = "An easy safelist-based HTML-sanitizing tool." category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -370,7 +370,7 @@ name = "certifi" version = "2021.10.8" description = "Python package for providing Mozilla's CA Bundle." category = "main" -optional = false +optional = true python-versions = "*" [[package]] @@ -378,7 +378,7 @@ name = "cffi" version = "1.15.0" description = "Foreign Function Interface for Python calling C code." category = "main" -optional = false +optional = true python-versions = "*" [package.dependencies] @@ -389,7 +389,7 @@ name = "charset-normalizer" version = "2.0.12" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "main" -optional = false +optional = true python-versions = ">=3.5.0" [package.extras] @@ -478,15 +478,15 @@ name = "defusedxml" version = "0.7.1" description = "XML bomb protection for Python stdlib modules" category = "main" -optional = false +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "docutils" version = "0.16" description = "Docutils -- Python Documentation Utilities" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] @@ -508,7 +508,7 @@ name = "entrypoints" version = "0.4" description = "Discover and load entry points from installed packages." category = "main" -optional = false +optional = true python-versions = ">=3.6" [[package]] @@ -532,7 +532,7 @@ name = "fastjsonschema" version = "2.15.3" description = "Fastest Python implementation of JSON schema" category = "main" -optional = false +optional = true python-versions = "*" [package.extras] @@ -724,15 +724,15 @@ name = "idna" version = "3.3" description = "Internationalized Domain Names in Applications (IDNA)" category = "main" -optional = false +optional = true python-versions = ">=3.5" [[package]] name = "imagesize" version = "1.3.0" description = "Getting image size from png/jpeg/jpeg2000/gif file" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] @@ -756,7 +756,7 @@ name = "importlib-resources" version = "5.7.1" description = "Read resources from Python packages" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -766,6 +766,14 @@ zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)"] testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"] +[[package]] +name = "iniconfig" +version = "1.1.1" +description = "iniconfig: brain-dead simple config-ini parsing" +category = "main" +optional = false +python-versions = "*" + [[package]] name = "ipdb" version = "0.13.4" @@ -902,7 +910,7 @@ name = "jinja2" version = "3.0.3" description = "A very fast and expressive template engine." category = "main" -optional = false +optional = true python-versions = ">=3.6" [package.dependencies] @@ -948,7 +956,7 @@ name = "jsonschema" version = "4.4.0" description = "An implementation of JSON Schema validation for Python" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -973,7 +981,7 @@ name = "jupyter-client" version = "7.2.2" description = "Jupyter protocol implementation and client libraries" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -994,7 +1002,7 @@ name = "jupyter-core" version = "4.10.0" description = "Jupyter core package. A base package on which Jupyter projects rely." category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -1009,7 +1017,7 @@ name = "jupyterlab-pygments" version = "0.2.2" description = "Pygments theme using JupyterLab CSS variables" category = "main" -optional = false +optional = true python-versions = ">=3.7" [[package]] @@ -1057,7 +1065,7 @@ name = "markupsafe" version = "2.1.1" description = "Safely add untrusted strings to HTML/XML markup." category = "main" -optional = false +optional = true python-versions = ">=3.7" [[package]] @@ -1095,7 +1103,7 @@ name = "mistune" version = "0.8.4" description = "The fastest markdown parser in pure Python" category = "main" -optional = false +optional = true python-versions = "*" [[package]] @@ -1106,14 +1114,6 @@ category = "main" optional = true python-versions = "*" -[[package]] -name = "more-itertools" -version = "8.12.0" -description = "More routines for operating on iterables, beyond itertools" -category = "main" -optional = false -python-versions = ">=3.5" - [[package]] name = "msgpack" version = "1.0.3" @@ -1135,7 +1135,7 @@ name = "nbclient" version = "0.6.0" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." category = "main" -optional = false +optional = true python-versions = ">=3.7.0" [package.dependencies] @@ -1153,7 +1153,7 @@ name = "nbconvert" version = "6.5.0" description = "Converting Jupyter Notebooks" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -1186,7 +1186,7 @@ name = "nbformat" version = "5.3.0" description = "The Jupyter Notebook format" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.dependencies] @@ -1202,8 +1202,8 @@ test = ["check-manifest", "testpath", "pytest", "pre-commit"] name = "nbsphinx" version = "0.8.8" description = "Jupyter Notebook Tools for Sphinx" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.6" [package.dependencies] @@ -1242,7 +1242,7 @@ name = "nest-asyncio" version = "1.5.5" description = "Patch asyncio to allow nested event loops" category = "main" -optional = false +optional = true python-versions = ">=3.5" [[package]] @@ -1361,7 +1361,7 @@ name = "pandocfilters" version = "1.5.0" description = "Utilities for writing pandoc filters in python" category = "main" -optional = false +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] @@ -1550,7 +1550,7 @@ name = "pycparser" version = "2.21" description = "C parser in Python" category = "main" -optional = false +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] @@ -1669,25 +1669,29 @@ name = "pyrsistent" version = "0.18.1" description = "Persistent/Functional/Immutable data structures" category = "main" -optional = false +optional = true python-versions = ">=3.7" [[package]] name = "pytest" -version = "3.10.1" +version = "6.2.5" description = "pytest: simple powerful testing with Python" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [package.dependencies] -atomicwrites = ">=1.0" -attrs = ">=17.4.0" +atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} +attrs = ">=19.2.0" colorama = {version = "*", markers = "sys_platform == \"win32\""} -more-itertools = ">=4.0.0" -pluggy = ">=0.7" -py = ">=1.5.0" -six = ">=1.10.0" +iniconfig = "*" +packaging = "*" +pluggy = ">=0.12,<2.0" +py = ">=1.8.2" +toml = "*" + +[package.extras] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] [[package]] name = "python-dateutil" @@ -1725,7 +1729,7 @@ name = "pywin32" version = "303" description = "Python for Window Extensions" category = "main" -optional = false +optional = true python-versions = "*" [[package]] @@ -1749,7 +1753,7 @@ name = "pyzmq" version = "22.3.0" description = "Python bindings for 0MQ" category = "main" -optional = false +optional = true python-versions = ">=3.6" [package.dependencies] @@ -1769,7 +1773,7 @@ name = "requests" version = "2.27.1" description = "Python HTTP for Humans." category = "main" -optional = false +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" [package.dependencies] @@ -1948,8 +1952,8 @@ python-versions = ">=3.6" name = "snowballstemmer" version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -category = "dev" -optional = false +category = "main" +optional = true python-versions = "*" [[package]] @@ -1957,15 +1961,15 @@ name = "soupsieve" version = "2.3.2.post1" description = "A modern CSS selector implementation for Beautiful Soup." category = "main" -optional = false +optional = true python-versions = ">=3.6" [[package]] name = "sphinx" version = "3.5.4" description = "Python documentation generator" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.dependencies] @@ -1995,8 +1999,8 @@ test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"] name = "sphinx-reredirects" version = "0.0.0" description = "Handles redirects for moved pages in Sphinx documentation projects" -category = "dev" -optional = false +category = "main" +optional = true python-versions = "*" [package.dependencies] @@ -2006,8 +2010,8 @@ sphinx = "*" name = "sphinx-rtd-theme" version = "0.5.2" description = "Read the Docs theme for Sphinx" -category = "dev" -optional = false +category = "main" +optional = true python-versions = "*" [package.dependencies] @@ -2021,8 +2025,8 @@ dev = ["transifex-client", "sphinxcontrib-httpdomain", "bump2version"] name = "sphinxcontrib-applehelp" version = "1.0.2" description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.extras] @@ -2033,8 +2037,8 @@ test = ["pytest"] name = "sphinxcontrib-devhelp" version = "1.0.2" description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.extras] @@ -2045,8 +2049,8 @@ test = ["pytest"] name = "sphinxcontrib-htmlhelp" version = "2.0.0" description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.6" [package.extras] @@ -2057,8 +2061,8 @@ test = ["pytest", "html5lib"] name = "sphinxcontrib-jsmath" version = "1.0.1" description = "A sphinx extension which renders display math in HTML via JavaScript" -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.extras] @@ -2068,8 +2072,8 @@ test = ["pytest", "flake8", "mypy"] name = "sphinxcontrib-qthelp" version = "1.0.3" description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.extras] @@ -2080,8 +2084,8 @@ test = ["pytest"] name = "sphinxcontrib-serializinghtml" version = "1.1.5" description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." -category = "dev" -optional = false +category = "main" +optional = true python-versions = ">=3.5" [package.extras] @@ -2213,7 +2217,7 @@ name = "tinycss2" version = "1.1.1" description = "A tiny CSS parser" category = "main" -optional = false +optional = true python-versions = ">=3.6" [package.dependencies] @@ -2263,7 +2267,7 @@ name = "tornado" version = "6.1" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." category = "main" -optional = false +optional = true python-versions = ">= 3.5" [[package]] @@ -2351,7 +2355,7 @@ name = "urllib3" version = "1.26.9" description = "HTTP library with thread-safe connection pooling, file post, and more." category = "main" -optional = false +optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4" [package.extras] @@ -2406,7 +2410,7 @@ name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" category = "main" -optional = false +optional = true python-versions = "*" [[package]] @@ -2457,7 +2461,7 @@ name = "zipp" version = "3.8.0" description = "Backport of pathlib-compatible object wrapper for zip files" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.extras] @@ -2465,13 +2469,15 @@ docs = ["sphinx", "jaraco.packaging (>=9)", "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 (>=0.9.1)"] [extras] +bnn = [] +docs = ["sphinx", "jinja2", "nbsphinx", "sphinx-rtd-theme", "sphinx-reredirects"] entmoot = ["entmoot"] experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "streamlit"] [metadata] lock-version = "1.1" python-versions = "^3.8, <3.11" -content-hash = "ce548065f44ccfc88a1a72b3ce67056efe238f14fa0992a9a27a78eeb8d214c1" +content-hash = "3f5e443aa772e7f0f62cda6282f95e81e4d548cf5084b1542c2ca0f01d1de90c" [metadata.files] alabaster = [ @@ -2961,6 +2967,10 @@ importlib-resources = [ {file = "importlib_resources-5.7.1-py3-none-any.whl", hash = "sha256:e447dc01619b1e951286f3929be820029d48c75eb25d265c28b92a16548212b8"}, {file = "importlib_resources-5.7.1.tar.gz", hash = "sha256:b6062987dfc51f0fcb809187cffbd60f35df7acb4589091f154214af6d0d49d3"}, ] +iniconfig = [ + {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, + {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, +] ipdb = [ {file = "ipdb-0.13.4.tar.gz", hash = "sha256:c85398b5fb82f82399fc38c44fe3532c0dde1754abee727d8f5cfcc74547b334"}, ] @@ -3202,10 +3212,6 @@ monotonic = [ {file = "monotonic-1.6-py2.py3-none-any.whl", hash = "sha256:68687e19a14f11f26d140dd5c86f3dba4bf5df58003000ed467e0e2a69bca96c"}, {file = "monotonic-1.6.tar.gz", hash = "sha256:3a55207bcfed53ddd5c5bae174524062935efed17792e9de2ad0205ce9ad63f7"}, ] -more-itertools = [ - {file = "more-itertools-8.12.0.tar.gz", hash = "sha256:7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d247f6064"}, - {file = "more_itertools-8.12.0-py3-none-any.whl", hash = "sha256:43e6dd9942dffd72661a2c4ef383ad7da1e6a3e968a927ad7a6083ab410a688b"}, -] msgpack = [ {file = "msgpack-1.0.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:96acc674bb9c9be63fa8b6dabc3248fdc575c4adc005c440ad02f87ca7edd079"}, {file = "msgpack-1.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2c3ca57c96c8e69c1a0d2926a6acf2d9a522b41dc4253a8945c4c6cd4981a4e3"}, @@ -3628,8 +3634,8 @@ pyrsistent = [ {file = "pyrsistent-0.18.1.tar.gz", hash = "sha256:d4d61f8b993a7255ba714df3aca52700f8125289f84f704cf80916517c46eb96"}, ] pytest = [ - {file = "pytest-3.10.1-py2.py3-none-any.whl", hash = "sha256:3f193df1cfe1d1609d4c583838bea3d532b18d6160fd3f55c9447fdca30848ec"}, - {file = "pytest-3.10.1.tar.gz", hash = "sha256:e246cf173c01169b9617fc07264b7b1316e78d7a650055235d6d897bc80d9660"}, + {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"}, + {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"}, ] python-dateutil = [ {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, diff --git a/pyproject.toml b/pyproject.toml index 5cb50d36..511453f7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,7 +38,7 @@ botorch = "^0.5.0" gpytorch = "^1.5.0" # Tests -pytest = "^3.0" +pytest = "^6.2.5" # Optional dependencies xlrd = {version="^1.2.0", optional=true} From a5168da8d18a74b4a66e1e57db9be47967286c7c Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Mon, 25 Apr 2022 13:08:28 +0100 Subject: [PATCH 56/56] End on exit code --- pyproject.toml | 2 +- summit/__init__.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 511453f7..fe727c43 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "summit" -version = "0.8.5" +version = "0.8.4" description = "Tools for optimizing chemical processes" authors = ["Kobi Felton ", "Jan Rittig"] license = "MIT" diff --git a/summit/__init__.py b/summit/__init__.py index 096ebc0a..62fd87b1 100644 --- a/summit/__init__.py +++ b/summit/__init__.py @@ -25,9 +25,10 @@ def clean_house(config_dir_name=".summit"): def run_tests(): import pytest - import importlib.util + from pytest import ExitCode + import sys - summit_path = importlib.util.find_spec("summit").submodule_search_locations[0] retcode = pytest.main( ["--doctest-modules", "--disable-warnings", "--pyargs", "summit"] ) + sys.exit(retcode)