From ee87380f1632263d62132c9172330db0324fc1d6 Mon Sep 17 00:00:00 2001 From: Noah Date: Tue, 20 Aug 2024 20:47:27 -0400 Subject: [PATCH] chore: fix links (#869) --- .flake8 | 1 + .github/codecov.sh | 14 - .../{benchmark.yml => benchmark.yaml} | 0 .github/workflows/{cicd.yml => ci.yaml} | 91 +- .../{manual_release.yml => release.yaml} | 13 +- .gitignore | 1 + CHANGELOG.md | 368 ++++---- CONTRIBUTING.md | 6 +- LICENSE | 2 +- README.md | 80 +- SECURITY.md | 2 +- poetry.lock | 830 ++++++++++-------- pyproject.toml | 6 +- tasks/test.py | 3 +- .../test_single_file_multiple_extensions.py | 2 +- 15 files changed, 734 insertions(+), 685 deletions(-) delete mode 100755 .github/codecov.sh rename .github/workflows/{benchmark.yml => benchmark.yaml} (100%) rename .github/workflows/{cicd.yml => ci.yaml} (60%) rename .github/workflows/{manual_release.yml => release.yaml} (77%) diff --git a/.flake8 b/.flake8 index e14b7619..91ccc51e 100644 --- a/.flake8 +++ b/.flake8 @@ -1,2 +1,3 @@ [flake8] max-line-length=88 +ignore=A005,W503 diff --git a/.github/codecov.sh b/.github/codecov.sh deleted file mode 100755 index 260b9a53..00000000 --- a/.github/codecov.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -# From https://github.com/decidim/decidim (AGPL-3.0) - -EVENT_PAYLOAD_FILE=$1 - -PR_ID=`jq ".number // .check_run.pull_requests[0].number" $EVENT_PAYLOAD_FILE` -GIT_SHA=`jq -r ".pull_request.head.sha // .check_run.head_sha // .after" $EVENT_PAYLOAD_FILE` - -if [ $PR_ID = "null" ]; then - bash <(curl -s https://codecov.io/bash) -C $GIT_SHA -s $ARTIFACT_DIR -else - bash <(curl -s https://codecov.io/bash) -C $GIT_SHA -P $PR_ID -s $ARTIFACT_DIR -fi diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yaml similarity index 100% rename from .github/workflows/benchmark.yml rename to .github/workflows/benchmark.yaml diff --git a/.github/workflows/cicd.yml b/.github/workflows/ci.yaml similarity index 60% rename from .github/workflows/cicd.yml rename to .github/workflows/ci.yaml index 4d451696..38d50260 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/ci.yaml @@ -1,4 +1,4 @@ -name: Syrupy CICD +name: CI on: push: @@ -6,10 +6,18 @@ on: - main pull_request: +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + env: CI: 1 VENV: .venv +permissions: + contents: read + checks: write + jobs: analysis: name: Code Analysis @@ -24,6 +32,7 @@ jobs: - name: Lint run: | poetry run invoke lint + tests: name: Tests runs-on: ${{ matrix.os }} @@ -42,21 +51,20 @@ jobs: - name: Install project dependencies run: . script/bootstrap shell: bash - - name: Run Tests - if: | - !(matrix.python-version == '3.12-dev' && matrix.os == 'ubuntu-latest') - shell: bash - run: poetry run invoke test - name: Run Tests (with coverage) + id: tests-with-coverage if: matrix.python-version == '3.12-dev' && matrix.os == 'ubuntu-latest' shell: bash run: poetry run invoke test --coverage - - name: Upload Coverage - if: matrix.python-version == '3.12-dev' && matrix.os == 'ubuntu-latest' - env: - CODECOV_TOKEN: "" # FIXME: Needs a new token. + - name: Run Tests + if: steps.tests-with-coverage.outcome == 'skipped' shell: bash - run: ./.github/codecov.sh $GITHUB_EVENT_PATH + run: poetry run invoke test + - name: Upload Coverage + if: steps.tests-with-coverage.conclusion == 'success' + uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.5.0 + with: + token: ${{ secrets.CODECOV_TOKEN }} # # TODO: How to do this with poetry? # version_checks: @@ -87,6 +95,9 @@ jobs: runs-on: ubuntu-latest if: "github.event_name == 'pull_request' && !contains(github.event.head_commit.message, '[skip ci]')" needs: [tests] + permissions: + contents: write + pull-requests: write steps: - uses: actions/checkout@v4.1.1 - name: Setup Environment @@ -100,58 +111,22 @@ jobs: with: tool: 'pytest' output-file-path: benchmarks.json - github-token: ${{ secrets.GITHUB_TOKEN }} + github-token: ${{ github.token }} auto-push: false alert-threshold: '200%' comment-on-alert: true fail-on-alert: false comment-always: true - dry_run: - name: Release Test Package + required_checks: + name: Required Checks + needs: + - analysis + - tests + - benchmark runs-on: ubuntu-latest - # Dry run check does not need to wait for others - if: github.event_name == 'pull_request' && github.event.pull_request.head.ref == 'next' && !contains(github.event.head_commit.message, '[skip ci]') + if: always() steps: - - uses: actions/checkout@v4.1.1 - with: - fetch-depth: 0 - - name: Setup Environment - uses: ./.github/actions/setup-env - - name: Install project dependencies - run: . script/bootstrap - - name: Dry Release - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: "" # FIXME: Needs a new token. - run: | - poetry run invoke release --dry-run - - release: - name: Release - runs-on: ubuntu-latest - needs: [analysis, tests] # [version_checks] - if: github.event_name == 'push' && github.ref == 'refs/heads/main' && !contains(github.event.head_commit.message, '[skip ci]') - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: "" # FIXME: Needs a new token. - steps: - - uses: actions/checkout@v4.1.1 - with: - fetch-depth: 0 - persist-credentials: false - - name: Setup Environment - uses: ./.github/actions/setup-env - - name: Install project dependencies - run: . script/bootstrap - - name: Release - uses: cycjimmy/semantic-release-action@v4.0.0 - with: - branch: main - dry_run: false - extra_plugins: | - @semantic-release/changelog - @semantic-release/exec - @semantic-release/git - env: - GITHUB_TOKEN: "" #FIXME: Needs a new token. + - name: Fail on error + if: contains(needs.*.result, 'failure') || cancelled() + run: exit 1 diff --git a/.github/workflows/manual_release.yml b/.github/workflows/release.yaml similarity index 77% rename from .github/workflows/manual_release.yml rename to .github/workflows/release.yaml index 4ed8aeea..6650fdd7 100644 --- a/.github/workflows/manual_release.yml +++ b/.github/workflows/release.yaml @@ -1,4 +1,4 @@ -name: Syrupy Manual Release +name: Release on: workflow_dispatch: @@ -11,18 +11,19 @@ jobs: release: name: Release runs-on: ubuntu-latest - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: "" # FIXME: Needs a new token. + environment: release steps: - uses: actions/checkout@v4.1.1 with: fetch-depth: 0 persist-credentials: false + - name: Setup Environment uses: ./.github/actions/setup-env + - name: Install project dependencies run: . script/bootstrap + - name: Release uses: cycjimmy/semantic-release-action@v4.0.0 with: @@ -33,4 +34,6 @@ jobs: @semantic-release/exec @semantic-release/git env: - GITHUB_TOKEN: "" # FIXME: Needs a new token. + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_PUBLISH_TOKEN }} + GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_PAT }} diff --git a/.gitignore b/.gitignore index df28762b..3c936cdc 100644 --- a/.gitignore +++ b/.gitignore @@ -37,6 +37,7 @@ pip-delete-this-directory.txt .pytest_cache/ .mypy_cache/ .coverage +coverage htmlcov/ benchmarks/test_cases/__snapshots__ diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d9d7d1d..ea6a86eb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,157 +6,157 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). From v1.0.0 onwards, this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Pre-v1, breaking changes are indicated via a minor release, while all other changes fall under patches. At any time, you can see what's in progress for a version by filtering GitHub issues by milestone. -## [4.6.1](https://github.com/noahnu/syrupy/compare/v4.6.0...v4.6.1) (2024-02-07) +## [4.6.1](https://github.com/syrupy-project/syrupy/compare/v4.6.0...v4.6.1) (2024-02-07) ### Bug Fixes -* support pytest 8 ([#855](https://github.com/noahnu/syrupy/issues/855)) ([3175615](https://github.com/noahnu/syrupy/commit/3175615a31bde0cdac6ec4a18d4a9285001d5d21)) +* support pytest 8 ([#855](https://github.com/syrupy-project/syrupy/issues/855)) ([3175615](https://github.com/syrupy-project/syrupy/commit/3175615a31bde0cdac6ec4a18d4a9285001d5d21)) -# [4.6.0](https://github.com/noahnu/syrupy/compare/v4.5.0...v4.6.0) (2023-10-24) +# [4.6.0](https://github.com/syrupy-project/syrupy/compare/v4.5.0...v4.6.0) (2023-10-24) ### Features -* **serializer:** add support for FunctionType serialization ([#823](https://github.com/noahnu/syrupy/issues/823)) ([f3a454a](https://github.com/noahnu/syrupy/commit/f3a454a378681ef647fc215a05b8fe9dee3a21c4)) +* **serializer:** add support for FunctionType serialization ([#823](https://github.com/syrupy-project/syrupy/issues/823)) ([f3a454a](https://github.com/syrupy-project/syrupy/commit/f3a454a378681ef647fc215a05b8fe9dee3a21c4)) -# [4.5.0](https://github.com/noahnu/syrupy/compare/v4.4.0...v4.5.0) (2023-09-01) +# [4.5.0](https://github.com/syrupy-project/syrupy/compare/v4.4.0...v4.5.0) (2023-09-01) ### Features -* support setting defaults ([#802](https://github.com/noahnu/syrupy/issues/802)) ([c877559](https://github.com/noahnu/syrupy/commit/c87755984341ee4772f4f00b9309de6daec30ec0)) +* support setting defaults ([#802](https://github.com/syrupy-project/syrupy/issues/802)) ([c877559](https://github.com/syrupy-project/syrupy/commit/c87755984341ee4772f4f00b9309de6daec30ec0)) -# [4.4.0](https://github.com/noahnu/syrupy/compare/v4.3.0...v4.4.0) (2023-08-29) +# [4.4.0](https://github.com/syrupy-project/syrupy/compare/v4.3.0...v4.4.0) (2023-08-29) ### Features -* **filter:** add paths_include filter ([#798](https://github.com/noahnu/syrupy/issues/798)) ([1676fa5](https://github.com/noahnu/syrupy/commit/1676fa554d74edeb1f448edbe661e053bf8ad350)) +* **filter:** add paths_include filter ([#798](https://github.com/syrupy-project/syrupy/issues/798)) ([1676fa5](https://github.com/syrupy-project/syrupy/commit/1676fa554d74edeb1f448edbe661e053bf8ad350)) -# [4.3.0](https://github.com/noahnu/syrupy/compare/v4.2.2...v4.3.0) (2023-08-28) +# [4.3.0](https://github.com/syrupy-project/syrupy/compare/v4.2.2...v4.3.0) (2023-08-28) ### Features -* add include option to snapshots, similar to exclude ([#797](https://github.com/noahnu/syrupy/issues/797)) ([d3f891e](https://github.com/noahnu/syrupy/commit/d3f891ea4e561cd1b182e9b2c5d0414821187cd7)) +* add include option to snapshots, similar to exclude ([#797](https://github.com/syrupy-project/syrupy/issues/797)) ([d3f891e](https://github.com/syrupy-project/syrupy/commit/d3f891ea4e561cd1b182e9b2c5d0414821187cd7)) -## [4.2.2](https://github.com/noahnu/syrupy/compare/v4.2.1...v4.2.2) (2023-08-28) +## [4.2.2](https://github.com/syrupy-project/syrupy/compare/v4.2.1...v4.2.2) (2023-08-28) ### Bug Fixes -* remove colored dependency ([#796](https://github.com/noahnu/syrupy/issues/796)) ([96bffcc](https://github.com/noahnu/syrupy/commit/96bffccd229bb1b13e6721baffd80d298000e34b)) +* remove colored dependency ([#796](https://github.com/syrupy-project/syrupy/issues/796)) ([96bffcc](https://github.com/syrupy-project/syrupy/commit/96bffccd229bb1b13e6721baffd80d298000e34b)) -## [4.2.1](https://github.com/noahnu/syrupy/compare/v4.2.0...v4.2.1) (2023-08-21) +## [4.2.1](https://github.com/syrupy-project/syrupy/compare/v4.2.0...v4.2.1) (2023-08-21) ### Bug Fixes -* support python 3.12 ([#794](https://github.com/noahnu/syrupy/issues/794)) ([e2e314f](https://github.com/noahnu/syrupy/commit/e2e314fca6f90d9601c3b7d30370d2ca21e09cfe)) +* support python 3.12 ([#794](https://github.com/syrupy-project/syrupy/issues/794)) ([e2e314f](https://github.com/syrupy-project/syrupy/commit/e2e314fca6f90d9601c3b7d30370d2ca21e09cfe)) -# [4.2.0](https://github.com/noahnu/syrupy/compare/v4.1.1...v4.2.0) (2023-08-21) +# [4.2.0](https://github.com/syrupy-project/syrupy/compare/v4.1.1...v4.2.0) (2023-08-21) ### Features -* **serializer:** add snapshot regex value matcher and bypass custom repr helper ([#791](https://github.com/noahnu/syrupy/issues/791)) ([3ac2ce8](https://github.com/noahnu/syrupy/commit/3ac2ce84c5dfe180606ef32d1dd067af952d376e)) +* **serializer:** add snapshot regex value matcher and bypass custom repr helper ([#791](https://github.com/syrupy-project/syrupy/issues/791)) ([3ac2ce8](https://github.com/syrupy-project/syrupy/commit/3ac2ce84c5dfe180606ef32d1dd067af952d376e)) -## [4.1.1](https://github.com/noahnu/syrupy/compare/v4.1.0...v4.1.1) (2023-08-17) +## [4.1.1](https://github.com/syrupy-project/syrupy/compare/v4.1.0...v4.1.1) (2023-08-17) ### Bug Fixes -* preserve Falsy values in assertion diff function ([#789](https://github.com/noahnu/syrupy/issues/789)) ([118ef92](https://github.com/noahnu/syrupy/commit/118ef9260cb67369050c3bf7672e9aed0046f7f4)) +* preserve Falsy values in assertion diff function ([#789](https://github.com/syrupy-project/syrupy/issues/789)) ([118ef92](https://github.com/syrupy-project/syrupy/commit/118ef9260cb67369050c3bf7672e9aed0046f7f4)) -# [4.1.0](https://github.com/noahnu/syrupy/compare/v4.0.8...v4.1.0) (2023-08-16) +# [4.1.0](https://github.com/syrupy-project/syrupy/compare/v4.0.8...v4.1.0) (2023-08-16) ### Features -* **amber:** expose serialize_custom_iterable method of AmberDataSerializer ([#788](https://github.com/noahnu/syrupy/issues/788)) ([d210cf1](https://github.com/noahnu/syrupy/commit/d210cf192962afc3196c9d6cc81e7c799a6caf26)) +* **amber:** expose serialize_custom_iterable method of AmberDataSerializer ([#788](https://github.com/syrupy-project/syrupy/issues/788)) ([d210cf1](https://github.com/syrupy-project/syrupy/commit/d210cf192962afc3196c9d6cc81e7c799a6caf26)) -## [4.0.8](https://github.com/noahnu/syrupy/compare/v4.0.7...v4.0.8) (2023-07-20) +## [4.0.8](https://github.com/syrupy-project/syrupy/compare/v4.0.7...v4.0.8) (2023-07-20) ### Bug Fixes -* diffing excessively large snapshot lines ([#778](https://github.com/noahnu/syrupy/issues/778)) ([64b4265](https://github.com/noahnu/syrupy/commit/64b42653d1c3af5b56347ccd9afd24e87b29aa18)) +* diffing excessively large snapshot lines ([#778](https://github.com/syrupy-project/syrupy/issues/778)) ([64b4265](https://github.com/syrupy-project/syrupy/commit/64b42653d1c3af5b56347ccd9afd24e87b29aa18)) -## [4.0.7](https://github.com/noahnu/syrupy/compare/v4.0.6...v4.0.7) (2023-07-20) +## [4.0.7](https://github.com/syrupy-project/syrupy/compare/v4.0.6...v4.0.7) (2023-07-20) ### Bug Fixes -* large snapshot diff recursion error ([#776](https://github.com/noahnu/syrupy/issues/776)) ([24260b1](https://github.com/noahnu/syrupy/commit/24260b17607a11f7afa691c0ecd4da3e09de9bf0)) +* large snapshot diff recursion error ([#776](https://github.com/syrupy-project/syrupy/issues/776)) ([24260b1](https://github.com/syrupy-project/syrupy/commit/24260b17607a11f7afa691c0ecd4da3e09de9bf0)) -## [4.0.6](https://github.com/noahnu/syrupy/compare/v4.0.5...v4.0.6) (2023-07-11) +## [4.0.6](https://github.com/syrupy-project/syrupy/compare/v4.0.5...v4.0.6) (2023-07-11) ### Bug Fixes -* improve reporting around xfailed snapshots, close [#736](https://github.com/noahnu/syrupy/issues/736) ([#769](https://github.com/noahnu/syrupy/issues/769)) ([596b29b](https://github.com/noahnu/syrupy/commit/596b29b7eae26292fb671b3f339d255fd5ac8761)) +* improve reporting around xfailed snapshots, close [#736](https://github.com/syrupy-project/syrupy/issues/736) ([#769](https://github.com/syrupy-project/syrupy/issues/769)) ([596b29b](https://github.com/syrupy-project/syrupy/commit/596b29b7eae26292fb671b3f339d255fd5ac8761)) -## [4.0.5](https://github.com/noahnu/syrupy/compare/v4.0.4...v4.0.5) (2023-07-04) +## [4.0.5](https://github.com/syrupy-project/syrupy/compare/v4.0.4...v4.0.5) (2023-07-04) ### Bug Fixes -* hide empty snapshot report ([#768](https://github.com/noahnu/syrupy/issues/768)) ([8f581d5](https://github.com/noahnu/syrupy/commit/8f581d577068f19a9e0fff65f4476f4601c137df)) +* hide empty snapshot report ([#768](https://github.com/syrupy-project/syrupy/issues/768)) ([8f581d5](https://github.com/syrupy-project/syrupy/commit/8f581d577068f19a9e0fff65f4476f4601c137df)) -## [4.0.4](https://github.com/noahnu/syrupy/compare/v4.0.3...v4.0.4) (2023-06-19) +## [4.0.4](https://github.com/syrupy-project/syrupy/compare/v4.0.3...v4.0.4) (2023-06-19) ### Bug Fixes -* incorrect marking of TestClass.test_method as unused, close [#717](https://github.com/noahnu/syrupy/issues/717) ([#761](https://github.com/noahnu/syrupy/issues/761)) ([0badfdb](https://github.com/noahnu/syrupy/commit/0badfdbb06157a7e2365edd551aaa1914681f3de)) +* incorrect marking of TestClass.test_method as unused, close [#717](https://github.com/syrupy-project/syrupy/issues/717) ([#761](https://github.com/syrupy-project/syrupy/issues/761)) ([0badfdb](https://github.com/syrupy-project/syrupy/commit/0badfdbb06157a7e2365edd551aaa1914681f3de)) -## [4.0.3](https://github.com/noahnu/syrupy/compare/v4.0.2...v4.0.3) (2023-06-19) +## [4.0.3](https://github.com/syrupy-project/syrupy/compare/v4.0.2...v4.0.3) (2023-06-19) ### Bug Fixes -* support colored >=1.5.0 dependency, close [#758](https://github.com/noahnu/syrupy/issues/758) ([#760](https://github.com/noahnu/syrupy/issues/760)) ([783fc5c](https://github.com/noahnu/syrupy/commit/783fc5cf71901c8bb54769358787dabfa2b51e4a)) +* support colored >=1.5.0 dependency, close [#758](https://github.com/syrupy-project/syrupy/issues/758) ([#760](https://github.com/syrupy-project/syrupy/issues/760)) ([783fc5c](https://github.com/syrupy-project/syrupy/commit/783fc5cf71901c8bb54769358787dabfa2b51e4a)) -## [4.0.2](https://github.com/noahnu/syrupy/compare/v4.0.1...v4.0.2) (2023-04-25) +## [4.0.2](https://github.com/syrupy-project/syrupy/compare/v4.0.1...v4.0.2) (2023-04-25) ### Bug Fixes -* defer snapshot default extension import ([#734](https://github.com/noahnu/syrupy/issues/734)) ([dfd5910](https://github.com/noahnu/syrupy/commit/dfd5910cd5ac9a93011d639303cdc060ef4c779a)), closes [#719](https://github.com/noahnu/syrupy/issues/719) +* defer snapshot default extension import ([#734](https://github.com/syrupy-project/syrupy/issues/734)) ([dfd5910](https://github.com/syrupy-project/syrupy/commit/dfd5910cd5ac9a93011d639303cdc060ef4c779a)), closes [#719](https://github.com/syrupy-project/syrupy/issues/719) -## [4.0.1](https://github.com/noahnu/syrupy/compare/v4.0.0...v4.0.1) (2023-02-21) +## [4.0.1](https://github.com/syrupy-project/syrupy/compare/v4.0.0...v4.0.1) (2023-02-21) ### Bug Fixes -* **serializer:** handling of multi-part file extensions in SingleFileExtension ([#710](https://github.com/noahnu/syrupy/issues/710)) ([efe687e](https://github.com/noahnu/syrupy/commit/efe687e263647b1efa2673847372389ea90961eb)) +* **serializer:** handling of multi-part file extensions in SingleFileExtension ([#710](https://github.com/syrupy-project/syrupy/issues/710)) ([efe687e](https://github.com/syrupy-project/syrupy/commit/efe687e263647b1efa2673847372389ea90961eb)) -# [4.0.0](https://github.com/noahnu/syrupy/compare/v3.0.6...v4.0.0) (2023-02-02) +# [4.0.0](https://github.com/syrupy-project/syrupy/compare/v3.0.6...v4.0.0) (2023-02-02) ### Bug Fixes -* defer snapshot writes until end of session ([#606](https://github.com/noahnu/syrupy/issues/606)) ([68f1d5f](https://github.com/noahnu/syrupy/commit/68f1d5f4ecb1cefab1a0b26fd7f1626e6c8a1b71)) -* ensure all pytest options are serializable ([#667](https://github.com/noahnu/syrupy/issues/667)) ([e8ed9f2](https://github.com/noahnu/syrupy/commit/e8ed9f2e3548f6493349bda2666698f165596f3a)) -* improve pytest-xdist compatibility ([9b9090f](https://github.com/noahnu/syrupy/commit/9b9090f1d139ada1d12e89e002d48bc35c191d41)) -* lru_cache on snapshot reads ([#629](https://github.com/noahnu/syrupy/issues/629)) ([c1a675f](https://github.com/noahnu/syrupy/commit/c1a675f0960608ff3655d6ba67387940964064db)) -* remove legacy path usage to support no:legacypath, closes [#677](https://github.com/noahnu/syrupy/issues/677) ([#684](https://github.com/noahnu/syrupy/issues/684)) ([6385979](https://github.com/noahnu/syrupy/commit/6385979084958f33365c4c544e7583569bb24e06)) +* defer snapshot writes until end of session ([#606](https://github.com/syrupy-project/syrupy/issues/606)) ([68f1d5f](https://github.com/syrupy-project/syrupy/commit/68f1d5f4ecb1cefab1a0b26fd7f1626e6c8a1b71)) +* ensure all pytest options are serializable ([#667](https://github.com/syrupy-project/syrupy/issues/667)) ([e8ed9f2](https://github.com/syrupy-project/syrupy/commit/e8ed9f2e3548f6493349bda2666698f165596f3a)) +* improve pytest-xdist compatibility ([9b9090f](https://github.com/syrupy-project/syrupy/commit/9b9090f1d139ada1d12e89e002d48bc35c191d41)) +* lru_cache on snapshot reads ([#629](https://github.com/syrupy-project/syrupy/issues/629)) ([c1a675f](https://github.com/syrupy-project/syrupy/commit/c1a675f0960608ff3655d6ba67387940964064db)) +* remove legacy path usage to support no:legacypath, closes [#677](https://github.com/syrupy-project/syrupy/issues/677) ([#684](https://github.com/syrupy-project/syrupy/issues/684)) ([6385979](https://github.com/syrupy-project/syrupy/commit/6385979084958f33365c4c544e7583569bb24e06)) ### Code Refactoring -* simplify data serializer for ambr ([#676](https://github.com/noahnu/syrupy/issues/676)) ([3d296e1](https://github.com/noahnu/syrupy/commit/3d296e1e524e90a6f2d22f550a6e7847d4805c92)) -* write performance improvements, api clarity ([#645](https://github.com/noahnu/syrupy/issues/645)) ([2c31c39](https://github.com/noahnu/syrupy/commit/2c31c39fa2430ad42190a0ac3f80181ced803b82)) +* simplify data serializer for ambr ([#676](https://github.com/syrupy-project/syrupy/issues/676)) ([3d296e1](https://github.com/syrupy-project/syrupy/commit/3d296e1e524e90a6f2d22f550a6e7847d4805c92)) +* write performance improvements, api clarity ([#645](https://github.com/syrupy-project/syrupy/issues/645)) ([2c31c39](https://github.com/syrupy-project/syrupy/commit/2c31c39fa2430ad42190a0ac3f80181ced803b82)) ### Features -* **json:** serialize None as null, close [#622](https://github.com/noahnu/syrupy/issues/622) ([c330680](https://github.com/noahnu/syrupy/commit/c33068030bc1cb296c1b6f36d3e67d6d55e484fc)) -* numerically sort snapshots if possible, close [#657](https://github.com/noahnu/syrupy/issues/657) ([4ca0716](https://github.com/noahnu/syrupy/commit/4ca071641f9508b21c29df244639c9db61032cb1)) -* **serializer:** preserve key ordering of OrderedDict ([0a2289a](https://github.com/noahnu/syrupy/commit/0a2289a53b03bf36f55149eee51fd6890af13659)) -* support overriding the amber serializer class ([#683](https://github.com/noahnu/syrupy/issues/683)) ([662c93f](https://github.com/noahnu/syrupy/commit/662c93f18619245d3d8d7c0ac30830d7c4587a2a)) -* update python version, pytest version ([#658](https://github.com/noahnu/syrupy/issues/658)) ([c360b95](https://github.com/noahnu/syrupy/commit/c360b95192607ba55421076487b533f8afe8253b)) +* **json:** serialize None as null, close [#622](https://github.com/syrupy-project/syrupy/issues/622) ([c330680](https://github.com/syrupy-project/syrupy/commit/c33068030bc1cb296c1b6f36d3e67d6d55e484fc)) +* numerically sort snapshots if possible, close [#657](https://github.com/syrupy-project/syrupy/issues/657) ([4ca0716](https://github.com/syrupy-project/syrupy/commit/4ca071641f9508b21c29df244639c9db61032cb1)) +* **serializer:** preserve key ordering of OrderedDict ([0a2289a](https://github.com/syrupy-project/syrupy/commit/0a2289a53b03bf36f55149eee51fd6890af13659)) +* support overriding the amber serializer class ([#683](https://github.com/syrupy-project/syrupy/issues/683)) ([662c93f](https://github.com/syrupy-project/syrupy/commit/662c93f18619245d3d8d7c0ac30830d7c4587a2a)) +* update python version, pytest version ([#658](https://github.com/syrupy-project/syrupy/issues/658)) ([c360b95](https://github.com/syrupy-project/syrupy/commit/c360b95192607ba55421076487b533f8afe8253b)) ### BREAKING CHANGES @@ -193,96 +193,96 @@ From v1.0.0 onwards, this project adheres to [Semantic Versioning](https://semve * refactor: do not instantiate extension with test_location * Numerous instance methods have been refactored as classmethods. -## [3.0.6](https://github.com/noahnu/syrupy/compare/v3.0.5...v3.0.6) (2022-12-30) +## [3.0.6](https://github.com/syrupy-project/syrupy/compare/v3.0.5...v3.0.6) (2022-12-30) ### Bug Fixes -* ensure all pytest options are serializable ([#667](https://github.com/noahnu/syrupy/issues/667)) ([e320d7b](https://github.com/noahnu/syrupy/commit/e320d7b799b7890df5a63eda59a1382a3d73f39b)) -* improve pytest-xdist compatibility ([8739194](https://github.com/noahnu/syrupy/commit/87391946af859bbe9a63c5ac297cfc7b169c7742)) +* ensure all pytest options are serializable ([#667](https://github.com/syrupy-project/syrupy/issues/667)) ([e320d7b](https://github.com/syrupy-project/syrupy/commit/e320d7b799b7890df5a63eda59a1382a3d73f39b)) +* improve pytest-xdist compatibility ([8739194](https://github.com/syrupy-project/syrupy/commit/87391946af859bbe9a63c5ac297cfc7b169c7742)) -## [3.0.5](https://github.com/noahnu/syrupy/compare/v3.0.4...v3.0.5) (2022-11-08) +## [3.0.5](https://github.com/syrupy-project/syrupy/compare/v3.0.4...v3.0.5) (2022-11-08) ### Bug Fixes -* only instantiate colored objects if color is not disabled ([#634](https://github.com/noahnu/syrupy/issues/634)) ([7f0fe22](https://github.com/noahnu/syrupy/commit/7f0fe2255e56cafbad86f6e505019b8e507afd00)) +* only instantiate colored objects if color is not disabled ([#634](https://github.com/syrupy-project/syrupy/issues/634)) ([7f0fe22](https://github.com/syrupy-project/syrupy/commit/7f0fe2255e56cafbad86f6e505019b8e507afd00)) -## [3.0.4](https://github.com/noahnu/syrupy/compare/v3.0.3...v3.0.4) (2022-11-03) +## [3.0.4](https://github.com/syrupy-project/syrupy/compare/v3.0.3...v3.0.4) (2022-11-03) ### Bug Fixes -* update poetry build backend ([#631](https://github.com/noahnu/syrupy/issues/631)) ([4819026](https://github.com/noahnu/syrupy/commit/48190261f31ee801d60daab046e37d6a910b3efc)) +* update poetry build backend ([#631](https://github.com/syrupy-project/syrupy/issues/631)) ([4819026](https://github.com/syrupy-project/syrupy/commit/48190261f31ee801d60daab046e37d6a910b3efc)) -## [3.0.3](https://github.com/noahnu/syrupy/compare/v3.0.2...v3.0.3) (2022-11-03) +## [3.0.3](https://github.com/syrupy-project/syrupy/compare/v3.0.2...v3.0.3) (2022-11-03) ### Bug Fixes -* use more expressive glob when building whl ([#627](https://github.com/noahnu/syrupy/issues/627)) ([6a766e7](https://github.com/noahnu/syrupy/commit/6a766e78d72fd3e74cc7725fead46b7f839b468a)) +* use more expressive glob when building whl ([#627](https://github.com/syrupy-project/syrupy/issues/627)) ([6a766e7](https://github.com/syrupy-project/syrupy/commit/6a766e78d72fd3e74cc7725fead46b7f839b468a)) -## [3.0.2](https://github.com/noahnu/syrupy/compare/v3.0.1...v3.0.2) (2022-09-23) +## [3.0.2](https://github.com/syrupy-project/syrupy/compare/v3.0.1...v3.0.2) (2022-09-23) ### Bug Fixes -* update classifiers (no material change) ([43d78ec](https://github.com/noahnu/syrupy/commit/43d78ecc0a2175487db1c9bf5857d6ee34344046)) +* update classifiers (no material change) ([43d78ec](https://github.com/syrupy-project/syrupy/commit/43d78ecc0a2175487db1c9bf5857d6ee34344046)) -## [3.0.1](https://github.com/noahnu/syrupy/compare/v3.0.0...v3.0.1) (2022-09-23) +## [3.0.1](https://github.com/syrupy-project/syrupy/compare/v3.0.0...v3.0.1) (2022-09-23) ### Bug Fixes -* avoid reporting crash for snapshot dir outside pytest dir ([#621](https://github.com/noahnu/syrupy/issues/621)) ([f2b2e77](https://github.com/noahnu/syrupy/commit/f2b2e774b6055fde887a36d2a995ebb284ebc76e)) +* avoid reporting crash for snapshot dir outside pytest dir ([#621](https://github.com/syrupy-project/syrupy/issues/621)) ([f2b2e77](https://github.com/syrupy-project/syrupy/commit/f2b2e774b6055fde887a36d2a995ebb284ebc76e)) -# [3.0.0](https://github.com/noahnu/syrupy/compare/v2.3.1...v3.0.0) (2022-08-11) +# [3.0.0](https://github.com/syrupy-project/syrupy/compare/v2.3.1...v3.0.0) (2022-08-11) ### Features -* drop python 3.6 support ([#612](https://github.com/noahnu/syrupy/issues/612)) ([bcdfd89](https://github.com/noahnu/syrupy/commit/bcdfd899e3ca1d107fe6009144b6b51547ffde4c)) +* drop python 3.6 support ([#612](https://github.com/syrupy-project/syrupy/issues/612)) ([bcdfd89](https://github.com/syrupy-project/syrupy/commit/bcdfd899e3ca1d107fe6009144b6b51547ffde4c)) ### BREAKING CHANGES * Drop Python 3.6 support due to end of life. -## [2.3.1](https://github.com/noahnu/syrupy/compare/v2.3.0...v2.3.1) (2022-07-07) +## [2.3.1](https://github.com/syrupy-project/syrupy/compare/v2.3.0...v2.3.1) (2022-07-07) ### Bug Fixes -* ignore test_a_suffix snapshots when running test_a ([#607](https://github.com/noahnu/syrupy/issues/607)) ([988a8ab](https://github.com/noahnu/syrupy/commit/988a8ab42ebbc94e2965bc73a6c8b6074c4f7416)) +* ignore test_a_suffix snapshots when running test_a ([#607](https://github.com/syrupy-project/syrupy/issues/607)) ([988a8ab](https://github.com/syrupy-project/syrupy/commit/988a8ab42ebbc94e2965bc73a6c8b6074c4f7416)) -# [2.3.0](https://github.com/noahnu/syrupy/compare/v2.2.0...v2.3.0) (2022-05-12) +# [2.3.0](https://github.com/syrupy-project/syrupy/compare/v2.2.0...v2.3.0) (2022-05-12) ### Features -* provide __repr__ for SnapshotAssertion ([#600](https://github.com/noahnu/syrupy/issues/600)) ([df31946](https://github.com/noahnu/syrupy/commit/df3194606f7e8cb9fe6a7de97416f00fb7447fb1)) +* provide __repr__ for SnapshotAssertion ([#600](https://github.com/syrupy-project/syrupy/issues/600)) ([df31946](https://github.com/syrupy-project/syrupy/commit/df3194606f7e8cb9fe6a7de97416f00fb7447fb1)) -# [2.2.0](https://github.com/noahnu/syrupy/compare/v2.1.0...v2.2.0) (2022-05-12) +# [2.2.0](https://github.com/syrupy-project/syrupy/compare/v2.1.0...v2.2.0) (2022-05-12) ### Features -* support snapshots in doc tests ([#525](https://github.com/noahnu/syrupy/issues/525)) ([97256e3](https://github.com/noahnu/syrupy/commit/97256e3091e78fefa4d3d89533a95adeee78fdb5)) +* support snapshots in doc tests ([#525](https://github.com/syrupy-project/syrupy/issues/525)) ([97256e3](https://github.com/syrupy-project/syrupy/commit/97256e3091e78fefa4d3d89533a95adeee78fdb5)) -# [2.1.0](https://github.com/noahnu/syrupy/compare/v2.0.0...v2.1.0) (2022-05-11) +# [2.1.0](https://github.com/syrupy-project/syrupy/compare/v2.0.0...v2.1.0) (2022-05-11) ### Features -* add snapshot diffing support ([#526](https://github.com/noahnu/syrupy/issues/526)) ([e424f31](https://github.com/noahnu/syrupy/commit/e424f31e06908e47b7cfddf2c9bde595f0a08846)) +* add snapshot diffing support ([#526](https://github.com/syrupy-project/syrupy/issues/526)) ([e424f31](https://github.com/syrupy-project/syrupy/commit/e424f31e06908e47b7cfddf2c9bde595f0a08846)) -# [2.0.0](https://github.com/noahnu/syrupy/compare/v1.7.4...v2.0.0) (2022-04-10) +# [2.0.0](https://github.com/syrupy-project/syrupy/compare/v1.7.4...v2.0.0) (2022-04-10) ### Features -* **amber:** change serialization to be py syntax like ([#505](https://github.com/noahnu/syrupy/issues/505)) ([b64b965](https://github.com/noahnu/syrupy/commit/b64b965720768d787eded154d4dba256e0734620)) -* release syrupy v2 ([#575](https://github.com/noahnu/syrupy/issues/575)) ([bc8b3a9](https://github.com/noahnu/syrupy/commit/bc8b3a909bf5b75b581f16247c12c8bdd087dd9f)) +* **amber:** change serialization to be py syntax like ([#505](https://github.com/syrupy-project/syrupy/issues/505)) ([b64b965](https://github.com/syrupy-project/syrupy/commit/b64b965720768d787eded154d4dba256e0734620)) +* release syrupy v2 ([#575](https://github.com/syrupy-project/syrupy/issues/575)) ([bc8b3a9](https://github.com/syrupy-project/syrupy/commit/bc8b3a909bf5b75b581f16247c12c8bdd087dd9f)) ### BREAKING CHANGES @@ -292,377 +292,377 @@ From v1.0.0 onwards, this project adheres to [Semantic Versioning](https://semve Migration Guide * `pytest --snapshot-update` to regenerate amber snapshots -## [1.7.4](https://github.com/noahnu/syrupy/compare/v1.7.3...v1.7.4) (2022-02-16) +## [1.7.4](https://github.com/syrupy-project/syrupy/compare/v1.7.3...v1.7.4) (2022-02-16) ### Bug Fixes -* support pytest 7 ([#594](https://github.com/noahnu/syrupy/issues/594)) ([17f0660](https://github.com/noahnu/syrupy/commit/17f0660b5a2b39b417cff38d9a3d6122e7fa8140)) +* support pytest 7 ([#594](https://github.com/syrupy-project/syrupy/issues/594)) ([17f0660](https://github.com/syrupy-project/syrupy/commit/17f0660b5a2b39b417cff38d9a3d6122e7fa8140)) -## [1.7.3](https://github.com/noahnu/syrupy/compare/v1.7.2...v1.7.3) (2022-01-25) +## [1.7.3](https://github.com/syrupy-project/syrupy/compare/v1.7.2...v1.7.3) (2022-01-25) ### Bug Fixes -* **json:** use additional forward references for py3.7 ([#587](https://github.com/noahnu/syrupy/issues/587)) ([8489e93](https://github.com/noahnu/syrupy/commit/8489e93477f2f38d1ef2ab499d58c4de069f7993)) +* **json:** use additional forward references for py3.7 ([#587](https://github.com/syrupy-project/syrupy/issues/587)) ([8489e93](https://github.com/syrupy-project/syrupy/commit/8489e93477f2f38d1ef2ab499d58c4de069f7993)) -## [1.7.2](https://github.com/noahnu/syrupy/compare/v1.7.1...v1.7.2) (2022-01-25) +## [1.7.2](https://github.com/syrupy-project/syrupy/compare/v1.7.1...v1.7.2) (2022-01-25) ### Bug Fixes -* **json:** use forward references for py3.7 compatibility ([#586](https://github.com/noahnu/syrupy/issues/586)) ([8f0db02](https://github.com/noahnu/syrupy/commit/8f0db02037be83527881927552663f5d9aeb4d10)) +* **json:** use forward references for py3.7 compatibility ([#586](https://github.com/syrupy-project/syrupy/issues/586)) ([8f0db02](https://github.com/syrupy-project/syrupy/commit/8f0db02037be83527881927552663f5d9aeb4d10)) -## [1.7.1](https://github.com/noahnu/syrupy/compare/v1.7.0...v1.7.1) (2022-01-25) +## [1.7.1](https://github.com/syrupy-project/syrupy/compare/v1.7.0...v1.7.1) (2022-01-25) ### Bug Fixes -* compatibility with pytest-tldr ([#583](https://github.com/noahnu/syrupy/issues/583)) ([f6ed0b1](https://github.com/noahnu/syrupy/commit/f6ed0b142158f27fad651d96c7b675907a46c595)) +* compatibility with pytest-tldr ([#583](https://github.com/syrupy-project/syrupy/issues/583)) ([f6ed0b1](https://github.com/syrupy-project/syrupy/commit/f6ed0b142158f27fad651d96c7b675907a46c595)) -# [1.7.0](https://github.com/noahnu/syrupy/compare/v1.6.0...v1.7.0) (2022-01-14) +# [1.7.0](https://github.com/syrupy-project/syrupy/compare/v1.6.0...v1.7.0) (2022-01-14) ### Bug Fixes -* ignore, this commit is to force a release ([effeadb](https://github.com/noahnu/syrupy/commit/effeadb751d16841222c147c6a383cca4dcf4003)) +* ignore, this commit is to force a release ([effeadb](https://github.com/syrupy-project/syrupy/commit/effeadb751d16841222c147c6a383cca4dcf4003)) ### Features -* add JSON extension as alternative to amber ([b366082](https://github.com/noahnu/syrupy/commit/b3660826439a7cdd0ca84abe307b711a4a283cd9)) +* add JSON extension as alternative to amber ([b366082](https://github.com/syrupy-project/syrupy/commit/b3660826439a7cdd0ca84abe307b711a4a283cd9)) -# [1.6.0](https://github.com/noahnu/syrupy/compare/v1.5.0...v1.6.0) (2022-01-14) +# [1.6.0](https://github.com/syrupy-project/syrupy/compare/v1.5.0...v1.6.0) (2022-01-14) ### Features -* allow extensions to override snapshot equality check ([#548](https://github.com/noahnu/syrupy/issues/548)) ([a44f1b9](https://github.com/noahnu/syrupy/commit/a44f1b97a8b14bab57c3eed1c09cf19ec3bbbb32)) +* allow extensions to override snapshot equality check ([#548](https://github.com/syrupy-project/syrupy/issues/548)) ([a44f1b9](https://github.com/syrupy-project/syrupy/commit/a44f1b97a8b14bab57c3eed1c09cf19ec3bbbb32)) -# [1.5.0](https://github.com/noahnu/syrupy/compare/v1.4.7...v1.5.0) (2021-11-03) +# [1.5.0](https://github.com/syrupy-project/syrupy/compare/v1.4.7...v1.5.0) (2021-11-03) ### Features -* add support for custom snapshot names, close [#555](https://github.com/noahnu/syrupy/issues/555) ([#563](https://github.com/noahnu/syrupy/issues/563)) ([81a8a45](https://github.com/noahnu/syrupy/commit/81a8a455ca13b88c9420cae7ce54a93baffed7e0)) +* add support for custom snapshot names, close [#555](https://github.com/syrupy-project/syrupy/issues/555) ([#563](https://github.com/syrupy-project/syrupy/issues/563)) ([81a8a45](https://github.com/syrupy-project/syrupy/commit/81a8a455ca13b88c9420cae7ce54a93baffed7e0)) -## [1.4.7](https://github.com/noahnu/syrupy/compare/v1.4.6...v1.4.7) (2021-10-13) +## [1.4.7](https://github.com/syrupy-project/syrupy/compare/v1.4.6...v1.4.7) (2021-10-13) ### Bug Fixes -* NameError when importing SingleFileSnapshotExtension ([#557](https://github.com/noahnu/syrupy/issues/557)) ([935e256](https://github.com/noahnu/syrupy/commit/935e2563b55dc295821619d4eac318d8035296e5)) +* NameError when importing SingleFileSnapshotExtension ([#557](https://github.com/syrupy-project/syrupy/issues/557)) ([935e256](https://github.com/syrupy-project/syrupy/commit/935e2563b55dc295821619d4eac318d8035296e5)) -## [1.4.6](https://github.com/noahnu/syrupy/compare/v1.4.5...v1.4.6) (2021-10-06) +## [1.4.6](https://github.com/syrupy-project/syrupy/compare/v1.4.5...v1.4.6) (2021-10-06) ### Bug Fixes -* typo in single file extension error message ([#553](https://github.com/noahnu/syrupy/issues/553)) ([c4785f8](https://github.com/noahnu/syrupy/commit/c4785f8d1e26acbd8a327a6e6f7de7ce6f67112f)) +* typo in single file extension error message ([#553](https://github.com/syrupy-project/syrupy/issues/553)) ([c4785f8](https://github.com/syrupy-project/syrupy/commit/c4785f8d1e26acbd8a327a6e6f7de7ce6f67112f)) -## [1.4.5](https://github.com/noahnu/syrupy/compare/v1.4.4...v1.4.5) (2021-08-29) +## [1.4.5](https://github.com/syrupy-project/syrupy/compare/v1.4.4...v1.4.5) (2021-08-29) ### Bug Fixes -* filter ran items using selected items, close [#451](https://github.com/noahnu/syrupy/issues/451) ([#549](https://github.com/noahnu/syrupy/issues/549)) ([7374862](https://github.com/noahnu/syrupy/commit/73748627f0593d2fa4effc14ac272804e1aaf7bb)) +* filter ran items using selected items, close [#451](https://github.com/syrupy-project/syrupy/issues/451) ([#549](https://github.com/syrupy-project/syrupy/issues/549)) ([7374862](https://github.com/syrupy-project/syrupy/commit/73748627f0593d2fa4effc14ac272804e1aaf7bb)) -## [1.4.4](https://github.com/noahnu/syrupy/compare/v1.4.3...v1.4.4) (2021-08-20) +## [1.4.4](https://github.com/syrupy-project/syrupy/compare/v1.4.3...v1.4.4) (2021-08-20) ### Performance Improvements -* memoise DataSerializer.read_file results ([#543](https://github.com/noahnu/syrupy/issues/543)) ([df5b516](https://github.com/noahnu/syrupy/commit/df5b5166bbe1ccf1fa492707f009541460813295)) +* memoise DataSerializer.read_file results ([#543](https://github.com/syrupy-project/syrupy/issues/543)) ([df5b516](https://github.com/syrupy-project/syrupy/commit/df5b5166bbe1ccf1fa492707f009541460813295)) -## [1.4.3](https://github.com/noahnu/syrupy/compare/v1.4.2...v1.4.3) (2021-08-20) +## [1.4.3](https://github.com/syrupy-project/syrupy/compare/v1.4.2...v1.4.3) (2021-08-20) ### Performance Improvements -* cache session snapshot extension discovery ([#542](https://github.com/noahnu/syrupy/issues/542)) ([10cfc90](https://github.com/noahnu/syrupy/commit/10cfc9052afea119e3e62636bcb338bd3ace09c3)) +* cache session snapshot extension discovery ([#542](https://github.com/syrupy-project/syrupy/issues/542)) ([10cfc90](https://github.com/syrupy-project/syrupy/commit/10cfc9052afea119e3e62636bcb338bd3ace09c3)) -## [1.4.2](https://github.com/noahnu/syrupy/compare/v1.4.1...v1.4.2) (2021-08-18) +## [1.4.2](https://github.com/syrupy-project/syrupy/compare/v1.4.1...v1.4.2) (2021-08-18) ### Performance Improvements -* discover snapshots once per file rather than per assertion ([#541](https://github.com/noahnu/syrupy/issues/541)) ([84c8b82](https://github.com/noahnu/syrupy/commit/84c8b82517766f08ac3ee5cef7dada4a490f75ee)) +* discover snapshots once per file rather than per assertion ([#541](https://github.com/syrupy-project/syrupy/issues/541)) ([84c8b82](https://github.com/syrupy-project/syrupy/commit/84c8b82517766f08ac3ee5cef7dada4a490f75ee)) -## [1.4.1](https://github.com/noahnu/syrupy/compare/v1.4.0...v1.4.1) (2021-08-18) +## [1.4.1](https://github.com/syrupy-project/syrupy/compare/v1.4.0...v1.4.1) (2021-08-18) ### Bug Fixes -* unused snapshot not filtered out when tests have similar names, close [#529](https://github.com/noahnu/syrupy/issues/529) ([#531](https://github.com/noahnu/syrupy/issues/531)) ([d0c8ca8](https://github.com/noahnu/syrupy/commit/d0c8ca8bb4f0824ed44c332a4f4cbec6242a5334)) +* unused snapshot not filtered out when tests have similar names, close [#529](https://github.com/syrupy-project/syrupy/issues/529) ([#531](https://github.com/syrupy-project/syrupy/issues/531)) ([d0c8ca8](https://github.com/syrupy-project/syrupy/commit/d0c8ca8bb4f0824ed44c332a4f4cbec6242a5334)) -# [1.4.0](https://github.com/noahnu/syrupy/compare/v1.3.1...v1.4.0) (2021-08-02) +# [1.4.0](https://github.com/syrupy-project/syrupy/compare/v1.3.1...v1.4.0) (2021-08-02) ### Features -* support regex path type matching ([#532](https://github.com/noahnu/syrupy/issues/532)) ([0ff4acf](https://github.com/noahnu/syrupy/commit/0ff4acffa082634247855e479114c2d0daecb63c)) +* support regex path type matching ([#532](https://github.com/syrupy-project/syrupy/issues/532)) ([0ff4acf](https://github.com/syrupy-project/syrupy/commit/0ff4acffa082634247855e479114c2d0daecb63c)) -## [1.3.1](https://github.com/noahnu/syrupy/compare/v1.3.0...v1.3.1) (2021-06-20) +## [1.3.1](https://github.com/syrupy-project/syrupy/compare/v1.3.0...v1.3.1) (2021-06-20) ### Bug Fixes -* support attrs v21 dependency ([#527](https://github.com/noahnu/syrupy/issues/527)) ([547bae8](https://github.com/noahnu/syrupy/commit/547bae86c860ee3dc9dfb5529a59acbbe3498206)) +* support attrs v21 dependency ([#527](https://github.com/syrupy-project/syrupy/issues/527)) ([547bae8](https://github.com/syrupy-project/syrupy/commit/547bae86c860ee3dc9dfb5529a59acbbe3498206)) -# [1.3.0](https://github.com/noahnu/syrupy/compare/v1.2.4...v1.3.0) (2021-06-05) +# [1.3.0](https://github.com/syrupy-project/syrupy/compare/v1.2.4...v1.3.0) (2021-06-05) ### Features -* **types:** explicit property matcher and filter types kwargs ([#515](https://github.com/noahnu/syrupy/issues/515)) ([8dddebf](https://github.com/noahnu/syrupy/commit/8dddebf6c217abe64b81137ad78561e0f7e8ab61)) +* **types:** explicit property matcher and filter types kwargs ([#515](https://github.com/syrupy-project/syrupy/issues/515)) ([8dddebf](https://github.com/syrupy-project/syrupy/commit/8dddebf6c217abe64b81137ad78561e0f7e8ab61)) -## [1.2.4](https://github.com/noahnu/syrupy/compare/v1.2.3...v1.2.4) (2021-06-01) +## [1.2.4](https://github.com/syrupy-project/syrupy/compare/v1.2.3...v1.2.4) (2021-06-01) ### Bug Fixes -* correctly use pytest invocation arguments ([#507](https://github.com/noahnu/syrupy/issues/507)) ([8b511e5](https://github.com/noahnu/syrupy/commit/8b511e5561edf9e1427fa523f6c82cc411fb5848)) +* correctly use pytest invocation arguments ([#507](https://github.com/syrupy-project/syrupy/issues/507)) ([8b511e5](https://github.com/syrupy-project/syrupy/commit/8b511e5561edf9e1427fa523f6c82cc411fb5848)) -## [1.2.3](https://github.com/noahnu/syrupy/compare/v1.2.2...v1.2.3) (2021-05-12) +## [1.2.3](https://github.com/syrupy-project/syrupy/compare/v1.2.2...v1.2.3) (2021-05-12) ### Bug Fixes -* support python 3.10 ([#499](https://github.com/noahnu/syrupy/issues/499)) ([407ae13](https://github.com/noahnu/syrupy/commit/407ae135b0529a309d74ae3f3485eb121ab3b69f)) +* support python 3.10 ([#499](https://github.com/syrupy-project/syrupy/issues/499)) ([407ae13](https://github.com/syrupy-project/syrupy/commit/407ae135b0529a309d74ae3f3485eb121ab3b69f)) -# [1.2.2](https://github.com/noahnu/syrupy/compare/v1.1.0...v1.2.2) (2021-03-18) +# [1.2.2](https://github.com/syrupy-project/syrupy/compare/v1.1.0...v1.2.2) (2021-03-18) ### Features -* option to report details of unused snapshots ([#467](https://github.com/noahnu/syrupy/issues/467)), close [#465](https://github.com/noahnu/syrupy/issues/465) ([1c50db0](https://github.com/noahnu/syrupy/commit/1c50db0c5aa6f2d7445cc0aa8fd532c48d593f2e)) +* option to report details of unused snapshots ([#467](https://github.com/syrupy-project/syrupy/issues/467)), close [#465](https://github.com/syrupy-project/syrupy/issues/465) ([1c50db0](https://github.com/syrupy-project/syrupy/commit/1c50db0c5aa6f2d7445cc0aa8fd532c48d593f2e)) -# [1.1.0](https://github.com/noahnu/syrupy/compare/v1.0.0...v1.1.0) (2020-12-01) +# [1.1.0](https://github.com/syrupy-project/syrupy/compare/v1.0.0...v1.1.0) (2020-12-01) ### Features -* add PEP-561 py.typed file for downstream type checkers ([#440](https://github.com/noahnu/syrupy/issues/440)) ([fe15bdb](https://github.com/noahnu/syrupy/commit/fe15bdb88371848fc72ab1f63a577ac7b05637cb)), closes [#439](https://github.com/noahnu/syrupy/issues/439) +* add PEP-561 py.typed file for downstream type checkers ([#440](https://github.com/syrupy-project/syrupy/issues/440)) ([fe15bdb](https://github.com/syrupy-project/syrupy/commit/fe15bdb88371848fc72ab1f63a577ac7b05637cb)), closes [#439](https://github.com/syrupy-project/syrupy/issues/439) -# [1.0.0](https://github.com/noahnu/syrupy/compare/v0.9.0...v1.0.0) (2020-11-13) +# [1.0.0](https://github.com/syrupy-project/syrupy/compare/v0.9.0...v1.0.0) (2020-11-13) ### Features -* update development status to stable ([#413](https://github.com/noahnu/syrupy/issues/413)) ([69e14c6](https://github.com/noahnu/syrupy/commit/69e14c67e76976865308ff6e5b0050922a142f39)) +* update development status to stable ([#413](https://github.com/syrupy-project/syrupy/issues/413)) ([69e14c6](https://github.com/syrupy-project/syrupy/commit/69e14c67e76976865308ff6e5b0050922a142f39)) ### BREAKING CHANGES * Release v1.0.0 -# [0.9.0](https://github.com/noahnu/syrupy/compare/v0.8.5...v0.9.0) (2020-11-13) +# [0.9.0](https://github.com/syrupy-project/syrupy/compare/v0.8.5...v0.9.0) (2020-11-13) ### Features -* expand single filename legal characters ([#398](https://github.com/noahnu/syrupy/issues/398)) ([302916b](https://github.com/noahnu/syrupy/commit/302916bb87727344cdc1a9abec8ad4e6200e2c50)) +* expand single filename legal characters ([#398](https://github.com/syrupy-project/syrupy/issues/398)) ([302916b](https://github.com/syrupy-project/syrupy/commit/302916bb87727344cdc1a9abec8ad4e6200e2c50)) -## [0.8.4](https://github.com/noahnu/syrupy/compare/v0.8.3...v0.8.4) (2020-10-30) +## [0.8.4](https://github.com/syrupy-project/syrupy/compare/v0.8.3...v0.8.4) (2020-10-30) ### Performance Improvements -* optimise session items data structures ([#403](https://github.com/noahnu/syrupy/issues/403)) ([818d405](https://github.com/noahnu/syrupy/commit/818d405a85c2f1f5db9d673e632677c10cb52ad9)) +* optimise session items data structures ([#403](https://github.com/syrupy-project/syrupy/issues/403)) ([818d405](https://github.com/syrupy-project/syrupy/commit/818d405a85c2f1f5db9d673e632677c10cb52ad9)) -## [0.8.3](https://github.com/noahnu/syrupy/compare/v0.8.2...v0.8.3) (2020-10-30) +## [0.8.3](https://github.com/syrupy-project/syrupy/compare/v0.8.2...v0.8.3) (2020-10-30) ### Bug Fixes -* assertion exception shows error at correct location ([#402](https://github.com/noahnu/syrupy/issues/402)) ([d46bba4](https://github.com/noahnu/syrupy/commit/d46bba430fa74ec016402d3f521c4812baf07bf4)) -* only perform session finish on test items ran ([#401](https://github.com/noahnu/syrupy/issues/401)) ([61a670f](https://github.com/noahnu/syrupy/commit/61a670f83ba07de148ae005573676f4507391ce4)) +* assertion exception shows error at correct location ([#402](https://github.com/syrupy-project/syrupy/issues/402)) ([d46bba4](https://github.com/syrupy-project/syrupy/commit/d46bba430fa74ec016402d3f521c4812baf07bf4)) +* only perform session finish on test items ran ([#401](https://github.com/syrupy-project/syrupy/issues/401)) ([61a670f](https://github.com/syrupy-project/syrupy/commit/61a670f83ba07de148ae005573676f4507391ce4)) -## [0.8.2](https://github.com/noahnu/syrupy/compare/v0.8.1...v0.8.2) (2020-10-30) +## [0.8.2](https://github.com/syrupy-project/syrupy/compare/v0.8.1...v0.8.2) (2020-10-30) ### Bug Fixes -* unused snapshot detection for targeting single parameterized test case ([#394](https://github.com/noahnu/syrupy/issues/394)) ([e008935](https://github.com/noahnu/syrupy/commit/e008935c052106d157196ca77415f4773a14f64a)) +* unused snapshot detection for targeting single parameterized test case ([#394](https://github.com/syrupy-project/syrupy/issues/394)) ([e008935](https://github.com/syrupy-project/syrupy/commit/e008935c052106d157196ca77415f4773a14f64a)) -## [0.8.1](https://github.com/noahnu/syrupy/compare/v0.8.0...v0.8.1) (2020-10-29) +## [0.8.1](https://github.com/syrupy-project/syrupy/compare/v0.8.0...v0.8.1) (2020-10-29) ### Bug Fixes -* support python 3.9 ([#397](https://github.com/noahnu/syrupy/issues/397)) ([6013e9a](https://github.com/noahnu/syrupy/commit/6013e9af907b94d19df089bbfea65ca217f83a9a)) +* support python 3.9 ([#397](https://github.com/syrupy-project/syrupy/issues/397)) ([6013e9a](https://github.com/syrupy-project/syrupy/commit/6013e9af907b94d19df089bbfea65ca217f83a9a)) -# [0.8.0](https://github.com/noahnu/syrupy/compare/v0.7.2...v0.8.0) (2020-10-27) +# [0.8.0](https://github.com/syrupy-project/syrupy/compare/v0.7.2...v0.8.0) (2020-10-27) ### Features -* **amber:** normalise line endings between operating systems ([#377](https://github.com/noahnu/syrupy/issues/377)) ([82b624d](https://github.com/noahnu/syrupy/commit/82b624d94259422d2f5d5a4d955b615514d0d060)) +* **amber:** normalise line endings between operating systems ([#377](https://github.com/syrupy-project/syrupy/issues/377)) ([82b624d](https://github.com/syrupy-project/syrupy/commit/82b624d94259422d2f5d5a4d955b615514d0d060)) ### BREAKING CHANGES * Line control characters are normalised when snapshots are generated i.e. `\r` and `\n` characters are all written as `\n`. This is to allow interoperability of snapshots between operating systems that use disparate line control characters. -## [0.7.2](https://github.com/noahnu/syrupy/compare/v0.7.1...v0.7.2) (2020-09-20) +## [0.7.2](https://github.com/syrupy-project/syrupy/compare/v0.7.1...v0.7.2) (2020-09-20) ### Bug Fixes -* add support for no colors mode ([#359](https://github.com/noahnu/syrupy/issues/359)) ([ec39b80](https://github.com/noahnu/syrupy/commit/ec39b80b14189032b1b61a4959809737c56ea149)) +* add support for no colors mode ([#359](https://github.com/syrupy-project/syrupy/issues/359)) ([ec39b80](https://github.com/syrupy-project/syrupy/commit/ec39b80b14189032b1b61a4959809737c56ea149)) -## [0.7.1](https://github.com/noahnu/syrupy/compare/v0.7.0...v0.7.1) (2020-09-05) +## [0.7.1](https://github.com/syrupy-project/syrupy/compare/v0.7.0...v0.7.1) (2020-09-05) ### Bug Fixes -* support attrs <21.0.0 ([#350](https://github.com/noahnu/syrupy/issues/350)) ([d327168](https://github.com/noahnu/syrupy/commit/d327168af96385bc2c2eb97f73233ccfd9513226)) +* support attrs <21.0.0 ([#350](https://github.com/syrupy-project/syrupy/issues/350)) ([d327168](https://github.com/syrupy-project/syrupy/commit/d327168af96385bc2c2eb97f73233ccfd9513226)) -# [0.7.0](https://github.com/noahnu/syrupy/compare/v0.6.1...v0.7.0) (2020-08-24) +# [0.7.0](https://github.com/syrupy-project/syrupy/compare/v0.6.1...v0.7.0) (2020-08-24) ### Features -* bugfix, pass indent to multiline open tag, close [#332](https://github.com/noahnu/syrupy/issues/332) ([#334](https://github.com/noahnu/syrupy/issues/334)) ([3b06a98](https://github.com/noahnu/syrupy/commit/3b06a98928a64729bad7c2113e6390136bfbc512)) +* bugfix, pass indent to multiline open tag, close [#332](https://github.com/syrupy-project/syrupy/issues/332) ([#334](https://github.com/syrupy-project/syrupy/issues/334)) ([3b06a98](https://github.com/syrupy-project/syrupy/commit/3b06a98928a64729bad7c2113e6390136bfbc512)) -## [0.6.1](https://github.com/noahnu/syrupy/compare/v0.6.0...v0.6.1) (2020-07-29) +## [0.6.1](https://github.com/syrupy-project/syrupy/compare/v0.6.0...v0.6.1) (2020-07-29) ### Bug Fixes -* support pytest v6 ([#307](https://github.com/noahnu/syrupy/issues/307)) ([ef6496f](https://github.com/noahnu/syrupy/commit/ef6496fb50d8cfea5c9ae1c5954ae546024e28cc)) +* support pytest v6 ([#307](https://github.com/syrupy-project/syrupy/issues/307)) ([ef6496f](https://github.com/syrupy-project/syrupy/commit/ef6496fb50d8cfea5c9ae1c5954ae546024e28cc)) -# [0.6.0](https://github.com/noahnu/syrupy/compare/v0.5.2...v0.6.0) (2020-07-12) +# [0.6.0](https://github.com/syrupy-project/syrupy/compare/v0.5.2...v0.6.0) (2020-07-12) ### Features -* add simple props filter helper ([#290](https://github.com/noahnu/syrupy/issues/290)) ([d76cc07](https://github.com/noahnu/syrupy/commit/d76cc07fa5b9eb7d6cbbbe4b7894e0ba29bd0df6)) +* add simple props filter helper ([#290](https://github.com/syrupy-project/syrupy/issues/290)) ([d76cc07](https://github.com/syrupy-project/syrupy/commit/d76cc07fa5b9eb7d6cbbbe4b7894e0ba29bd0df6)) -## [0.5.2](https://github.com/noahnu/syrupy/compare/v0.5.1...v0.5.2) (2020-07-09) +## [0.5.2](https://github.com/syrupy-project/syrupy/compare/v0.5.1...v0.5.2) (2020-07-09) ### Bug Fixes -* **amber:** Do not add empty line to empty iterables ([#287](https://github.com/noahnu/syrupy/issues/287)) ([0b4a9b0](https://github.com/noahnu/syrupy/commit/0b4a9b065a235f8c62ad08e29f3f36f80b3a25d6)) +* **amber:** Do not add empty line to empty iterables ([#287](https://github.com/syrupy-project/syrupy/issues/287)) ([0b4a9b0](https://github.com/syrupy-project/syrupy/commit/0b4a9b065a235f8c62ad08e29f3f36f80b3a25d6)) -## [0.5.1](https://github.com/noahnu/syrupy/compare/v0.5.0...v0.5.1) (2020-06-12) +## [0.5.1](https://github.com/syrupy-project/syrupy/compare/v0.5.0...v0.5.1) (2020-06-12) ### Bug Fixes -* support ignoring fields when serializing ([#262](https://github.com/noahnu/syrupy/issues/262)) ([f67268e](https://github.com/noahnu/syrupy/commit/f67268e23de477c6cc0912f34d6c6d0f70548683)) +* support ignoring fields when serializing ([#262](https://github.com/syrupy-project/syrupy/issues/262)) ([f67268e](https://github.com/syrupy-project/syrupy/commit/f67268e23de477c6cc0912f34d6c6d0f70548683)) -# [0.5.0](https://github.com/noahnu/syrupy/compare/v0.4.4...v0.5.0) (2020-06-09) +# [0.5.0](https://github.com/syrupy-project/syrupy/compare/v0.4.4...v0.5.0) (2020-06-09) ### Features -* **amber:** add property matcher support ([#245](https://github.com/noahnu/syrupy/issues/245)) ([83ded3c](https://github.com/noahnu/syrupy/commit/83ded3c73917673fcb46857eb291e26704c2c0f6)) +* **amber:** add property matcher support ([#245](https://github.com/syrupy-project/syrupy/issues/245)) ([83ded3c](https://github.com/syrupy-project/syrupy/commit/83ded3c73917673fcb46857eb291e26704c2c0f6)) -## [0.4.4](https://github.com/noahnu/syrupy/compare/v0.4.3...v0.4.4) (2020-06-02) +## [0.4.4](https://github.com/syrupy-project/syrupy/compare/v0.4.3...v0.4.4) (2020-06-02) ### Bug Fixes -* only process valid test nodes in report, close [#246](https://github.com/noahnu/syrupy/issues/246) ([#247](https://github.com/noahnu/syrupy/issues/247)) ([8ed194c](https://github.com/noahnu/syrupy/commit/8ed194cc9e7365c6c4fbd9fcd45d403646334b18)) +* only process valid test nodes in report, close [#246](https://github.com/syrupy-project/syrupy/issues/246) ([#247](https://github.com/syrupy-project/syrupy/issues/247)) ([8ed194c](https://github.com/syrupy-project/syrupy/commit/8ed194cc9e7365c6c4fbd9fcd45d403646334b18)) -## [0.4.3](https://github.com/noahnu/syrupy/compare/v0.4.2...v0.4.3) (2020-05-27) +## [0.4.3](https://github.com/syrupy-project/syrupy/compare/v0.4.2...v0.4.3) (2020-05-27) ### Bug Fixes -* Update setup.py, so that it allows for any Python 3.6+ version to be used ([25c2688](https://github.com/noahnu/syrupy/commit/25c26881629589949e5877f829f54249deec05b2)) +* Update setup.py, so that it allows for any Python 3.6+ version to be used ([25c2688](https://github.com/syrupy-project/syrupy/commit/25c26881629589949e5877f829f54249deec05b2)) -## [0.4.2](https://github.com/noahnu/syrupy/compare/v0.4.1...v0.4.2) (2020-04-22) +## [0.4.2](https://github.com/syrupy-project/syrupy/compare/v0.4.1...v0.4.2) (2020-04-22) ### Bug Fixes -* Handle dotted parameters in classname ([#200](https://github.com/noahnu/syrupy/issues/200)) ([d961f7c](https://github.com/noahnu/syrupy/commit/d961f7cfdde4d3eb36777acce7d2926968531447)) +* Handle dotted parameters in classname ([#200](https://github.com/syrupy-project/syrupy/issues/200)) ([d961f7c](https://github.com/syrupy-project/syrupy/commit/d961f7cfdde4d3eb36777acce7d2926968531447)) -## [0.4.1](https://github.com/noahnu/syrupy/compare/v0.4.0...v0.4.1) (2020-04-19) +## [0.4.1](https://github.com/syrupy-project/syrupy/compare/v0.4.0...v0.4.1) (2020-04-19) ### Bug Fixes -* specify encoding when reading and writing amber fossils ([#198](https://github.com/noahnu/syrupy/issues/198)) ([a6a53c4](https://github.com/noahnu/syrupy/commit/a6a53c4065880433953b1372e6057e2c8ec03768)) +* specify encoding when reading and writing amber fossils ([#198](https://github.com/syrupy-project/syrupy/issues/198)) ([a6a53c4](https://github.com/syrupy-project/syrupy/commit/a6a53c4065880433953b1372e6057e2c8ec03768)) -# [0.4.0](https://github.com/noahnu/syrupy/compare/v0.3.12...v0.4.0) (2020-04-19) +# [0.4.0](https://github.com/syrupy-project/syrupy/compare/v0.3.12...v0.4.0) (2020-04-19) ### Bug Fixes -* remove added trailing whitespace from multiline string ([24f3d57](https://github.com/noahnu/syrupy/commit/24f3d577726bc9c9b09433780f1647adc8fd35a4)) +* remove added trailing whitespace from multiline string ([24f3d57](https://github.com/syrupy-project/syrupy/commit/24f3d577726bc9c9b09433780f1647adc8fd35a4)) ### Features -* **amber:** indent multiline strings, close [#193](https://github.com/noahnu/syrupy/issues/193) ([#194](https://github.com/noahnu/syrupy/issues/194)) ([de5af3e](https://github.com/noahnu/syrupy/commit/de5af3e233712e1db3132b0cdbcc6325dcb9a625)) +* **amber:** indent multiline strings, close [#193](https://github.com/syrupy-project/syrupy/issues/193) ([#194](https://github.com/syrupy-project/syrupy/issues/194)) ([de5af3e](https://github.com/syrupy-project/syrupy/commit/de5af3e233712e1db3132b0cdbcc6325dcb9a625)) -## [0.3.12](https://github.com/noahnu/syrupy/compare/v0.3.11...v0.3.12) (2020-04-19) +## [0.3.12](https://github.com/syrupy-project/syrupy/compare/v0.3.11...v0.3.12) (2020-04-19) ### Bug Fixes -* use the test node location when determining snapshot class name ([#197](https://github.com/noahnu/syrupy/issues/197)) ([1010c94](https://github.com/noahnu/syrupy/commit/1010c94378dbf325fe3fda6a2f563ae152c640ca)) +* use the test node location when determining snapshot class name ([#197](https://github.com/syrupy-project/syrupy/issues/197)) ([1010c94](https://github.com/syrupy-project/syrupy/commit/1010c94378dbf325fe3fda6a2f563ae152c640ca)) -## [0.3.11](https://github.com/noahnu/syrupy/compare/v0.3.10...v0.3.11) (2020-04-17) +## [0.3.11](https://github.com/syrupy-project/syrupy/compare/v0.3.10...v0.3.11) (2020-04-17) ### Bug Fixes -* show snapshot data in report when does not exist ([#191](https://github.com/noahnu/syrupy/issues/191)) ([7ebdca2](https://github.com/noahnu/syrupy/commit/7ebdca2d5537ce6f311b09e812aa54ffc141222e)) +* show snapshot data in report when does not exist ([#191](https://github.com/syrupy-project/syrupy/issues/191)) ([7ebdca2](https://github.com/syrupy-project/syrupy/commit/7ebdca2d5537ce6f311b09e812aa54ffc141222e)) -## [0.3.10](https://github.com/noahnu/syrupy/compare/v0.3.9...v0.3.10) (2020-04-15) +## [0.3.10](https://github.com/syrupy-project/syrupy/compare/v0.3.9...v0.3.10) (2020-04-15) ### Bug Fixes -* parsing identifiers from snapshot names ([#186](https://github.com/noahnu/syrupy/issues/186)) ([#187](https://github.com/noahnu/syrupy/issues/187)) ([45a2931](https://github.com/noahnu/syrupy/commit/45a29312a8a416db420cb2c9a839069dfc289c46)) +* parsing identifiers from snapshot names ([#186](https://github.com/syrupy-project/syrupy/issues/186)) ([#187](https://github.com/syrupy-project/syrupy/issues/187)) ([45a2931](https://github.com/syrupy-project/syrupy/commit/45a29312a8a416db420cb2c9a839069dfc289c46)) -## [0.3.9](https://github.com/noahnu/syrupy/compare/v0.3.8...v0.3.9) (2020-04-08) +## [0.3.9](https://github.com/syrupy-project/syrupy/compare/v0.3.8...v0.3.9) (2020-04-08) ### Bug Fixes -* correctly track unused snapshots in classes ([#177](https://github.com/noahnu/syrupy/issues/177)) ([f780501](https://github.com/noahnu/syrupy/commit/f7805015ac874843fbd996d209a6a6851f5d0ba2)) +* correctly track unused snapshots in classes ([#177](https://github.com/syrupy-project/syrupy/issues/177)) ([f780501](https://github.com/syrupy-project/syrupy/commit/f7805015ac874843fbd996d209a6a6851f5d0ba2)) -## [0.3.8](https://github.com/noahnu/syrupy/compare/v0.3.7...v0.3.8) (2020-04-03) +## [0.3.8](https://github.com/syrupy-project/syrupy/compare/v0.3.7...v0.3.8) (2020-04-03) ### Performance Improvements -* only clear assertion `_extension` when overridden ([#172](https://github.com/noahnu/syrupy/issues/172)) ([82eae91](https://github.com/noahnu/syrupy/commit/82eae91a2156556753ced22eb9b6cc97594b6f9c)) +* only clear assertion `_extension` when overridden ([#172](https://github.com/syrupy-project/syrupy/issues/172)) ([82eae91](https://github.com/syrupy-project/syrupy/commit/82eae91a2156556753ced22eb9b6cc97594b6f9c)) -## [0.3.7](https://github.com/noahnu/syrupy/compare/v0.3.6...v0.3.7) (2020-03-24) +## [0.3.7](https://github.com/syrupy-project/syrupy/compare/v0.3.6...v0.3.7) (2020-03-24) ### Bug Fixes -* support call syntax for snapshot fixture overriding ([#160](https://github.com/noahnu/syrupy/issues/160)) ([4cf051c](https://github.com/noahnu/syrupy/commit/4cf051c808da59d7b5a4dcad6cae440dae262541)) +* support call syntax for snapshot fixture overriding ([#160](https://github.com/syrupy-project/syrupy/issues/160)) ([4cf051c](https://github.com/syrupy-project/syrupy/commit/4cf051c808da59d7b5a4dcad6cae440dae262541)) -## [0.3.6](https://github.com/noahnu/syrupy/compare/v0.3.5...v0.3.6) (2020-03-10) +## [0.3.6](https://github.com/syrupy-project/syrupy/compare/v0.3.5...v0.3.6) (2020-03-10) ### Bug Fixes -* specify correct min version of pytest ([#157](https://github.com/noahnu/syrupy/issues/157)) ([858bec7](https://github.com/noahnu/syrupy/commit/858bec7e3205679eb0099bde66af564002c4af8d)) +* specify correct min version of pytest ([#157](https://github.com/syrupy-project/syrupy/issues/157)) ([858bec7](https://github.com/syrupy-project/syrupy/commit/858bec7e3205679eb0099bde66af564002c4af8d)) -## [0.3.5](https://github.com/noahnu/syrupy/compare/v0.3.4...v0.3.5) (2020-03-08) +## [0.3.5](https://github.com/syrupy-project/syrupy/compare/v0.3.4...v0.3.5) (2020-03-08) ### Bug Fixes -* snapshot name warning showing on false negatives ([#151](https://github.com/noahnu/syrupy/issues/151)) ([d56860b](https://github.com/noahnu/syrupy/commit/d56860b9005ee21a04f36f0ea7550fe8c4d7323a)) +* snapshot name warning showing on false negatives ([#151](https://github.com/syrupy-project/syrupy/issues/151)) ([d56860b](https://github.com/syrupy-project/syrupy/commit/d56860b9005ee21a04f36f0ea7550fe8c4d7323a)) -## [0.3.4](https://github.com/noahnu/syrupy/compare/v0.3.3...v0.3.4) (2020-03-08) +## [0.3.4](https://github.com/syrupy-project/syrupy/compare/v0.3.3...v0.3.4) (2020-03-08) ### Bug Fixes -* show hidden line characters and accessible colors ([#126](https://github.com/noahnu/syrupy/issues/126)) ([fa442df](https://github.com/noahnu/syrupy/commit/fa442df2981406b31065938c57b6ee8eaed2e724)), closes [#150](https://github.com/noahnu/syrupy/issues/150) +* show hidden line characters and accessible colors ([#126](https://github.com/syrupy-project/syrupy/issues/126)) ([fa442df](https://github.com/syrupy-project/syrupy/commit/fa442df2981406b31065938c57b6ee8eaed2e724)), closes [#150](https://github.com/syrupy-project/syrupy/issues/150) -## [v0.3.3](https://github.com/noahnu/syrupy/compare/v0.3.2...v0.3.3) +## [v0.3.3](https://github.com/syrupy-project/syrupy/compare/v0.3.2...v0.3.3) - Conversion of all `os.path` and `os.walk` calls to use `pathlib` instead, setting `pathlib` as the new preferred way of doing path operations (#130) - Add `--snapshot-default-extension` option to specify extension class via pytest cli (#132) @@ -672,30 +672,30 @@ Migration Guide - Fix bug where targeting specific test nodes did not filter out unused snapshots (#139) - Fix bug where snapshot report was printed out before the pytest report (#144) -## [v0.3.2](https://github.com/noahnu/syrupy/compare/v0.3.1...v0.3.2) +## [v0.3.2](https://github.com/syrupy-project/syrupy/compare/v0.3.1...v0.3.2) - Fix bug where untargeted snapshots would be deleted when using pytest in targeted mode (#123) - Fix bug where snapshot files were not cleaned up when running specific test files (#127) - Fix bug where targeting specific test nodes in a test file was not supported (#127) - Fix bug where targeting specific test modules using pyargs was not supported (#127) -## [v0.3.1](https://github.com/noahnu/syrupy/compare/v0.3.0...v0.3.1) +## [v0.3.1](https://github.com/syrupy-project/syrupy/compare/v0.3.0...v0.3.1) - Fix bug where newline control characters were being translated based on platform (#113) -## [v0.3.0](https://github.com/noahnu/syrupy/compare/v0.2.0...v0.3.0) +## [v0.3.0](https://github.com/syrupy-project/syrupy/compare/v0.2.0...v0.3.0) - Adds support for named tuple fields (#108) - Add trailing commas to class fields (#108) - Specify explicit version range for pytest peer dependency (#111) -## [v0.2.0](https://github.com/noahnu/syrupy/compare/v0.1.0...v0.2.0) +## [v0.2.0](https://github.com/syrupy-project/syrupy/compare/v0.1.0...v0.2.0) - Fix issue with using hashables as dict keys or in sets (#103) - Add support for custom objects repr (#101) - Add support for nested test classes (#99) - Remove `_snapshot_subdirectory_name` from `SnapshotFossilizer` (#99) -## [v0.1.0](https://github.com/noahnu/syrupy/tree/v0.1.0) +## [v0.1.0](https://github.com/syrupy-project/syrupy/tree/v0.1.0) - Initial release respecting [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 25b985c9..d653b37c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,7 +2,7 @@ :tada: Thanks for taking the time to contribute! :tada: -The following is a set of guidelines for contributing to [syrupy](https://github.com/noahnu/syrupy). +The following is a set of guidelines for contributing to [syrupy](https://github.com/syrupy-project/syrupy). These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document. @@ -107,7 +107,7 @@ def test_performance(x, snapshot): assert x == snapshot ``` -and then run: +and then run: ```sh SIZE=1000 python -m cProfile -s cumtime -m pytest test_performance.py --snapshot-update -s > profile.log @@ -137,4 +137,4 @@ You can also run `inv lint --fix` to see and solve what issues it can. ### Issue and Pull Request Labels -Please tag issues and pull requests according to the relevant [github labels](https://github.com/noahnu/syrupy/issues/labels). +Please tag issues and pull requests according to the relevant [github labels](https://github.com/syrupy-project/syrupy/issues/labels). diff --git a/LICENSE b/LICENSE index 2acbd1b6..4c9ad980 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ - Apache License + Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ diff --git a/README.md b/README.md index afb029d9..63b25471 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Logo -[![All Contributors](https://img.shields.io/badge/all_contributors-2-orange.svg?style=flat-square)](#contributors) [![Stage](https://img.shields.io/pypi/status/syrupy)](https://pypi.org/project/syrupy/) +[![All Contributors](https://img.shields.io/badge/all_contributors-2-orange.svg?style=flat-square)](#contributors) [![Stage](https://img.shields.io/pypi/status/syrupy)](https://pypi.org/project/syrupy/) [![codecov](https://codecov.io/gh/syrupy-project/syrupy/graph/badge.svg?token=GB9EmYKPAl)](https://codecov.io/gh/syrupy-project/syrupy) ![Pytest>=5.1.0,<9.0.0](https://img.shields.io/badge/pytest-%3E%3D5.1.0,%20%3C9.0.0-green) [![Pypi](https://img.shields.io/pypi/v/syrupy)](https://pypi.org/project/syrupy/) [![Wheel](https://img.shields.io/pypi/wheel/syrupy)](https://pypi.org/project/syrupy/) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/syrupy) [![PyPI - Downloads](https://img.shields.io/pypi/dm/syrupy)](https://pypi.org/project/syrupy/) [![PyPI - License](https://img.shields.io/pypi/l/syrupy)](./LICENSE) @@ -136,7 +136,7 @@ These are the cli options exposed to `pytest` by the plugin. | `--snapshot-update` | Snapshots will be updated to match assertions and unused snapshots will be deleted. | `False` | | `--snapshot-details` | Includes details of unused snapshots (test name and snapshot location) in the final report. | `False` | | `--snapshot-warn-unused` | Prints a warning on unused snapshots rather than fail the test suite. | `False` | -| `--snapshot-default-extension` | Use to change the default snapshot extension class. | [AmberSnapshotExtension](https://github.com/noahnu/syrupy/blob/main/src/syrupy/extensions/amber/__init__.py) | +| `--snapshot-default-extension` | Use to change the default snapshot extension class. | [AmberSnapshotExtension](https://github.com/syrupy-project/syrupy/blob/main/src/syrupy/extensions/amber/__init__.py) | | `--snapshot-no-colors` | Disable test results output highlighting. Equivalent to setting the environment variables `ANSI_COLORS_DISABLED` or `NO_COLOR` | Disabled by default if not in terminal. | ### Assertion Options @@ -369,9 +369,9 @@ def test_case(snapshot): ### Advanced Usage -By overriding the provided [`AbstractSyrupyExtension`](https://github.com/noahnu/syrupy/tree/main/src/syrupy/extensions/base.py) you can implement varied custom behaviours. +By overriding the provided [`AbstractSyrupyExtension`](https://github.com/syrupy-project/syrupy/tree/main/src/syrupy/extensions/base.py) you can implement varied custom behaviours. -See examples of how syrupy can be used and extended in the [test examples](https://github.com/noahnu/syrupy/tree/main/tests/examples). +See examples of how syrupy can be used and extended in the [test examples](https://github.com/syrupy-project/syrupy/tree/main/tests/examples). #### Overriding defaults @@ -461,14 +461,14 @@ The generated snapshot: ### Extending Syrupy -- [Custom defaults](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_defaults.py) -- [Custom snapshot directory 1](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_snapshot_directory.py) -- [Custom snapshot directory 2](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_snapshot_directory_2.py) -- [Custom snapshot name](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_snapshot_name.py) -- [Custom object snapshots](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_object_repr.py) -- [Custom comparator](https://github.com/noahnu/syrupy/tree/main/tests/integration/test_custom_comparator.py) -- [JPEG image extension](https://github.com/noahnu/syrupy/tree/main/tests/examples/test_custom_image_extension.py) -- [Built-in image extensions](https://github.com/noahnu/syrupy/blob/main/tests/syrupy/extensions/image/test_image_svg.py) +- [Custom defaults](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_defaults.py) +- [Custom snapshot directory 1](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_snapshot_directory.py) +- [Custom snapshot directory 2](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_snapshot_directory_2.py) +- [Custom snapshot name](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_snapshot_name.py) +- [Custom object snapshots](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_object_repr.py) +- [Custom comparator](https://github.com/syrupy-project/syrupy/tree/main/tests/integration/test_custom_comparator.py) +- [JPEG image extension](https://github.com/syrupy-project/syrupy/tree/main/tests/examples/test_custom_image_extension.py) +- [Built-in image extensions](https://github.com/syrupy-project/syrupy/blob/main/tests/syrupy/extensions/image/test_image_svg.py) ## Uninstalling @@ -476,11 +476,11 @@ The generated snapshot: pip uninstall syrupy ``` -If you have decided not to use Syrupy for your project after giving us a try, we'd love to get your feedback. Please create a GitHub issue if applicable, or drop a comment in our [Discord server](https://discord.gg/YhK3GFcZrk). +If you have decided not to use Syrupy for your project after giving us a try, we'd love to get your feedback. Please create a GitHub issue if applicable. ## Known Limitations -- `pytest-xdist` support only partially exists. There is no issue when it comes to reads however when you attempt to run `pytest --snapshot-update`, if running with more than 1 process, the ability to detect unused snapshots is disabled. See [#535](https://github.com/noahnu/syrupy/issues/535) for more information. +- `pytest-xdist` support only partially exists. There is no issue when it comes to reads however when you attempt to run `pytest --snapshot-update`, if running with more than 1 process, the ability to detect unused snapshots is disabled. See [#535](https://github.com/syrupy-project/syrupy/issues/535) for more information. _We welcome contributions to patch these known limitations._ @@ -490,7 +490,7 @@ Feel free to open a PR or GitHub issue. Contributions welcome! To develop locally, clone this repository and run `. script/bootstrap` to install test dependencies. You can then use `invoke --list` to see available commands. -### See contributing [guide](https://github.com/noahnu/syrupy/tree/main/CONTRIBUTING.md) +### See contributing [guide](https://github.com/syrupy-project/syrupy/tree/main/CONTRIBUTING.md) ## Contributors @@ -500,37 +500,37 @@ To develop locally, clone this repository and run `. script/bootstrap` to instal - - - - - - + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - + + + +
Noah
Noah

🚇 🤔 💻 📖 ⚠️
Emmanuel Ogbizi
Emmanuel Ogbizi

💻 🎨 🚇 📖 ⚠️
Adam Lazzarato
Adam Lazzarato

📖
Marc Cataford
Marc Cataford

💻 ⚠️
Michael Rose
Michael Rose

💻 ⚠️
Jimmy Jia
Jimmy Jia

💻 ⚠️
Noah
Noah

🚇 🤔 💻 📖 ⚠️
Emmanuel Ogbizi
Emmanuel Ogbizi

💻 🎨 🚇 📖 ⚠️
Adam Lazzarato
Adam Lazzarato

📖
Marc Cataford
Marc Cataford

💻 ⚠️
Michael Rose
Michael Rose

💻 ⚠️
Jimmy Jia
Jimmy Jia

💻 ⚠️
Steven Loria
Steven Loria

🚇
Artur Balabanov
Artur Balabanov

💻
Huon Wilson
Huon Wilson

💻 🐛
Elizabeth Culbertson
Elizabeth Culbertson

💻 ⚠️
Joakim Nordling
Joakim Nordling

🐛
Ouail
Ouail

💻
Denis
Denis

💻
N0124
N0124

💻
Artur Balabanov
Artur Balabanov

💻
Huon Wilson
Huon Wilson

💻 🐛
Elizabeth Culbertson
Elizabeth Culbertson

💻 ⚠️
Joakim Nordling
Joakim Nordling

🐛
Ouail
Ouail

💻
Denis
Denis

💻
N0124
N0124

💻
dtczest
dtczest

🐛
Eddie Darling
Eddie Darling

📖
darrenburns
darrenburns

📖
Magnus Heskestad Waage
Magnus Heskestad Waage

🐛
Herbert Ho
Herbert Ho

🐛
Tolga Eren
Tolga Eren

🐛
John Kurkowski
John Kurkowski

🐛
dtczest
dtczest

🐛
Eddie Darling
Eddie Darling

📖
darrenburns
darrenburns

📖
Magnus Heskestad Waage
Magnus Heskestad Waage

🐛
Herbert Ho
Herbert Ho

🐛
Tolga Eren
Tolga Eren

🐛
John Kurkowski
John Kurkowski

🐛
Atharva Arya
Atharva Arya

💻
Michał Jelonek
Michał Jelonek

💻
ManiacDC
ManiacDC

💻
Dmitry Dygalo
Dmitry Dygalo

📖
Atharva Arya
Atharva Arya

💻
Michał Jelonek
Michał Jelonek

💻
ManiacDC
ManiacDC

💻
Dmitry Dygalo
Dmitry Dygalo

📖
@@ -548,4 +548,4 @@ This section is automatically generated via tagging the all-contributors bot in ## License -Syrupy is licensed under [Apache License Version 2.0](https://github.com/noahnu/syrupy/tree/main/LICENSE). +Syrupy is licensed under [Apache License Version 2.0](https://github.com/syrupy-project/syrupy/tree/main/LICENSE). diff --git a/SECURITY.md b/SECURITY.md index f6f42b85..25a18135 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -6,4 +6,4 @@ In general, we do not backport fixes to older versions of Syrupy due to maintena ## Reporting a Vulnerability -To report a vulnerability, see: https://github.com/noahnu/syrupy/security/advisories. +To report a vulnerability, see: https://github.com/syrupy-project/syrupy/security/advisories. diff --git a/poetry.lock b/poetry.lock index e4497838..cf912678 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2,52 +2,67 @@ [[package]] name = "attrs" -version = "23.2.0" +version = "24.2.0" description = "Classes Without Boilerplate" optional = false python-versions = ">=3.7" files = [ - {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, - {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, + {file = "attrs-24.2.0-py3-none-any.whl", hash = "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"}, + {file = "attrs-24.2.0.tar.gz", hash = "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346"}, ] [package.extras] -cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] -dev = ["attrs[tests]", "pre-commit"] -docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] -tests = ["attrs[tests-no-zope]", "zope-interface"] -tests-mypy = ["mypy (>=1.6)", "pytest-mypy-plugins"] -tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist[psutil]"] +benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] + +[[package]] +name = "backports-tarfile" +version = "1.2.0" +description = "Backport of CPython tarfile module" +optional = false +python-versions = ">=3.8" +files = [ + {file = "backports.tarfile-1.2.0-py3-none-any.whl", hash = "sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34"}, + {file = "backports_tarfile-1.2.0.tar.gz", hash = "sha256:d75e02c268746e1b8144c278978b6e98e85de6ad16f8e4b0844a154557eca991"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["jaraco.test", "pytest (!=8.0.*)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)"] [[package]] name = "black" -version = "24.1.1" +version = "24.8.0" description = "The uncompromising code formatter." optional = false python-versions = ">=3.8" files = [ - {file = "black-24.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2588021038bd5ada078de606f2a804cadd0a3cc6a79cb3e9bb3a8bf581325a4c"}, - {file = "black-24.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1a95915c98d6e32ca43809d46d932e2abc5f1f7d582ffbe65a5b4d1588af7445"}, - {file = "black-24.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fa6a0e965779c8f2afb286f9ef798df770ba2b6cee063c650b96adec22c056a"}, - {file = "black-24.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:5242ecd9e990aeb995b6d03dc3b2d112d4a78f2083e5a8e86d566340ae80fec4"}, - {file = "black-24.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fc1ec9aa6f4d98d022101e015261c056ddebe3da6a8ccfc2c792cbe0349d48b7"}, - {file = "black-24.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0269dfdea12442022e88043d2910429bed717b2d04523867a85dacce535916b8"}, - {file = "black-24.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b3d64db762eae4a5ce04b6e3dd745dcca0fb9560eb931a5be97472e38652a161"}, - {file = "black-24.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:5d7b06ea8816cbd4becfe5f70accae953c53c0e53aa98730ceccb0395520ee5d"}, - {file = "black-24.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e2c8dfa14677f90d976f68e0c923947ae68fa3961d61ee30976c388adc0b02c8"}, - {file = "black-24.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a21725862d0e855ae05da1dd25e3825ed712eaaccef6b03017fe0853a01aa45e"}, - {file = "black-24.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:07204d078e25327aad9ed2c64790d681238686bce254c910de640c7cc4fc3aa6"}, - {file = "black-24.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:a83fe522d9698d8f9a101b860b1ee154c1d25f8a82ceb807d319f085b2627c5b"}, - {file = "black-24.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:08b34e85170d368c37ca7bf81cf67ac863c9d1963b2c1780c39102187ec8dd62"}, - {file = "black-24.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7258c27115c1e3b5de9ac6c4f9957e3ee2c02c0b39222a24dc7aa03ba0e986f5"}, - {file = "black-24.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40657e1b78212d582a0edecafef133cf1dd02e6677f539b669db4746150d38f6"}, - {file = "black-24.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:e298d588744efda02379521a19639ebcd314fba7a49be22136204d7ed1782717"}, - {file = "black-24.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:34afe9da5056aa123b8bfda1664bfe6fb4e9c6f311d8e4a6eb089da9a9173bf9"}, - {file = "black-24.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:854c06fb86fd854140f37fb24dbf10621f5dab9e3b0c29a690ba595e3d543024"}, - {file = "black-24.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3897ae5a21ca132efa219c029cce5e6bfc9c3d34ed7e892113d199c0b1b444a2"}, - {file = "black-24.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:ecba2a15dfb2d97105be74bbfe5128bc5e9fa8477d8c46766505c1dda5883aac"}, - {file = "black-24.1.1-py3-none-any.whl", hash = "sha256:5cdc2e2195212208fbcae579b931407c1fa9997584f0a415421748aeafff1168"}, - {file = "black-24.1.1.tar.gz", hash = "sha256:48b5760dcbfe5cf97fd4fba23946681f3a81514c6ab8a45b50da67ac8fbc6c7b"}, + {file = "black-24.8.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:09cdeb74d494ec023ded657f7092ba518e8cf78fa8386155e4a03fdcc44679e6"}, + {file = "black-24.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:81c6742da39f33b08e791da38410f32e27d632260e599df7245cccee2064afeb"}, + {file = "black-24.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:707a1ca89221bc8a1a64fb5e15ef39cd755633daa672a9db7498d1c19de66a42"}, + {file = "black-24.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:d6417535d99c37cee4091a2f24eb2b6d5ec42b144d50f1f2e436d9fe1916fe1a"}, + {file = "black-24.8.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fb6e2c0b86bbd43dee042e48059c9ad7830abd5c94b0bc518c0eeec57c3eddc1"}, + {file = "black-24.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:837fd281f1908d0076844bc2b801ad2d369c78c45cf800cad7b61686051041af"}, + {file = "black-24.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:62e8730977f0b77998029da7971fa896ceefa2c4c4933fcd593fa599ecbf97a4"}, + {file = "black-24.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:72901b4913cbac8972ad911dc4098d5753704d1f3c56e44ae8dce99eecb0e3af"}, + {file = "black-24.8.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7c046c1d1eeb7aea9335da62472481d3bbf3fd986e093cffd35f4385c94ae368"}, + {file = "black-24.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:649f6d84ccbae73ab767e206772cc2d7a393a001070a4c814a546afd0d423aed"}, + {file = "black-24.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2b59b250fdba5f9a9cd9d0ece6e6d993d91ce877d121d161e4698af3eb9c1018"}, + {file = "black-24.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:6e55d30d44bed36593c3163b9bc63bf58b3b30e4611e4d88a0c3c239930ed5b2"}, + {file = "black-24.8.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:505289f17ceda596658ae81b61ebbe2d9b25aa78067035184ed0a9d855d18afd"}, + {file = "black-24.8.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b19c9ad992c7883ad84c9b22aaa73562a16b819c1d8db7a1a1a49fb7ec13c7d2"}, + {file = "black-24.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f13f7f386f86f8121d76599114bb8c17b69d962137fc70efe56137727c7047e"}, + {file = "black-24.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:f490dbd59680d809ca31efdae20e634f3fae27fba3ce0ba3208333b713bc3920"}, + {file = "black-24.8.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eab4dd44ce80dea27dc69db40dab62d4ca96112f87996bca68cd75639aeb2e4c"}, + {file = "black-24.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3c4285573d4897a7610054af5a890bde7c65cb466040c5f0c8b732812d7f0e5e"}, + {file = "black-24.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9e84e33b37be070ba135176c123ae52a51f82306def9f7d063ee302ecab2cf47"}, + {file = "black-24.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:73bbf84ed136e45d451a260c6b73ed674652f90a2b3211d6a35e78054563a9bb"}, + {file = "black-24.8.0-py3-none-any.whl", hash = "sha256:972085c618ee94f402da1af548a4f218c754ea7e5dc70acb168bfaca4c2542ed"}, + {file = "black-24.8.0.tar.gz", hash = "sha256:2500945420b6784c38b9ee885af039f5e7471ef284ab03fa35ecdde4688cd83f"}, ] [package.dependencies] @@ -67,74 +82,89 @@ uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "certifi" -version = "2024.2.2" +version = "2024.7.4" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, - {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, + {file = "certifi-2024.7.4-py3-none-any.whl", hash = "sha256:c198e21b1289c2ab85ee4e67bb4b4ef3ead0892059901a8d5b622f24a1101e90"}, + {file = "certifi-2024.7.4.tar.gz", hash = "sha256:5a1e7645bc0ec61a09e26c36f6106dd4cf40c6db3a1fb6352b0244e7fb057c7b"}, ] [[package]] name = "cffi" -version = "1.16.0" +version = "1.17.0" description = "Foreign Function Interface for Python calling C code." optional = false python-versions = ">=3.8" files = [ - {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, - {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, - {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, - {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, - {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, - {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, - {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, - {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, - {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, - {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, - {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, - {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, - {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, - {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, - {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, + {file = "cffi-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f9338cc05451f1942d0d8203ec2c346c830f8e86469903d5126c1f0a13a2bcbb"}, + {file = "cffi-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a0ce71725cacc9ebf839630772b07eeec220cbb5f03be1399e0457a1464f8e1a"}, + {file = "cffi-1.17.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c815270206f983309915a6844fe994b2fa47e5d05c4c4cef267c3b30e34dbe42"}, + {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6bdcd415ba87846fd317bee0774e412e8792832e7805938987e4ede1d13046d"}, + {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8a98748ed1a1df4ee1d6f927e151ed6c1a09d5ec21684de879c7ea6aa96f58f2"}, + {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0a048d4f6630113e54bb4b77e315e1ba32a5a31512c31a273807d0027a7e69ab"}, + {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24aa705a5f5bd3a8bcfa4d123f03413de5d86e497435693b638cbffb7d5d8a1b"}, + {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:856bf0924d24e7f93b8aee12a3a1095c34085600aa805693fb7f5d1962393206"}, + {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:4304d4416ff032ed50ad6bb87416d802e67139e31c0bde4628f36a47a3164bfa"}, + {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:331ad15c39c9fe9186ceaf87203a9ecf5ae0ba2538c9e898e3a6967e8ad3db6f"}, + {file = "cffi-1.17.0-cp310-cp310-win32.whl", hash = "sha256:669b29a9eca6146465cc574659058ed949748f0809a2582d1f1a324eb91054dc"}, + {file = "cffi-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:48b389b1fd5144603d61d752afd7167dfd205973a43151ae5045b35793232aa2"}, + {file = "cffi-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c5d97162c196ce54af6700949ddf9409e9833ef1003b4741c2b39ef46f1d9720"}, + {file = "cffi-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ba5c243f4004c750836f81606a9fcb7841f8874ad8f3bf204ff5e56332b72b9"}, + {file = "cffi-1.17.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bb9333f58fc3a2296fb1d54576138d4cf5d496a2cc118422bd77835e6ae0b9cb"}, + {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:435a22d00ec7d7ea533db494da8581b05977f9c37338c80bc86314bec2619424"}, + {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1df34588123fcc88c872f5acb6f74ae59e9d182a2707097f9e28275ec26a12d"}, + {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:df8bb0010fdd0a743b7542589223a2816bdde4d94bb5ad67884348fa2c1c67e8"}, + {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8b5b9712783415695663bd463990e2f00c6750562e6ad1d28e072a611c5f2a6"}, + {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ffef8fd58a36fb5f1196919638f73dd3ae0db1a878982b27a9a5a176ede4ba91"}, + {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4e67d26532bfd8b7f7c05d5a766d6f437b362c1bf203a3a5ce3593a645e870b8"}, + {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:45f7cd36186db767d803b1473b3c659d57a23b5fa491ad83c6d40f2af58e4dbb"}, + {file = "cffi-1.17.0-cp311-cp311-win32.whl", hash = "sha256:a9015f5b8af1bb6837a3fcb0cdf3b874fe3385ff6274e8b7925d81ccaec3c5c9"}, + {file = "cffi-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:b50aaac7d05c2c26dfd50c3321199f019ba76bb650e346a6ef3616306eed67b0"}, + {file = "cffi-1.17.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aec510255ce690d240f7cb23d7114f6b351c733a74c279a84def763660a2c3bc"}, + {file = "cffi-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2770bb0d5e3cc0e31e7318db06efcbcdb7b31bcb1a70086d3177692a02256f59"}, + {file = "cffi-1.17.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db9a30ec064129d605d0f1aedc93e00894b9334ec74ba9c6bdd08147434b33eb"}, + {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a47eef975d2b8b721775a0fa286f50eab535b9d56c70a6e62842134cf7841195"}, + {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f3e0992f23bbb0be00a921eae5363329253c3b86287db27092461c887b791e5e"}, + {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6107e445faf057c118d5050560695e46d272e5301feffda3c41849641222a828"}, + {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb862356ee9391dc5a0b3cbc00f416b48c1b9a52d252d898e5b7696a5f9fe150"}, + {file = "cffi-1.17.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c1c13185b90bbd3f8b5963cd8ce7ad4ff441924c31e23c975cb150e27c2bf67a"}, + {file = "cffi-1.17.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:17c6d6d3260c7f2d94f657e6872591fe8733872a86ed1345bda872cfc8c74885"}, + {file = "cffi-1.17.0-cp312-cp312-win32.whl", hash = "sha256:c3b8bd3133cd50f6b637bb4322822c94c5ce4bf0d724ed5ae70afce62187c492"}, + {file = "cffi-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:dca802c8db0720ce1c49cce1149ff7b06e91ba15fa84b1d59144fef1a1bc7ac2"}, + {file = "cffi-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:6ce01337d23884b21c03869d2f68c5523d43174d4fc405490eb0091057943118"}, + {file = "cffi-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cab2eba3830bf4f6d91e2d6718e0e1c14a2f5ad1af68a89d24ace0c6b17cced7"}, + {file = "cffi-1.17.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:14b9cbc8f7ac98a739558eb86fabc283d4d564dafed50216e7f7ee62d0d25377"}, + {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b00e7bcd71caa0282cbe3c90966f738e2db91e64092a877c3ff7f19a1628fdcb"}, + {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:41f4915e09218744d8bae14759f983e466ab69b178de38066f7579892ff2a555"}, + {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e4760a68cab57bfaa628938e9c2971137e05ce48e762a9cb53b76c9b569f1204"}, + {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:011aff3524d578a9412c8b3cfaa50f2c0bd78e03eb7af7aa5e0df59b158efb2f"}, + {file = "cffi-1.17.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:a003ac9edc22d99ae1286b0875c460351f4e101f8c9d9d2576e78d7e048f64e0"}, + {file = "cffi-1.17.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ef9528915df81b8f4c7612b19b8628214c65c9b7f74db2e34a646a0a2a0da2d4"}, + {file = "cffi-1.17.0-cp313-cp313-win32.whl", hash = "sha256:70d2aa9fb00cf52034feac4b913181a6e10356019b18ef89bc7c12a283bf5f5a"}, + {file = "cffi-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:b7b6ea9e36d32582cda3465f54c4b454f62f23cb083ebc7a94e2ca6ef011c3a7"}, + {file = "cffi-1.17.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:964823b2fc77b55355999ade496c54dde161c621cb1f6eac61dc30ed1b63cd4c"}, + {file = "cffi-1.17.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:516a405f174fd3b88829eabfe4bb296ac602d6a0f68e0d64d5ac9456194a5b7e"}, + {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dec6b307ce928e8e112a6bb9921a1cb00a0e14979bf28b98e084a4b8a742bd9b"}, + {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4094c7b464cf0a858e75cd14b03509e84789abf7b79f8537e6a72152109c76e"}, + {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2404f3de742f47cb62d023f0ba7c5a916c9c653d5b368cc966382ae4e57da401"}, + {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aa9d43b02a0c681f0bfbc12d476d47b2b2b6a3f9287f11ee42989a268a1833c"}, + {file = "cffi-1.17.0-cp38-cp38-win32.whl", hash = "sha256:0bb15e7acf8ab35ca8b24b90af52c8b391690ef5c4aec3d31f38f0d37d2cc499"}, + {file = "cffi-1.17.0-cp38-cp38-win_amd64.whl", hash = "sha256:93a7350f6706b31f457c1457d3a3259ff9071a66f312ae64dc024f049055f72c"}, + {file = "cffi-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1a2ddbac59dc3716bc79f27906c010406155031a1c801410f1bafff17ea304d2"}, + {file = "cffi-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6327b572f5770293fc062a7ec04160e89741e8552bf1c358d1a23eba68166759"}, + {file = "cffi-1.17.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dbc183e7bef690c9abe5ea67b7b60fdbca81aa8da43468287dae7b5c046107d4"}, + {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5bdc0f1f610d067c70aa3737ed06e2726fd9d6f7bfee4a351f4c40b6831f4e82"}, + {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6d872186c1617d143969defeadac5a904e6e374183e07977eedef9c07c8953bf"}, + {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d46ee4764b88b91f16661a8befc6bfb24806d885e27436fdc292ed7e6f6d058"}, + {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f76a90c345796c01d85e6332e81cab6d70de83b829cf1d9762d0a3da59c7932"}, + {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0e60821d312f99d3e1569202518dddf10ae547e799d75aef3bca3a2d9e8ee693"}, + {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:eb09b82377233b902d4c3fbeeb7ad731cdab579c6c6fda1f763cd779139e47c3"}, + {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:24658baf6224d8f280e827f0a50c46ad819ec8ba380a42448e24459daf809cf4"}, + {file = "cffi-1.17.0-cp39-cp39-win32.whl", hash = "sha256:0fdacad9e0d9fc23e519efd5ea24a70348305e8d7d85ecbb1a5fa66dc834e7fb"}, + {file = "cffi-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:7cbc78dc018596315d4e7841c8c3a7ae31cc4d638c9b627f87d52e8abaaf2d29"}, + {file = "cffi-1.17.0.tar.gz", hash = "sha256:f3157624b7558b914cb039fd1af735e5e8049a87c817cc215109ad1c8779df76"}, ] [package.dependencies] @@ -266,78 +296,98 @@ files = [ [[package]] name = "configparser" -version = "6.0.0" +version = "7.1.0" description = "Updated configparser from stdlib for earlier Pythons." optional = false python-versions = ">=3.8" files = [ - {file = "configparser-6.0.0-py3-none-any.whl", hash = "sha256:900ea2bb01b2540b1a644ad3d5351e9b961a4a012d4732f619375fb8f641ee19"}, - {file = "configparser-6.0.0.tar.gz", hash = "sha256:ec914ab1e56c672de1f5c3483964e68f71b34e457904b7b76e06b922aec067a8"}, + {file = "configparser-7.1.0-py3-none-any.whl", hash = "sha256:98e374573c4e10e92399651e3ba1c47a438526d633c44ee96143dec26dad4299"}, + {file = "configparser-7.1.0.tar.gz", hash = "sha256:eb82646c892dbdf773dae19c633044d163c3129971ae09b49410a303b8e0a5f7"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff", "types-backports"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)", "types-backports"] [[package]] name = "coverage" -version = "7.4.1" +version = "7.6.1" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:077d366e724f24fc02dbfe9d946534357fda71af9764ff99d73c3c596001bbd7"}, - {file = "coverage-7.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0193657651f5399d433c92f8ae264aff31fc1d066deee4b831549526433f3f61"}, - {file = "coverage-7.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d17bbc946f52ca67adf72a5ee783cd7cd3477f8f8796f59b4974a9b59cacc9ee"}, - {file = "coverage-7.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a3277f5fa7483c927fe3a7b017b39351610265308f5267ac6d4c2b64cc1d8d25"}, - {file = "coverage-7.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6dceb61d40cbfcf45f51e59933c784a50846dc03211054bd76b421a713dcdf19"}, - {file = "coverage-7.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6008adeca04a445ea6ef31b2cbaf1d01d02986047606f7da266629afee982630"}, - {file = "coverage-7.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c61f66d93d712f6e03369b6a7769233bfda880b12f417eefdd4f16d1deb2fc4c"}, - {file = "coverage-7.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9bb62fac84d5f2ff523304e59e5c439955fb3b7f44e3d7b2085184db74d733b"}, - {file = "coverage-7.4.1-cp310-cp310-win32.whl", hash = "sha256:f86f368e1c7ce897bf2457b9eb61169a44e2ef797099fb5728482b8d69f3f016"}, - {file = "coverage-7.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:869b5046d41abfea3e381dd143407b0d29b8282a904a19cb908fa24d090cc018"}, - {file = "coverage-7.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b8ffb498a83d7e0305968289441914154fb0ef5d8b3157df02a90c6695978295"}, - {file = "coverage-7.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3cacfaefe6089d477264001f90f55b7881ba615953414999c46cc9713ff93c8c"}, - {file = "coverage-7.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d6850e6e36e332d5511a48a251790ddc545e16e8beaf046c03985c69ccb2676"}, - {file = "coverage-7.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18e961aa13b6d47f758cc5879383d27b5b3f3dcd9ce8cdbfdc2571fe86feb4dd"}, - {file = "coverage-7.4.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dfd1e1b9f0898817babf840b77ce9fe655ecbe8b1b327983df485b30df8cc011"}, - {file = "coverage-7.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6b00e21f86598b6330f0019b40fb397e705135040dbedc2ca9a93c7441178e74"}, - {file = "coverage-7.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:536d609c6963c50055bab766d9951b6c394759190d03311f3e9fcf194ca909e1"}, - {file = "coverage-7.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7ac8f8eb153724f84885a1374999b7e45734bf93a87d8df1e7ce2146860edef6"}, - {file = "coverage-7.4.1-cp311-cp311-win32.whl", hash = "sha256:f3771b23bb3675a06f5d885c3630b1d01ea6cac9e84a01aaf5508706dba546c5"}, - {file = "coverage-7.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:9d2f9d4cc2a53b38cabc2d6d80f7f9b7e3da26b2f53d48f05876fef7956b6968"}, - {file = "coverage-7.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f68ef3660677e6624c8cace943e4765545f8191313a07288a53d3da188bd8581"}, - {file = "coverage-7.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:23b27b8a698e749b61809fb637eb98ebf0e505710ec46a8aa6f1be7dc0dc43a6"}, - {file = "coverage-7.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e3424c554391dc9ef4a92ad28665756566a28fecf47308f91841f6c49288e66"}, - {file = "coverage-7.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e0860a348bf7004c812c8368d1fc7f77fe8e4c095d661a579196a9533778e156"}, - {file = "coverage-7.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe558371c1bdf3b8fa03e097c523fb9645b8730399c14fe7721ee9c9e2a545d3"}, - {file = "coverage-7.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3468cc8720402af37b6c6e7e2a9cdb9f6c16c728638a2ebc768ba1ef6f26c3a1"}, - {file = "coverage-7.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:02f2edb575d62172aa28fe00efe821ae31f25dc3d589055b3fb64d51e52e4ab1"}, - {file = "coverage-7.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ca6e61dc52f601d1d224526360cdeab0d0712ec104a2ce6cc5ccef6ed9a233bc"}, - {file = "coverage-7.4.1-cp312-cp312-win32.whl", hash = "sha256:ca7b26a5e456a843b9b6683eada193fc1f65c761b3a473941efe5a291f604c74"}, - {file = "coverage-7.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:85ccc5fa54c2ed64bd91ed3b4a627b9cce04646a659512a051fa82a92c04a448"}, - {file = "coverage-7.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8bdb0285a0202888d19ec6b6d23d5990410decb932b709f2b0dfe216d031d218"}, - {file = "coverage-7.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:918440dea04521f499721c039863ef95433314b1db00ff826a02580c1f503e45"}, - {file = "coverage-7.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:379d4c7abad5afbe9d88cc31ea8ca262296480a86af945b08214eb1a556a3e4d"}, - {file = "coverage-7.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b094116f0b6155e36a304ff912f89bbb5067157aff5f94060ff20bbabdc8da06"}, - {file = "coverage-7.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2f5968608b1fe2a1d00d01ad1017ee27efd99b3437e08b83ded9b7af3f6f766"}, - {file = "coverage-7.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:10e88e7f41e6197ea0429ae18f21ff521d4f4490aa33048f6c6f94c6045a6a75"}, - {file = "coverage-7.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a4a3907011d39dbc3e37bdc5df0a8c93853c369039b59efa33a7b6669de04c60"}, - {file = "coverage-7.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6d224f0c4c9c98290a6990259073f496fcec1b5cc613eecbd22786d398ded3ad"}, - {file = "coverage-7.4.1-cp38-cp38-win32.whl", hash = "sha256:23f5881362dcb0e1a92b84b3c2809bdc90db892332daab81ad8f642d8ed55042"}, - {file = "coverage-7.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:a07f61fc452c43cd5328b392e52555f7d1952400a1ad09086c4a8addccbd138d"}, - {file = "coverage-7.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8e738a492b6221f8dcf281b67129510835461132b03024830ac0e554311a5c54"}, - {file = "coverage-7.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:46342fed0fff72efcda77040b14728049200cbba1279e0bf1188f1f2078c1d70"}, - {file = "coverage-7.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9641e21670c68c7e57d2053ddf6c443e4f0a6e18e547e86af3fad0795414a628"}, - {file = "coverage-7.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aeb2c2688ed93b027eb0d26aa188ada34acb22dceea256d76390eea135083950"}, - {file = "coverage-7.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d12c923757de24e4e2110cf8832d83a886a4cf215c6e61ed506006872b43a6d1"}, - {file = "coverage-7.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0491275c3b9971cdbd28a4595c2cb5838f08036bca31765bad5e17edf900b2c7"}, - {file = "coverage-7.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:8dfc5e195bbef80aabd81596ef52a1277ee7143fe419efc3c4d8ba2754671756"}, - {file = "coverage-7.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1a78b656a4d12b0490ca72651fe4d9f5e07e3c6461063a9b6265ee45eb2bdd35"}, - {file = "coverage-7.4.1-cp39-cp39-win32.whl", hash = "sha256:f90515974b39f4dea2f27c0959688621b46d96d5a626cf9c53dbc653a895c05c"}, - {file = "coverage-7.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:64e723ca82a84053dd7bfcc986bdb34af8d9da83c521c19d6b472bc6880e191a"}, - {file = "coverage-7.4.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:32a8d985462e37cfdab611a6f95b09d7c091d07668fdc26e47a725ee575fe166"}, - {file = "coverage-7.4.1.tar.gz", hash = "sha256:1ed4b95480952b1a26d863e546fa5094564aa0065e1e5f0d4d0041f293251d04"}, + {file = "coverage-7.6.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b06079abebbc0e89e6163b8e8f0e16270124c154dc6e4a47b413dd538859af16"}, + {file = "coverage-7.6.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cf4b19715bccd7ee27b6b120e7e9dd56037b9c0681dcc1adc9ba9db3d417fa36"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61c0abb4c85b095a784ef23fdd4aede7a2628478e7baba7c5e3deba61070a02"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd21f6ae3f08b41004dfb433fa895d858f3f5979e7762d052b12aef444e29afc"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f59d57baca39b32db42b83b2a7ba6f47ad9c394ec2076b084c3f029b7afca23"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a1ac0ae2b8bd743b88ed0502544847c3053d7171a3cff9228af618a068ed9c34"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e6a08c0be454c3b3beb105c0596ebdc2371fab6bb90c0c0297f4e58fd7e1012c"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f5796e664fe802da4f57a168c85359a8fbf3eab5e55cd4e4569fbacecc903959"}, + {file = "coverage-7.6.1-cp310-cp310-win32.whl", hash = "sha256:7bb65125fcbef8d989fa1dd0e8a060999497629ca5b0efbca209588a73356232"}, + {file = "coverage-7.6.1-cp310-cp310-win_amd64.whl", hash = "sha256:3115a95daa9bdba70aea750db7b96b37259a81a709223c8448fa97727d546fe0"}, + {file = "coverage-7.6.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7dea0889685db8550f839fa202744652e87c60015029ce3f60e006f8c4462c93"}, + {file = "coverage-7.6.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ed37bd3c3b063412f7620464a9ac1314d33100329f39799255fb8d3027da50d3"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d85f5e9a5f8b73e2350097c3756ef7e785f55bd71205defa0bfdaf96c31616ff"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bc572be474cafb617672c43fe989d6e48d3c83af02ce8de73fff1c6bb3c198d"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c0420b573964c760df9e9e86d1a9a622d0d27f417e1a949a8a66dd7bcee7bc6"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1f4aa8219db826ce6be7099d559f8ec311549bfc4046f7f9fe9b5cea5c581c56"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:fc5a77d0c516700ebad189b587de289a20a78324bc54baee03dd486f0855d234"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b48f312cca9621272ae49008c7f613337c53fadca647d6384cc129d2996d1133"}, + {file = "coverage-7.6.1-cp311-cp311-win32.whl", hash = "sha256:1125ca0e5fd475cbbba3bb67ae20bd2c23a98fac4e32412883f9bcbaa81c314c"}, + {file = "coverage-7.6.1-cp311-cp311-win_amd64.whl", hash = "sha256:8ae539519c4c040c5ffd0632784e21b2f03fc1340752af711f33e5be83a9d6c6"}, + {file = "coverage-7.6.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:95cae0efeb032af8458fc27d191f85d1717b1d4e49f7cb226cf526ff28179778"}, + {file = "coverage-7.6.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5621a9175cf9d0b0c84c2ef2b12e9f5f5071357c4d2ea6ca1cf01814f45d2391"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:260933720fdcd75340e7dbe9060655aff3af1f0c5d20f46b57f262ab6c86a5e8"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07e2ca0ad381b91350c0ed49d52699b625aab2b44b65e1b4e02fa9df0e92ad2d"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c44fee9975f04b33331cb8eb272827111efc8930cfd582e0320613263ca849ca"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:877abb17e6339d96bf08e7a622d05095e72b71f8afd8a9fefc82cf30ed944163"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:3e0cadcf6733c09154b461f1ca72d5416635e5e4ec4e536192180d34ec160f8a"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c3c02d12f837d9683e5ab2f3d9844dc57655b92c74e286c262e0fc54213c216d"}, + {file = "coverage-7.6.1-cp312-cp312-win32.whl", hash = "sha256:e05882b70b87a18d937ca6768ff33cc3f72847cbc4de4491c8e73880766718e5"}, + {file = "coverage-7.6.1-cp312-cp312-win_amd64.whl", hash = "sha256:b5d7b556859dd85f3a541db6a4e0167b86e7273e1cdc973e5b175166bb634fdb"}, + {file = "coverage-7.6.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a4acd025ecc06185ba2b801f2de85546e0b8ac787cf9d3b06e7e2a69f925b106"}, + {file = "coverage-7.6.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a6d3adcf24b624a7b778533480e32434a39ad8fa30c315208f6d3e5542aeb6e9"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0c212c49b6c10e6951362f7c6df3329f04c2b1c28499563d4035d964ab8e08c"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e81d7a3e58882450ec4186ca59a3f20a5d4440f25b1cff6f0902ad890e6748a"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78b260de9790fd81e69401c2dc8b17da47c8038176a79092a89cb2b7d945d060"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a78d169acd38300060b28d600344a803628c3fd585c912cacc9ea8790fe96862"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2c09f4ce52cb99dd7505cd0fc8e0e37c77b87f46bc9c1eb03fe3bc9991085388"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6878ef48d4227aace338d88c48738a4258213cd7b74fd9a3d4d7582bb1d8a155"}, + {file = "coverage-7.6.1-cp313-cp313-win32.whl", hash = "sha256:44df346d5215a8c0e360307d46ffaabe0f5d3502c8a1cefd700b34baf31d411a"}, + {file = "coverage-7.6.1-cp313-cp313-win_amd64.whl", hash = "sha256:8284cf8c0dd272a247bc154eb6c95548722dce90d098c17a883ed36e67cdb129"}, + {file = "coverage-7.6.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:d3296782ca4eab572a1a4eca686d8bfb00226300dcefdf43faa25b5242ab8a3e"}, + {file = "coverage-7.6.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:502753043567491d3ff6d08629270127e0c31d4184c4c8d98f92c26f65019962"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a89ecca80709d4076b95f89f308544ec8f7b4727e8a547913a35f16717856cb"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a318d68e92e80af8b00fa99609796fdbcdfef3629c77c6283566c6f02c6d6704"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13b0a73a0896988f053e4fbb7de6d93388e6dd292b0d87ee51d106f2c11b465b"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4421712dbfc5562150f7554f13dde997a2e932a6b5f352edcce948a815efee6f"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:166811d20dfea725e2e4baa71fffd6c968a958577848d2131f39b60043400223"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:225667980479a17db1048cb2bf8bfb39b8e5be8f164b8f6628b64f78a72cf9d3"}, + {file = "coverage-7.6.1-cp313-cp313t-win32.whl", hash = "sha256:170d444ab405852903b7d04ea9ae9b98f98ab6d7e63e1115e82620807519797f"}, + {file = "coverage-7.6.1-cp313-cp313t-win_amd64.whl", hash = "sha256:b9f222de8cded79c49bf184bdbc06630d4c58eec9459b939b4a690c82ed05657"}, + {file = "coverage-7.6.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6db04803b6c7291985a761004e9060b2bca08da6d04f26a7f2294b8623a0c1a0"}, + {file = "coverage-7.6.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f1adfc8ac319e1a348af294106bc6a8458a0f1633cc62a1446aebc30c5fa186a"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a95324a9de9650a729239daea117df21f4b9868ce32e63f8b650ebe6cef5595b"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b43c03669dc4618ec25270b06ecd3ee4fa94c7f9b3c14bae6571ca00ef98b0d3"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8929543a7192c13d177b770008bc4e8119f2e1f881d563fc6b6305d2d0ebe9de"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:a09ece4a69cf399510c8ab25e0950d9cf2b42f7b3cb0374f95d2e2ff594478a6"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:9054a0754de38d9dbd01a46621636689124d666bad1936d76c0341f7d71bf569"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0dbde0f4aa9a16fa4d754356a8f2e36296ff4d83994b2c9d8398aa32f222f989"}, + {file = "coverage-7.6.1-cp38-cp38-win32.whl", hash = "sha256:da511e6ad4f7323ee5702e6633085fb76c2f893aaf8ce4c51a0ba4fc07580ea7"}, + {file = "coverage-7.6.1-cp38-cp38-win_amd64.whl", hash = "sha256:3f1156e3e8f2872197af3840d8ad307a9dd18e615dc64d9ee41696f287c57ad8"}, + {file = "coverage-7.6.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:abd5fd0db5f4dc9289408aaf34908072f805ff7792632250dcb36dc591d24255"}, + {file = "coverage-7.6.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:547f45fa1a93154bd82050a7f3cddbc1a7a4dd2a9bf5cb7d06f4ae29fe94eaf8"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:645786266c8f18a931b65bfcefdbf6952dd0dea98feee39bd188607a9d307ed2"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9e0b2df163b8ed01d515807af24f63de04bebcecbd6c3bfeff88385789fdf75a"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:609b06f178fe8e9f89ef676532760ec0b4deea15e9969bf754b37f7c40326dbc"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:702855feff378050ae4f741045e19a32d57d19f3e0676d589df0575008ea5004"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:2bdb062ea438f22d99cba0d7829c2ef0af1d768d1e4a4f528087224c90b132cb"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:9c56863d44bd1c4fe2abb8a4d6f5371d197f1ac0ebdee542f07f35895fc07f36"}, + {file = "coverage-7.6.1-cp39-cp39-win32.whl", hash = "sha256:6e2cd258d7d927d09493c8df1ce9174ad01b381d4729a9d8d4e38670ca24774c"}, + {file = "coverage-7.6.1-cp39-cp39-win_amd64.whl", hash = "sha256:06a737c882bd26d0d6ee7269b20b12f14a8704807a01056c80bb881a4b2ce6ca"}, + {file = "coverage-7.6.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:e9a6e0eb86070e8ccaedfbd9d38fec54864f3125ab95419970575b42af7541df"}, + {file = "coverage-7.6.1.tar.gz", hash = "sha256:953510dfb7b12ab69d20135a0662397f077c59b1e6379a768e97c59d852ee51d"}, ] [package.dependencies] @@ -348,43 +398,38 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "42.0.2" +version = "43.0.0" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.2-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:701171f825dcab90969596ce2af253143b93b08f1a716d4b2a9d2db5084ef7be"}, - {file = "cryptography-42.0.2-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:61321672b3ac7aade25c40449ccedbc6db72c7f5f0fdf34def5e2f8b51ca530d"}, - {file = "cryptography-42.0.2-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea2c3ffb662fec8bbbfce5602e2c159ff097a4631d96235fcf0fb00e59e3ece4"}, - {file = "cryptography-42.0.2-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b15c678f27d66d247132cbf13df2f75255627bcc9b6a570f7d2fd08e8c081d2"}, - {file = "cryptography-42.0.2-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:8e88bb9eafbf6a4014d55fb222e7360eef53e613215085e65a13290577394529"}, - {file = "cryptography-42.0.2-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a047682d324ba56e61b7ea7c7299d51e61fd3bca7dad2ccc39b72bd0118d60a1"}, - {file = "cryptography-42.0.2-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:36d4b7c4be6411f58f60d9ce555a73df8406d484ba12a63549c88bd64f7967f1"}, - {file = "cryptography-42.0.2-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:a00aee5d1b6c20620161984f8ab2ab69134466c51f58c052c11b076715e72929"}, - {file = "cryptography-42.0.2-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:b97fe7d7991c25e6a31e5d5e795986b18fbbb3107b873d5f3ae6dc9a103278e9"}, - {file = "cryptography-42.0.2-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:5fa82a26f92871eca593b53359c12ad7949772462f887c35edaf36f87953c0e2"}, - {file = "cryptography-42.0.2-cp37-abi3-win32.whl", hash = "sha256:4b063d3413f853e056161eb0c7724822a9740ad3caa24b8424d776cebf98e7ee"}, - {file = "cryptography-42.0.2-cp37-abi3-win_amd64.whl", hash = "sha256:841ec8af7a8491ac76ec5a9522226e287187a3107e12b7d686ad354bb78facee"}, - {file = "cryptography-42.0.2-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:55d1580e2d7e17f45d19d3b12098e352f3a37fe86d380bf45846ef257054b242"}, - {file = "cryptography-42.0.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28cb2c41f131a5758d6ba6a0504150d644054fd9f3203a1e8e8d7ac3aea7f73a"}, - {file = "cryptography-42.0.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b9097a208875fc7bbeb1286d0125d90bdfed961f61f214d3f5be62cd4ed8a446"}, - {file = "cryptography-42.0.2-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:44c95c0e96b3cb628e8452ec060413a49002a247b2b9938989e23a2c8291fc90"}, - {file = "cryptography-42.0.2-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:2f9f14185962e6a04ab32d1abe34eae8a9001569ee4edb64d2304bf0d65c53f3"}, - {file = "cryptography-42.0.2-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:09a77e5b2e8ca732a19a90c5bca2d124621a1edb5438c5daa2d2738bfeb02589"}, - {file = "cryptography-42.0.2-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:ad28cff53f60d99a928dfcf1e861e0b2ceb2bc1f08a074fdd601b314e1cc9e0a"}, - {file = "cryptography-42.0.2-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:130c0f77022b2b9c99d8cebcdd834d81705f61c68e91ddd614ce74c657f8b3ea"}, - {file = "cryptography-42.0.2-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:fa3dec4ba8fb6e662770b74f62f1a0c7d4e37e25b58b2bf2c1be4c95372b4a33"}, - {file = "cryptography-42.0.2-cp39-abi3-win32.whl", hash = "sha256:3dbd37e14ce795b4af61b89b037d4bc157f2cb23e676fa16932185a04dfbf635"}, - {file = "cryptography-42.0.2-cp39-abi3-win_amd64.whl", hash = "sha256:8a06641fb07d4e8f6c7dda4fc3f8871d327803ab6542e33831c7ccfdcb4d0ad6"}, - {file = "cryptography-42.0.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:087887e55e0b9c8724cf05361357875adb5c20dec27e5816b653492980d20380"}, - {file = "cryptography-42.0.2-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:a7ef8dd0bf2e1d0a27042b231a3baac6883cdd5557036f5e8df7139255feaac6"}, - {file = "cryptography-42.0.2-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4383b47f45b14459cab66048d384614019965ba6c1a1a141f11b5a551cace1b2"}, - {file = "cryptography-42.0.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:fbeb725c9dc799a574518109336acccaf1303c30d45c075c665c0793c2f79a7f"}, - {file = "cryptography-42.0.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:320948ab49883557a256eab46149df79435a22d2fefd6a66fe6946f1b9d9d008"}, - {file = "cryptography-42.0.2-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5ef9bc3d046ce83c4bbf4c25e1e0547b9c441c01d30922d812e887dc5f125c12"}, - {file = "cryptography-42.0.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:52ed9ebf8ac602385126c9a2fe951db36f2cb0c2538d22971487f89d0de4065a"}, - {file = "cryptography-42.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:141e2aa5ba100d3788c0ad7919b288f89d1fe015878b9659b307c9ef867d3a65"}, - {file = "cryptography-42.0.2.tar.gz", hash = "sha256:e0ec52ba3c7f1b7d813cd52649a5b3ef1fc0d433219dc8c93827c57eab6cf888"}, + {file = "cryptography-43.0.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:64c3f16e2a4fc51c0d06af28441881f98c5d91009b8caaff40cf3548089e9c74"}, + {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3dcdedae5c7710b9f97ac6bba7e1052b95c7083c9d0e9df96e02a1932e777895"}, + {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d9a1eca329405219b605fac09ecfc09ac09e595d6def650a437523fcd08dd22"}, + {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ea9e57f8ea880eeea38ab5abf9fbe39f923544d7884228ec67d666abd60f5a47"}, + {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:9a8d6802e0825767476f62aafed40532bd435e8a5f7d23bd8b4f5fd04cc80ecf"}, + {file = "cryptography-43.0.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:cc70b4b581f28d0a254d006f26949245e3657d40d8857066c2ae22a61222ef55"}, + {file = "cryptography-43.0.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4a997df8c1c2aae1e1e5ac49c2e4f610ad037fc5a3aadc7b64e39dea42249431"}, + {file = "cryptography-43.0.0-cp37-abi3-win32.whl", hash = "sha256:6e2b11c55d260d03a8cf29ac9b5e0608d35f08077d8c087be96287f43af3ccdc"}, + {file = "cryptography-43.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:31e44a986ceccec3d0498e16f3d27b2ee5fdf69ce2ab89b52eaad1d2f33d8778"}, + {file = "cryptography-43.0.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:7b3f5fe74a5ca32d4d0f302ffe6680fcc5c28f8ef0dc0ae8f40c0f3a1b4fca66"}, + {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac1955ce000cb29ab40def14fd1bbfa7af2017cca696ee696925615cafd0dce5"}, + {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:299d3da8e00b7e2b54bb02ef58d73cd5f55fb31f33ebbf33bd00d9aa6807df7e"}, + {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5"}, + {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cb013933d4c127349b3948aa8aaf2f12c0353ad0eccd715ca789c8a0f671646f"}, + {file = "cryptography-43.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"}, + {file = "cryptography-43.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2905ccf93a8a2a416f3ec01b1a7911c3fe4073ef35640e7ee5296754e30b762b"}, + {file = "cryptography-43.0.0-cp39-abi3-win32.whl", hash = "sha256:47ca71115e545954e6c1d207dd13461ab81f4eccfcb1345eac874828b5e3eaaf"}, + {file = "cryptography-43.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:0663585d02f76929792470451a5ba64424acc3cd5227b03921dab0e2f27b1709"}, + {file = "cryptography-43.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2c6d112bf61c5ef44042c253e4859b3cbbb50df2f78fa8fae6747a7814484a70"}, + {file = "cryptography-43.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:844b6d608374e7d08f4f6e6f9f7b951f9256db41421917dfb2d003dde4cd6b66"}, + {file = "cryptography-43.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:51956cf8730665e2bdf8ddb8da0056f699c1a5715648c1b0144670c1ba00b48f"}, + {file = "cryptography-43.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:aae4d918f6b180a8ab8bf6511a419473d107df4dbb4225c7b48c5c9602c38c7f"}, + {file = "cryptography-43.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:232ce02943a579095a339ac4b390fbbe97f5b5d5d107f8a08260ea2768be8cc2"}, + {file = "cryptography-43.0.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5bcb8a5620008a8034d39bce21dc3e23735dfdb6a33a06974739bfa04f853947"}, + {file = "cryptography-43.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:08a24a7070b2b6804c1940ff0f910ff728932a9d0e80e7814234269f9d46d069"}, + {file = "cryptography-43.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e9c5266c432a1e23738d178e51c2c7a5e2ddf790f248be939448c0ba2021f9d1"}, + {file = "cryptography-43.0.0.tar.gz", hash = "sha256:b88075ada2d51aa9f18283532c9f60e72170041bba88d7f37e49cbb10275299e"}, ] [package.dependencies] @@ -397,34 +442,38 @@ nox = ["nox"] pep8test = ["check-sdist", "click", "mypy", "ruff"] sdist = ["build"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi", "cryptography-vectors (==43.0.0)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] test-randomorder = ["pytest-randomly"] [[package]] name = "debugpy" -version = "1.8.0" +version = "1.8.5" description = "An implementation of the Debug Adapter Protocol for Python" optional = false python-versions = ">=3.8" files = [ - {file = "debugpy-1.8.0-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:7fb95ca78f7ac43393cd0e0f2b6deda438ec7c5e47fa5d38553340897d2fbdfb"}, - {file = "debugpy-1.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef9ab7df0b9a42ed9c878afd3eaaff471fce3fa73df96022e1f5c9f8f8c87ada"}, - {file = "debugpy-1.8.0-cp310-cp310-win32.whl", hash = "sha256:a8b7a2fd27cd9f3553ac112f356ad4ca93338feadd8910277aff71ab24d8775f"}, - {file = "debugpy-1.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:5d9de202f5d42e62f932507ee8b21e30d49aae7e46d5b1dd5c908db1d7068637"}, - {file = "debugpy-1.8.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:ef54404365fae8d45cf450d0544ee40cefbcb9cb85ea7afe89a963c27028261e"}, - {file = "debugpy-1.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60009b132c91951354f54363f8ebdf7457aeb150e84abba5ae251b8e9f29a8a6"}, - {file = "debugpy-1.8.0-cp311-cp311-win32.whl", hash = "sha256:8cd0197141eb9e8a4566794550cfdcdb8b3db0818bdf8c49a8e8f8053e56e38b"}, - {file = "debugpy-1.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:a64093656c4c64dc6a438e11d59369875d200bd5abb8f9b26c1f5f723622e153"}, - {file = "debugpy-1.8.0-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:b05a6b503ed520ad58c8dc682749113d2fd9f41ffd45daec16e558ca884008cd"}, - {file = "debugpy-1.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c6fb41c98ec51dd010d7ed650accfd07a87fe5e93eca9d5f584d0578f28f35f"}, - {file = "debugpy-1.8.0-cp38-cp38-win32.whl", hash = "sha256:46ab6780159eeabb43c1495d9c84cf85d62975e48b6ec21ee10c95767c0590aa"}, - {file = "debugpy-1.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:bdc5ef99d14b9c0fcb35351b4fbfc06ac0ee576aeab6b2511702e5a648a2e595"}, - {file = "debugpy-1.8.0-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:61eab4a4c8b6125d41a34bad4e5fe3d2cc145caecd63c3fe953be4cc53e65bf8"}, - {file = "debugpy-1.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:125b9a637e013f9faac0a3d6a82bd17c8b5d2c875fb6b7e2772c5aba6d082332"}, - {file = "debugpy-1.8.0-cp39-cp39-win32.whl", hash = "sha256:57161629133113c97b387382045649a2b985a348f0c9366e22217c87b68b73c6"}, - {file = "debugpy-1.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:e3412f9faa9ade82aa64a50b602544efcba848c91384e9f93497a458767e6926"}, - {file = "debugpy-1.8.0-py2.py3-none-any.whl", hash = "sha256:9c9b0ac1ce2a42888199df1a1906e45e6f3c9555497643a85e0bf2406e3ffbc4"}, - {file = "debugpy-1.8.0.zip", hash = "sha256:12af2c55b419521e33d5fb21bd022df0b5eb267c3e178f1d374a63a2a6bdccd0"}, + {file = "debugpy-1.8.5-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:7e4d594367d6407a120b76bdaa03886e9eb652c05ba7f87e37418426ad2079f7"}, + {file = "debugpy-1.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4413b7a3ede757dc33a273a17d685ea2b0c09dbd312cc03f5534a0fd4d40750a"}, + {file = "debugpy-1.8.5-cp310-cp310-win32.whl", hash = "sha256:dd3811bd63632bb25eda6bd73bea8e0521794cda02be41fa3160eb26fc29e7ed"}, + {file = "debugpy-1.8.5-cp310-cp310-win_amd64.whl", hash = "sha256:b78c1250441ce893cb5035dd6f5fc12db968cc07f91cc06996b2087f7cefdd8e"}, + {file = "debugpy-1.8.5-cp311-cp311-macosx_12_0_universal2.whl", hash = "sha256:606bccba19f7188b6ea9579c8a4f5a5364ecd0bf5a0659c8a5d0e10dcee3032a"}, + {file = "debugpy-1.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db9fb642938a7a609a6c865c32ecd0d795d56c1aaa7a7a5722d77855d5e77f2b"}, + {file = "debugpy-1.8.5-cp311-cp311-win32.whl", hash = "sha256:4fbb3b39ae1aa3e5ad578f37a48a7a303dad9a3d018d369bc9ec629c1cfa7408"}, + {file = "debugpy-1.8.5-cp311-cp311-win_amd64.whl", hash = "sha256:345d6a0206e81eb68b1493ce2fbffd57c3088e2ce4b46592077a943d2b968ca3"}, + {file = "debugpy-1.8.5-cp312-cp312-macosx_12_0_universal2.whl", hash = "sha256:5b5c770977c8ec6c40c60d6f58cacc7f7fe5a45960363d6974ddb9b62dbee156"}, + {file = "debugpy-1.8.5-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0a65b00b7cdd2ee0c2cf4c7335fef31e15f1b7056c7fdbce9e90193e1a8c8cb"}, + {file = "debugpy-1.8.5-cp312-cp312-win32.whl", hash = "sha256:c9f7c15ea1da18d2fcc2709e9f3d6de98b69a5b0fff1807fb80bc55f906691f7"}, + {file = "debugpy-1.8.5-cp312-cp312-win_amd64.whl", hash = "sha256:28ced650c974aaf179231668a293ecd5c63c0a671ae6d56b8795ecc5d2f48d3c"}, + {file = "debugpy-1.8.5-cp38-cp38-macosx_12_0_x86_64.whl", hash = "sha256:3df6692351172a42af7558daa5019651f898fc67450bf091335aa8a18fbf6f3a"}, + {file = "debugpy-1.8.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1cd04a73eb2769eb0bfe43f5bfde1215c5923d6924b9b90f94d15f207a402226"}, + {file = "debugpy-1.8.5-cp38-cp38-win32.whl", hash = "sha256:8f913ee8e9fcf9d38a751f56e6de12a297ae7832749d35de26d960f14280750a"}, + {file = "debugpy-1.8.5-cp38-cp38-win_amd64.whl", hash = "sha256:a697beca97dad3780b89a7fb525d5e79f33821a8bc0c06faf1f1289e549743cf"}, + {file = "debugpy-1.8.5-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:0a1029a2869d01cb777216af8c53cda0476875ef02a2b6ff8b2f2c9a4b04176c"}, + {file = "debugpy-1.8.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e84c276489e141ed0b93b0af648eef891546143d6a48f610945416453a8ad406"}, + {file = "debugpy-1.8.5-cp39-cp39-win32.whl", hash = "sha256:ad84b7cde7fd96cf6eea34ff6c4a1b7887e0fe2ea46e099e53234856f9d99a34"}, + {file = "debugpy-1.8.5-cp39-cp39-win_amd64.whl", hash = "sha256:7b0fe36ed9d26cb6836b0a51453653f8f2e347ba7348f2bbfe76bfeb670bfb1c"}, + {file = "debugpy-1.8.5-py2.py3-none-any.whl", hash = "sha256:55919dce65b471eff25901acf82d328bbd5b833526b6c1364bd5133754777a44"}, + {file = "debugpy-1.8.5.zip", hash = "sha256:b2112cfeb34b4507399d298fe7023a16656fc553ed5246536060ca7bd0e668d0"}, ] [[package]] @@ -432,21 +481,18 @@ name = "docutils" version = "0.20.1" description = "Docutils -- Python Documentation Utilities" optional = false -python-versions = ">=3.7" -files = [ - {file = "docutils-0.20.1-py3-none-any.whl", hash = "sha256:96f387a2c5562db4476f09f13bbab2192e764cac08ebbf3a34a95d9b1e4a59d6"}, - {file = "docutils-0.20.1.tar.gz", hash = "sha256:f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b"}, -] +python-versions = "*" +files = [] [[package]] name = "exceptiongroup" -version = "1.2.0" +version = "1.2.2" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" files = [ - {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, - {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, + {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"}, + {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"}, ] [package.extras] @@ -454,13 +500,13 @@ test = ["pytest (>=6)"] [[package]] name = "execnet" -version = "2.0.2" +version = "2.1.1" description = "execnet: rapid multi-Python deployment" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "execnet-2.0.2-py3-none-any.whl", hash = "sha256:88256416ae766bc9e8895c76a87928c0012183da3cc4fc18016e6f050e025f41"}, - {file = "execnet-2.0.2.tar.gz", hash = "sha256:cc59bc4423742fd71ad227122eb0dd44db51efb3dc4095b45ac9a08c770096af"}, + {file = "execnet-2.1.1-py3-none-any.whl", hash = "sha256:26dee51f1b80cebd6d0ca8e74dd8745419761d3bef34163928cbebbdc4749fdc"}, + {file = "execnet-2.1.1.tar.gz", hash = "sha256:5189b52c6121c24feae288166ab41b32549c7e2348652736540b9e6e7d4e72e3"}, ] [package.extras] @@ -468,29 +514,29 @@ testing = ["hatch", "pre-commit", "pytest", "tox"] [[package]] name = "flake8" -version = "7.0.0" +version = "7.1.1" description = "the modular source code checker: pep8 pyflakes and co" optional = false python-versions = ">=3.8.1" files = [ - {file = "flake8-7.0.0-py2.py3-none-any.whl", hash = "sha256:a6dfbb75e03252917f2473ea9653f7cd799c3064e54d4c8140044c5c065f53c3"}, - {file = "flake8-7.0.0.tar.gz", hash = "sha256:33f96621059e65eec474169085dc92bf26e7b2d47366b70be2f67ab80dc25132"}, + {file = "flake8-7.1.1-py2.py3-none-any.whl", hash = "sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213"}, + {file = "flake8-7.1.1.tar.gz", hash = "sha256:049d058491e228e03e67b390f311bbf88fce2dbaa8fa673e7aea87b7198b8d38"}, ] [package.dependencies] mccabe = ">=0.7.0,<0.8.0" -pycodestyle = ">=2.11.0,<2.12.0" +pycodestyle = ">=2.12.0,<2.13.0" pyflakes = ">=3.2.0,<3.3.0" [[package]] name = "flake8-bugbear" -version = "24.1.17" +version = "24.8.19" description = "A plugin for flake8 finding likely bugs and design problems in your program. Contains warnings that don't belong in pyflakes and pycodestyle." optional = false python-versions = ">=3.8.1" files = [ - {file = "flake8-bugbear-24.1.17.tar.gz", hash = "sha256:bcb388a4f3b516258749b1e690ee394c082eff742f44595e3754cf5c7781c2c7"}, - {file = "flake8_bugbear-24.1.17-py3-none-any.whl", hash = "sha256:46cc840ddaed26507cd0ada530d1526418b717ee76c9b5dfdbd238b5eab34139"}, + {file = "flake8_bugbear-24.8.19-py3-none-any.whl", hash = "sha256:25bc3867f7338ee3b3e0916bf8b8a0b743f53a9a5175782ddc4325ed4f386b89"}, + {file = "flake8_bugbear-24.8.19.tar.gz", hash = "sha256:9b77627eceda28c51c27af94560a72b5b2c97c016651bdce45d8f56c180d2d32"}, ] [package.dependencies] @@ -502,13 +548,13 @@ dev = ["coverage", "hypothesis", "hypothesmith (>=0.2)", "pre-commit", "pytest", [[package]] name = "flake8-builtins" -version = "2.2.0" +version = "2.5.0" description = "Check for python builtins being used as variables or parameters" optional = false python-versions = ">=3.8" files = [ - {file = "flake8_builtins-2.2.0-py3-none-any.whl", hash = "sha256:7ee5766d9c60e5d579dfda84e65c6d0e6c26005f6f59cb9bf722462d7987a807"}, - {file = "flake8_builtins-2.2.0.tar.gz", hash = "sha256:392d5af3a0720c5a863aa93dc47f48c879081345a143fe9f20d995fe9ff5686a"}, + {file = "flake8_builtins-2.5.0-py3-none-any.whl", hash = "sha256:8cac7c52c6f0708c0902b46b385bc7e368a9068965083796f1431c0d2e6550cf"}, + {file = "flake8_builtins-2.5.0.tar.gz", hash = "sha256:bdaa3dd823e4f5308c5e712d19fa5f69daa52781ea874f5ea9c3637bcf56faa6"}, ] [package.dependencies] @@ -519,65 +565,65 @@ test = ["pytest"] [[package]] name = "flake8-comprehensions" -version = "3.14.0" +version = "3.15.0" description = "A flake8 plugin to help you write better list/set/dict comprehensions." optional = false python-versions = ">=3.8" files = [ - {file = "flake8_comprehensions-3.14.0-py3-none-any.whl", hash = "sha256:7b9d07d94aa88e62099a6d1931ddf16c344d4157deedf90fe0d8ee2846f30e97"}, - {file = "flake8_comprehensions-3.14.0.tar.gz", hash = "sha256:81768c61bfc064e1a06222df08a2580d97de10cb388694becaf987c331c6c0cf"}, + {file = "flake8_comprehensions-3.15.0-py3-none-any.whl", hash = "sha256:b7e027bbb52be2ceb779ee12484cdeef52b0ad3c1fcb8846292bdb86d3034681"}, + {file = "flake8_comprehensions-3.15.0.tar.gz", hash = "sha256:923c22603e0310376a6b55b03efebdc09753c69f2d977755cba8bb73458a5d4d"}, ] [package.dependencies] -flake8 = ">=3.0,<3.2.0 || >3.2.0" +flake8 = ">=3,<3.2 || >3.2" [[package]] name = "idna" -version = "3.6" +version = "3.7" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.5" files = [ - {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, - {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, + {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, + {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, ] [[package]] name = "importlib-metadata" -version = "7.0.1" +version = "8.4.0" description = "Read metadata from Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, - {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, + {file = "importlib_metadata-8.4.0-py3-none-any.whl", hash = "sha256:66f342cc6ac9818fc6ff340576acd24d65ba0b3efabb2b4ac08b598965a4a2f1"}, + {file = "importlib_metadata-8.4.0.tar.gz", hash = "sha256:9a547d3bc3608b025f93d403fdd1aae741c24fbb8314df4b155675742ce303c5"}, ] [package.dependencies] zipp = ">=0.5" [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] +test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] [[package]] name = "importlib-resources" -version = "6.1.1" +version = "6.4.3" description = "Read resources from Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_resources-6.1.1-py3-none-any.whl", hash = "sha256:e8bf90d8213b486f428c9c39714b920041cb02c184686a3dee24905aaa8105d6"}, - {file = "importlib_resources-6.1.1.tar.gz", hash = "sha256:3893a00122eafde6894c59914446a512f728a0c1a45f9bb9b63721b6bacf0b4a"}, + {file = "importlib_resources-6.4.3-py3-none-any.whl", hash = "sha256:2d6dfe3b9e055f72495c2085890837fc8c758984e209115c8792bddcb762cd93"}, + {file = "importlib_resources-6.4.3.tar.gz", hash = "sha256:4a202b9b9d38563b46da59221d77bb73862ab5d79d461307bcb826d725448b98"}, ] [package.dependencies] zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff", "zipp (>=3.17)"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["jaraco.test (>=5.4)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)", "zipp (>=3.17)"] [[package]] name = "iniconfig" @@ -617,13 +663,13 @@ colors = ["colorama (>=0.4.6)"] [[package]] name = "jaraco-classes" -version = "3.3.0" +version = "3.4.0" description = "Utility functions for Python class constructs" optional = false python-versions = ">=3.8" files = [ - {file = "jaraco.classes-3.3.0-py3-none-any.whl", hash = "sha256:10afa92b6743f25c0cf5f37c6bb6e18e2c5bb84a16527ccfc0040ea377e7aaeb"}, - {file = "jaraco.classes-3.3.0.tar.gz", hash = "sha256:c063dd08e89217cee02c8d5e5ec560f2c8ce6cdc2fcdc2e68f7b2e5547ed3621"}, + {file = "jaraco.classes-3.4.0-py3-none-any.whl", hash = "sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790"}, + {file = "jaraco.classes-3.4.0.tar.gz", hash = "sha256:47a024b51d0239c0dd8c8540c6c7f484be3b8fcf0b2d85c13825780d3b3f3acd"}, ] [package.dependencies] @@ -631,7 +677,43 @@ more-itertools = "*" [package.extras] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] +testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] + +[[package]] +name = "jaraco-context" +version = "6.0.1" +description = "Useful decorators and context managers" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jaraco.context-6.0.1-py3-none-any.whl", hash = "sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4"}, + {file = "jaraco_context-6.0.1.tar.gz", hash = "sha256:9bae4ea555cf0b14938dc0aee7c9f32ed303aa20a3b73e7dc80111628792d1b3"}, +] + +[package.dependencies] +"backports.tarfile" = {version = "*", markers = "python_version < \"3.12\""} + +[package.extras] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["portend", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] + +[[package]] +name = "jaraco-functools" +version = "4.0.2" +description = "Functools like those found in stdlib" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jaraco.functools-4.0.2-py3-none-any.whl", hash = "sha256:c9d16a3ed4ccb5a889ad8e0b7a343401ee5b2a71cee6ed192d3f68bc351e94e3"}, + {file = "jaraco_functools-4.0.2.tar.gz", hash = "sha256:3460c74cd0d32bf82b9576bbb3527c4364d5b27a21f5158a62aed6c4b42e23f5"}, +] + +[package.dependencies] +more-itertools = "*" + +[package.extras] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["jaraco.classes", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [[package]] name = "jeepney" @@ -650,27 +732,29 @@ trio = ["async_generator", "trio"] [[package]] name = "keyring" -version = "24.3.0" +version = "25.3.0" description = "Store and access your passwords safely." optional = false python-versions = ">=3.8" files = [ - {file = "keyring-24.3.0-py3-none-any.whl", hash = "sha256:4446d35d636e6a10b8bce7caa66913dd9eca5fd222ca03a3d42c38608ac30836"}, - {file = "keyring-24.3.0.tar.gz", hash = "sha256:e730ecffd309658a08ee82535a3b5ec4b4c8669a9be11efb66249d8e0aeb9a25"}, + {file = "keyring-25.3.0-py3-none-any.whl", hash = "sha256:8d963da00ccdf06e356acd9bf3b743208878751032d8599c6cc89eb51310ffae"}, + {file = "keyring-25.3.0.tar.gz", hash = "sha256:8d85a1ea5d6db8515b59e1c5d1d1678b03cf7fc8b8dcfb1651e8c4a524eb42ef"}, ] [package.dependencies] importlib-metadata = {version = ">=4.11.4", markers = "python_version < \"3.12\""} importlib-resources = {version = "*", markers = "python_version < \"3.9\""} "jaraco.classes" = "*" +"jaraco.context" = "*" +"jaraco.functools" = "*" jeepney = {version = ">=0.4.2", markers = "sys_platform == \"linux\""} pywin32-ctypes = {version = ">=0.2.0", markers = "sys_platform == \"win32\""} SecretStorage = {version = ">=3.2", markers = "sys_platform == \"linux\""} [package.extras] completion = ["shtab (>=1.1.0)"] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [[package]] name = "markdown-it-py" @@ -720,55 +804,55 @@ files = [ [[package]] name = "more-itertools" -version = "10.2.0" +version = "10.4.0" description = "More routines for operating on iterables, beyond itertools" optional = false python-versions = ">=3.8" files = [ - {file = "more-itertools-10.2.0.tar.gz", hash = "sha256:8fccb480c43d3e99a00087634c06dd02b0d50fbf088b380de5a41a015ec239e1"}, - {file = "more_itertools-10.2.0-py3-none-any.whl", hash = "sha256:686b06abe565edfab151cb8fd385a05651e1fdf8f0a14191e4439283421f8684"}, + {file = "more-itertools-10.4.0.tar.gz", hash = "sha256:fe0e63c4ab068eac62410ab05cccca2dc71ec44ba8ef29916a0090df061cf923"}, + {file = "more_itertools-10.4.0-py3-none-any.whl", hash = "sha256:0f7d9f83a0a8dcfa8a2694a770590d98a67ea943e3d9f5298309a484758c4e27"}, ] [[package]] name = "mypy" -version = "1.8.0" +version = "1.11.1" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" files = [ - {file = "mypy-1.8.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:485a8942f671120f76afffff70f259e1cd0f0cfe08f81c05d8816d958d4577d3"}, - {file = "mypy-1.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:df9824ac11deaf007443e7ed2a4a26bebff98d2bc43c6da21b2b64185da011c4"}, - {file = "mypy-1.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2afecd6354bbfb6e0160f4e4ad9ba6e4e003b767dd80d85516e71f2e955ab50d"}, - {file = "mypy-1.8.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8963b83d53ee733a6e4196954502b33567ad07dfd74851f32be18eb932fb1cb9"}, - {file = "mypy-1.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:e46f44b54ebddbeedbd3d5b289a893219065ef805d95094d16a0af6630f5d410"}, - {file = "mypy-1.8.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:855fe27b80375e5c5878492f0729540db47b186509c98dae341254c8f45f42ae"}, - {file = "mypy-1.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4c886c6cce2d070bd7df4ec4a05a13ee20c0aa60cb587e8d1265b6c03cf91da3"}, - {file = "mypy-1.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d19c413b3c07cbecf1f991e2221746b0d2a9410b59cb3f4fb9557f0365a1a817"}, - {file = "mypy-1.8.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9261ed810972061388918c83c3f5cd46079d875026ba97380f3e3978a72f503d"}, - {file = "mypy-1.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:51720c776d148bad2372ca21ca29256ed483aa9a4cdefefcef49006dff2a6835"}, - {file = "mypy-1.8.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:52825b01f5c4c1c4eb0db253ec09c7aa17e1a7304d247c48b6f3599ef40db8bd"}, - {file = "mypy-1.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f5ac9a4eeb1ec0f1ccdc6f326bcdb464de5f80eb07fb38b5ddd7b0de6bc61e55"}, - {file = "mypy-1.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afe3fe972c645b4632c563d3f3eff1cdca2fa058f730df2b93a35e3b0c538218"}, - {file = "mypy-1.8.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:42c6680d256ab35637ef88891c6bd02514ccb7e1122133ac96055ff458f93fc3"}, - {file = "mypy-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:720a5ca70e136b675af3af63db533c1c8c9181314d207568bbe79051f122669e"}, - {file = "mypy-1.8.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:028cf9f2cae89e202d7b6593cd98db6759379f17a319b5faf4f9978d7084cdc6"}, - {file = "mypy-1.8.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4e6d97288757e1ddba10dd9549ac27982e3e74a49d8d0179fc14d4365c7add66"}, - {file = "mypy-1.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f1478736fcebb90f97e40aff11a5f253af890c845ee0c850fe80aa060a267c6"}, - {file = "mypy-1.8.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:42419861b43e6962a649068a61f4a4839205a3ef525b858377a960b9e2de6e0d"}, - {file = "mypy-1.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:2b5b6c721bd4aabaadead3a5e6fa85c11c6c795e0c81a7215776ef8afc66de02"}, - {file = "mypy-1.8.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5c1538c38584029352878a0466f03a8ee7547d7bd9f641f57a0f3017a7c905b8"}, - {file = "mypy-1.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4ef4be7baf08a203170f29e89d79064463b7fc7a0908b9d0d5114e8009c3a259"}, - {file = "mypy-1.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7178def594014aa6c35a8ff411cf37d682f428b3b5617ca79029d8ae72f5402b"}, - {file = "mypy-1.8.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ab3c84fa13c04aeeeabb2a7f67a25ef5d77ac9d6486ff33ded762ef353aa5592"}, - {file = "mypy-1.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:99b00bc72855812a60d253420d8a2eae839b0afa4938f09f4d2aa9bb4654263a"}, - {file = "mypy-1.8.0-py3-none-any.whl", hash = "sha256:538fd81bb5e430cc1381a443971c0475582ff9f434c16cd46d2c66763ce85d9d"}, - {file = "mypy-1.8.0.tar.gz", hash = "sha256:6ff8b244d7085a0b425b56d327b480c3b29cafbd2eff27316a004f9a7391ae07"}, + {file = "mypy-1.11.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a32fc80b63de4b5b3e65f4be82b4cfa362a46702672aa6a0f443b4689af7008c"}, + {file = "mypy-1.11.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c1952f5ea8a5a959b05ed5f16452fddadbaae48b5d39235ab4c3fc444d5fd411"}, + {file = "mypy-1.11.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1e30dc3bfa4e157e53c1d17a0dad20f89dc433393e7702b813c10e200843b03"}, + {file = "mypy-1.11.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2c63350af88f43a66d3dfeeeb8d77af34a4f07d760b9eb3a8697f0386c7590b4"}, + {file = "mypy-1.11.1-cp310-cp310-win_amd64.whl", hash = "sha256:a831671bad47186603872a3abc19634f3011d7f83b083762c942442d51c58d58"}, + {file = "mypy-1.11.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7b6343d338390bb946d449677726edf60102a1c96079b4f002dedff375953fc5"}, + {file = "mypy-1.11.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e4fe9f4e5e521b458d8feb52547f4bade7ef8c93238dfb5bbc790d9ff2d770ca"}, + {file = "mypy-1.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:886c9dbecc87b9516eff294541bf7f3655722bf22bb898ee06985cd7269898de"}, + {file = "mypy-1.11.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fca4a60e1dd9fd0193ae0067eaeeb962f2d79e0d9f0f66223a0682f26ffcc809"}, + {file = "mypy-1.11.1-cp311-cp311-win_amd64.whl", hash = "sha256:0bd53faf56de9643336aeea1c925012837432b5faf1701ccca7fde70166ccf72"}, + {file = "mypy-1.11.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f39918a50f74dc5969807dcfaecafa804fa7f90c9d60506835036cc1bc891dc8"}, + {file = "mypy-1.11.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0bc71d1fb27a428139dd78621953effe0d208aed9857cb08d002280b0422003a"}, + {file = "mypy-1.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b868d3bcff720dd7217c383474008ddabaf048fad8d78ed948bb4b624870a417"}, + {file = "mypy-1.11.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a707ec1527ffcdd1c784d0924bf5cb15cd7f22683b919668a04d2b9c34549d2e"}, + {file = "mypy-1.11.1-cp312-cp312-win_amd64.whl", hash = "sha256:64f4a90e3ea07f590c5bcf9029035cf0efeae5ba8be511a8caada1a4893f5525"}, + {file = "mypy-1.11.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:749fd3213916f1751fff995fccf20c6195cae941dc968f3aaadf9bb4e430e5a2"}, + {file = "mypy-1.11.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b639dce63a0b19085213ec5fdd8cffd1d81988f47a2dec7100e93564f3e8fb3b"}, + {file = "mypy-1.11.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4c956b49c5d865394d62941b109728c5c596a415e9c5b2be663dd26a1ff07bc0"}, + {file = "mypy-1.11.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:45df906e8b6804ef4b666af29a87ad9f5921aad091c79cc38e12198e220beabd"}, + {file = "mypy-1.11.1-cp38-cp38-win_amd64.whl", hash = "sha256:d44be7551689d9d47b7abc27c71257adfdb53f03880841a5db15ddb22dc63edb"}, + {file = "mypy-1.11.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2684d3f693073ab89d76da8e3921883019ea8a3ec20fa5d8ecca6a2db4c54bbe"}, + {file = "mypy-1.11.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:79c07eb282cb457473add5052b63925e5cc97dfab9812ee65a7c7ab5e3cb551c"}, + {file = "mypy-1.11.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11965c2f571ded6239977b14deebd3f4c3abd9a92398712d6da3a772974fad69"}, + {file = "mypy-1.11.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a2b43895a0f8154df6519706d9bca8280cda52d3d9d1514b2d9c3e26792a0b74"}, + {file = "mypy-1.11.1-cp39-cp39-win_amd64.whl", hash = "sha256:1a81cf05975fd61aec5ae16501a091cfb9f605dc3e3c878c0da32f250b74760b"}, + {file = "mypy-1.11.1-py3-none-any.whl", hash = "sha256:0624bdb940255d2dd24e829d99a13cfeb72e4e9031f9492148f410ed30bcab54"}, + {file = "mypy-1.11.1.tar.gz", hash = "sha256:f404a0b069709f18bbdb702eb3dcfe51910602995de00bd39cea3050b5772d08"}, ] [package.dependencies] mypy-extensions = ">=1.0.0" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = ">=4.1.0" +typing-extensions = ">=4.6.0" [package.extras] dmypy = ["psutil (>=4.0)"] @@ -789,38 +873,38 @@ files = [ [[package]] name = "nh3" -version = "0.2.15" +version = "0.2.18" description = "Python bindings to the ammonia HTML sanitization library." optional = false python-versions = "*" files = [ - {file = "nh3-0.2.15-cp37-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:9c0d415f6b7f2338f93035bba5c0d8c1b464e538bfbb1d598acd47d7969284f0"}, - {file = "nh3-0.2.15-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:6f42f99f0cf6312e470b6c09e04da31f9abaadcd3eb591d7d1a88ea931dca7f3"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac19c0d68cd42ecd7ead91a3a032fdfff23d29302dbb1311e641a130dfefba97"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f0d77272ce6d34db6c87b4f894f037d55183d9518f948bba236fe81e2bb4e28"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:8d595df02413aa38586c24811237e95937ef18304e108b7e92c890a06793e3bf"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86e447a63ca0b16318deb62498db4f76fc60699ce0a1231262880b38b6cff911"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3277481293b868b2715907310c7be0f1b9d10491d5adf9fce11756a97e97eddf"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60684857cfa8fdbb74daa867e5cad3f0c9789415aba660614fe16cd66cbb9ec7"}, - {file = "nh3-0.2.15-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3b803a5875e7234907f7d64777dfde2b93db992376f3d6d7af7f3bc347deb305"}, - {file = "nh3-0.2.15-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0d02d0ff79dfd8208ed25a39c12cbda092388fff7f1662466e27d97ad011b770"}, - {file = "nh3-0.2.15-cp37-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:f3b53ba93bb7725acab1e030bc2ecd012a817040fd7851b332f86e2f9bb98dc6"}, - {file = "nh3-0.2.15-cp37-abi3-musllinux_1_2_i686.whl", hash = "sha256:b1e97221cedaf15a54f5243f2c5894bb12ca951ae4ddfd02a9d4ea9df9e1a29d"}, - {file = "nh3-0.2.15-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a5167a6403d19c515217b6bcaaa9be420974a6ac30e0da9e84d4fc67a5d474c5"}, - {file = "nh3-0.2.15-cp37-abi3-win32.whl", hash = "sha256:427fecbb1031db085eaac9931362adf4a796428ef0163070c484b5a768e71601"}, - {file = "nh3-0.2.15-cp37-abi3-win_amd64.whl", hash = "sha256:bc2d086fb540d0fa52ce35afaded4ea526b8fc4d3339f783db55c95de40ef02e"}, - {file = "nh3-0.2.15.tar.gz", hash = "sha256:d1e30ff2d8d58fb2a14961f7aac1bbb1c51f9bdd7da727be35c63826060b0bf3"}, + {file = "nh3-0.2.18-cp37-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:14c5a72e9fe82aea5fe3072116ad4661af5cf8e8ff8fc5ad3450f123e4925e86"}, + {file = "nh3-0.2.18-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:7b7c2a3c9eb1a827d42539aa64091640bd275b81e097cd1d8d82ef91ffa2e811"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42c64511469005058cd17cc1537578eac40ae9f7200bedcfd1fc1a05f4f8c200"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0411beb0589eacb6734f28d5497ca2ed379eafab8ad8c84b31bb5c34072b7164"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:5f36b271dae35c465ef5e9090e1fdaba4a60a56f0bb0ba03e0932a66f28b9189"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:34c03fa78e328c691f982b7c03d4423bdfd7da69cd707fe572f544cf74ac23ad"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19aaba96e0f795bd0a6c56291495ff59364f4300d4a39b29a0abc9cb3774a84b"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de3ceed6e661954871d6cd78b410213bdcb136f79aafe22aa7182e028b8c7307"}, + {file = "nh3-0.2.18-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6955369e4d9f48f41e3f238a9e60f9410645db7e07435e62c6a9ea6135a4907f"}, + {file = "nh3-0.2.18-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:f0eca9ca8628dbb4e916ae2491d72957fdd35f7a5d326b7032a345f111ac07fe"}, + {file = "nh3-0.2.18-cp37-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:3a157ab149e591bb638a55c8c6bcb8cdb559c8b12c13a8affaba6cedfe51713a"}, + {file = "nh3-0.2.18-cp37-abi3-musllinux_1_2_i686.whl", hash = "sha256:c8b3a1cebcba9b3669ed1a84cc65bf005728d2f0bc1ed2a6594a992e817f3a50"}, + {file = "nh3-0.2.18-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:36c95d4b70530b320b365659bb5034341316e6a9b30f0b25fa9c9eff4c27a204"}, + {file = "nh3-0.2.18-cp37-abi3-win32.whl", hash = "sha256:a7f1b5b2c15866f2db413a3649a8fe4fd7b428ae58be2c0f6bca5eefd53ca2be"}, + {file = "nh3-0.2.18-cp37-abi3-win_amd64.whl", hash = "sha256:8ce0f819d2f1933953fca255db2471ad58184a60508f03e6285e5114b6254844"}, + {file = "nh3-0.2.18.tar.gz", hash = "sha256:94a166927e53972a9698af9542ace4e38b9de50c34352b962f4d9a7d4c927af4"}, ] [[package]] name = "packaging" -version = "23.2" +version = "24.1" description = "Core utilities for Python packages" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, - {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, + {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, + {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, ] [[package]] @@ -836,42 +920,43 @@ files = [ [[package]] name = "pkginfo" -version = "1.9.6" +version = "1.11.1" description = "Query metadata from sdists / bdists / installed packages." optional = false -python-versions = ">=3.6" +python-versions = ">=3.8" files = [ - {file = "pkginfo-1.9.6-py3-none-any.whl", hash = "sha256:4b7a555a6d5a22169fcc9cf7bfd78d296b0361adad412a346c1226849af5e546"}, - {file = "pkginfo-1.9.6.tar.gz", hash = "sha256:8fd5896e8718a4372f0ea9cc9d96f6417c9b986e23a4d116dda26b62cc29d046"}, + {file = "pkginfo-1.11.1-py3-none-any.whl", hash = "sha256:bfa76a714fdfc18a045fcd684dbfc3816b603d9d075febef17cb6582bea29573"}, + {file = "pkginfo-1.11.1.tar.gz", hash = "sha256:2e0dca1cf4c8e39644eed32408ea9966ee15e0d324c62ba899a393b3c6b467aa"}, ] [package.extras] -testing = ["pytest", "pytest-cov"] +testing = ["pytest", "pytest-cov", "wheel"] [[package]] name = "platformdirs" -version = "4.2.0" -description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +version = "4.2.2" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.8" files = [ - {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, - {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, + {file = "platformdirs-4.2.2-py3-none-any.whl", hash = "sha256:2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee"}, + {file = "platformdirs-4.2.2.tar.gz", hash = "sha256:38b7b51f512eed9e84a22788b4bce1de17c0adb134d6becb09836e37d8654cd3"}, ] [package.extras] docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"] +type = ["mypy (>=1.8)"] [[package]] name = "pluggy" -version = "1.4.0" +version = "1.5.0" description = "plugin and hook calling mechanisms for python" optional = false python-versions = ">=3.8" files = [ - {file = "pluggy-1.4.0-py3-none-any.whl", hash = "sha256:7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"}, - {file = "pluggy-1.4.0.tar.gz", hash = "sha256:8c85c2876142a764e5b7548e7d9a0e0ddb46f5185161049a79b7e974454223be"}, + {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, + {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, ] [package.extras] @@ -905,24 +990,24 @@ configparser = "*" [[package]] name = "pycodestyle" -version = "2.11.1" +version = "2.12.1" description = "Python style guide checker" optional = false python-versions = ">=3.8" files = [ - {file = "pycodestyle-2.11.1-py2.py3-none-any.whl", hash = "sha256:44fe31000b2d866f2e41841b18528a505fbd7fef9017b04eff4e2648a0fadc67"}, - {file = "pycodestyle-2.11.1.tar.gz", hash = "sha256:41ba0e7afc9752dfb53ced5489e89f8186be00e599e712660695b7a75ff2663f"}, + {file = "pycodestyle-2.12.1-py2.py3-none-any.whl", hash = "sha256:46f0fb92069a7c28ab7bb558f05bfc0110dac69a0cd23c61ea0040283a9d78b3"}, + {file = "pycodestyle-2.12.1.tar.gz", hash = "sha256:6838eae08bbce4f6accd5d5572075c63626a15ee3e6f842df996bf62f6d73521"}, ] [[package]] name = "pycparser" -version = "2.21" +version = "2.22" description = "C parser in Python" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.8" files = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, + {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, + {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, ] [[package]] @@ -938,28 +1023,27 @@ files = [ [[package]] name = "pygments" -version = "2.17.2" +version = "2.18.0" description = "Pygments is a syntax highlighting package written in Python." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, - {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, ] [package.extras] -plugins = ["importlib-metadata"] windows-terminal = ["colorama (>=0.4.6)"] [[package]] name = "pytest" -version = "8.0.0" +version = "8.3.2" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.8" files = [ - {file = "pytest-8.0.0-py3-none-any.whl", hash = "sha256:50fb9cbe836c3f20f0dfa99c565201fb75dc54c8d76373cd1bde06b06657bdb6"}, - {file = "pytest-8.0.0.tar.gz", hash = "sha256:249b1b0864530ba251b7438274c4d251c58d868edaaec8762893ad4a0d71c36c"}, + {file = "pytest-8.3.2-py3-none-any.whl", hash = "sha256:4ba08f9ae7dcf84ded419494d229b48d0903ea6407b030eaec46df5e6a73bba5"}, + {file = "pytest-8.3.2.tar.gz", hash = "sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"}, ] [package.dependencies] @@ -967,11 +1051,11 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=1.3.0,<2.0" -tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} +pluggy = ">=1.5,<2" +tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "pytest-benchmark" @@ -995,18 +1079,18 @@ histogram = ["pygal", "pygaljs"] [[package]] name = "pytest-xdist" -version = "3.5.0" +version = "3.6.1" description = "pytest xdist plugin for distributed testing, most importantly across multiple CPUs" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pytest-xdist-3.5.0.tar.gz", hash = "sha256:cbb36f3d67e0c478baa57fa4edc8843887e0f6cfc42d677530a36d7472b32d8a"}, - {file = "pytest_xdist-3.5.0-py3-none-any.whl", hash = "sha256:d075629c7e00b611df89f490a5063944bee7a4362a5ff11c7cc7824a03dfce24"}, + {file = "pytest_xdist-3.6.1-py3-none-any.whl", hash = "sha256:9ed4adfb68a016610848639bb7e02c9352d5d9f03d04809919e2dafc3be4cca7"}, + {file = "pytest_xdist-3.6.1.tar.gz", hash = "sha256:ead156a4db231eec769737f57668ef58a2084a34b2e55c4a8fa20d861107300d"}, ] [package.dependencies] -execnet = ">=1.1" -pytest = ">=6.2.0" +execnet = ">=2.1" +pytest = ">=7.0.0" [package.extras] psutil = ["psutil (>=3.0)"] @@ -1015,24 +1099,24 @@ testing = ["filelock"] [[package]] name = "pywin32-ctypes" -version = "0.2.2" +version = "0.2.3" description = "A (partial) reimplementation of pywin32 using ctypes/cffi" optional = false python-versions = ">=3.6" files = [ - {file = "pywin32-ctypes-0.2.2.tar.gz", hash = "sha256:3426e063bdd5fd4df74a14fa3cf80a0b42845a87e1d1e81f6549f9daec593a60"}, - {file = "pywin32_ctypes-0.2.2-py3-none-any.whl", hash = "sha256:bf490a1a709baf35d688fe0ecf980ed4de11d2b3e37b51e5442587a75d9957e7"}, + {file = "pywin32-ctypes-0.2.3.tar.gz", hash = "sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755"}, + {file = "pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8"}, ] [[package]] name = "readme-renderer" -version = "42.0" +version = "43.0" description = "readme_renderer is a library for rendering readme descriptions for Warehouse" optional = false python-versions = ">=3.8" files = [ - {file = "readme_renderer-42.0-py3-none-any.whl", hash = "sha256:13d039515c1f24de668e2c93f2e877b9dbe6c6c32328b90a40a49d8b2b85f36d"}, - {file = "readme_renderer-42.0.tar.gz", hash = "sha256:2d55489f83be4992fe4454939d1a051c33edbab778e82761d060c9fc6b308cd1"}, + {file = "readme_renderer-43.0-py3-none-any.whl", hash = "sha256:19db308d86ecd60e5affa3b2a98f017af384678c63c88e5d4556a380e674f3f9"}, + {file = "readme_renderer-43.0.tar.gz", hash = "sha256:1818dd28140813509eeed8d62687f7cd4f7bad90d4db586001c5dc09d4fde311"}, ] [package.dependencies] @@ -1045,13 +1129,13 @@ md = ["cmarkgfm (>=0.8.0)"] [[package]] name = "requests" -version = "2.31.0" +version = "2.32.3" description = "Python HTTP for Humans." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, - {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, ] [package.dependencies] @@ -1094,13 +1178,13 @@ idna2008 = ["idna"] [[package]] name = "rich" -version = "13.7.0" +version = "13.7.1" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = false python-versions = ">=3.7.0" files = [ - {file = "rich-13.7.0-py3-none-any.whl", hash = "sha256:6da14c108c4866ee9520bbffa71f6fe3962e193b7da68720583850cd4548e235"}, - {file = "rich-13.7.0.tar.gz", hash = "sha256:5cb5123b5cf9ee70584244246816e9114227e0b98ad9176eede6ad54bf5403fa"}, + {file = "rich-13.7.1-py3-none-any.whl", hash = "sha256:4edbae314f59eb482f54e9e30bf00d33350aaa94f4bfcd4e9e3110e64d0d7222"}, + {file = "rich-13.7.1.tar.gz", hash = "sha256:9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432"}, ] [package.dependencies] @@ -1139,41 +1223,41 @@ files = [ [[package]] name = "setuptools" -version = "69.0.3" +version = "73.0.1" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.0.3-py3-none-any.whl", hash = "sha256:385eb4edd9c9d5c17540511303e39a147ce2fc04bc55289c322b9e5904fe2c05"}, - {file = "setuptools-69.0.3.tar.gz", hash = "sha256:be1af57fc409f93647f2e8e4573a142ed38724b8cdd389706a867bb4efcf1e78"}, + {file = "setuptools-73.0.1-py3-none-any.whl", hash = "sha256:b208925fcb9f7af924ed2dc04708ea89791e24bde0d3020b27df0e116088b34e"}, + {file = "setuptools-73.0.1.tar.gz", hash = "sha256:d59a3e788ab7e012ab2c4baed1b376da6366883ee20d7a5fc426816e3d7b1193"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] -testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.1)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] +core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.text (>=3.7)", "more-itertools (>=8.8)", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "mypy (==1.11.*)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (<0.4)", "pytest-ruff (>=0.2.1)", "pytest-ruff (>=0.3.2)", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] [[package]] name = "setuptools-scm" -version = "8.0.4" +version = "8.1.0" description = "the blessed package to manage your versions by scm tags" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-scm-8.0.4.tar.gz", hash = "sha256:b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7"}, - {file = "setuptools_scm-8.0.4-py3-none-any.whl", hash = "sha256:b47844cd2a84b83b3187a5782c71128c28b4c94cad8bfb871da2784a5cb54c4f"}, + {file = "setuptools_scm-8.1.0-py3-none-any.whl", hash = "sha256:897a3226a6fd4a6eb2f068745e49733261a21f70b1bb28fce0339feb978d9af3"}, + {file = "setuptools_scm-8.1.0.tar.gz", hash = "sha256:42dea1b65771cba93b7a515d65a65d8246e560768a66b9106a592c8e7f26c8a7"}, ] [package.dependencies] packaging = ">=20" setuptools = "*" tomli = {version = ">=1", markers = "python_version < \"3.11\""} -typing-extensions = "*" +typing-extensions = {version = "*", markers = "python_version < \"3.10\""} [package.extras] -docs = ["entangled-cli[rich]", "mkdocs", "mkdocs-entangled-plugin", "mkdocs-material", "mkdocstrings[python]", "pygments"] +docs = ["entangled-cli (>=2.0,<3.0)", "mkdocs", "mkdocs-entangled-plugin", "mkdocs-material", "mkdocstrings[python]", "pygments"] rich = ["rich"] -test = ["build", "pytest", "rich", "wheel"] +test = ["build", "pytest", "rich", "typing-extensions", "wheel"] [[package]] name = "tomli" @@ -1210,24 +1294,24 @@ urllib3 = ">=1.26.0" [[package]] name = "typing-extensions" -version = "4.9.0" +version = "4.12.2" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.9.0-py3-none-any.whl", hash = "sha256:af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"}, - {file = "typing_extensions-4.9.0.tar.gz", hash = "sha256:23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783"}, + {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, + {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, ] [[package]] name = "urllib3" -version = "2.2.0" +version = "2.2.2" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" files = [ - {file = "urllib3-2.2.0-py3-none-any.whl", hash = "sha256:ce3711610ddce217e6d113a2732fafad960a03fd0318c91faa79481e35c11224"}, - {file = "urllib3-2.2.0.tar.gz", hash = "sha256:051d961ad0c62a94e50ecf1af379c3aba230c66c710493493560c0c223c49f20"}, + {file = "urllib3-2.2.2-py3-none-any.whl", hash = "sha256:a448b2f64d686155468037e1ace9f2d2199776e17f0a46610480d311f73e3472"}, + {file = "urllib3-2.2.2.tar.gz", hash = "sha256:dd505485549a7a552833da5e6063639d0d177c04f23bc3864e41e5dc5f612168"}, ] [package.extras] @@ -1238,20 +1322,20 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "zipp" -version = "3.17.0" +version = "3.20.0" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.8" files = [ - {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, - {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, + {file = "zipp-3.20.0-py3-none-any.whl", hash = "sha256:58da6168be89f0be59beb194da1250516fdaa062ccebd30127ac65d30045e10d"}, + {file = "zipp-3.20.0.tar.gz", hash = "sha256:0145e43d89664cfe1a2e533adc75adafed82fe2da404b4bbb6b026c0157bdb31"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [metadata] lock-version = "2.0" python-versions = ">=3.8.1,<4" -content-hash = "7fb1258a05ae7ad3a63d39bad3e0aecedb5725f28b4a35544955c39934d17c25" +content-hash = "ff491208d0cab362a355345964b7e8ebe73572eac0f7db1969bce7a4a4b18788" diff --git a/pyproject.toml b/pyproject.toml index 2961f05e..c53c1c23 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = 'syrupy' license = 'Apache-2.0' version = "4.6.1" description = 'Pytest Snapshot Test Utility' -authors = [''] #FIXME: Update with new ownership. +authors = ['Noah Ulster'] readme = 'README.md' packages = [{ include = 'syrupy', from = 'src' }] classifiers = [ @@ -21,7 +21,7 @@ classifiers = [ 'Topic :: Software Development :: Testing', 'Topic :: Utilities', ] -repository = 'https://github.com/noahnu/syrupy' +repository = 'https://github.com/syrupy-project/syrupy' include = ['src/syrupy/**/*'] [tool.poetry.plugins.pytest11] @@ -33,7 +33,7 @@ pytest = '>=7.0.0,<9.0.0' [tool.poetry.group.test.dependencies] invoke = '^2.0.0' -coverage = { version = '^7.0.5', extras = ['toml'] } +coverage = { version = '^7.6.1', extras = ['toml'] } pytest-benchmark = '^4.0.0' pytest-xdist = '^3.1.0' diff --git a/tasks/test.py b/tasks/test.py index f22101b8..70f44b39 100644 --- a/tasks/test.py +++ b/tasks/test.py @@ -44,5 +44,4 @@ def test( ctx_run(ctx, f"python -m {coverage_module}pytest {test_flags} ./tests") if coverage: - if not os.environ.get("CI") or not os.environ.get("CODECOV_TOKEN"): - ctx_run(ctx, "coverage report") + ctx_run(ctx, "coverage lcov -o coverage/coverage.lcov") diff --git a/tests/integration/test_single_file_multiple_extensions.py b/tests/integration/test_single_file_multiple_extensions.py index c1c965b5..c9932bfd 100644 --- a/tests/integration/test_single_file_multiple_extensions.py +++ b/tests/integration/test_single_file_multiple_extensions.py @@ -42,7 +42,7 @@ def test_dot_in_filename(snapshot): def test_class_style(testdir): """ - Regression test for https://github.com/noahnu/syrupy/issues/717 + Regression test for https://github.com/syrupy-project/syrupy/issues/717 """ testcase = """