From dfa7fac96f2ec4a37ede3ccc866ec2db78d8af17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edgar=20Ram=C3=ADrez=20Mondrag=C3=B3n?= Date: Sun, 22 Dec 2024 13:51:50 -0600 Subject: [PATCH] chore: Use `just` to update dependencies --- .github/workflows/scorecard.yml | 2 +- .github/workflows/zizmor.yml | 2 +- .pre-commit-config.yaml | 21 +++++----- docs/contributing/update-dependencies.md | 8 ++++ docs/contributing/update-github-actions.md | 27 ------------ justfile | 23 +++++++++++ requirements/requirements-ci.txt | 2 +- requirements/requirements-docs.txt | 17 ++++---- requirements/requirements-highest.txt | 10 ++--- requirements/requirements-lowest-direct.txt | 2 +- requirements/requirements-typing.txt | 11 +++-- uv.lock | 46 +++++++++++++++------ 12 files changed, 98 insertions(+), 73 deletions(-) create mode 100644 docs/contributing/update-dependencies.md delete mode 100644 docs/contributing/update-github-actions.md create mode 100644 justfile diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index 69ace31a..ece13da1 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -68,6 +68,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9 + uses: github/codeql-action/upload-sarif@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0 with: sarif_file: results.sarif diff --git a/.github/workflows/zizmor.yml b/.github/workflows/zizmor.yml index f1917dc6..a3f2a0ea 100644 --- a/.github/workflows/zizmor.yml +++ b/.github/workflows/zizmor.yml @@ -24,7 +24,7 @@ jobs: env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Upload SARIF file - uses: github/codeql-action/upload-sarif@df409f7d9260372bd5f19e5b04e83cb3c43714ae # v3.27.9 + uses: github/codeql-action/upload-sarif@48ab28a6f5dbc2a99bf1e0131198dd8f1df78169 # v3.28.0 with: sarif_file: results.sarif category: zizmor diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 38d4fe5c..760aced4 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,7 +1,6 @@ ci: autofix_commit_msg: '[pre-commit.ci] auto fixes' autofix_prs: true - autoupdate_commit_msg: 'chore(deps): pre-commit autoupdate' skip: - pip-compile @@ -62,32 +61,32 @@ repos: - id: pyproject-fmt - repo: https://github.com/astral-sh/uv-pre-commit - rev: 0.5.10 + rev: 0.5.11 hooks: - id: uv-export name: Export Docs Dependencies - files: ^pyproject\.toml$ + files: ^uv\.lock$ args: ["--frozen", "--no-editable", "--output-file=requirements/requirements-docs.txt", "--only-group=docs"] - id: uv-export name: Export Test Dependencies - files: ^pyproject\.toml$ + files: ^uv\.lock$ args: ["--frozen", "--output-file=requirements/requirements-test.txt", "--no-dev", "--only-group=test"] - id: uv-export name: Export Typing Dependencies - files: ^pyproject\.toml$ + files: ^uv\.lock$ args: ["--frozen", "--output-file=requirements/requirements-typing.txt", "--only-group=typing"] + - id: uv-export + name: Export Runtime Dependencies + files: ^uv\.lock$ + args: ["--frozen", "--output-file=requirements/requirements-highest.txt", "--no-dev", "--no-hashes", "--no-emit-project"] - id: pip-compile name: pip-compile Lowest Direct files: ^pyproject\.toml$ - args: ["pyproject.toml", "--universal", "--resolution", "lowest-direct", "-o", "requirements/requirements-lowest-direct.txt"] - - id: pip-compile - name: pip-compile Highest - files: ^pyproject\.toml$ - args: ["pyproject.toml", "--universal", "--resolution", "highest", "-o", "requirements/requirements-highest.txt"] + args: ["pyproject.toml", "--universal", "--resolution=lowest-direct", "-o=requirements/requirements-lowest-direct.txt"] - id: pip-compile name: pip-compile CI Dependencies files: ^requirements/requirements-ci\.in$ - args: ["requirements/requirements-ci.in", "--universal", "-o", "requirements/requirements-ci.txt"] + args: ["requirements/requirements-ci.in", "--universal", "-o=requirements/requirements-ci.txt"] - repo: https://github.com/executablebooks/mdformat rev: 0.7.21 diff --git a/docs/contributing/update-dependencies.md b/docs/contributing/update-dependencies.md new file mode 100644 index 00000000..184813df --- /dev/null +++ b/docs/contributing/update-dependencies.md @@ -0,0 +1,8 @@ +# Updating dependencies + +The easiest way to update dependencies is to use the the [`just`][just] command. This command will update all dependencies to the latest version. + +Along with the `just` command line tool, you'll need to have [`uv`][uv] installed. + +[just]: https://just.systems/man/en/prerequisites.html +[uv]: https://docs.astral.sh/uv/getting-started/installation/ diff --git a/docs/contributing/update-github-actions.md b/docs/contributing/update-github-actions.md deleted file mode 100644 index d697407b..00000000 --- a/docs/contributing/update-github-actions.md +++ /dev/null @@ -1,27 +0,0 @@ -# Update GitHub Actions pins - -There are a few ways to update the GitHub Actions pins. - -## Run workflow in GitHub - -Go to the [Actions tab](https://github.com/edgarrmondragon/citric/actions/workflows/gha-update.yml) and click on the `Run workflow` dropdown. - -## Run workflow locally - -1. Install the [GitHub CLI](https://cli.github.com/). - -1. Run the following command: - - ```bash - gh workflow run gha-update.yml - ``` - -## Run the `gha-update` tool locally - -1. Install [`uv`](https://docs.astral.sh/uv/getting-started/installation/). - -1. Run the following command: - - ```bash - uvx gha-update - ``` diff --git a/justfile b/justfile new file mode 100644 index 00000000..c445df0d --- /dev/null +++ b/justfile @@ -0,0 +1,23 @@ +# Justfile + +default_python := '3.13' + +# Command to update all dependencies +update-all py=default_python: (update-github-actions py) (update-pre-commit-hooks py) refresh-uv-lock (update-lock-files py) + +# Command to update GitHub actions using gha-update +update-github-actions py=default_python: + -uvx --python={{py}} gha-update + +# Command to update pre-commit hooks +update-pre-commit-hooks py=default_python: + -uvx --python={{py}} pre-commit autoupdate + +# Command to refresh uv.lock +refresh-uv-lock: + -uv lock --upgrade + +# Update lock files +update-lock-files py=default_python: + -uvx --python={{py}} pre-commit run uv-export + -uvx --python={{py}} pre-commit run pip-compile diff --git a/requirements/requirements-ci.txt b/requirements/requirements-ci.txt index d5a56d3d..b3f2a59a 100644 --- a/requirements/requirements-ci.txt +++ b/requirements/requirements-ci.txt @@ -1,5 +1,5 @@ # This file was autogenerated by uv via the following command: -# uv pip compile requirements/requirements-ci.in --universal -o requirements/requirements-ci.txt +# uv pip compile requirements/requirements-ci.in --universal -o=requirements/requirements-ci.txt argcomplete==3.5.2 # via nox colorama==0.4.6 diff --git a/requirements/requirements-docs.txt b/requirements/requirements-docs.txt index e4b53a23..4f27974c 100644 --- a/requirements/requirements-docs.txt +++ b/requirements/requirements-docs.txt @@ -12,9 +12,9 @@ alabaster==1.0.0 ; python_full_version >= '3.10' \ astroid==3.2.4 ; python_full_version < '3.9' \ --hash=sha256:0e14202810b30da1b735827f78f5157be2bbd4a7a59b7707ca0bfc2fb4c0063a \ --hash=sha256:413658a61eeca6202a59231abb473f932038fbcbf1666587f66d482083413a25 -astroid==3.3.6 ; python_full_version >= '3.9' \ - --hash=sha256:6aaea045f938c735ead292204afdb977a36e989522b7833ef6fea94de743f442 \ - --hash=sha256:db676dc4f3ae6bfe31cda227dc60e03438378d7a896aec57422c95634e8d722f +astroid==3.3.7 ; python_full_version >= '3.9' \ + --hash=sha256:29fe1df7ef64dc17a54dbfad67b40b445340fcdba7c4012e7ecc9270c9b2f5b6 \ + --hash=sha256:e1ea2c358a3c760ef583d4963e773100fa2c693b27ed158a1d0e81adb4436903 autodocsumm==0.2.14 \ --hash=sha256:2839a9d4facc3c4eccd306c08695540911042b46eeafcdc3203e6d0bab40bc77 \ --hash=sha256:3bad8717fc5190802c60392a7ab04b9f3c97aa9efa8b3780b3d81d615bfe5dc0 @@ -141,9 +141,9 @@ imagesize==1.4.1 \ importlib-metadata==8.5.0 ; python_full_version < '3.10' \ --hash=sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b \ --hash=sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7 -jinja2==3.1.4 \ - --hash=sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369 \ - --hash=sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d +jinja2==3.1.5 \ + --hash=sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb \ + --hash=sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb markdown-it-py==3.0.0 \ --hash=sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1 \ --hash=sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb @@ -447,9 +447,12 @@ tomli==2.2.1 ; python_full_version >= '3.9' and python_full_version < '3.11' \ typing-extensions==4.12.2 ; python_full_version < '3.11' \ --hash=sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d \ --hash=sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8 -urllib3==2.2.3 \ +urllib3==2.2.3 ; python_full_version < '3.9' \ --hash=sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac \ --hash=sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9 +urllib3==2.3.0 ; python_full_version >= '3.9' \ + --hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df \ + --hash=sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d zipp==3.20.2 ; python_full_version < '3.9' \ --hash=sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350 \ --hash=sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29 diff --git a/requirements/requirements-highest.txt b/requirements/requirements-highest.txt index 0efd3e6f..5421c66e 100644 --- a/requirements/requirements-highest.txt +++ b/requirements/requirements-highest.txt @@ -1,12 +1,8 @@ # This file was autogenerated by uv via the following command: -# uv pip compile pyproject.toml --universal --resolution highest -o requirements/requirements-highest.txt +# uv export --frozen --output-file=requirements/requirements-highest.txt --no-dev --no-hashes --no-emit-project certifi==2024.12.14 - # via requests charset-normalizer==3.4.0 - # via requests idna==3.10 - # via requests requests==2.32.3 - # via citric (pyproject.toml) -urllib3==2.2.3 - # via requests +urllib3==2.2.3 ; python_full_version < '3.9' +urllib3==2.3.0 ; python_full_version >= '3.9' diff --git a/requirements/requirements-lowest-direct.txt b/requirements/requirements-lowest-direct.txt index 7faf5568..688c8fac 100644 --- a/requirements/requirements-lowest-direct.txt +++ b/requirements/requirements-lowest-direct.txt @@ -1,5 +1,5 @@ # This file was autogenerated by uv via the following command: -# uv pip compile pyproject.toml --universal --resolution lowest-direct -o requirements/requirements-lowest-direct.txt +# uv pip compile pyproject.toml --universal --resolution=lowest-direct -o=requirements/requirements-lowest-direct.txt certifi==2024.12.14 # via requests chardet==4.0.0 diff --git a/requirements/requirements-typing.txt b/requirements/requirements-typing.txt index 771ccd99..f7ad0efd 100644 --- a/requirements/requirements-typing.txt +++ b/requirements/requirements-typing.txt @@ -274,9 +274,9 @@ importlib-metadata==8.5.0 ; python_full_version < '3.10' \ iniconfig==2.0.0 \ --hash=sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3 \ --hash=sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374 -jinja2==3.1.4 \ - --hash=sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369 \ - --hash=sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d +jinja2==3.1.5 \ + --hash=sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb \ + --hash=sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb markupsafe==2.1.5 ; python_full_version < '3.9' \ --hash=sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf \ --hash=sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff \ @@ -562,9 +562,12 @@ types-requests==2.32.0.20241016 \ typing-extensions==4.12.2 \ --hash=sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d \ --hash=sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8 -urllib3==2.2.3 \ +urllib3==2.2.3 ; python_full_version < '3.9' \ --hash=sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac \ --hash=sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9 +urllib3==2.3.0 ; python_full_version >= '3.9' \ + --hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df \ + --hash=sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d werkzeug==3.0.6 ; python_full_version < '3.9' \ --hash=sha256:1bc0c2310d2fbb07b1dd1105eba2f7af72f322e1e455f2f93c993bee8c8a5f17 \ --hash=sha256:a8dd59d4de28ca70471a34cba79bed5f7ef2e036a76b3ab0835474246eb41f8d diff --git a/uv.lock b/uv.lock index 717d9c42..8ad7e6d6 100644 --- a/uv.lock +++ b/uv.lock @@ -61,7 +61,7 @@ wheels = [ [[package]] name = "astroid" -version = "3.3.6" +version = "3.3.7" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version >= '3.12'", @@ -71,9 +71,9 @@ resolution-markers = [ dependencies = [ { name = "typing-extensions", marker = "python_full_version >= '3.9' and python_full_version < '3.11'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/ca/40/e028137cb19ed577001c76b91c5c50fee5a9c85099f45820b69385574ac5/astroid-3.3.6.tar.gz", hash = "sha256:6aaea045f938c735ead292204afdb977a36e989522b7833ef6fea94de743f442", size = 397452 } +sdist = { url = "https://files.pythonhosted.org/packages/20/f6/7725404e3dcaeafe695d4fe42ad99eefbcba4cad2c83ca122e6b439c9f96/astroid-3.3.7.tar.gz", hash = "sha256:29fe1df7ef64dc17a54dbfad67b40b445340fcdba7c4012e7ecc9270c9b2f5b6", size = 398091 } wheels = [ - { url = "https://files.pythonhosted.org/packages/0c/d2/82c8ccef22ea873a2b0da9636e47d45137eeeb2fb9320c5dbbdd3627bab0/astroid-3.3.6-py3-none-any.whl", hash = "sha256:db676dc4f3ae6bfe31cda227dc60e03438378d7a896aec57422c95634e8d722f", size = 274644 }, + { url = "https://files.pythonhosted.org/packages/83/0b/ef3a51abbf2064ac50447a02d1cd14c1f008590e96f780042c21108b6b56/astroid-3.3.7-py3-none-any.whl", hash = "sha256:e1ea2c358a3c760ef583d4963e773100fa2c693b27ed158a1d0e81adb4436903", size = 275125 }, ] [[package]] @@ -421,14 +421,14 @@ typing = [ [[package]] name = "click" -version = "8.1.7" +version = "8.1.8" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "colorama", marker = "sys_platform == 'win32'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/96/d3/f04c7bfcf5c1862a2a5b845c6b2b360488cf47af55dfa79c98f6a6bf98b5/click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de", size = 336121 } +sdist = { url = "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a", size = 226593 } wheels = [ - { url = "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28", size = 97941 }, + { url = "https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", size = 98188 }, ] [[package]] @@ -775,15 +775,15 @@ wheels = [ [[package]] name = "jinja2" -version = "3.1.4" +version = "3.1.5" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "markupsafe", version = "2.1.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, { name = "markupsafe", version = "3.0.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/ed/55/39036716d19cab0747a5020fc7e907f362fbf48c984b14e62127f7e68e5d/jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369", size = 240245 } +sdist = { url = "https://files.pythonhosted.org/packages/af/92/b3130cbbf5591acf9ade8708c365f3238046ac7cb8ccba6e81abccb0ccff/jinja2-3.1.5.tar.gz", hash = "sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb", size = 244674 } wheels = [ - { url = "https://files.pythonhosted.org/packages/31/80/3a54838c3fb461f6fec263ebf3a3a41771bd05190238de3486aae8540c36/jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d", size = 133271 }, + { url = "https://files.pythonhosted.org/packages/bd/0f/2ba5fbcd631e3e88689309dbe978c5769e883e4b84ebfe7da30b43275c5a/jinja2-3.1.5-py3-none-any.whl", hash = "sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb", size = 134596 }, ] [[package]] @@ -1292,7 +1292,8 @@ dependencies = [ { name = "certifi" }, { name = "charset-normalizer" }, { name = "idna" }, - { name = "urllib3" }, + { name = "urllib3", version = "2.2.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "urllib3", version = "2.3.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760", size = 131218 } wheels = [ @@ -1309,7 +1310,8 @@ dependencies = [ { name = "platformdirs" }, { name = "requests" }, { name = "url-normalize" }, - { name = "urllib3" }, + { name = "urllib3", version = "2.2.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "urllib3", version = "2.3.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/1a/be/7b2a95a9e7a7c3e774e43d067c51244e61dea8b120ae2deff7089a93fb2b/requests_cache-1.2.1.tar.gz", hash = "sha256:68abc986fdc5b8d0911318fbb5f7c80eebcd4d01bfacc6685ecf8876052511d1", size = 3018209 } wheels = [ @@ -1466,7 +1468,7 @@ version = "3.4.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "astroid", version = "3.2.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, - { name = "astroid", version = "3.3.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, + { name = "astroid", version = "3.3.7", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, { name = "jinja2" }, { name = "pyyaml" }, { name = "sphinx", version = "7.1.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, @@ -1767,7 +1769,8 @@ name = "types-requests" version = "2.32.0.20241016" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "urllib3" }, + { name = "urllib3", version = "2.2.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "urllib3", version = "2.3.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/fa/3c/4f2a430c01a22abd49a583b6b944173e39e7d01b688190a5618bd59a2e22/types-requests-2.32.0.20241016.tar.gz", hash = "sha256:0d9cad2f27515d0e3e3da7134a1b6f28fb97129d86b867f24d9c726452634d95", size = 18065 } wheels = [ @@ -1808,11 +1811,28 @@ wheels = [ name = "urllib3" version = "2.2.3" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.9'", +] sdist = { url = "https://files.pythonhosted.org/packages/ed/63/22ba4ebfe7430b76388e7cd448d5478814d3032121827c12a2cc287e2260/urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9", size = 300677 } wheels = [ { url = "https://files.pythonhosted.org/packages/ce/d9/5f4c13cecde62396b0d3fe530a50ccea91e7dfc1ccf0e09c228841bb5ba8/urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac", size = 126338 }, ] +[[package]] +name = "urllib3" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.12'", + "python_full_version >= '3.10' and python_full_version < '3.12'", + "python_full_version == '3.9.*'", +] +sdist = { url = "https://files.pythonhosted.org/packages/aa/63/e53da845320b757bf29ef6a9062f5c669fe997973f966045cb019c3f4b66/urllib3-2.3.0.tar.gz", hash = "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d", size = 307268 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl", hash = "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df", size = 128369 }, +] + [[package]] name = "werkzeug" version = "3.0.6"