From 3a9a5f5be7d7169e5dabe4e1f1517c105b9e0e68 Mon Sep 17 00:00:00 2001 From: Joseph H Kennedy Date: Fri, 7 Jun 2024 12:28:12 -0800 Subject: [PATCH 01/11] Add code of conduct and redirects to our docs --- docs/contributing/code-of-conduct.md | 1 + docs/contributing/index.md | 2 +- mkdocs.yml | 5 + poetry.lock | 982 +++++++++++++-------------- pyproject.toml | 1 + 5 files changed, 497 insertions(+), 494 deletions(-) create mode 100644 docs/contributing/code-of-conduct.md diff --git a/docs/contributing/code-of-conduct.md b/docs/contributing/code-of-conduct.md new file mode 100644 index 00000000..01f2ea20 --- /dev/null +++ b/docs/contributing/code-of-conduct.md @@ -0,0 +1 @@ +--8<-- "CODE_OF_CONDUCT.md" diff --git a/docs/contributing/index.md b/docs/contributing/index.md index 50a606b9..3d149637 100644 --- a/docs/contributing/index.md +++ b/docs/contributing/index.md @@ -6,7 +6,7 @@ with the community and maintainers via [a GitHub Discussion](https://github.com/nsidc/earthaccess/discussions), or [any other method](our-meet-ups.md). -Please note that we have a [code of conduct](/CODE_OF_CONDUCT.md). Please follow it in all of your interactions with the project. +Please note that we have a [code of conduct](./code-of-conduct.md). Please follow it in all of your interactions with the project. ## First Steps to contribute diff --git a/mkdocs.yml b/mkdocs.yml index 579e0787..387588ff 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -46,6 +46,10 @@ plugins: rendering: show_root_heading: false show_source: false + - redirects: + redirect_maps: + 'CODE_OF_CONDUCT.md': 'contributing/code-of-conduct.md' + 'CODE_OF_CONDUCT.md.md': 'contributing/code-of-conduct.md' - mkdocs-jupyter: execute: True ignore: @@ -60,6 +64,7 @@ nav: - "Development": "contributing/development.md" - "Releasing": "contributing/releasing.md" - "Our meet-ups": "contributing/our-meet-ups.md" + - "Code of Conduct": "contributing/code-of-conduct.md" - "Resources": "resources.md" - USER GUIDE: - "user_guide/index.md" diff --git a/poetry.lock b/poetry.lock index b5c6df6f..4412b582 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,25 +1,25 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiobotocore" -version = "2.12.3" +version = "2.13.0" description = "Async client for aws services using botocore and aiohttp" optional = false python-versions = ">=3.8" files = [ - {file = "aiobotocore-2.12.3-py3-none-any.whl", hash = "sha256:86737685f4625e8f05c4e7a608a07cc97607263279f66cf6b02b640c4eafd324"}, - {file = "aiobotocore-2.12.3.tar.gz", hash = "sha256:e2a2929207bc5d62eb556106c2224c1fd106d5c65be2eb69f15cc8c34c44c236"}, + {file = "aiobotocore-2.13.0-py3-none-any.whl", hash = "sha256:f812afc678d71b0038fd1ce712ff111ab7f47bab81ce5b4c7d222d4b83bc0cb2"}, + {file = "aiobotocore-2.13.0.tar.gz", hash = "sha256:4badf5cab6ad400216319d14278e2c99ad9b708e28a0f231605a412e632de401"}, ] [package.dependencies] -aiohttp = ">=3.7.4.post0,<4.0.0" +aiohttp = ">=3.9.2,<4.0.0" aioitertools = ">=0.5.1,<1.0.0" -botocore = ">=1.34.41,<1.34.70" +botocore = ">=1.34.70,<1.34.107" wrapt = ">=1.10.10,<2.0.0" [package.extras] -awscli = ["awscli (>=1.32.41,<1.32.70)"] -boto3 = ["boto3 (>=1.34.41,<1.34.70)"] +awscli = ["awscli (>=1.32.70,<1.32.107)"] +boto3 = ["boto3 (>=1.34.70,<1.34.107)"] [[package]] name = "aiohttp" @@ -147,24 +147,24 @@ frozenlist = ">=1.1.0" [[package]] name = "annotated-types" -version = "0.6.0" +version = "0.7.0" description = "Reusable constraint types to use with typing.Annotated" optional = false python-versions = ">=3.8" files = [ - {file = "annotated_types-0.6.0-py3-none-any.whl", hash = "sha256:0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"}, - {file = "annotated_types-0.6.0.tar.gz", hash = "sha256:563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d"}, + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] [[package]] name = "anyio" -version = "4.3.0" +version = "4.4.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.8" files = [ - {file = "anyio-4.3.0-py3-none-any.whl", hash = "sha256:048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"}, - {file = "anyio-4.3.0.tar.gz", hash = "sha256:f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6"}, + {file = "anyio-4.4.0-py3-none-any.whl", hash = "sha256:c1b2d8f46a8a812513012e1107cb0e68c17159a7a594208005a57dc776e1bdc7"}, + {file = "anyio-4.4.0.tar.gz", hash = "sha256:5aadc6a1bbb7cdb0bede386cac5e2940f5e2ff3aa20277e991cf028e0585ce94"}, ] [package.dependencies] @@ -351,17 +351,6 @@ files = [ [package.extras] dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] -[[package]] -name = "backcall" -version = "0.2.0" -description = "Specifications for callback functions passed in to an API" -optional = false -python-versions = "*" -files = [ - {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, - {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, -] - [[package]] name = "beautifulsoup4" version = "4.12.3" @@ -403,13 +392,13 @@ css = ["tinycss2 (>=1.1.0,<1.3)"] [[package]] name = "botocore" -version = "1.34.69" +version = "1.34.106" description = "Low-level, data-driven core of boto 3." optional = false python-versions = ">=3.8" files = [ - {file = "botocore-1.34.69-py3-none-any.whl", hash = "sha256:d3802d076d4d507bf506f9845a6970ce43adc3d819dd57c2791f5c19ed6e5950"}, - {file = "botocore-1.34.69.tar.gz", hash = "sha256:d1ab2bff3c2fd51719c2021d9fa2f30fbb9ed0a308f69e9a774ac92c8091380a"}, + {file = "botocore-1.34.106-py3-none-any.whl", hash = "sha256:4baf0e27c2dfc4f4d0dee7c217c716e0782f9b30e8e1fff983fce237d88f73ae"}, + {file = "botocore-1.34.106.tar.gz", hash = "sha256:921fa5202f88c3e58fdcb4b3acffd56d65b24bca47092ee4b27aa988556c0be6"}, ] [package.dependencies] @@ -421,7 +410,7 @@ urllib3 = [ ] [package.extras] -crt = ["awscrt (==0.19.19)"] +crt = ["awscrt (==0.20.9)"] [[package]] name = "bounded-pool-executor" @@ -447,13 +436,13 @@ files = [ [[package]] name = "bump-my-version" -version = "0.21.1" +version = "0.22.0" description = "Version bump your Python project" optional = false python-versions = ">=3.8" files = [ - {file = "bump_my_version-0.21.1-py3-none-any.whl", hash = "sha256:946a7edcf30c5a8574c579684df983136ea395f70c184e4db32eb3e307584c14"}, - {file = "bump_my_version-0.21.1.tar.gz", hash = "sha256:ec612474e9e790c3fbbfed153a10b356f84fc15096ceff181b399d5e985bfacc"}, + {file = "bump_my_version-0.22.0-py3-none-any.whl", hash = "sha256:57cd3ba68b8a84d774a9abd247a6c6323192151fa2b41f22eb6763cb17dfebee"}, + {file = "bump_my_version-0.22.0.tar.gz", hash = "sha256:b96f180d6aa154e98e199753e83847587609bd897df9114248e6392324c89620"}, ] [package.dependencies] @@ -473,13 +462,13 @@ test = ["coverage", "freezegun", "pre-commit", "pytest", "pytest-cov", "pytest-m [[package]] name = "certifi" -version = "2024.2.2" +version = "2024.6.2" 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.6.2-py3-none-any.whl", hash = "sha256:ddc6c8ce995e6987e7faf5e3f1b02b302836a0e5d98ece18392cb1a36c72ad56"}, + {file = "certifi-2024.6.2.tar.gz", hash = "sha256:3cd43f1c6fa7dedc5899d69d3ad0398fd018ad1a17fba83ddaf78aa46c747516"}, ] [[package]] @@ -711,137 +700,126 @@ test = ["pytest"] [[package]] name = "contourpy" -version = "1.1.1" +version = "1.2.1" description = "Python library for calculating contours of 2D quadrilateral grids" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "contourpy-1.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:46e24f5412c948d81736509377e255f6040e94216bf1a9b5ea1eaa9d29f6ec1b"}, - {file = "contourpy-1.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0e48694d6a9c5a26ee85b10130c77a011a4fedf50a7279fa0bdaf44bafb4299d"}, - {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a66045af6cf00e19d02191ab578a50cb93b2028c3eefed999793698e9ea768ae"}, - {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4ebf42695f75ee1a952f98ce9775c873e4971732a87334b099dde90b6af6a916"}, - {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f6aec19457617ef468ff091669cca01fa7ea557b12b59a7908b9474bb9674cf0"}, - {file = "contourpy-1.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:462c59914dc6d81e0b11f37e560b8a7c2dbab6aca4f38be31519d442d6cde1a1"}, - {file = "contourpy-1.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6d0a8efc258659edc5299f9ef32d8d81de8b53b45d67bf4bfa3067f31366764d"}, - {file = "contourpy-1.1.1-cp310-cp310-win32.whl", hash = "sha256:d6ab42f223e58b7dac1bb0af32194a7b9311065583cc75ff59dcf301afd8a431"}, - {file = "contourpy-1.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:549174b0713d49871c6dee90a4b499d3f12f5e5f69641cd23c50a4542e2ca1eb"}, - {file = "contourpy-1.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:407d864db716a067cc696d61fa1ef6637fedf03606e8417fe2aeed20a061e6b2"}, - {file = "contourpy-1.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dfe80c017973e6a4c367e037cb31601044dd55e6bfacd57370674867d15a899b"}, - {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e30aaf2b8a2bac57eb7e1650df1b3a4130e8d0c66fc2f861039d507a11760e1b"}, - {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3de23ca4f381c3770dee6d10ead6fff524d540c0f662e763ad1530bde5112532"}, - {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:566f0e41df06dfef2431defcfaa155f0acfa1ca4acbf8fd80895b1e7e2ada40e"}, - {file = "contourpy-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b04c2f0adaf255bf756cf08ebef1be132d3c7a06fe6f9877d55640c5e60c72c5"}, - {file = "contourpy-1.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d0c188ae66b772d9d61d43c6030500344c13e3f73a00d1dc241da896f379bb62"}, - {file = "contourpy-1.1.1-cp311-cp311-win32.whl", hash = "sha256:0683e1ae20dc038075d92e0e0148f09ffcefab120e57f6b4c9c0f477ec171f33"}, - {file = "contourpy-1.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:8636cd2fc5da0fb102a2504fa2c4bea3cbc149533b345d72cdf0e7a924decc45"}, - {file = "contourpy-1.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:560f1d68a33e89c62da5da4077ba98137a5e4d3a271b29f2f195d0fba2adcb6a"}, - {file = "contourpy-1.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:24216552104ae8f3b34120ef84825400b16eb6133af2e27a190fdc13529f023e"}, - {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56de98a2fb23025882a18b60c7f0ea2d2d70bbbcfcf878f9067234b1c4818442"}, - {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:07d6f11dfaf80a84c97f1a5ba50d129d9303c5b4206f776e94037332e298dda8"}, - {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f1eaac5257a8f8a047248d60e8f9315c6cff58f7803971170d952555ef6344a7"}, - {file = "contourpy-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:19557fa407e70f20bfaba7d55b4d97b14f9480856c4fb65812e8a05fe1c6f9bf"}, - {file = "contourpy-1.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:081f3c0880712e40effc5f4c3b08feca6d064cb8cfbb372ca548105b86fd6c3d"}, - {file = "contourpy-1.1.1-cp312-cp312-win32.whl", hash = "sha256:059c3d2a94b930f4dafe8105bcdc1b21de99b30b51b5bce74c753686de858cb6"}, - {file = "contourpy-1.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:f44d78b61740e4e8c71db1cf1fd56d9050a4747681c59ec1094750a658ceb970"}, - {file = "contourpy-1.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:70e5a10f8093d228bb2b552beeb318b8928b8a94763ef03b858ef3612b29395d"}, - {file = "contourpy-1.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8394e652925a18ef0091115e3cc191fef350ab6dc3cc417f06da66bf98071ae9"}, - {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5bd5680f844c3ff0008523a71949a3ff5e4953eb7701b28760805bc9bcff217"}, - {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66544f853bfa85c0d07a68f6c648b2ec81dafd30f272565c37ab47a33b220684"}, - {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0c02b75acfea5cab07585d25069207e478d12309557f90a61b5a3b4f77f46ce"}, - {file = "contourpy-1.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:41339b24471c58dc1499e56783fedc1afa4bb018bcd035cfb0ee2ad2a7501ef8"}, - {file = "contourpy-1.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f29fb0b3f1217dfe9362ec55440d0743fe868497359f2cf93293f4b2701b8251"}, - {file = "contourpy-1.1.1-cp38-cp38-win32.whl", hash = "sha256:f9dc7f933975367251c1b34da882c4f0e0b2e24bb35dc906d2f598a40b72bfc7"}, - {file = "contourpy-1.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:498e53573e8b94b1caeb9e62d7c2d053c263ebb6aa259c81050766beb50ff8d9"}, - {file = "contourpy-1.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ba42e3810999a0ddd0439e6e5dbf6d034055cdc72b7c5c839f37a7c274cb4eba"}, - {file = "contourpy-1.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6c06e4c6e234fcc65435223c7b2a90f286b7f1b2733058bdf1345d218cc59e34"}, - {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca6fab080484e419528e98624fb5c4282148b847e3602dc8dbe0cb0669469887"}, - {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:93df44ab351119d14cd1e6b52a5063d3336f0754b72736cc63db59307dabb718"}, - {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eafbef886566dc1047d7b3d4b14db0d5b7deb99638d8e1be4e23a7c7ac59ff0f"}, - {file = "contourpy-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efe0fab26d598e1ec07d72cf03eaeeba8e42b4ecf6b9ccb5a356fde60ff08b85"}, - {file = "contourpy-1.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:f08e469821a5e4751c97fcd34bcb586bc243c39c2e39321822060ba902eac49e"}, - {file = "contourpy-1.1.1-cp39-cp39-win32.whl", hash = "sha256:bfc8a5e9238232a45ebc5cb3bfee71f1167064c8d382cadd6076f0d51cff1da0"}, - {file = "contourpy-1.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:c84fdf3da00c2827d634de4fcf17e3e067490c4aea82833625c4c8e6cdea0887"}, - {file = "contourpy-1.1.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:229a25f68046c5cf8067d6d6351c8b99e40da11b04d8416bf8d2b1d75922521e"}, - {file = "contourpy-1.1.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a10dab5ea1bd4401c9483450b5b0ba5416be799bbd50fc7a6cc5e2a15e03e8a3"}, - {file = "contourpy-1.1.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:4f9147051cb8fdb29a51dc2482d792b3b23e50f8f57e3720ca2e3d438b7adf23"}, - {file = "contourpy-1.1.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a75cc163a5f4531a256f2c523bd80db509a49fc23721b36dd1ef2f60ff41c3cb"}, - {file = "contourpy-1.1.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b53d5769aa1f2d4ea407c65f2d1d08002952fac1d9e9d307aa2e1023554a163"}, - {file = "contourpy-1.1.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:11b836b7dbfb74e049c302bbf74b4b8f6cb9d0b6ca1bf86cfa8ba144aedadd9c"}, - {file = "contourpy-1.1.1.tar.gz", hash = "sha256:96ba37c2e24b7212a77da85004c38e7c4d155d3e72a45eeaf22c1f03f607e8ab"}, + {file = "contourpy-1.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bd7c23df857d488f418439686d3b10ae2fbf9bc256cd045b37a8c16575ea1040"}, + {file = "contourpy-1.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5b9eb0ca724a241683c9685a484da9d35c872fd42756574a7cfbf58af26677fd"}, + {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4c75507d0a55378240f781599c30e7776674dbaf883a46d1c90f37e563453480"}, + {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11959f0ce4a6f7b76ec578576a0b61a28bdc0696194b6347ba3f1c53827178b9"}, + {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eb3315a8a236ee19b6df481fc5f997436e8ade24a9f03dfdc6bd490fea20c6da"}, + {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39f3ecaf76cd98e802f094e0d4fbc6dc9c45a8d0c4d185f0f6c2234e14e5f75b"}, + {file = "contourpy-1.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:94b34f32646ca0414237168d68a9157cb3889f06b096612afdd296003fdd32fd"}, + {file = "contourpy-1.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:457499c79fa84593f22454bbd27670227874cd2ff5d6c84e60575c8b50a69619"}, + {file = "contourpy-1.2.1-cp310-cp310-win32.whl", hash = "sha256:ac58bdee53cbeba2ecad824fa8159493f0bf3b8ea4e93feb06c9a465d6c87da8"}, + {file = "contourpy-1.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:9cffe0f850e89d7c0012a1fb8730f75edd4320a0a731ed0c183904fe6ecfc3a9"}, + {file = "contourpy-1.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6022cecf8f44e36af10bd9118ca71f371078b4c168b6e0fab43d4a889985dbb5"}, + {file = "contourpy-1.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ef5adb9a3b1d0c645ff694f9bca7702ec2c70f4d734f9922ea34de02294fdf72"}, + {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6150ffa5c767bc6332df27157d95442c379b7dce3a38dff89c0f39b63275696f"}, + {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c863140fafc615c14a4bf4efd0f4425c02230eb8ef02784c9a156461e62c965"}, + {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:00e5388f71c1a0610e6fe56b5c44ab7ba14165cdd6d695429c5cd94021e390b2"}, + {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4492d82b3bc7fbb7e3610747b159869468079fe149ec5c4d771fa1f614a14df"}, + {file = "contourpy-1.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:49e70d111fee47284d9dd867c9bb9a7058a3c617274900780c43e38d90fe1205"}, + {file = "contourpy-1.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b59c0ffceff8d4d3996a45f2bb6f4c207f94684a96bf3d9728dbb77428dd8cb8"}, + {file = "contourpy-1.2.1-cp311-cp311-win32.whl", hash = "sha256:7b4182299f251060996af5249c286bae9361fa8c6a9cda5efc29fe8bfd6062ec"}, + {file = "contourpy-1.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:2855c8b0b55958265e8b5888d6a615ba02883b225f2227461aa9127c578a4922"}, + {file = "contourpy-1.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:62828cada4a2b850dbef89c81f5a33741898b305db244904de418cc957ff05dc"}, + {file = "contourpy-1.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:309be79c0a354afff9ff7da4aaed7c3257e77edf6c1b448a779329431ee79d7e"}, + {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e785e0f2ef0d567099b9ff92cbfb958d71c2d5b9259981cd9bee81bd194c9a4"}, + {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1cac0a8f71a041aa587410424ad46dfa6a11f6149ceb219ce7dd48f6b02b87a7"}, + {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af3f4485884750dddd9c25cb7e3915d83c2db92488b38ccb77dd594eac84c4a0"}, + {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ce6889abac9a42afd07a562c2d6d4b2b7134f83f18571d859b25624a331c90b"}, + {file = "contourpy-1.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a1eea9aecf761c661d096d39ed9026574de8adb2ae1c5bd7b33558af884fb2ce"}, + {file = "contourpy-1.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:187fa1d4c6acc06adb0fae5544c59898ad781409e61a926ac7e84b8f276dcef4"}, + {file = "contourpy-1.2.1-cp312-cp312-win32.whl", hash = "sha256:c2528d60e398c7c4c799d56f907664673a807635b857df18f7ae64d3e6ce2d9f"}, + {file = "contourpy-1.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:1a07fc092a4088ee952ddae19a2b2a85757b923217b7eed584fdf25f53a6e7ce"}, + {file = "contourpy-1.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bb6834cbd983b19f06908b45bfc2dad6ac9479ae04abe923a275b5f48f1a186b"}, + {file = "contourpy-1.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1d59e739ab0e3520e62a26c60707cc3ab0365d2f8fecea74bfe4de72dc56388f"}, + {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd3db01f59fdcbce5b22afad19e390260d6d0222f35a1023d9adc5690a889364"}, + {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a12a813949e5066148712a0626895c26b2578874e4cc63160bb007e6df3436fe"}, + {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe0ccca550bb8e5abc22f530ec0466136379c01321fd94f30a22231e8a48d985"}, + {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1d59258c3c67c865435d8fbeb35f8c59b8bef3d6f46c1f29f6123556af28445"}, + {file = "contourpy-1.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f32c38afb74bd98ce26de7cc74a67b40afb7b05aae7b42924ea990d51e4dac02"}, + {file = "contourpy-1.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d31a63bc6e6d87f77d71e1abbd7387ab817a66733734883d1fc0021ed9bfa083"}, + {file = "contourpy-1.2.1-cp39-cp39-win32.whl", hash = "sha256:ddcb8581510311e13421b1f544403c16e901c4e8f09083c881fab2be80ee31ba"}, + {file = "contourpy-1.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:10a37ae557aabf2509c79715cd20b62e4c7c28b8cd62dd7d99e5ed3ce28c3fd9"}, + {file = "contourpy-1.2.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a31f94983fecbac95e58388210427d68cd30fe8a36927980fab9c20062645609"}, + {file = "contourpy-1.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef2b055471c0eb466033760a521efb9d8a32b99ab907fc8358481a1dd29e3bd3"}, + {file = "contourpy-1.2.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:b33d2bc4f69caedcd0a275329eb2198f560b325605810895627be5d4b876bf7f"}, + {file = "contourpy-1.2.1.tar.gz", hash = "sha256:4d8908b3bee1c889e547867ca4cdc54e5ab6be6d3e078556814a22457f49423c"}, ] [package.dependencies] -numpy = [ - {version = ">=1.16,<2.0", markers = "python_version <= \"3.11\""}, - {version = ">=1.26.0rc1,<2.0", markers = "python_version >= \"3.12\""}, -] +numpy = ">=1.20" [package.extras] bokeh = ["bokeh", "selenium"] docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] -mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.4.1)", "types-Pillow"] +mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.8.0)", "types-Pillow"] test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] -test-no-images = ["pytest", "pytest-cov", "wurlitzer"] +test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"] [[package]] name = "coverage" -version = "7.5.1" +version = "7.5.3" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.5.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0884920835a033b78d1c73b6d3bbcda8161a900f38a488829a83982925f6c2e"}, - {file = "coverage-7.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:39afcd3d4339329c5f58de48a52f6e4e50f6578dd6099961cf22228feb25f38f"}, - {file = "coverage-7.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a7b0ceee8147444347da6a66be737c9d78f3353b0681715b668b72e79203e4a"}, - {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a9ca3f2fae0088c3c71d743d85404cec8df9be818a005ea065495bedc33da35"}, - {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd215c0c7d7aab005221608a3c2b46f58c0285a819565887ee0b718c052aa4e"}, - {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4bf0655ab60d754491004a5efd7f9cccefcc1081a74c9ef2da4735d6ee4a6223"}, - {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:61c4bf1ba021817de12b813338c9be9f0ad5b1e781b9b340a6d29fc13e7c1b5e"}, - {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:db66fc317a046556a96b453a58eced5024af4582a8dbdc0c23ca4dbc0d5b3146"}, - {file = "coverage-7.5.1-cp310-cp310-win32.whl", hash = "sha256:b016ea6b959d3b9556cb401c55a37547135a587db0115635a443b2ce8f1c7228"}, - {file = "coverage-7.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:df4e745a81c110e7446b1cc8131bf986157770fa405fe90e15e850aaf7619bc8"}, - {file = "coverage-7.5.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:796a79f63eca8814ca3317a1ea443645c9ff0d18b188de470ed7ccd45ae79428"}, - {file = "coverage-7.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4fc84a37bfd98db31beae3c2748811a3fa72bf2007ff7902f68746d9757f3746"}, - {file = "coverage-7.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6175d1a0559986c6ee3f7fccfc4a90ecd12ba0a383dcc2da30c2b9918d67d8a3"}, - {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fc81d5878cd6274ce971e0a3a18a8803c3fe25457165314271cf78e3aae3aa2"}, - {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:556cf1a7cbc8028cb60e1ff0be806be2eded2daf8129b8811c63e2b9a6c43bca"}, - {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9981706d300c18d8b220995ad22627647be11a4276721c10911e0e9fa44c83e8"}, - {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d7fed867ee50edf1a0b4a11e8e5d0895150e572af1cd6d315d557758bfa9c057"}, - {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ef48e2707fb320c8f139424a596f5b69955a85b178f15af261bab871873bb987"}, - {file = "coverage-7.5.1-cp311-cp311-win32.whl", hash = "sha256:9314d5678dcc665330df5b69c1e726a0e49b27df0461c08ca12674bcc19ef136"}, - {file = "coverage-7.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:5fa567e99765fe98f4e7d7394ce623e794d7cabb170f2ca2ac5a4174437e90dd"}, - {file = "coverage-7.5.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b6cf3764c030e5338e7f61f95bd21147963cf6aa16e09d2f74f1fa52013c1206"}, - {file = "coverage-7.5.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ec92012fefebee89a6b9c79bc39051a6cb3891d562b9270ab10ecfdadbc0c34"}, - {file = "coverage-7.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16db7f26000a07efcf6aea00316f6ac57e7d9a96501e990a36f40c965ec7a95d"}, - {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:beccf7b8a10b09c4ae543582c1319c6df47d78fd732f854ac68d518ee1fb97fa"}, - {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8748731ad392d736cc9ccac03c9845b13bb07d020a33423fa5b3a36521ac6e4e"}, - {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7352b9161b33fd0b643ccd1f21f3a3908daaddf414f1c6cb9d3a2fd618bf2572"}, - {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7a588d39e0925f6a2bff87154752481273cdb1736270642aeb3635cb9b4cad07"}, - {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:68f962d9b72ce69ea8621f57551b2fa9c70509af757ee3b8105d4f51b92b41a7"}, - {file = "coverage-7.5.1-cp312-cp312-win32.whl", hash = "sha256:f152cbf5b88aaeb836127d920dd0f5e7edff5a66f10c079157306c4343d86c19"}, - {file = "coverage-7.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:5a5740d1fb60ddf268a3811bcd353de34eb56dc24e8f52a7f05ee513b2d4f596"}, - {file = "coverage-7.5.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e2213def81a50519d7cc56ed643c9e93e0247f5bbe0d1247d15fa520814a7cd7"}, - {file = "coverage-7.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5037f8fcc2a95b1f0e80585bd9d1ec31068a9bcb157d9750a172836e98bc7a90"}, - {file = "coverage-7.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3721c2c9e4c4953a41a26c14f4cef64330392a6d2d675c8b1db3b645e31f0e"}, - {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca498687ca46a62ae590253fba634a1fe9836bc56f626852fb2720f334c9e4e5"}, - {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0cdcbc320b14c3e5877ee79e649677cb7d89ef588852e9583e6b24c2e5072661"}, - {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:57e0204b5b745594e5bc14b9b50006da722827f0b8c776949f1135677e88d0b8"}, - {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8fe7502616b67b234482c3ce276ff26f39ffe88adca2acf0261df4b8454668b4"}, - {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9e78295f4144f9dacfed4f92935fbe1780021247c2fabf73a819b17f0ccfff8d"}, - {file = "coverage-7.5.1-cp38-cp38-win32.whl", hash = "sha256:1434e088b41594baa71188a17533083eabf5609e8e72f16ce8c186001e6b8c41"}, - {file = "coverage-7.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:0646599e9b139988b63704d704af8e8df7fa4cbc4a1f33df69d97f36cb0a38de"}, - {file = "coverage-7.5.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4cc37def103a2725bc672f84bd939a6fe4522310503207aae4d56351644682f1"}, - {file = "coverage-7.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fc0b4d8bfeabd25ea75e94632f5b6e047eef8adaed0c2161ada1e922e7f7cece"}, - {file = "coverage-7.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d0a0f5e06881ecedfe6f3dd2f56dcb057b6dbeb3327fd32d4b12854df36bf26"}, - {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9735317685ba6ec7e3754798c8871c2f49aa5e687cc794a0b1d284b2389d1bd5"}, - {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d21918e9ef11edf36764b93101e2ae8cc82aa5efdc7c5a4e9c6c35a48496d601"}, - {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c3e757949f268364b96ca894b4c342b41dc6f8f8b66c37878aacef5930db61be"}, - {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:79afb6197e2f7f60c4824dd4b2d4c2ec5801ceb6ba9ce5d2c3080e5660d51a4f"}, - {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d1d0d98d95dd18fe29dc66808e1accf59f037d5716f86a501fc0256455219668"}, - {file = "coverage-7.5.1-cp39-cp39-win32.whl", hash = "sha256:1cc0fe9b0b3a8364093c53b0b4c0c2dd4bb23acbec4c9240b5f284095ccf7981"}, - {file = "coverage-7.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:dde0070c40ea8bb3641e811c1cfbf18e265d024deff6de52c5950677a8fb1e0f"}, - {file = "coverage-7.5.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:6537e7c10cc47c595828b8a8be04c72144725c383c4702703ff4e42e44577312"}, - {file = "coverage-7.5.1.tar.gz", hash = "sha256:54de9ef3a9da981f7af93eafde4ede199e0846cd819eb27c88e2b712aae9708c"}, + {file = "coverage-7.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a6519d917abb15e12380406d721e37613e2a67d166f9fb7e5a8ce0375744cd45"}, + {file = "coverage-7.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:aea7da970f1feccf48be7335f8b2ca64baf9b589d79e05b9397a06696ce1a1ec"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:923b7b1c717bd0f0f92d862d1ff51d9b2b55dbbd133e05680204465f454bb286"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62bda40da1e68898186f274f832ef3e759ce929da9a9fd9fcf265956de269dbc"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8b7339180d00de83e930358223c617cc343dd08e1aa5ec7b06c3a121aec4e1d"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:25a5caf742c6195e08002d3b6c2dd6947e50efc5fc2c2205f61ecb47592d2d83"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:05ac5f60faa0c704c0f7e6a5cbfd6f02101ed05e0aee4d2822637a9e672c998d"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:239a4e75e09c2b12ea478d28815acf83334d32e722e7433471fbf641c606344c"}, + {file = "coverage-7.5.3-cp310-cp310-win32.whl", hash = "sha256:a5812840d1d00eafae6585aba38021f90a705a25b8216ec7f66aebe5b619fb84"}, + {file = "coverage-7.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:33ca90a0eb29225f195e30684ba4a6db05dbef03c2ccd50b9077714c48153cac"}, + {file = "coverage-7.5.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f81bc26d609bf0fbc622c7122ba6307993c83c795d2d6f6f6fd8c000a770d974"}, + {file = "coverage-7.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7cec2af81f9e7569280822be68bd57e51b86d42e59ea30d10ebdbb22d2cb7232"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55f689f846661e3f26efa535071775d0483388a1ccfab899df72924805e9e7cd"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50084d3516aa263791198913a17354bd1dc627d3c1639209640b9cac3fef5807"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:341dd8f61c26337c37988345ca5c8ccabeff33093a26953a1ac72e7d0103c4fb"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ab0b028165eea880af12f66086694768f2c3139b2c31ad5e032c8edbafca6ffc"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:5bc5a8c87714b0c67cfeb4c7caa82b2d71e8864d1a46aa990b5588fa953673b8"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:38a3b98dae8a7c9057bd91fbf3415c05e700a5114c5f1b5b0ea5f8f429ba6614"}, + {file = "coverage-7.5.3-cp311-cp311-win32.whl", hash = "sha256:fcf7d1d6f5da887ca04302db8e0e0cf56ce9a5e05f202720e49b3e8157ddb9a9"}, + {file = "coverage-7.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:8c836309931839cca658a78a888dab9676b5c988d0dd34ca247f5f3e679f4e7a"}, + {file = "coverage-7.5.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:296a7d9bbc598e8744c00f7a6cecf1da9b30ae9ad51c566291ff1314e6cbbed8"}, + {file = "coverage-7.5.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:34d6d21d8795a97b14d503dcaf74226ae51eb1f2bd41015d3ef332a24d0a17b3"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e317953bb4c074c06c798a11dbdd2cf9979dbcaa8ccc0fa4701d80042d4ebf1"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:705f3d7c2b098c40f5b81790a5fedb274113373d4d1a69e65f8b68b0cc26f6db"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1196e13c45e327d6cd0b6e471530a1882f1017eb83c6229fc613cd1a11b53cd"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:015eddc5ccd5364dcb902eaecf9515636806fa1e0d5bef5769d06d0f31b54523"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:fd27d8b49e574e50caa65196d908f80e4dff64d7e592d0c59788b45aad7e8b35"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:33fc65740267222fc02975c061eb7167185fef4cc8f2770267ee8bf7d6a42f84"}, + {file = "coverage-7.5.3-cp312-cp312-win32.whl", hash = "sha256:7b2a19e13dfb5c8e145c7a6ea959485ee8e2204699903c88c7d25283584bfc08"}, + {file = "coverage-7.5.3-cp312-cp312-win_amd64.whl", hash = "sha256:0bbddc54bbacfc09b3edaec644d4ac90c08ee8ed4844b0f86227dcda2d428fcb"}, + {file = "coverage-7.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f78300789a708ac1f17e134593f577407d52d0417305435b134805c4fb135adb"}, + {file = "coverage-7.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b368e1aee1b9b75757942d44d7598dcd22a9dbb126affcbba82d15917f0cc155"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f836c174c3a7f639bded48ec913f348c4761cbf49de4a20a956d3431a7c9cb24"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:244f509f126dc71369393ce5fea17c0592c40ee44e607b6d855e9c4ac57aac98"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4c2872b3c91f9baa836147ca33650dc5c172e9273c808c3c3199c75490e709d"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dd4b3355b01273a56b20c219e74e7549e14370b31a4ffe42706a8cda91f19f6d"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:f542287b1489c7a860d43a7d8883e27ca62ab84ca53c965d11dac1d3a1fab7ce"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:75e3f4e86804023e991096b29e147e635f5e2568f77883a1e6eed74512659ab0"}, + {file = "coverage-7.5.3-cp38-cp38-win32.whl", hash = "sha256:c59d2ad092dc0551d9f79d9d44d005c945ba95832a6798f98f9216ede3d5f485"}, + {file = "coverage-7.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:fa21a04112c59ad54f69d80e376f7f9d0f5f9123ab87ecd18fbb9ec3a2beed56"}, + {file = "coverage-7.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f5102a92855d518b0996eb197772f5ac2a527c0ec617124ad5242a3af5e25f85"}, + {file = "coverage-7.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d1da0a2e3b37b745a2b2a678a4c796462cf753aebf94edcc87dcc6b8641eae31"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8383a6c8cefba1b7cecc0149415046b6fc38836295bc4c84e820872eb5478b3d"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9aad68c3f2566dfae84bf46295a79e79d904e1c21ccfc66de88cd446f8686341"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e079c9ec772fedbade9d7ebc36202a1d9ef7291bc9b3a024ca395c4d52853d7"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bde997cac85fcac227b27d4fb2c7608a2c5f6558469b0eb704c5726ae49e1c52"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:990fb20b32990b2ce2c5f974c3e738c9358b2735bc05075d50a6f36721b8f303"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3d5a67f0da401e105753d474369ab034c7bae51a4c31c77d94030d59e41df5bd"}, + {file = "coverage-7.5.3-cp39-cp39-win32.whl", hash = "sha256:e08c470c2eb01977d221fd87495b44867a56d4d594f43739a8028f8646a51e0d"}, + {file = "coverage-7.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:1d2a830ade66d3563bb61d1e3c77c8def97b30ed91e166c67d0632c018f380f0"}, + {file = "coverage-7.5.3-pp38.pp39.pp310-none-any.whl", hash = "sha256:3538d8fb1ee9bdd2e2692b3b18c22bb1c19ffbefd06880f5ac496e42d7bb3884"}, + {file = "coverage-7.5.3.tar.gz", hash = "sha256:04aefca5190d1dc7a53a4c1a5a7f8568811306d7a8ee231c42fb69215571944f"}, ] [package.dependencies] @@ -1039,53 +1017,53 @@ typing = ["typing-extensions (>=4.8)"] [[package]] name = "fonttools" -version = "4.51.0" +version = "4.53.0" description = "Tools to manipulate font files" optional = false python-versions = ">=3.8" files = [ - {file = "fonttools-4.51.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:84d7751f4468dd8cdd03ddada18b8b0857a5beec80bce9f435742abc9a851a74"}, - {file = "fonttools-4.51.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8b4850fa2ef2cfbc1d1f689bc159ef0f45d8d83298c1425838095bf53ef46308"}, - {file = "fonttools-4.51.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5b48a1121117047d82695d276c2af2ee3a24ffe0f502ed581acc2673ecf1037"}, - {file = "fonttools-4.51.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:180194c7fe60c989bb627d7ed5011f2bef1c4d36ecf3ec64daec8302f1ae0716"}, - {file = "fonttools-4.51.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:96a48e137c36be55e68845fc4284533bda2980f8d6f835e26bca79d7e2006438"}, - {file = "fonttools-4.51.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:806e7912c32a657fa39d2d6eb1d3012d35f841387c8fc6cf349ed70b7c340039"}, - {file = "fonttools-4.51.0-cp310-cp310-win32.whl", hash = "sha256:32b17504696f605e9e960647c5f64b35704782a502cc26a37b800b4d69ff3c77"}, - {file = "fonttools-4.51.0-cp310-cp310-win_amd64.whl", hash = "sha256:c7e91abdfae1b5c9e3a543f48ce96013f9a08c6c9668f1e6be0beabf0a569c1b"}, - {file = "fonttools-4.51.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a8feca65bab31479d795b0d16c9a9852902e3a3c0630678efb0b2b7941ea9c74"}, - {file = "fonttools-4.51.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8ac27f436e8af7779f0bb4d5425aa3535270494d3bc5459ed27de3f03151e4c2"}, - {file = "fonttools-4.51.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e19bd9e9964a09cd2433a4b100ca7f34e34731e0758e13ba9a1ed6e5468cc0f"}, - {file = "fonttools-4.51.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2b92381f37b39ba2fc98c3a45a9d6383bfc9916a87d66ccb6553f7bdd129097"}, - {file = "fonttools-4.51.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5f6bc991d1610f5c3bbe997b0233cbc234b8e82fa99fc0b2932dc1ca5e5afec0"}, - {file = "fonttools-4.51.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9696fe9f3f0c32e9a321d5268208a7cc9205a52f99b89479d1b035ed54c923f1"}, - {file = "fonttools-4.51.0-cp311-cp311-win32.whl", hash = "sha256:3bee3f3bd9fa1d5ee616ccfd13b27ca605c2b4270e45715bd2883e9504735034"}, - {file = "fonttools-4.51.0-cp311-cp311-win_amd64.whl", hash = "sha256:0f08c901d3866a8905363619e3741c33f0a83a680d92a9f0e575985c2634fcc1"}, - {file = "fonttools-4.51.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:4060acc2bfa2d8e98117828a238889f13b6f69d59f4f2d5857eece5277b829ba"}, - {file = "fonttools-4.51.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:1250e818b5f8a679ad79660855528120a8f0288f8f30ec88b83db51515411fcc"}, - {file = "fonttools-4.51.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76f1777d8b3386479ffb4a282e74318e730014d86ce60f016908d9801af9ca2a"}, - {file = "fonttools-4.51.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b5ad456813d93b9c4b7ee55302208db2b45324315129d85275c01f5cb7e61a2"}, - {file = "fonttools-4.51.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:68b3fb7775a923be73e739f92f7e8a72725fd333eab24834041365d2278c3671"}, - {file = "fonttools-4.51.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8e2f1a4499e3b5ee82c19b5ee57f0294673125c65b0a1ff3764ea1f9db2f9ef5"}, - {file = "fonttools-4.51.0-cp312-cp312-win32.whl", hash = "sha256:278e50f6b003c6aed19bae2242b364e575bcb16304b53f2b64f6551b9c000e15"}, - {file = "fonttools-4.51.0-cp312-cp312-win_amd64.whl", hash = "sha256:b3c61423f22165541b9403ee39874dcae84cd57a9078b82e1dce8cb06b07fa2e"}, - {file = "fonttools-4.51.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:1621ee57da887c17312acc4b0e7ac30d3a4fb0fec6174b2e3754a74c26bbed1e"}, - {file = "fonttools-4.51.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e9d9298be7a05bb4801f558522adbe2feea1b0b103d5294ebf24a92dd49b78e5"}, - {file = "fonttools-4.51.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee1af4be1c5afe4c96ca23badd368d8dc75f611887fb0c0dac9f71ee5d6f110e"}, - {file = "fonttools-4.51.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c18b49adc721a7d0b8dfe7c3130c89b8704baf599fb396396d07d4aa69b824a1"}, - {file = "fonttools-4.51.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:de7c29bdbdd35811f14493ffd2534b88f0ce1b9065316433b22d63ca1cd21f14"}, - {file = "fonttools-4.51.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cadf4e12a608ef1d13e039864f484c8a968840afa0258b0b843a0556497ea9ed"}, - {file = "fonttools-4.51.0-cp38-cp38-win32.whl", hash = "sha256:aefa011207ed36cd280babfaa8510b8176f1a77261833e895a9d96e57e44802f"}, - {file = "fonttools-4.51.0-cp38-cp38-win_amd64.whl", hash = "sha256:865a58b6e60b0938874af0968cd0553bcd88e0b2cb6e588727117bd099eef836"}, - {file = "fonttools-4.51.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:60a3409c9112aec02d5fb546f557bca6efa773dcb32ac147c6baf5f742e6258b"}, - {file = "fonttools-4.51.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f7e89853d8bea103c8e3514b9f9dc86b5b4120afb4583b57eb10dfa5afbe0936"}, - {file = "fonttools-4.51.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56fc244f2585d6c00b9bcc59e6593e646cf095a96fe68d62cd4da53dd1287b55"}, - {file = "fonttools-4.51.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d145976194a5242fdd22df18a1b451481a88071feadf251221af110ca8f00ce"}, - {file = "fonttools-4.51.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c5b8cab0c137ca229433570151b5c1fc6af212680b58b15abd797dcdd9dd5051"}, - {file = "fonttools-4.51.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:54dcf21a2f2d06ded676e3c3f9f74b2bafded3a8ff12f0983160b13e9f2fb4a7"}, - {file = "fonttools-4.51.0-cp39-cp39-win32.whl", hash = "sha256:0118ef998a0699a96c7b28457f15546815015a2710a1b23a7bf6c1be60c01636"}, - {file = "fonttools-4.51.0-cp39-cp39-win_amd64.whl", hash = "sha256:599bdb75e220241cedc6faebfafedd7670335d2e29620d207dd0378a4e9ccc5a"}, - {file = "fonttools-4.51.0-py3-none-any.whl", hash = "sha256:15c94eeef6b095831067f72c825eb0e2d48bb4cea0647c1b05c981ecba2bf39f"}, - {file = "fonttools-4.51.0.tar.gz", hash = "sha256:dc0673361331566d7a663d7ce0f6fdcbfbdc1f59c6e3ed1165ad7202ca183c68"}, + {file = "fonttools-4.53.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:52a6e0a7a0bf611c19bc8ec8f7592bdae79c8296c70eb05917fd831354699b20"}, + {file = "fonttools-4.53.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:099634631b9dd271d4a835d2b2a9e042ccc94ecdf7e2dd9f7f34f7daf333358d"}, + {file = "fonttools-4.53.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e40013572bfb843d6794a3ce076c29ef4efd15937ab833f520117f8eccc84fd6"}, + {file = "fonttools-4.53.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:715b41c3e231f7334cbe79dfc698213dcb7211520ec7a3bc2ba20c8515e8a3b5"}, + {file = "fonttools-4.53.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:74ae2441731a05b44d5988d3ac2cf784d3ee0a535dbed257cbfff4be8bb49eb9"}, + {file = "fonttools-4.53.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:95db0c6581a54b47c30860d013977b8a14febc206c8b5ff562f9fe32738a8aca"}, + {file = "fonttools-4.53.0-cp310-cp310-win32.whl", hash = "sha256:9cd7a6beec6495d1dffb1033d50a3f82dfece23e9eb3c20cd3c2444d27514068"}, + {file = "fonttools-4.53.0-cp310-cp310-win_amd64.whl", hash = "sha256:daaef7390e632283051e3cf3e16aff2b68b247e99aea916f64e578c0449c9c68"}, + {file = "fonttools-4.53.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a209d2e624ba492df4f3bfad5996d1f76f03069c6133c60cd04f9a9e715595ec"}, + {file = "fonttools-4.53.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4f520d9ac5b938e6494f58a25c77564beca7d0199ecf726e1bd3d56872c59749"}, + {file = "fonttools-4.53.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eceef49f457253000e6a2d0f7bd08ff4e9fe96ec4ffce2dbcb32e34d9c1b8161"}, + {file = "fonttools-4.53.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa1f3e34373aa16045484b4d9d352d4c6b5f9f77ac77a178252ccbc851e8b2ee"}, + {file = "fonttools-4.53.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:28d072169fe8275fb1a0d35e3233f6df36a7e8474e56cb790a7258ad822b6fd6"}, + {file = "fonttools-4.53.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4a2a6ba400d386e904fd05db81f73bee0008af37799a7586deaa4aef8cd5971e"}, + {file = "fonttools-4.53.0-cp311-cp311-win32.whl", hash = "sha256:bb7273789f69b565d88e97e9e1da602b4ee7ba733caf35a6c2affd4334d4f005"}, + {file = "fonttools-4.53.0-cp311-cp311-win_amd64.whl", hash = "sha256:9fe9096a60113e1d755e9e6bda15ef7e03391ee0554d22829aa506cdf946f796"}, + {file = "fonttools-4.53.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:d8f191a17369bd53a5557a5ee4bab91d5330ca3aefcdf17fab9a497b0e7cff7a"}, + {file = "fonttools-4.53.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:93156dd7f90ae0a1b0e8871032a07ef3178f553f0c70c386025a808f3a63b1f4"}, + {file = "fonttools-4.53.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bff98816cb144fb7b85e4b5ba3888a33b56ecef075b0e95b95bcd0a5fbf20f06"}, + {file = "fonttools-4.53.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:973d030180eca8255b1bce6ffc09ef38a05dcec0e8320cc9b7bcaa65346f341d"}, + {file = "fonttools-4.53.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c4ee5a24e281fbd8261c6ab29faa7fd9a87a12e8c0eed485b705236c65999109"}, + {file = "fonttools-4.53.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:bd5bc124fae781a4422f61b98d1d7faa47985f663a64770b78f13d2c072410c2"}, + {file = "fonttools-4.53.0-cp312-cp312-win32.whl", hash = "sha256:a239afa1126b6a619130909c8404070e2b473dd2b7fc4aacacd2e763f8597fea"}, + {file = "fonttools-4.53.0-cp312-cp312-win_amd64.whl", hash = "sha256:45b4afb069039f0366a43a5d454bc54eea942bfb66b3fc3e9a2c07ef4d617380"}, + {file = "fonttools-4.53.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:93bc9e5aaa06ff928d751dc6be889ff3e7d2aa393ab873bc7f6396a99f6fbb12"}, + {file = "fonttools-4.53.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2367d47816cc9783a28645bc1dac07f8ffc93e0f015e8c9fc674a5b76a6da6e4"}, + {file = "fonttools-4.53.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:907fa0b662dd8fc1d7c661b90782ce81afb510fc4b7aa6ae7304d6c094b27bce"}, + {file = "fonttools-4.53.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e0ad3c6ea4bd6a289d958a1eb922767233f00982cf0fe42b177657c86c80a8f"}, + {file = "fonttools-4.53.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:73121a9b7ff93ada888aaee3985a88495489cc027894458cb1a736660bdfb206"}, + {file = "fonttools-4.53.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:ee595d7ba9bba130b2bec555a40aafa60c26ce68ed0cf509983e0f12d88674fd"}, + {file = "fonttools-4.53.0-cp38-cp38-win32.whl", hash = "sha256:fca66d9ff2ac89b03f5aa17e0b21a97c21f3491c46b583bb131eb32c7bab33af"}, + {file = "fonttools-4.53.0-cp38-cp38-win_amd64.whl", hash = "sha256:31f0e3147375002aae30696dd1dc596636abbd22fca09d2e730ecde0baad1d6b"}, + {file = "fonttools-4.53.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7d6166192dcd925c78a91d599b48960e0a46fe565391c79fe6de481ac44d20ac"}, + {file = "fonttools-4.53.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ef50ec31649fbc3acf6afd261ed89d09eb909b97cc289d80476166df8438524d"}, + {file = "fonttools-4.53.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7f193f060391a455920d61684a70017ef5284ccbe6023bb056e15e5ac3de11d1"}, + {file = "fonttools-4.53.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba9f09ff17f947392a855e3455a846f9855f6cf6bec33e9a427d3c1d254c712f"}, + {file = "fonttools-4.53.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0c555e039d268445172b909b1b6bdcba42ada1cf4a60e367d68702e3f87e5f64"}, + {file = "fonttools-4.53.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5a4788036201c908079e89ae3f5399b33bf45b9ea4514913f4dbbe4fac08efe0"}, + {file = "fonttools-4.53.0-cp39-cp39-win32.whl", hash = "sha256:d1a24f51a3305362b94681120c508758a88f207fa0a681c16b5a4172e9e6c7a9"}, + {file = "fonttools-4.53.0-cp39-cp39-win_amd64.whl", hash = "sha256:1e677bfb2b4bd0e5e99e0f7283e65e47a9814b0486cb64a41adf9ef110e078f2"}, + {file = "fonttools-4.53.0-py3-none-any.whl", hash = "sha256:6b4f04b1fbc01a3569d63359f2227c89ab294550de277fd09d8fca6185669fa4"}, + {file = "fonttools-4.53.0.tar.gz", hash = "sha256:c93ed66d32de1559b6fc348838c7572d5c0ac1e4a258e76763a5caddd8944002"}, ] [package.extras] @@ -1201,13 +1179,13 @@ files = [ [[package]] name = "fsspec" -version = "2024.3.1" +version = "2024.6.0" description = "File-system specification" optional = false python-versions = ">=3.8" files = [ - {file = "fsspec-2024.3.1-py3-none-any.whl", hash = "sha256:918d18d41bf73f0e2b261824baeb1b124bcf771767e3a26425cd7dec3332f512"}, - {file = "fsspec-2024.3.1.tar.gz", hash = "sha256:f39780e282d7d117ffb42bb96992f8a90795e4d0fb0f661a70ca39fe9c43ded9"}, + {file = "fsspec-2024.6.0-py3-none-any.whl", hash = "sha256:58d7122eb8a1a46f7f13453187bfea4972d66bf01618d37366521b1998034cee"}, + {file = "fsspec-2024.6.0.tar.gz", hash = "sha256:f579960a56e6d8038a9efc8f9c77279ec12e6299aa86b0769a7e9c46b94527c2"}, ] [package.extras] @@ -1215,7 +1193,8 @@ abfs = ["adlfs"] adl = ["adlfs"] arrow = ["pyarrow (>=1)"] dask = ["dask", "distributed"] -devel = ["pytest", "pytest-cov"] +dev = ["pre-commit", "ruff"] +doc = ["numpydoc", "sphinx", "sphinx-design", "sphinx-rtd-theme", "yarl"] dropbox = ["dropbox", "dropboxdrivefs", "requests"] full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "dask", "distributed", "dropbox", "dropboxdrivefs", "fusepy", "gcsfs", "libarchive-c", "ocifs", "panel", "paramiko", "pyarrow (>=1)", "pygit2", "requests", "s3fs", "smbprotocol", "tqdm"] fuse = ["fusepy"] @@ -1232,6 +1211,9 @@ s3 = ["s3fs"] sftp = ["paramiko"] smb = ["smbprotocol"] ssh = ["paramiko"] +test = ["aiohttp (!=4.0.0a0,!=4.0.0a1)", "numpy", "pytest", "pytest-asyncio (!=0.22.0)", "pytest-benchmark", "pytest-cov", "pytest-mock", "pytest-recording", "pytest-rerunfailures", "requests"] +test-downstream = ["aiobotocore (>=2.5.4,<3.0.0)", "dask-expr", "dask[dataframe,test]", "moto[server] (>4,<5)", "pytest-timeout", "xarray"] +test-full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "cloudpickle", "dask", "distributed", "dropbox", "dropboxdrivefs", "fastparquet", "fusepy", "gcsfs", "jinja2", "kerchunk", "libarchive-c", "lz4", "notebook", "numpy", "ocifs", "pandas", "panel", "paramiko", "pyarrow", "pyarrow (>=1)", "pyftpdlib", "pygit2", "pytest", "pytest-asyncio (!=0.22.0)", "pytest-benchmark", "pytest-cov", "pytest-mock", "pytest-recording", "pytest-rerunfailures", "python-snappy", "requests", "smbprotocol", "tqdm", "urllib3", "zarr", "zstandard"] tqdm = ["tqdm"] [[package]] @@ -1253,13 +1235,13 @@ dev = ["flake8", "markdown", "twine", "wheel"] [[package]] name = "griffe" -version = "0.45.0" +version = "0.45.3" description = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." optional = false python-versions = ">=3.8" files = [ - {file = "griffe-0.45.0-py3-none-any.whl", hash = "sha256:90fe5c90e1b0ca7dd6fee78f9009f4e01b37dbc9ab484a9b2c1578915db1e571"}, - {file = "griffe-0.45.0.tar.gz", hash = "sha256:85cb2868d026ea51c89bdd589ad3ccc94abc5bd8d5d948e3d4450778a2a05b4a"}, + {file = "griffe-0.45.3-py3-none-any.whl", hash = "sha256:ed1481a680ae3e28f91a06e0d8a51a5c9b97555aa2527abc2664447cc22337d6"}, + {file = "griffe-0.45.3.tar.gz", hash = "sha256:02ee71cc1a5035864b97bd0dbfff65c33f6f2c8854d3bd48a791905c2b8a44b9"}, ] [package.dependencies] @@ -1480,42 +1462,40 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio [[package]] name = "ipython" -version = "8.12.3" +version = "8.18.1" description = "IPython: Productive Interactive Computing" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "ipython-8.12.3-py3-none-any.whl", hash = "sha256:b0340d46a933d27c657b211a329d0be23793c36595acf9e6ef4164bc01a1804c"}, - {file = "ipython-8.12.3.tar.gz", hash = "sha256:3910c4b54543c2ad73d06579aa771041b7d5707b033bd488669b4cf544e3b363"}, + {file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"}, + {file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"}, ] [package.dependencies] -appnope = {version = "*", markers = "sys_platform == \"darwin\""} -backcall = "*" colorama = {version = "*", markers = "sys_platform == \"win32\""} decorator = "*" +exceptiongroup = {version = "*", markers = "python_version < \"3.11\""} jedi = ">=0.16" matplotlib-inline = "*" pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} -pickleshare = "*" -prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" +prompt-toolkit = ">=3.0.41,<3.1.0" pygments = ">=2.4.0" stack-data = "*" traitlets = ">=5" typing-extensions = {version = "*", markers = "python_version < \"3.10\""} [package.extras] -all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +all = ["black", "curio", "docrepr", "exceptiongroup", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] black = ["black"] -doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +doc = ["docrepr", "exceptiongroup", "ipykernel", "matplotlib", "pickleshare", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio (<0.22)", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] kernel = ["ipykernel"] nbconvert = ["nbconvert"] nbformat = ["nbformat"] notebook = ["ipywidgets", "notebook"] parallel = ["ipyparallel"] qtconsole = ["qtconsole"] -test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] -test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] +test = ["pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath", "trio"] [[package]] name = "ipywidgets" @@ -1612,13 +1592,13 @@ files = [ [[package]] name = "jsonpointer" -version = "2.4" +version = "3.0.0" description = "Identify specific nodes in a JSON document (RFC 6901)" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +python-versions = ">=3.7" files = [ - {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, - {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, + {file = "jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942"}, + {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"}, ] [[package]] @@ -1666,13 +1646,13 @@ referencing = ">=0.31.0" [[package]] name = "jupyter-client" -version = "8.6.1" +version = "8.6.2" description = "Jupyter protocol implementation and client libraries" optional = false python-versions = ">=3.8" files = [ - {file = "jupyter_client-8.6.1-py3-none-any.whl", hash = "sha256:3b7bd22f058434e3b9a7ea4b1500ed47de2713872288c0d511d19926f99b459f"}, - {file = "jupyter_client-8.6.1.tar.gz", hash = "sha256:e842515e2bab8e19186d89fdfea7abd15e39dd581f94e399f00e2af5a1652d3f"}, + {file = "jupyter_client-8.6.2-py3-none-any.whl", hash = "sha256:50cbc5c66fd1b8f65ecb66bc490ab73217993632809b6e505687de18e9dea39f"}, + {file = "jupyter_client-8.6.2.tar.gz", hash = "sha256:2bda14d55ee5ba58552a8c53ae43d215ad9868853489213f37da060ced54d8df"}, ] [package.dependencies] @@ -1685,7 +1665,7 @@ traitlets = ">=5.3" [package.extras] docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] [[package]] name = "jupyter-core" @@ -1749,13 +1729,13 @@ jupyter-server = ">=1.1.2" [[package]] name = "jupyter-server" -version = "2.14.0" +version = "2.14.1" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." optional = false python-versions = ">=3.8" files = [ - {file = "jupyter_server-2.14.0-py3-none-any.whl", hash = "sha256:fb6be52c713e80e004fac34b35a0990d6d36ba06fd0a2b2ed82b899143a64210"}, - {file = "jupyter_server-2.14.0.tar.gz", hash = "sha256:659154cea512083434fd7c93b7fe0897af7a2fd0b9dd4749282b42eaac4ae677"}, + {file = "jupyter_server-2.14.1-py3-none-any.whl", hash = "sha256:16f7177c3a4ea8fe37784e2d31271981a812f0b2874af17339031dc3510cc2a5"}, + {file = "jupyter_server-2.14.1.tar.gz", hash = "sha256:12558d158ec7a0653bf96cc272bc7ad79e0127d503b982ed144399346694f726"}, ] [package.dependencies] @@ -1780,7 +1760,7 @@ traitlets = ">=5.6.0" websocket-client = ">=1.7" [package.extras] -docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +docs = ["ipykernel", "jinja2", "jupyter-client", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0,<9)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.7)", "pytest-timeout", "requests"] [[package]] @@ -1804,13 +1784,13 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.2.1" +version = "4.2.2" description = "JupyterLab computational environment" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab-4.2.1-py3-none-any.whl", hash = "sha256:6ac6e3827b3c890e6e549800e8a4f4aaea6a69321e2240007902aa7a0c56a8e4"}, - {file = "jupyterlab-4.2.1.tar.gz", hash = "sha256:a10fb71085a6900820c62d43324005046402ffc8f0fde696103e37238a839507"}, + {file = "jupyterlab-4.2.2-py3-none-any.whl", hash = "sha256:59ee9b839f43308c3dfd55d72d1f1a299ed42a7f91f2d1afe9c12a783f9e525f"}, + {file = "jupyterlab-4.2.2.tar.gz", hash = "sha256:a534b6a25719a92a40d514fb133a9fe8f0d9981b0bbce5d8a5fcaa33344a3038"}, ] [package.dependencies] @@ -1825,6 +1805,7 @@ jupyter-server = ">=2.4.0,<3" jupyterlab-server = ">=2.27.1,<3" notebook-shim = ">=0.2" packaging = "*" +setuptools = ">=40.1.0" tomli = {version = ">=1.2.2", markers = "python_version < \"3.11\""} tornado = ">=6.2.0" traitlets = "*" @@ -1849,13 +1830,13 @@ files = [ [[package]] name = "jupyterlab-server" -version = "2.27.1" +version = "2.27.2" description = "A set of server components for JupyterLab and JupyterLab like applications." optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab_server-2.27.1-py3-none-any.whl", hash = "sha256:f5e26156e5258b24d532c84e7c74cc212e203bff93eb856f81c24c16daeecc75"}, - {file = "jupyterlab_server-2.27.1.tar.gz", hash = "sha256:097b5ac709b676c7284ac9c5e373f11930a561f52cd5a86e4fc7e5a9c8a8631d"}, + {file = "jupyterlab_server-2.27.2-py3-none-any.whl", hash = "sha256:54aa2d64fd86383b5438d9f0c032f043c4d8c0264b8af9f60bd061157466ea43"}, + {file = "jupyterlab_server-2.27.2.tar.gz", hash = "sha256:15cbb349dc45e954e09bacf81b9f9bcb10815ff660fb2034ecd7417db3a7ea27"}, ] [package.dependencies] @@ -2601,6 +2582,25 @@ files = [ {file = "mkdocs_material_extensions-1.3.1.tar.gz", hash = "sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443"}, ] +[[package]] +name = "mkdocs-redirects" +version = "1.2.1" +description = "A MkDocs plugin for dynamic page redirects to prevent broken links." +optional = false +python-versions = ">=3.6" +files = [ + {file = "mkdocs-redirects-1.2.1.tar.gz", hash = "sha256:9420066d70e2a6bb357adf86e67023dcdca1857f97f07c7fe450f8f1fb42f861"}, + {file = "mkdocs_redirects-1.2.1-py3-none-any.whl", hash = "sha256:497089f9e0219e7389304cffefccdfa1cac5ff9509f2cb706f4c9b221726dffb"}, +] + +[package.dependencies] +mkdocs = ">=1.1.1" + +[package.extras] +dev = ["autoflake", "black", "isort", "pytest", "twine (>=1.13.0)"] +release = ["twine (>=1.13.0)"] +test = ["autoflake", "black", "isort", "pytest"] + [[package]] name = "mkdocstrings" version = "0.25.1" @@ -2632,18 +2632,18 @@ python-legacy = ["mkdocstrings-python-legacy (>=0.2.1)"] [[package]] name = "mkdocstrings-python" -version = "1.10.0" +version = "1.10.3" description = "A Python handler for mkdocstrings." optional = false python-versions = ">=3.8" files = [ - {file = "mkdocstrings_python-1.10.0-py3-none-any.whl", hash = "sha256:ba833fbd9d178a4b9d5cb2553a4df06e51dc1f51e41559a4d2398c16a6f69ecc"}, - {file = "mkdocstrings_python-1.10.0.tar.gz", hash = "sha256:71678fac657d4d2bb301eed4e4d2d91499c095fd1f8a90fa76422a87a5693828"}, + {file = "mkdocstrings_python-1.10.3-py3-none-any.whl", hash = "sha256:11ff6d21d3818fb03af82c3ea6225b1534837e17f790aa5f09626524171f949b"}, + {file = "mkdocstrings_python-1.10.3.tar.gz", hash = "sha256:321cf9c732907ab2b1fedaafa28765eaa089d89320f35f7206d00ea266889d03"}, ] [package.dependencies] griffe = ">=0.44" -mkdocstrings = ">=0.24.2" +mkdocstrings = ">=0.25" [[package]] name = "multidict" @@ -2907,18 +2907,15 @@ files = [ [[package]] name = "nodeenv" -version = "1.8.0" +version = "1.9.1" description = "Node.js virtual environment builder" optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ - {file = "nodeenv-1.8.0-py2.py3-none-any.whl", hash = "sha256:df865724bb3c3adc86b3876fa209771517b0cfe596beff01a92700e0e8be4cec"}, - {file = "nodeenv-1.8.0.tar.gz", hash = "sha256:d51e0c37e64fbf47d017feac3145cdbb58836d7eee8c6f6d3b6880c5456227d2"}, + {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, + {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, ] -[package.dependencies] -setuptools = "*" - [[package]] name = "notebook-shim" version = "0.2.4" @@ -3034,13 +3031,13 @@ files = [ [[package]] name = "packaging" -version = "24.0" +version = "24.1" description = "Core utilities for Python packages" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "packaging-24.0-py3-none-any.whl", hash = "sha256:2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"}, - {file = "packaging-24.0.tar.gz", hash = "sha256:eb82c5e3e56209074766e6885bb04b8c38a0c015d0a30036ebe7ece34c9989e9"}, + {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, + {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, ] [[package]] @@ -3055,70 +3052,76 @@ files = [ [[package]] name = "pandas" -version = "2.0.3" +version = "2.2.2" description = "Powerful data structures for data analysis, time series, and statistics" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, - {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, - {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, - {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, - {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, - {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, - {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, - {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, - {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, - {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, - {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, + {file = "pandas-2.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90c6fca2acf139569e74e8781709dccb6fe25940488755716d1d354d6bc58bce"}, + {file = "pandas-2.2.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7adfc142dac335d8c1e0dcbd37eb8617eac386596eb9e1a1b77791cf2498238"}, + {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4abfe0be0d7221be4f12552995e58723c7422c80a659da13ca382697de830c08"}, + {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8635c16bf3d99040fdf3ca3db669a7250ddf49c55dc4aa8fe0ae0fa8d6dcc1f0"}, + {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:40ae1dffb3967a52203105a077415a86044a2bea011b5f321c6aa64b379a3f51"}, + {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8e5a0b00e1e56a842f922e7fae8ae4077aee4af0acb5ae3622bd4b4c30aedf99"}, + {file = "pandas-2.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:ddf818e4e6c7c6f4f7c8a12709696d193976b591cc7dc50588d3d1a6b5dc8772"}, + {file = "pandas-2.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:696039430f7a562b74fa45f540aca068ea85fa34c244d0deee539cb6d70aa288"}, + {file = "pandas-2.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8e90497254aacacbc4ea6ae5e7a8cd75629d6ad2b30025a4a8b09aa4faf55151"}, + {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58b84b91b0b9f4bafac2a0ac55002280c094dfc6402402332c0913a59654ab2b"}, + {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2123dc9ad6a814bcdea0f099885276b31b24f7edf40f6cdbc0912672e22eee"}, + {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2925720037f06e89af896c70bca73459d7e6a4be96f9de79e2d440bd499fe0db"}, + {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0cace394b6ea70c01ca1595f839cf193df35d1575986e484ad35c4aeae7266c1"}, + {file = "pandas-2.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:873d13d177501a28b2756375d59816c365e42ed8417b41665f346289adc68d24"}, + {file = "pandas-2.2.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9dfde2a0ddef507a631dc9dc4af6a9489d5e2e740e226ad426a05cabfbd7c8ef"}, + {file = "pandas-2.2.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b79011ff7a0f4b1d6da6a61aa1aa604fb312d6647de5bad20013682d1429ce"}, + {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cb51fe389360f3b5a4d57dbd2848a5f033350336ca3b340d1c53a1fad33bcad"}, + {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee3a87076c0756de40b05c5e9a6069c035ba43e8dd71c379e68cab2c20f16ad"}, + {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3e374f59e440d4ab45ca2fffde54b81ac3834cf5ae2cdfa69c90bc03bde04d76"}, + {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:43498c0bdb43d55cb162cdc8c06fac328ccb5d2eabe3cadeb3529ae6f0517c32"}, + {file = "pandas-2.2.2-cp312-cp312-win_amd64.whl", hash = "sha256:d187d355ecec3629624fccb01d104da7d7f391db0311145817525281e2804d23"}, + {file = "pandas-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0ca6377b8fca51815f382bd0b697a0814c8bda55115678cbc94c30aacbb6eff2"}, + {file = "pandas-2.2.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9057e6aa78a584bc93a13f0a9bf7e753a5e9770a30b4d758b8d5f2a62a9433cd"}, + {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:001910ad31abc7bf06f49dcc903755d2f7f3a9186c0c040b827e522e9cef0863"}, + {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66b479b0bd07204e37583c191535505410daa8df638fd8e75ae1b383851fe921"}, + {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a77e9d1c386196879aa5eb712e77461aaee433e54c68cf253053a73b7e49c33a"}, + {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92fd6b027924a7e178ac202cfbe25e53368db90d56872d20ffae94b96c7acc57"}, + {file = "pandas-2.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:640cef9aa381b60e296db324337a554aeeb883ead99dc8f6c18e81a93942f5f4"}, + {file = "pandas-2.2.2.tar.gz", hash = "sha256:9e79019aba43cb4fda9e4d983f8e88ca0373adbb697ae9c6c43093218de28b54"}, ] [package.dependencies] numpy = [ - {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, + {version = ">=1.22.4", markers = "python_version < \"3.11\""}, + {version = ">=1.23.2", markers = "python_version == \"3.11\""}, + {version = ">=1.26.0", markers = "python_version >= \"3.12\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" -tzdata = ">=2022.1" +tzdata = ">=2022.7" [package.extras] -all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] -aws = ["s3fs (>=2021.08.0)"] -clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] -compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] -computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] -excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] -feather = ["pyarrow (>=7.0.0)"] -fss = ["fsspec (>=2021.07.0)"] -gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] -hdf5 = ["tables (>=3.6.1)"] -html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] -mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] -output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] -parquet = ["pyarrow (>=7.0.0)"] -performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] -plot = ["matplotlib (>=3.6.1)"] -postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] -spss = ["pyreadstat (>=1.1.2)"] -sql-other = ["SQLAlchemy (>=1.4.16)"] -test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] -xml = ["lxml (>=4.6.3)"] +all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"] +aws = ["s3fs (>=2022.11.0)"] +clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"] +compression = ["zstandard (>=0.19.0)"] +computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"] +feather = ["pyarrow (>=10.0.1)"] +fss = ["fsspec (>=2022.11.0)"] +gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"] +hdf5 = ["tables (>=3.8.0)"] +html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"] +mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"] +parquet = ["pyarrow (>=10.0.1)"] +performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"] +plot = ["matplotlib (>=3.6.3)"] +postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"] +pyarrow = ["pyarrow (>=10.0.1)"] +spss = ["pyreadstat (>=1.2.0)"] +sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.9.2)"] [[package]] name = "pandocfilters" @@ -3148,13 +3151,13 @@ testing = ["docopt", "pytest"] [[package]] name = "partd" -version = "1.4.1" +version = "1.4.2" description = "Appendable key-value storage" optional = true -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "partd-1.4.1-py3-none-any.whl", hash = "sha256:27e766663d36c161e2827aa3e28541c992f0b9527d3cca047e13fb3acdb989e6"}, - {file = "partd-1.4.1.tar.gz", hash = "sha256:56c25dd49e6fea5727e731203c466c6e092f308d8f0024e199d02f6aa2167f67"}, + {file = "partd-1.4.2-py3-none-any.whl", hash = "sha256:978e4ac767ec4ba5b86c6eaa52e5a2a3bc748a2ca839e8cc798f1cc6ce6efb0f"}, + {file = "partd-1.4.2.tar.gz", hash = "sha256:d022c33afbdc8405c226621b015e8067888173d85f7f5ecebb3cafed9a20f02c"}, ] [package.dependencies] @@ -3162,7 +3165,7 @@ locket = "*" toolz = "*" [package.extras] -complete = ["blosc", "numpy (>=1.9.0)", "pandas (>=0.19.0)", "pyzmq"] +complete = ["blosc", "numpy (>=1.20.0)", "pandas (>=1.3)", "pyzmq"] [[package]] name = "pathspec" @@ -3189,17 +3192,6 @@ files = [ [package.dependencies] ptyprocess = ">=0.5" -[[package]] -name = "pickleshare" -version = "0.7.5" -description = "Tiny 'shelve'-like database with concurrency support" -optional = false -python-versions = "*" -files = [ - {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, - {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, -] - [[package]] name = "pillow" version = "10.3.0" @@ -3288,13 +3280,13 @@ xmp = ["defusedxml"] [[package]] name = "platformdirs" -version = "4.2.1" +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.1-py3-none-any.whl", hash = "sha256:17d5a1161b3fd67b390023cb2d3b026bbd40abde6fdb052dfbd3a29c3ba22ee1"}, - {file = "platformdirs-4.2.1.tar.gz", hash = "sha256:031cd18d4ec63ec53e82dceaac0417d218a6863f7745dfcc9efe7793b7039bdf"}, + {file = "platformdirs-4.2.2-py3-none-any.whl", hash = "sha256:2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee"}, + {file = "platformdirs-4.2.2.tar.gz", hash = "sha256:38b7b51f512eed9e84a22788b4bce1de17c0adb134d6becb09836e37d8654cd3"}, ] [package.extras] @@ -3367,13 +3359,13 @@ twisted = ["twisted"] [[package]] name = "prompt-toolkit" -version = "3.0.36" +version = "3.0.47" description = "Library for building powerful interactive command lines in Python" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7.0" files = [ - {file = "prompt_toolkit-3.0.36-py3-none-any.whl", hash = "sha256:aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305"}, - {file = "prompt_toolkit-3.0.36.tar.gz", hash = "sha256:3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63"}, + {file = "prompt_toolkit-3.0.47-py3-none-any.whl", hash = "sha256:0d7bfa67001d5e39d02c224b663abc33687405033a8c422d0d675a5a13361d10"}, + {file = "prompt_toolkit-3.0.47.tar.gz", hash = "sha256:1e1b29cb58080b1e69f207c893a1a7bf16d127a5c30c9d17a25a5d77792e5360"}, ] [package.dependencies] @@ -3445,18 +3437,18 @@ files = [ [[package]] name = "pydantic" -version = "2.7.1" +version = "2.7.3" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.7.1-py3-none-any.whl", hash = "sha256:e029badca45266732a9a79898a15ae2e8b14840b1eabbb25844be28f0b33f3d5"}, - {file = "pydantic-2.7.1.tar.gz", hash = "sha256:e9dbb5eada8abe4d9ae5f46b9939aead650cd2b68f249bb3a8139dbe125803cc"}, + {file = "pydantic-2.7.3-py3-none-any.whl", hash = "sha256:ea91b002777bf643bb20dd717c028ec43216b24a6001a280f83877fd2655d0b4"}, + {file = "pydantic-2.7.3.tar.gz", hash = "sha256:c46c76a40bb1296728d7a8b99aa73dd70a48c3510111ff290034f860c99c419e"}, ] [package.dependencies] annotated-types = ">=0.4.0" -pydantic-core = "2.18.2" +pydantic-core = "2.18.4" typing-extensions = ">=4.6.1" [package.extras] @@ -3464,90 +3456,90 @@ email = ["email-validator (>=2.0.0)"] [[package]] name = "pydantic-core" -version = "2.18.2" +version = "2.18.4" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.18.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:9e08e867b306f525802df7cd16c44ff5ebbe747ff0ca6cf3fde7f36c05a59a81"}, - {file = "pydantic_core-2.18.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f0a21cbaa69900cbe1a2e7cad2aa74ac3cf21b10c3efb0fa0b80305274c0e8a2"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0680b1f1f11fda801397de52c36ce38ef1c1dc841a0927a94f226dea29c3ae3d"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:95b9d5e72481d3780ba3442eac863eae92ae43a5f3adb5b4d0a1de89d42bb250"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4fcf5cd9c4b655ad666ca332b9a081112cd7a58a8b5a6ca7a3104bc950f2038"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b5155ff768083cb1d62f3e143b49a8a3432e6789a3abee8acd005c3c7af1c74"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:553ef617b6836fc7e4df130bb851e32fe357ce36336d897fd6646d6058d980af"}, - {file = "pydantic_core-2.18.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b89ed9eb7d616ef5714e5590e6cf7f23b02d0d539767d33561e3675d6f9e3857"}, - {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:75f7e9488238e920ab6204399ded280dc4c307d034f3924cd7f90a38b1829563"}, - {file = "pydantic_core-2.18.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ef26c9e94a8c04a1b2924149a9cb081836913818e55681722d7f29af88fe7b38"}, - {file = "pydantic_core-2.18.2-cp310-none-win32.whl", hash = "sha256:182245ff6b0039e82b6bb585ed55a64d7c81c560715d1bad0cbad6dfa07b4027"}, - {file = "pydantic_core-2.18.2-cp310-none-win_amd64.whl", hash = "sha256:e23ec367a948b6d812301afc1b13f8094ab7b2c280af66ef450efc357d2ae543"}, - {file = "pydantic_core-2.18.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:219da3f096d50a157f33645a1cf31c0ad1fe829a92181dd1311022f986e5fbe3"}, - {file = "pydantic_core-2.18.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:cc1cfd88a64e012b74e94cd00bbe0f9c6df57049c97f02bb07d39e9c852e19a4"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:05b7133a6e6aeb8df37d6f413f7705a37ab4031597f64ab56384c94d98fa0e90"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:224c421235f6102e8737032483f43c1a8cfb1d2f45740c44166219599358c2cd"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b14d82cdb934e99dda6d9d60dc84a24379820176cc4a0d123f88df319ae9c150"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2728b01246a3bba6de144f9e3115b532ee44bd6cf39795194fb75491824a1413"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:470b94480bb5ee929f5acba6995251ada5e059a5ef3e0dfc63cca287283ebfa6"}, - {file = "pydantic_core-2.18.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:997abc4df705d1295a42f95b4eec4950a37ad8ae46d913caeee117b6b198811c"}, - {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75250dbc5290e3f1a0f4618db35e51a165186f9034eff158f3d490b3fed9f8a0"}, - {file = "pydantic_core-2.18.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:4456f2dca97c425231d7315737d45239b2b51a50dc2b6f0c2bb181fce6207664"}, - {file = "pydantic_core-2.18.2-cp311-none-win32.whl", hash = "sha256:269322dcc3d8bdb69f054681edff86276b2ff972447863cf34c8b860f5188e2e"}, - {file = "pydantic_core-2.18.2-cp311-none-win_amd64.whl", hash = "sha256:800d60565aec896f25bc3cfa56d2277d52d5182af08162f7954f938c06dc4ee3"}, - {file = "pydantic_core-2.18.2-cp311-none-win_arm64.whl", hash = "sha256:1404c69d6a676245199767ba4f633cce5f4ad4181f9d0ccb0577e1f66cf4c46d"}, - {file = "pydantic_core-2.18.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:fb2bd7be70c0fe4dfd32c951bc813d9fe6ebcbfdd15a07527796c8204bd36242"}, - {file = "pydantic_core-2.18.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6132dd3bd52838acddca05a72aafb6eab6536aa145e923bb50f45e78b7251043"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7d904828195733c183d20a54230c0df0eb46ec746ea1a666730787353e87182"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c9bd70772c720142be1020eac55f8143a34ec9f82d75a8e7a07852023e46617f"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b8ed04b3582771764538f7ee7001b02e1170223cf9b75dff0bc698fadb00cf3"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e6dac87ddb34aaec85f873d737e9d06a3555a1cc1a8e0c44b7f8d5daeb89d86f"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ca4ae5a27ad7a4ee5170aebce1574b375de390bc01284f87b18d43a3984df72"}, - {file = "pydantic_core-2.18.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:886eec03591b7cf058467a70a87733b35f44707bd86cf64a615584fd72488b7c"}, - {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ca7b0c1f1c983e064caa85f3792dd2fe3526b3505378874afa84baf662e12241"}, - {file = "pydantic_core-2.18.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4b4356d3538c3649337df4074e81b85f0616b79731fe22dd11b99499b2ebbdf3"}, - {file = "pydantic_core-2.18.2-cp312-none-win32.whl", hash = "sha256:8b172601454f2d7701121bbec3425dd71efcb787a027edf49724c9cefc14c038"}, - {file = "pydantic_core-2.18.2-cp312-none-win_amd64.whl", hash = "sha256:b1bd7e47b1558ea872bd16c8502c414f9e90dcf12f1395129d7bb42a09a95438"}, - {file = "pydantic_core-2.18.2-cp312-none-win_arm64.whl", hash = "sha256:98758d627ff397e752bc339272c14c98199c613f922d4a384ddc07526c86a2ec"}, - {file = "pydantic_core-2.18.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:9fdad8e35f278b2c3eb77cbdc5c0a49dada440657bf738d6905ce106dc1de439"}, - {file = "pydantic_core-2.18.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1d90c3265ae107f91a4f279f4d6f6f1d4907ac76c6868b27dc7fb33688cfb347"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:390193c770399861d8df9670fb0d1874f330c79caaca4642332df7c682bf6b91"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:82d5d4d78e4448683cb467897fe24e2b74bb7b973a541ea1dcfec1d3cbce39fb"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4774f3184d2ef3e14e8693194f661dea5a4d6ca4e3dc8e39786d33a94865cefd"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d4d938ec0adf5167cb335acb25a4ee69a8107e4984f8fbd2e897021d9e4ca21b"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e0e8b1be28239fc64a88a8189d1df7fad8be8c1ae47fcc33e43d4be15f99cc70"}, - {file = "pydantic_core-2.18.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:868649da93e5a3d5eacc2b5b3b9235c98ccdbfd443832f31e075f54419e1b96b"}, - {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:78363590ef93d5d226ba21a90a03ea89a20738ee5b7da83d771d283fd8a56761"}, - {file = "pydantic_core-2.18.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:852e966fbd035a6468fc0a3496589b45e2208ec7ca95c26470a54daed82a0788"}, - {file = "pydantic_core-2.18.2-cp38-none-win32.whl", hash = "sha256:6a46e22a707e7ad4484ac9ee9f290f9d501df45954184e23fc29408dfad61350"}, - {file = "pydantic_core-2.18.2-cp38-none-win_amd64.whl", hash = "sha256:d91cb5ea8b11607cc757675051f61b3d93f15eca3cefb3e6c704a5d6e8440f4e"}, - {file = "pydantic_core-2.18.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:ae0a8a797a5e56c053610fa7be147993fe50960fa43609ff2a9552b0e07013e8"}, - {file = "pydantic_core-2.18.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:042473b6280246b1dbf530559246f6842b56119c2926d1e52b631bdc46075f2a"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a388a77e629b9ec814c1b1e6b3b595fe521d2cdc625fcca26fbc2d44c816804"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25add29b8f3b233ae90ccef2d902d0ae0432eb0d45370fe315d1a5cf231004b"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f459a5ce8434614dfd39bbebf1041952ae01da6bed9855008cb33b875cb024c0"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eff2de745698eb46eeb51193a9f41d67d834d50e424aef27df2fcdee1b153845"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8309f67285bdfe65c372ea3722b7a5642680f3dba538566340a9d36e920b5f0"}, - {file = "pydantic_core-2.18.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f93a8a2e3938ff656a7c1bc57193b1319960ac015b6e87d76c76bf14fe0244b4"}, - {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:22057013c8c1e272eb8d0eebc796701167d8377441ec894a8fed1af64a0bf399"}, - {file = "pydantic_core-2.18.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cfeecd1ac6cc1fb2692c3d5110781c965aabd4ec5d32799773ca7b1456ac636b"}, - {file = "pydantic_core-2.18.2-cp39-none-win32.whl", hash = "sha256:0d69b4c2f6bb3e130dba60d34c0845ba31b69babdd3f78f7c0c8fae5021a253e"}, - {file = "pydantic_core-2.18.2-cp39-none-win_amd64.whl", hash = "sha256:d9319e499827271b09b4e411905b24a426b8fb69464dfa1696258f53a3334641"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a1874c6dd4113308bd0eb568418e6114b252afe44319ead2b4081e9b9521fe75"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:ccdd111c03bfd3666bd2472b674c6899550e09e9f298954cfc896ab92b5b0e6d"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e18609ceaa6eed63753037fc06ebb16041d17d28199ae5aba0052c51449650a9"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e5c584d357c4e2baf0ff7baf44f4994be121e16a2c88918a5817331fc7599d7"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43f0f463cf89ace478de71a318b1b4f05ebc456a9b9300d027b4b57c1a2064fb"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e1b395e58b10b73b07b7cf740d728dd4ff9365ac46c18751bf8b3d8cca8f625a"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0098300eebb1c837271d3d1a2cd2911e7c11b396eac9661655ee524a7f10587b"}, - {file = "pydantic_core-2.18.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:36789b70d613fbac0a25bb07ab3d9dba4d2e38af609c020cf4d888d165ee0bf3"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:3f9a801e7c8f1ef8718da265bba008fa121243dfe37c1cea17840b0944dfd72c"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:3a6515ebc6e69d85502b4951d89131ca4e036078ea35533bb76327f8424531ce"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20aca1e2298c56ececfd8ed159ae4dde2df0781988c97ef77d5c16ff4bd5b400"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:223ee893d77a310a0391dca6df00f70bbc2f36a71a895cecd9a0e762dc37b349"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2334ce8c673ee93a1d6a65bd90327588387ba073c17e61bf19b4fd97d688d63c"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:cbca948f2d14b09d20268cda7b0367723d79063f26c4ffc523af9042cad95592"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:b3ef08e20ec49e02d5c6717a91bb5af9b20f1805583cb0adfe9ba2c6b505b5ae"}, - {file = "pydantic_core-2.18.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6fdc8627910eed0c01aed6a390a252fe3ea6d472ee70fdde56273f198938374"}, - {file = "pydantic_core-2.18.2.tar.gz", hash = "sha256:2e29d20810dfc3043ee13ac7d9e25105799817683348823f305ab3f349b9386e"}, + {file = "pydantic_core-2.18.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:f76d0ad001edd426b92233d45c746fd08f467d56100fd8f30e9ace4b005266e4"}, + {file = "pydantic_core-2.18.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:59ff3e89f4eaf14050c8022011862df275b552caef8082e37b542b066ce1ff26"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a55b5b16c839df1070bc113c1f7f94a0af4433fcfa1b41799ce7606e5c79ce0a"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4d0dcc59664fcb8974b356fe0a18a672d6d7cf9f54746c05f43275fc48636851"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8951eee36c57cd128f779e641e21eb40bc5073eb28b2d23f33eb0ef14ffb3f5d"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4701b19f7e3a06ea655513f7938de6f108123bf7c86bbebb1196eb9bd35cf724"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e00a3f196329e08e43d99b79b286d60ce46bed10f2280d25a1718399457e06be"}, + {file = "pydantic_core-2.18.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:97736815b9cc893b2b7f663628e63f436018b75f44854c8027040e05230eeddb"}, + {file = "pydantic_core-2.18.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6891a2ae0e8692679c07728819b6e2b822fb30ca7445f67bbf6509b25a96332c"}, + {file = "pydantic_core-2.18.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bc4ff9805858bd54d1a20efff925ccd89c9d2e7cf4986144b30802bf78091c3e"}, + {file = "pydantic_core-2.18.4-cp310-none-win32.whl", hash = "sha256:1b4de2e51bbcb61fdebd0ab86ef28062704f62c82bbf4addc4e37fa4b00b7cbc"}, + {file = "pydantic_core-2.18.4-cp310-none-win_amd64.whl", hash = "sha256:6a750aec7bf431517a9fd78cb93c97b9b0c496090fee84a47a0d23668976b4b0"}, + {file = "pydantic_core-2.18.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:942ba11e7dfb66dc70f9ae66b33452f51ac7bb90676da39a7345e99ffb55402d"}, + {file = "pydantic_core-2.18.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b2ebef0e0b4454320274f5e83a41844c63438fdc874ea40a8b5b4ecb7693f1c4"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a642295cd0c8df1b86fc3dced1d067874c353a188dc8e0f744626d49e9aa51c4"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f09baa656c904807e832cf9cce799c6460c450c4ad80803517032da0cd062e2"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:98906207f29bc2c459ff64fa007afd10a8c8ac080f7e4d5beff4c97086a3dabd"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:19894b95aacfa98e7cb093cd7881a0c76f55731efad31073db4521e2b6ff5b7d"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0fbbdc827fe5e42e4d196c746b890b3d72876bdbf160b0eafe9f0334525119c8"}, + {file = "pydantic_core-2.18.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f85d05aa0918283cf29a30b547b4df2fbb56b45b135f9e35b6807cb28bc47951"}, + {file = "pydantic_core-2.18.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e85637bc8fe81ddb73fda9e56bab24560bdddfa98aa64f87aaa4e4b6730c23d2"}, + {file = "pydantic_core-2.18.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2f5966897e5461f818e136b8451d0551a2e77259eb0f73a837027b47dc95dab9"}, + {file = "pydantic_core-2.18.4-cp311-none-win32.whl", hash = "sha256:44c7486a4228413c317952e9d89598bcdfb06399735e49e0f8df643e1ccd0558"}, + {file = "pydantic_core-2.18.4-cp311-none-win_amd64.whl", hash = "sha256:8a7164fe2005d03c64fd3b85649891cd4953a8de53107940bf272500ba8a788b"}, + {file = "pydantic_core-2.18.4-cp311-none-win_arm64.whl", hash = "sha256:4e99bc050fe65c450344421017f98298a97cefc18c53bb2f7b3531eb39bc7805"}, + {file = "pydantic_core-2.18.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:6f5c4d41b2771c730ea1c34e458e781b18cc668d194958e0112455fff4e402b2"}, + {file = "pydantic_core-2.18.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2fdf2156aa3d017fddf8aea5adfba9f777db1d6022d392b682d2a8329e087cef"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4748321b5078216070b151d5271ef3e7cc905ab170bbfd27d5c83ee3ec436695"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:847a35c4d58721c5dc3dba599878ebbdfd96784f3fb8bb2c356e123bdcd73f34"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3c40d4eaad41f78e3bbda31b89edc46a3f3dc6e171bf0ecf097ff7a0ffff7cb1"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:21a5e440dbe315ab9825fcd459b8814bb92b27c974cbc23c3e8baa2b76890077"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01dd777215e2aa86dfd664daed5957704b769e726626393438f9c87690ce78c3"}, + {file = "pydantic_core-2.18.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4b06beb3b3f1479d32befd1f3079cc47b34fa2da62457cdf6c963393340b56e9"}, + {file = "pydantic_core-2.18.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:564d7922e4b13a16b98772441879fcdcbe82ff50daa622d681dd682175ea918c"}, + {file = "pydantic_core-2.18.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:0eb2a4f660fcd8e2b1c90ad566db2b98d7f3f4717c64fe0a83e0adb39766d5b8"}, + {file = "pydantic_core-2.18.4-cp312-none-win32.whl", hash = "sha256:8b8bab4c97248095ae0c4455b5a1cd1cdd96e4e4769306ab19dda135ea4cdb07"}, + {file = "pydantic_core-2.18.4-cp312-none-win_amd64.whl", hash = "sha256:14601cdb733d741b8958224030e2bfe21a4a881fb3dd6fbb21f071cabd48fa0a"}, + {file = "pydantic_core-2.18.4-cp312-none-win_arm64.whl", hash = "sha256:c1322d7dd74713dcc157a2b7898a564ab091ca6c58302d5c7b4c07296e3fd00f"}, + {file = "pydantic_core-2.18.4-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:823be1deb01793da05ecb0484d6c9e20baebb39bd42b5d72636ae9cf8350dbd2"}, + {file = "pydantic_core-2.18.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ebef0dd9bf9b812bf75bda96743f2a6c5734a02092ae7f721c048d156d5fabae"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae1d6df168efb88d7d522664693607b80b4080be6750c913eefb77e34c12c71a"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f9899c94762343f2cc2fc64c13e7cae4c3cc65cdfc87dd810a31654c9b7358cc"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99457f184ad90235cfe8461c4d70ab7dd2680e28821c29eca00252ba90308c78"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:18f469a3d2a2fdafe99296a87e8a4c37748b5080a26b806a707f25a902c040a8"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7cdf28938ac6b8b49ae5e92f2735056a7ba99c9b110a474473fd71185c1af5d"}, + {file = "pydantic_core-2.18.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:938cb21650855054dc54dfd9120a851c974f95450f00683399006aa6e8abb057"}, + {file = "pydantic_core-2.18.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:44cd83ab6a51da80fb5adbd9560e26018e2ac7826f9626bc06ca3dc074cd198b"}, + {file = "pydantic_core-2.18.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:972658f4a72d02b8abfa2581d92d59f59897d2e9f7e708fdabe922f9087773af"}, + {file = "pydantic_core-2.18.4-cp38-none-win32.whl", hash = "sha256:1d886dc848e60cb7666f771e406acae54ab279b9f1e4143babc9c2258213daa2"}, + {file = "pydantic_core-2.18.4-cp38-none-win_amd64.whl", hash = "sha256:bb4462bd43c2460774914b8525f79b00f8f407c945d50881568f294c1d9b4443"}, + {file = "pydantic_core-2.18.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:44a688331d4a4e2129140a8118479443bd6f1905231138971372fcde37e43528"}, + {file = "pydantic_core-2.18.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a2fdd81edd64342c85ac7cf2753ccae0b79bf2dfa063785503cb85a7d3593223"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:86110d7e1907ab36691f80b33eb2da87d780f4739ae773e5fc83fb272f88825f"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:46387e38bd641b3ee5ce247563b60c5ca098da9c56c75c157a05eaa0933ed154"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:123c3cec203e3f5ac7b000bd82235f1a3eced8665b63d18be751f115588fea30"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dc1803ac5c32ec324c5261c7209e8f8ce88e83254c4e1aebdc8b0a39f9ddb443"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53db086f9f6ab2b4061958d9c276d1dbe3690e8dd727d6abf2321d6cce37fa94"}, + {file = "pydantic_core-2.18.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:abc267fa9837245cc28ea6929f19fa335f3dc330a35d2e45509b6566dc18be23"}, + {file = "pydantic_core-2.18.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a0d829524aaefdebccb869eed855e2d04c21d2d7479b6cada7ace5448416597b"}, + {file = "pydantic_core-2.18.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:509daade3b8649f80d4e5ff21aa5673e4ebe58590b25fe42fac5f0f52c6f034a"}, + {file = "pydantic_core-2.18.4-cp39-none-win32.whl", hash = "sha256:ca26a1e73c48cfc54c4a76ff78df3727b9d9f4ccc8dbee4ae3f73306a591676d"}, + {file = "pydantic_core-2.18.4-cp39-none-win_amd64.whl", hash = "sha256:c67598100338d5d985db1b3d21f3619ef392e185e71b8d52bceacc4a7771ea7e"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:574d92eac874f7f4db0ca653514d823a0d22e2354359d0759e3f6a406db5d55d"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1f4d26ceb5eb9eed4af91bebeae4b06c3fb28966ca3a8fb765208cf6b51102ab"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77450e6d20016ec41f43ca4a6c63e9fdde03f0ae3fe90e7c27bdbeaece8b1ed4"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d323a01da91851a4f17bf592faf46149c9169d68430b3146dcba2bb5e5719abc"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43d447dd2ae072a0065389092a231283f62d960030ecd27565672bd40746c507"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:578e24f761f3b425834f297b9935e1ce2e30f51400964ce4801002435a1b41ef"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:81b5efb2f126454586d0f40c4d834010979cb80785173d1586df845a632e4e6d"}, + {file = "pydantic_core-2.18.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ab86ce7c8f9bea87b9d12c7f0af71102acbf5ecbc66c17796cff45dae54ef9a5"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:90afc12421df2b1b4dcc975f814e21bc1754640d502a2fbcc6d41e77af5ec312"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:51991a89639a912c17bef4b45c87bd83593aee0437d8102556af4885811d59f5"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:293afe532740370aba8c060882f7d26cfd00c94cae32fd2e212a3a6e3b7bc15e"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b48ece5bde2e768197a2d0f6e925f9d7e3e826f0ad2271120f8144a9db18d5c8"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:eae237477a873ab46e8dd748e515c72c0c804fb380fbe6c85533c7de51f23a8f"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:834b5230b5dfc0c1ec37b2fda433b271cbbc0e507560b5d1588e2cc1148cf1ce"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:e858ac0a25074ba4bce653f9b5d0a85b7456eaddadc0ce82d3878c22489fa4ee"}, + {file = "pydantic_core-2.18.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2fd41f6eff4c20778d717af1cc50eca52f5afe7805ee530a4fbd0bae284f16e9"}, + {file = "pydantic_core-2.18.4.tar.gz", hash = "sha256:ec3beeada09ff865c344ff3bc2f427f5e6c26401cc6113d77e372c3fdac73864"}, ] [package.dependencies] @@ -3555,17 +3547,17 @@ typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" [[package]] name = "pydantic-settings" -version = "2.2.1" +version = "2.3.2" description = "Settings management using Pydantic" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_settings-2.2.1-py3-none-any.whl", hash = "sha256:0235391d26db4d2190cb9b31051c4b46882d28a51533f97440867f012d4da091"}, - {file = "pydantic_settings-2.2.1.tar.gz", hash = "sha256:00b9f6a5e95553590434c0fa01ead0b216c3e10bc54ae02e37f359948643c5ed"}, + {file = "pydantic_settings-2.3.2-py3-none-any.whl", hash = "sha256:ae06e44349e4c7bff8d57aff415dfd397ae75c217a098d54e9e6990ad7594ac7"}, + {file = "pydantic_settings-2.3.2.tar.gz", hash = "sha256:05d33003c74c2cd585de97b59eb17b6ed67181bc8a3ce594d74b5d24e4df7323"}, ] [package.dependencies] -pydantic = ">=2.3.0" +pydantic = ">=2.7.0" python-dotenv = ">=0.21.0" [package.extras] @@ -3853,7 +3845,6 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -4004,17 +3995,20 @@ cffi = {version = "*", markers = "implementation_name == \"pypy\""} [[package]] name = "questionary" -version = "2.0.1" +version = "1.10.0" description = "Python library to build pretty command line user prompts ⭐️" optional = false -python-versions = ">=3.8" +python-versions = ">=3.6,<4.0" files = [ - {file = "questionary-2.0.1-py3-none-any.whl", hash = "sha256:8ab9a01d0b91b68444dff7f6652c1e754105533f083cbe27597c8110ecc230a2"}, - {file = "questionary-2.0.1.tar.gz", hash = "sha256:bcce898bf3dbb446ff62830c86c5c6fb9a22a54146f0f5597d3da43b10d8fc8b"}, + {file = "questionary-1.10.0-py3-none-any.whl", hash = "sha256:fecfcc8cca110fda9d561cb83f1e97ecbb93c613ff857f655818839dac74ce90"}, + {file = "questionary-1.10.0.tar.gz", hash = "sha256:600d3aefecce26d48d97eee936fdb66e4bc27f934c3ab6dd1e292c4f43946d90"}, ] [package.dependencies] -prompt_toolkit = ">=2.0,<=3.0.36" +prompt_toolkit = ">=2.0,<4.0" + +[package.extras] +docs = ["Sphinx (>=3.3,<4.0)", "sphinx-autobuild (>=2020.9.1,<2021.0.0)", "sphinx-autodoc-typehints (>=1.11.1,<2.0.0)", "sphinx-copybutton (>=0.3.1,<0.4.0)", "sphinx-rtd-theme (>=0.5.0,<0.6.0)"] [[package]] name = "referencing" @@ -4204,13 +4198,13 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] [[package]] name = "rich-click" -version = "1.8.2" +version = "1.8.3" description = "Format click help output nicely with rich" optional = false python-versions = ">=3.7" files = [ - {file = "rich_click-1.8.2-py3-none-any.whl", hash = "sha256:b57856f304e4fe0394b82d7ce0784450758f8c8b4e201ccc4320501cc201806b"}, - {file = "rich_click-1.8.2.tar.gz", hash = "sha256:8e29bdede858b59aa2859a1ab1c4ccbd39ed7ed5870262dae756fba6b5dc72e8"}, + {file = "rich_click-1.8.3-py3-none-any.whl", hash = "sha256:636d9c040d31c5eee242201b5bf4f2d358bfae4db14bb22ec1cafa717cfd02cd"}, + {file = "rich_click-1.8.3.tar.gz", hash = "sha256:6d75bdfa7aa9ed2c467789a0688bc6da23fbe3a143e19aa6ad3f8bac113d2ab3"}, ] [package.dependencies] @@ -4358,19 +4352,19 @@ files = [ [[package]] name = "s3fs" -version = "2024.3.1" +version = "2024.6.0" description = "Convenient Filesystem interface over S3" optional = false -python-versions = ">= 3.8" +python-versions = ">=3.8" files = [ - {file = "s3fs-2024.3.1-py3-none-any.whl", hash = "sha256:f4566a5446c473740d272ec08e0b4aae8db1aa05f662c42ff0aa2c89bb5060ea"}, - {file = "s3fs-2024.3.1.tar.gz", hash = "sha256:1b8bc8dbd65e7b60f5487378f6eeffe1de59aa72caa9efca6dad6ab877405487"}, + {file = "s3fs-2024.6.0-py3-none-any.whl", hash = "sha256:8d5f591956a61c7d64097eff4847598826f09d60b4ce9a16202565693569f6d4"}, + {file = "s3fs-2024.6.0.tar.gz", hash = "sha256:a59020ededc61e9666f1e473ce4aa28764e5f7b3c97414beb15cd9be522a87b6"}, ] [package.dependencies] aiobotocore = ">=2.5.4,<3.0.0" aiohttp = "<4.0.0a0 || >4.0.0a0,<4.0.0a1 || >4.0.0a1" -fsspec = "2024.3.1" +fsspec = "==2024.6.0.*" [package.extras] awscli = ["aiobotocore[awscli] (>=2.5.4,<3.0.0)"] @@ -4394,19 +4388,18 @@ win32 = ["pywin32"] [[package]] name = "setuptools" -version = "69.5.1" +version = "70.0.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.5.1-py3-none-any.whl", hash = "sha256:c636ac361bc47580504644275c9ad802c50415c7522212252c033bd15f301f32"}, - {file = "setuptools-69.5.1.tar.gz", hash = "sha256:6c1fccdac05a97e598fb0ae3bbed5904ccb317337a51139dcd51453611bbb987"}, + {file = "setuptools-70.0.0-py3-none-any.whl", hash = "sha256:54faa7f2e8d2d11bcd2c07bed282eef1046b5c080d1c32add737d7b5817b1ad4"}, + {file = "setuptools-70.0.0.tar.gz", hash = "sha256:f211a66637b8fa059bb28183da127d4e86396c991a942b028c6650d4319c3fd0"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "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)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "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.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] +docs = ["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"] +testing = ["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)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] [[package]] name = "six" @@ -4550,22 +4543,22 @@ files = [ [[package]] name = "tornado" -version = "6.4" +version = "6.4.1" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." optional = false -python-versions = ">= 3.8" +python-versions = ">=3.8" files = [ - {file = "tornado-6.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"}, - {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e43bc2e5370a6a8e413e1e1cd0c91bedc5bd62a74a532371042a18ef19e10579"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0251554cdd50b4b44362f73ad5ba7126fc5b2c2895cc62b14a1c2d7ea32f212"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fd03192e287fbd0899dd8f81c6fb9cbbc69194d2074b38f384cb6fa72b80e9c2"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:88b84956273fbd73420e6d4b8d5ccbe913c65d31351b4c004ae362eba06e1f78"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:71ddfc23a0e03ef2df1c1397d859868d158c8276a0603b96cf86892bff58149f"}, - {file = "tornado-6.4-cp38-abi3-win32.whl", hash = "sha256:6f8a6c77900f5ae93d8b4ae1196472d0ccc2775cc1dfdc9e7727889145c45052"}, - {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"}, - {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"}, + {file = "tornado-6.4.1-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:163b0aafc8e23d8cdc3c9dfb24c5368af84a81e3364745ccb4427669bf84aec8"}, + {file = "tornado-6.4.1-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:6d5ce3437e18a2b66fbadb183c1d3364fb03f2be71299e7d10dbeeb69f4b2a14"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e20b9113cd7293f164dc46fffb13535266e713cdb87bd2d15ddb336e96cfc4"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8ae50a504a740365267b2a8d1a90c9fbc86b780a39170feca9bcc1787ff80842"}, + {file = "tornado-6.4.1-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:613bf4ddf5c7a95509218b149b555621497a6cc0d46ac341b30bd9ec19eac7f3"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:25486eb223babe3eed4b8aecbac33b37e3dd6d776bc730ca14e1bf93888b979f"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:454db8a7ecfcf2ff6042dde58404164d969b6f5d58b926da15e6b23817950fc4"}, + {file = "tornado-6.4.1-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a02a08cc7a9314b006f653ce40483b9b3c12cda222d6a46d4ac63bb6c9057698"}, + {file = "tornado-6.4.1-cp38-abi3-win32.whl", hash = "sha256:d9a566c40b89757c9aa8e6f032bcdb8ca8795d7c1a9762910c722b1635c9de4d"}, + {file = "tornado-6.4.1-cp38-abi3-win_amd64.whl", hash = "sha256:b24b8982ed444378d7f21d563f4180a2de31ced9d8d84443907a0a64da2072e7"}, + {file = "tornado-6.4.1.tar.gz", hash = "sha256:92d3ab53183d8c50f8204a51e6f91d18a15d5ef261e84d452800d4ff6fc504e9"}, ] [[package]] @@ -4630,13 +4623,13 @@ types-urllib3 = "*" [[package]] name = "types-requests" -version = "2.31.0.20240406" +version = "2.32.0.20240602" description = "Typing stubs for requests" optional = false python-versions = ">=3.8" files = [ - {file = "types-requests-2.31.0.20240406.tar.gz", hash = "sha256:4428df33c5503945c74b3f42e82b181e86ec7b724620419a2966e2de604ce1a1"}, - {file = "types_requests-2.31.0.20240406-py3-none-any.whl", hash = "sha256:6216cdac377c6b9a040ac1c0404f7284bd13199c0e1bb235f4324627e8898cf5"}, + {file = "types-requests-2.32.0.20240602.tar.gz", hash = "sha256:3f98d7bbd0dd94ebd10ff43a7fbe20c3b8528acace6d8efafef0b6a184793f06"}, + {file = "types_requests-2.32.0.20240602-py3-none-any.whl", hash = "sha256:ed3946063ea9fbc6b5fc0c44fa279188bae42d582cb63760be6cb4b9d06c3de8"}, ] [package.dependencies] @@ -4861,40 +4854,43 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess [[package]] name = "watchdog" -version = "4.0.0" +version = "4.0.1" description = "Filesystem events monitoring" optional = false python-versions = ">=3.8" files = [ - {file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:39cb34b1f1afbf23e9562501673e7146777efe95da24fab5707b88f7fb11649b"}, - {file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c522392acc5e962bcac3b22b9592493ffd06d1fc5d755954e6be9f4990de932b"}, - {file = "watchdog-4.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6c47bdd680009b11c9ac382163e05ca43baf4127954c5f6d0250e7d772d2b80c"}, - {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8350d4055505412a426b6ad8c521bc7d367d1637a762c70fdd93a3a0d595990b"}, - {file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c17d98799f32e3f55f181f19dd2021d762eb38fdd381b4a748b9f5a36738e935"}, - {file = "watchdog-4.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4986db5e8880b0e6b7cd52ba36255d4793bf5cdc95bd6264806c233173b1ec0b"}, - {file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:11e12fafb13372e18ca1bbf12d50f593e7280646687463dd47730fd4f4d5d257"}, - {file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5369136a6474678e02426bd984466343924d1df8e2fd94a9b443cb7e3aa20d19"}, - {file = "watchdog-4.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:76ad8484379695f3fe46228962017a7e1337e9acadafed67eb20aabb175df98b"}, - {file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:45cc09cc4c3b43fb10b59ef4d07318d9a3ecdbff03abd2e36e77b6dd9f9a5c85"}, - {file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eed82cdf79cd7f0232e2fdc1ad05b06a5e102a43e331f7d041e5f0e0a34a51c4"}, - {file = "watchdog-4.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ba30a896166f0fee83183cec913298151b73164160d965af2e93a20bbd2ab605"}, - {file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d18d7f18a47de6863cd480734613502904611730f8def45fc52a5d97503e5101"}, - {file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2895bf0518361a9728773083908801a376743bcc37dfa252b801af8fd281b1ca"}, - {file = "watchdog-4.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:87e9df830022488e235dd601478c15ad73a0389628588ba0b028cb74eb72fed8"}, - {file = "watchdog-4.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6e949a8a94186bced05b6508faa61b7adacc911115664ccb1923b9ad1f1ccf7b"}, - {file = "watchdog-4.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6a4db54edea37d1058b08947c789a2354ee02972ed5d1e0dca9b0b820f4c7f92"}, - {file = "watchdog-4.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d31481ccf4694a8416b681544c23bd271f5a123162ab603c7d7d2dd7dd901a07"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:8fec441f5adcf81dd240a5fe78e3d83767999771630b5ddfc5867827a34fa3d3"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:6a9c71a0b02985b4b0b6d14b875a6c86ddea2fdbebd0c9a720a806a8bbffc69f"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:557ba04c816d23ce98a06e70af6abaa0485f6d94994ec78a42b05d1c03dcbd50"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:d0f9bd1fd919134d459d8abf954f63886745f4660ef66480b9d753a7c9d40927"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:f9b2fdca47dc855516b2d66eef3c39f2672cbf7e7a42e7e67ad2cbfcd6ba107d"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:73c7a935e62033bd5e8f0da33a4dcb763da2361921a69a5a95aaf6c93aa03a87"}, - {file = "watchdog-4.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:6a80d5cae8c265842c7419c560b9961561556c4361b297b4c431903f8c33b269"}, - {file = "watchdog-4.0.0-py3-none-win32.whl", hash = "sha256:8f9a542c979df62098ae9c58b19e03ad3df1c9d8c6895d96c0d51da17b243b1c"}, - {file = "watchdog-4.0.0-py3-none-win_amd64.whl", hash = "sha256:f970663fa4f7e80401a7b0cbeec00fa801bf0287d93d48368fc3e6fa32716245"}, - {file = "watchdog-4.0.0-py3-none-win_ia64.whl", hash = "sha256:9a03e16e55465177d416699331b0f3564138f1807ecc5f2de9d55d8f188d08c7"}, - {file = "watchdog-4.0.0.tar.gz", hash = "sha256:e3e7065cbdabe6183ab82199d7a4f6b3ba0a438c5a512a68559846ccb76a78ec"}, + {file = "watchdog-4.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:da2dfdaa8006eb6a71051795856bedd97e5b03e57da96f98e375682c48850645"}, + {file = "watchdog-4.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e93f451f2dfa433d97765ca2634628b789b49ba8b504fdde5837cdcf25fdb53b"}, + {file = "watchdog-4.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ef0107bbb6a55f5be727cfc2ef945d5676b97bffb8425650dadbb184be9f9a2b"}, + {file = "watchdog-4.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:17e32f147d8bf9657e0922c0940bcde863b894cd871dbb694beb6704cfbd2fb5"}, + {file = "watchdog-4.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:03e70d2df2258fb6cb0e95bbdbe06c16e608af94a3ffbd2b90c3f1e83eb10767"}, + {file = "watchdog-4.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:123587af84260c991dc5f62a6e7ef3d1c57dfddc99faacee508c71d287248459"}, + {file = "watchdog-4.0.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:093b23e6906a8b97051191a4a0c73a77ecc958121d42346274c6af6520dec175"}, + {file = "watchdog-4.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:611be3904f9843f0529c35a3ff3fd617449463cb4b73b1633950b3d97fa4bfb7"}, + {file = "watchdog-4.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:62c613ad689ddcb11707f030e722fa929f322ef7e4f18f5335d2b73c61a85c28"}, + {file = "watchdog-4.0.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:d4925e4bf7b9bddd1c3de13c9b8a2cdb89a468f640e66fbfabaf735bd85b3e35"}, + {file = "watchdog-4.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cad0bbd66cd59fc474b4a4376bc5ac3fc698723510cbb64091c2a793b18654db"}, + {file = "watchdog-4.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a3c2c317a8fb53e5b3d25790553796105501a235343f5d2bf23bb8649c2c8709"}, + {file = "watchdog-4.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c9904904b6564d4ee8a1ed820db76185a3c96e05560c776c79a6ce5ab71888ba"}, + {file = "watchdog-4.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:667f3c579e813fcbad1b784db7a1aaa96524bed53437e119f6a2f5de4db04235"}, + {file = "watchdog-4.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d10a681c9a1d5a77e75c48a3b8e1a9f2ae2928eda463e8d33660437705659682"}, + {file = "watchdog-4.0.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0144c0ea9997b92615af1d94afc0c217e07ce2c14912c7b1a5731776329fcfc7"}, + {file = "watchdog-4.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:998d2be6976a0ee3a81fb8e2777900c28641fb5bfbd0c84717d89bca0addcdc5"}, + {file = "watchdog-4.0.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e7921319fe4430b11278d924ef66d4daa469fafb1da679a2e48c935fa27af193"}, + {file = "watchdog-4.0.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:f0de0f284248ab40188f23380b03b59126d1479cd59940f2a34f8852db710625"}, + {file = "watchdog-4.0.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:bca36be5707e81b9e6ce3208d92d95540d4ca244c006b61511753583c81c70dd"}, + {file = "watchdog-4.0.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:ab998f567ebdf6b1da7dc1e5accfaa7c6992244629c0fdaef062f43249bd8dee"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:dddba7ca1c807045323b6af4ff80f5ddc4d654c8bce8317dde1bd96b128ed253"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_armv7l.whl", hash = "sha256:4513ec234c68b14d4161440e07f995f231be21a09329051e67a2118a7a612d2d"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_i686.whl", hash = "sha256:4107ac5ab936a63952dea2a46a734a23230aa2f6f9db1291bf171dac3ebd53c6"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_ppc64.whl", hash = "sha256:6e8c70d2cd745daec2a08734d9f63092b793ad97612470a0ee4cbb8f5f705c57"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:f27279d060e2ab24c0aa98363ff906d2386aa6c4dc2f1a374655d4e02a6c5e5e"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_s390x.whl", hash = "sha256:f8affdf3c0f0466e69f5b3917cdd042f89c8c63aebdb9f7c078996f607cdb0f5"}, + {file = "watchdog-4.0.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:ac7041b385f04c047fcc2951dc001671dee1b7e0615cde772e84b01fbf68ee84"}, + {file = "watchdog-4.0.1-py3-none-win32.whl", hash = "sha256:206afc3d964f9a233e6ad34618ec60b9837d0582b500b63687e34011e15bb429"}, + {file = "watchdog-4.0.1-py3-none-win_amd64.whl", hash = "sha256:7577b3c43e5909623149f76b099ac49a1a01ca4e167d1785c76eb52fa585745a"}, + {file = "watchdog-4.0.1-py3-none-win_ia64.whl", hash = "sha256:d7b9f5f3299e8dd230880b6c55504a1f69cf1e4316275d1b215ebdd8187ec88d"}, + {file = "watchdog-4.0.1.tar.gz", hash = "sha256:eebaacf674fa25511e8867028d281e602ee6500045b57f43b08778082f7f8b44"}, ] [package.extras] @@ -4902,13 +4898,13 @@ watchmedo = ["PyYAML (>=3.10)"] [[package]] name = "wcmatch" -version = "8.5.1" +version = "8.5.2" description = "Wildcard/glob file name matcher." optional = false python-versions = ">=3.8" files = [ - {file = "wcmatch-8.5.1-py3-none-any.whl", hash = "sha256:24c19cedc92bc9c9e27f39db4e1824d72f95bd2cea32b254a47a45b1a1b227ed"}, - {file = "wcmatch-8.5.1.tar.gz", hash = "sha256:c0088c7f6426cf6bf27e530e2b7b734031905f7e490475fd83c7c5008ab581b3"}, + {file = "wcmatch-8.5.2-py3-none-any.whl", hash = "sha256:17d3ad3758f9d0b5b4dedc770b65420d4dac62e680229c287bf24c9db856a478"}, + {file = "wcmatch-8.5.2.tar.gz", hash = "sha256:a70222b86dea82fb382dd87b73278c10756c138bd6f8f714e2183128887b9eb2"}, ] [package.dependencies] @@ -4927,18 +4923,18 @@ files = [ [[package]] name = "webcolors" -version = "1.13" +version = "24.6.0" description = "A library for working with the color formats defined by HTML and CSS." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"}, - {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"}, + {file = "webcolors-24.6.0-py3-none-any.whl", hash = "sha256:8cf5bc7e28defd1d48b9e83d5fc30741328305a8195c29a8e668fa45586568a1"}, + {file = "webcolors-24.6.0.tar.gz", hash = "sha256:1d160d1de46b3e81e58d0a280d0c78b467dc80f47294b91b1ad8029d2cedb55b"}, ] [package.extras] docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] -tests = ["pytest", "pytest-cov"] +tests = ["coverage[toml]"] [[package]] name = "webencodings" @@ -5186,39 +5182,39 @@ multidict = ">=4.0" [[package]] name = "zarr" -version = "2.16.1" +version = "2.18.2" description = "An implementation of chunked, compressed, N-dimensional arrays for Python" optional = true -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "zarr-2.16.1-py3-none-any.whl", hash = "sha256:de4882433ccb5b42cc1ec9872b95e64ca3a13581424666b28ed265ad76c7056f"}, - {file = "zarr-2.16.1.tar.gz", hash = "sha256:4276cf4b4a653431042cd53ff2282bc4d292a6842411e88529964504fb073286"}, + {file = "zarr-2.18.2-py3-none-any.whl", hash = "sha256:a638754902f97efa99b406083fdc807a0e2ccf12a949117389d2a4ba9b05df38"}, + {file = "zarr-2.18.2.tar.gz", hash = "sha256:9bb393b8a0a38fb121dbb913b047d75db28de9890f6d644a217a73cf4ae74f47"}, ] [package.dependencies] asciitree = "*" -fasteners = "*" +fasteners = {version = "*", markers = "sys_platform != \"emscripten\""} numcodecs = ">=0.10.0" -numpy = ">=1.20,<1.21.0 || >1.21.0" +numpy = ">=1.23" [package.extras] -docs = ["numcodecs[msgpack]", "numpydoc", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx-issues", "sphinx-rtd-theme"] +docs = ["numcodecs[msgpack]", "numpydoc", "pydata-sphinx-theme", "sphinx", "sphinx-automodapi", "sphinx-copybutton", "sphinx-design", "sphinx-issues"] jupyter = ["ipytree (>=0.2.2)", "ipywidgets (>=8.0.0)", "notebook"] [[package]] name = "zipp" -version = "3.18.1" +version = "3.19.2" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.8" files = [ - {file = "zipp-3.18.1-py3-none-any.whl", hash = "sha256:206f5a15f2af3dbaee80769fb7dc6f249695e940acca08dfb2a4769fe61e538b"}, - {file = "zipp-3.18.1.tar.gz", hash = "sha256:2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"}, + {file = "zipp-3.19.2-py3-none-any.whl", hash = "sha256:f091755f667055f2d02b32c53771a7a6c8b47e1fdbc4b72a8b9072b3eef8015c"}, + {file = "zipp-3.19.2.tar.gz", hash = "sha256:bf1dcf6450f873a13e952a29504887c89e6de7506209e5b1bcc3460135d4de19"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +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)"] [extras] kerchunk = ["dask", "kerchunk"] @@ -5226,4 +5222,4 @@ kerchunk = ["dask", "kerchunk"] [metadata] lock-version = "2.0" python-versions = ">=3.9,<4.0" -content-hash = "c0b21a1967a7180dacd40613c433d31314f72477b02bc4105a4639f22eb5656f" +content-hash = "053e27d57acc91d68b6898389ddb15c20b78bb983490d0da7d83c528e6a0215e" diff --git a/pyproject.toml b/pyproject.toml index d6baf9bb..245dc849 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -68,6 +68,7 @@ pytest-watch = ">=4.2" # break with a ModuleNotFoundError. mkdocs = ">=1.2,!=1.6.0" mkdocs-material = ">=7.1,<10.0" +mkdocs-redirects = ">=1.2.1" markdown-callouts = ">=0.2.0" markdown-include = ">=0.6" mkdocstrings = {extras = ["python"], version = ">=0.19.0"} From 00ccd5e440249f9818c84bc8f215be6a97939f84 Mon Sep 17 00:00:00 2001 From: Sherwin-14 Date: Tue, 11 Jun 2024 22:18:53 +0530 Subject: [PATCH 02/11] Removed dask.ipynb --- docs/tutorials/dask.ipynb | 2131 ------------------------------------- 1 file changed, 2131 deletions(-) delete mode 100644 docs/tutorials/dask.ipynb diff --git a/docs/tutorials/dask.ipynb b/docs/tutorials/dask.ipynb deleted file mode 100644 index 6170de47..00000000 --- a/docs/tutorials/dask.ipynb +++ /dev/null @@ -1,2131 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "8f552380-cc0a-4fb8-b4b3-276a6564b239", - "metadata": {}, - "source": [ - "# Analyzing NASA Data with Dask" - ] - }, - { - "cell_type": "markdown", - "id": "9e4dbac6-b20b-43c3-b64a-189a614a3fb9", - "metadata": {}, - "source": [ - "## Create cluster on AWS\n", - "\n", - "_This cell is all that's needed to run this analysis on a cluster_" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "id": "cbd1ed19-c6db-427c-9076-2e6af892558d", - "metadata": { - "tags": [] - }, - "outputs": [ - { - "ename": "ModuleNotFoundError", - "evalue": "No module named 'coiled'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", - "File \u001b[0;32m:2\u001b[0m\n", - "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'coiled'" - ] - } - ], - "source": [ - "%%time\n", - "\n", - "# Spin up a Coiled cluster in region us-west-2\n", - "import coiled\n", - "\n", - "cluster = coiled.Cluster(n_workers=20, region=\"us-west-2\")\n", - "client = cluster.get_client()" - ] - }, - { - "cell_type": "markdown", - "id": "4a30aadb-41d4-4c08-a6fa-5ea60c6bd695", - "metadata": {}, - "source": [ - "## Get data files with `earthaccess`" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "899b10a6-51fc-4d97-96d2-54e81a8b8f7d", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "You're now authenticated with NASA Earthdata Login\n", - "Using token with expiration date: 08/04/2023\n", - "Using environment variables for EDL\n" - ] - } - ], - "source": [ - "# Authenticate my machine with `earthaccess`\n", - "import earthaccess\n", - "\n", - "earthaccess.login();" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "c9c3d184-ffff-494f-ad77-f6b2cc31f6c5", - "metadata": {}, - "outputs": [], - "source": [ - "# Define region bounding box\n", - "lon0, lat0 = -124.5, 36.5\n", - "dlon, dlat = 2.5, 2.0 # half of box width in lon/lat\n", - "lon_min, lon_max = lon0 - dlon, lon0 + dlon\n", - "lat_min, lat_max = lat0 - dlat, lat0 + dlat\n", - "\n", - "bounding_box = (lon_min, lat_min, lon_max, lat_max)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "id": "8cad710e-9a9e-45fd-b2fd-f01990db37d6", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Granules found: 196\n" - ] - } - ], - "source": [ - "# Retrieve data files for the dataset I'm interested in\n", - "results = earthaccess.search_data(\n", - " short_name=\"VIIRS_NPP-STAR-L3U-v2.80\",\n", - " concept_id=\"C2147485059-POCLOUD\",\n", - " cloud_hosted=True,\n", - " bounding_box=bounding_box,\n", - " temporal=(\"2021-04-01\", \"2021-05-6\"),\n", - " count=30, # For demo purposes\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "cbe32079-17f9-45a8-9601-c0fe21980183", - "metadata": {}, - "source": [ - "## Analyze data on my cluster with Xarray" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "id": "a231efb7-0b37-48be-a432-74afbde099de", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " Opening 30 granules, approx size: 0.0 GB\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "38f7f8a98abb4fc780198d04f75c49fe", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "SUBMITTING | : 0%| | 0/30 [00:00\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.Dataset>\n",
-       "Dimensions:                  (lon: 18000, lat: 9000, time: 30)\n",
-       "Coordinates:\n",
-       "  * lon                      (lon) float32 -180.0 -180.0 -179.9 ... 180.0 180.0\n",
-       "  * lat                      (lat) float32 89.99 89.97 89.95 ... -89.97 -89.99\n",
-       "  * time                     (time) datetime64[ns] 2021-04-01T08:10:01 ... 20...\n",
-       "Data variables: (12/13)\n",
-       "    quality_level            (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    l2p_flags                (time, lat, lon) int16 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    or_number_of_pixels      (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    sea_surface_temperature  (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    dt_analysis              (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    satellite_zenith_angle   (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    ...                       ...\n",
-       "    sses_standard_deviation  (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    wind_speed               (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    sst_dtime                (time, lat, lon) timedelta64[ns] dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    crs                      (time) int32 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0\n",
-       "    sst_gradient_magnitude   (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "    sst_front_position       (time, lat, lon) float32 dask.array<chunksize=(1, 9000, 18000), meta=np.ndarray>\n",
-       "Attributes: (12/58)\n",
-       "    Conventions:                Conventions = CF-1.7, ACDD-1.3\n",
-       "    acknowledgement:            Please acknowledge the use of these data with...\n",
-       "    cdm_data_type:              grid\n",
-       "    comment:                    SSTs are a weighted average of the SSTs of co...\n",
-       "    creator_email:              Alex.Ignatov@noaa.gov\n",
-       "    creator_name:               Alex Ignatov\n",
-       "    ...                         ...\n",
-       "    col_start:                  2879\n",
-       "    col_count:                  3875\n",
-       "    l3u_bias_subskin_night:     0.034\n",
-       "    l3u_bias_subskin_day:       0.018\n",
-       "    l3u_bias_depth_night:       0.01\n",
-       "    l3u_bias_depth_day:         0.012
" - ], - "text/plain": [ - "\n", - "Dimensions: (lon: 18000, lat: 9000, time: 30)\n", - "Coordinates:\n", - " * lon (lon) float32 -180.0 -180.0 -179.9 ... 180.0 180.0\n", - " * lat (lat) float32 89.99 89.97 89.95 ... -89.97 -89.99\n", - " * time (time) datetime64[ns] 2021-04-01T08:10:01 ... 20...\n", - "Data variables: (12/13)\n", - " quality_level (time, lat, lon) float32 dask.array\n", - " l2p_flags (time, lat, lon) int16 dask.array\n", - " or_number_of_pixels (time, lat, lon) float32 dask.array\n", - " sea_surface_temperature (time, lat, lon) float32 dask.array\n", - " dt_analysis (time, lat, lon) float32 dask.array\n", - " satellite_zenith_angle (time, lat, lon) float32 dask.array\n", - " ... ...\n", - " sses_standard_deviation (time, lat, lon) float32 dask.array\n", - " wind_speed (time, lat, lon) float32 dask.array\n", - " sst_dtime (time, lat, lon) timedelta64[ns] dask.array\n", - " crs (time) int32 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0\n", - " sst_gradient_magnitude (time, lat, lon) float32 dask.array\n", - " sst_front_position (time, lat, lon) float32 dask.array\n", - "Attributes: (12/58)\n", - " Conventions: Conventions = CF-1.7, ACDD-1.3\n", - " acknowledgement: Please acknowledge the use of these data with...\n", - " cdm_data_type: grid\n", - " comment: SSTs are a weighted average of the SSTs of co...\n", - " creator_email: Alex.Ignatov@noaa.gov\n", - " creator_name: Alex Ignatov\n", - " ... ...\n", - " col_start: 2879\n", - " col_count: 3875\n", - " l3u_bias_subskin_night: 0.034\n", - " l3u_bias_subskin_day: 0.018\n", - " l3u_bias_depth_night: 0.01\n", - " l3u_bias_depth_day: 0.012" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "%%time\n", - "\n", - "# Open data files with Xarray\n", - "\n", - "import xarray as xr\n", - "\n", - "ds = xr.open_mfdataset(earthaccess.open(results))\n", - "ds" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "id": "546cea9d-5cd8-406b-aea6-b64dd24b1755", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "CPU times: user 266 ms, sys: 71.1 ms, total: 337 ms\n", - "Wall time: 35 s\n" - ] - }, - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%%time\n", - "\n", - "# Compute and plot some results from the dataset\n", - "\n", - "result = ds.sea_surface_temperature.notnull().mean({'lon','lat'}).compute()\n", - "result.plot();" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9de61942-ed61-4668-ac67-e1b48375c965", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.16" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} From dbcf38b394f3fd7407b887bd0d3ce22da019d190 Mon Sep 17 00:00:00 2001 From: Sherwin-14 Date: Tue, 11 Jun 2024 16:26:34 +0530 Subject: [PATCH 03/11] Did the necessary docstring cleanup as discussed in #590 --- earthaccess/auth.py | 7 ++++--- earthaccess/search.py | 7 +++++-- earthaccess/store.py | 3 +++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/earthaccess/auth.py b/earthaccess/auth.py index d8450c44..0efeca84 100644 --- a/earthaccess/auth.py +++ b/earthaccess/auth.py @@ -47,9 +47,8 @@ def __init__( if username and password: self.auth = (username, password) - # Overrides from the library to keep headers when redirected to or from - # the NASA auth host. def rebuild_auth(self, prepared_request: Any, response: Any) -> None: + """Overrides from the library to keep headers when redirected to or from the NASA auth host.""" headers = prepared_request.headers url = prepared_request.url @@ -93,7 +92,7 @@ def login( * **"environment"**: Retrieve a username and password from $EARTHDATA_USERNAME and $EARTHDATA_PASSWORD. persist: Will persist credentials in a `.netrc` file. - system (Env): the EDL endpoint to log in to Earthdata, defaults to PROD + system: the EDL endpoint to log in to Earthdata, defaults to PROD Returns: An instance of Auth. @@ -132,6 +131,7 @@ def _set_earthdata_system(self, system: System) -> None: def refresh_tokens(self) -> bool: """Refresh CMR tokens. + Tokens are used to do authenticated queries on CMR for restricted and early access datasets. This method renews the tokens to make sure we can query the collections allowed to our EDL user. """ @@ -188,6 +188,7 @@ def get_s3_credentials( endpoint: Optional[str] = None, ) -> Dict[str, str]: """Gets AWS S3 credentials for a given NASA cloud provider. + The easier way is to use the DAAC short name; provider is optional if we know it. Parameters: diff --git a/earthaccess/search.py b/earthaccess/search.py index 6dd7f004..db6d5bb8 100644 --- a/earthaccess/search.py +++ b/earthaccess/search.py @@ -114,8 +114,9 @@ def __init__(self, auth: Optional[Auth] = None, *args: Any, **kwargs: Any) -> No @override def hits(self) -> int: - """Returns the number of hits the current query will return. This is done by - making a lightweight query to CMR and inspecting the returned headers. + """Returns the number of hits the current query will return. + + This is done by making a lightweight query to CMR and inspecting the returned headers. Restricted datasets will always return zero results even if there are results. Returns: @@ -469,6 +470,7 @@ def __init__(self, auth: Optional[Auth] = None, *args: Any, **kwargs: Any) -> No @override def hits(self) -> int: """Returns the number of hits the current query will return. + This is done by making a lightweight query to CMR and inspecting the returned headers. @@ -561,6 +563,7 @@ def parameters(self, **kwargs: Any) -> Self: @override def provider(self, provider: str) -> Self: """Only match collections from a given provider. + A NASA datacenter or DAAC can have one or more providers. For example, PODAAC is a data center or DAAC, PODAAC is the default provider for on-prem data, and POCLOUD is diff --git a/earthaccess/store.py b/earthaccess/store.py index fa0e8a99..147e6ce8 100644 --- a/earthaccess/store.py +++ b/earthaccess/store.py @@ -165,6 +165,7 @@ def set_requests_session( self, url: str, method: str = "get", bearer_token: bool = False ) -> None: """Sets up a `requests` session with bearer tokens that are used by CMR. + Mainly used to get the authentication cookies from different DAACs and URS. This HTTPS session can be used to download granules if we want to use a direct, lower level API. @@ -265,6 +266,7 @@ def get_s3fs_session( @lru_cache def get_fsspec_session(self) -> fsspec.AbstractFileSystem: """Returns a fsspec HTTPS session with bearer tokens that are used by CMR. + This HTTPS session can be used to download granules if we want to use a direct, lower level API. @@ -283,6 +285,7 @@ def get_fsspec_session(self) -> fsspec.AbstractFileSystem: def get_requests_session(self, bearer_token: bool = True) -> requests.Session: """Returns a requests HTTPS session with bearer tokens that are used by CMR. + This HTTPS session can be used to download granules if we want to use a direct, lower level API. From 5f80ffbbd6e52ed9a52c5b36f1c21eeae3faf22b Mon Sep 17 00:00:00 2001 From: Joseph H Kennedy Date: Tue, 11 Jun 2024 09:37:10 -0800 Subject: [PATCH 04/11] Add mkdocs-redirects to ci/environment-dev.yml for "reasons" --- ci/environment-dev.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/environment-dev.yml b/ci/environment-dev.yml index 9982dad2..60ebcac8 100644 --- a/ci/environment-dev.yml +++ b/ci/environment-dev.yml @@ -14,6 +14,7 @@ dependencies: - mkdocs>=1.2 - mkdocs-material>=7.1,<9.0 - markdown-include>=0.6 + - mkdocs-redirects>=1.2.1 - mkdocstrings>=0.19.0 - mkdocstrings-python - mkdocs-jupyter>=0.19.0 From e8c5d0d5c4d1de6566fe2406b2448d284c82e847 Mon Sep 17 00:00:00 2001 From: Ian Carroll Date: Thu, 13 Jun 2024 12:51:17 -0400 Subject: [PATCH 05/11] remove unused provider list --- earthaccess/daac.py | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/earthaccess/daac.py b/earthaccess/daac.py index 896ffdfa..2812cb4b 100644 --- a/earthaccess/daac.py +++ b/earthaccess/daac.py @@ -106,18 +106,6 @@ ] -CLOUD_PROVIDERS = [ - "GES_DISC", - "LPCLOUD", - "NSIDC_CPRD", - "POCLOUD", - "ASF", - "GHRC_DAAC", - "ORNL_CLOUD", - "LAADS", - "LARC_CLOUD", -] - # Some testing urls behind EDL DAAC_TEST_URLS = [ "https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/JASON_CS_S6A_L2_ALT_LR_STD_OST_NRT_F/", From d7331f4687e5cb458e4ed813d5be7db3c01130d8 Mon Sep 17 00:00:00 2001 From: Ian Carroll Date: Fri, 21 Jun 2024 14:36:44 -0400 Subject: [PATCH 06/11] better pypi links --- pyproject.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 245dc849..0e15f45d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,8 @@ [tool.poetry] name = "earthaccess" version = "0.9.0" -homepage = "https://github.com/nsidc/earthaccess" +repository = "https://github.com/nsidc/earthaccess" +documentation = "https://earthaccess.readthedocs.io" description = "Client library for NASA Earthdata APIs" authors = ["earthaccess contributors"] maintainers = [ From c06693d32c1c6db42d2c7f4e297575c807a9f3b3 Mon Sep 17 00:00:00 2001 From: Sherwin-14 Date: Sun, 23 Jun 2024 19:42:00 +0530 Subject: [PATCH 07/11] Initial draft --- docs/maintainers-guide.md | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 docs/maintainers-guide.md diff --git a/docs/maintainers-guide.md b/docs/maintainers-guide.md new file mode 100644 index 00000000..8052f8e8 --- /dev/null +++ b/docs/maintainers-guide.md @@ -0,0 +1,59 @@ +# Maintainers Guide + +This page offers guidance to project maintainers regarding our setup procedures, release processes, package creation, and other related tasks. + +# Maintainer Onboarding and Best Practices + +## Becoming a Maintainer or Triager + +If you are interested in becoming a maintainer, you can join our community. We expect you to be actively involved. + +Also, if you're interested in helping managing issues with labels and interacting with incoming requests, you can have a "triager" role! + +## Maintainer Responsibilities and Expectations + +1. As a maintainer, there is no strict time obligation, as we understand that everyone's ability to commit can fluctuate. However, we do expect maintainers to communicate openly and transparently with the team and the community. + +2. As a maintainer, you are expected to uphold a positive and inclusive team culture. This includes following the guidelines outlined in the [Openscapes team culture page](https://openscapes.github.io/series/core-lessons/team-culture.html) and the [recorded psychological safety talk](https://www.youtube.com/watch?v=rzi-qkl8u5M) . By doing so, you can help ensure that all team members and contributors feel safe, respected, and valued. + + +## Maintainer Processes Beyond Regular Contributing + +1. As a maintainer, label issues clearly and consistently to help contributors identify issue types and priority. Use 'good first issue' for contributor-friendly issues. + +2. As a maintainer, create welcoming environment when communicating with contributors (issue / PR / discussion posters). + +3. As a maintainer reviewing and merging contributions is critical. Here are some best practices: + + 3a. Review contributions thoroughly. + + 3b. Provide constructive feedback. + + 3c. Communicate clearly and respectfully. + + 3d. Merge contributions promptly. + +4. As a maintainer, you will be releasing different versions. More on this in [here](#making-a-release). + +# Branches + +main: This is the main branch, which is consistently tested and prepared for release as a new version. Avoid pushing changes directly to this branch. Instead, create a new branch and submit a pull request for any modifications. + +gh-pages: This branch hosts HTML docs, updated by GitHub Actions. Don't commit directly. Make changes in a separate branch, then submit a pull request. GitHub Actions will automatically update docs on gh-pages when merged. + +# Continuous Integration + +The GitHub Actions CI services handle the project's building, testing, and management across Linux, macOS, and Windows platforms. The CI file manages the continuous integration processes, and list out their respective dependencies. Here we briefly summarize the functions of the files in CI. + +```environment-dev.yml ``` - The environment configuration file specifies dependencies for Python development. + +```environment-mindeps.yaml``` - The test-environment file lists required and test dependencies for a testing environment. + +# Continuous Documentation + +The Read the Docs service is used to preview documentation changes made in pull requests. This service uses a configuration file, ```.readthedocs.yaml```. + +# Making a Release + +To automate releases, we employ a script called ```publish.sh``` in the scripts folder. This script utilizes Poetry for managing and publishing the package to PyPI. + From b4d27f7e407c56eeb432f9e31ccf7e94abcb8e0a Mon Sep 17 00:00:00 2001 From: Sherwin-14 Date: Mon, 24 Jun 2024 13:38:21 +0530 Subject: [PATCH 08/11] Made the discusssed changes --- docs/maintainers-guide.md | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/docs/maintainers-guide.md b/docs/maintainers-guide.md index 8052f8e8..123a6f6c 100644 --- a/docs/maintainers-guide.md +++ b/docs/maintainers-guide.md @@ -2,22 +2,24 @@ This page offers guidance to project maintainers regarding our setup procedures, release processes, package creation, and other related tasks. -# Maintainer Onboarding and Best Practices +## Maintainer Onboarding and Best Practices -## Becoming a Maintainer or Triager +### Becoming a Maintainer or Triager -If you are interested in becoming a maintainer, you can join our community. We expect you to be actively involved. +If you are interested in becoming a maintainer, you can join our community. Maintainers have several important responsibilities, so please read on to understand the role. Also, if you're interested in helping managing issues with labels and interacting with incoming requests, you can have a "triager" role! -## Maintainer Responsibilities and Expectations +To get permissions, please start by participating on GitHub by answering questions, reviewing PRs, or contributing code or documentation. Once you're feeling comfortable, you can ask any of our maintainers for permissions by `@`ing them on GitHub. + +### Maintainer Responsibilities and Expectations 1. As a maintainer, there is no strict time obligation, as we understand that everyone's ability to commit can fluctuate. However, we do expect maintainers to communicate openly and transparently with the team and the community. 2. As a maintainer, you are expected to uphold a positive and inclusive team culture. This includes following the guidelines outlined in the [Openscapes team culture page](https://openscapes.github.io/series/core-lessons/team-culture.html) and the [recorded psychological safety talk](https://www.youtube.com/watch?v=rzi-qkl8u5M) . By doing so, you can help ensure that all team members and contributors feel safe, respected, and valued. -## Maintainer Processes Beyond Regular Contributing +### Maintainer Processes Beyond Regular Contributing 1. As a maintainer, label issues clearly and consistently to help contributors identify issue types and priority. Use 'good first issue' for contributor-friendly issues. @@ -33,27 +35,24 @@ Also, if you're interested in helping managing issues with labels and interactin 3d. Merge contributions promptly. -4. As a maintainer, you will be releasing different versions. More on this in [here](#making-a-release). +4. As a maintainer, you will be releasing different versions. More on this in [here](./contributing/releasing.md). -# Branches +## Branches main: This is the main branch, which is consistently tested and prepared for release as a new version. Avoid pushing changes directly to this branch. Instead, create a new branch and submit a pull request for any modifications. -gh-pages: This branch hosts HTML docs, updated by GitHub Actions. Don't commit directly. Make changes in a separate branch, then submit a pull request. GitHub Actions will automatically update docs on gh-pages when merged. -# Continuous Integration +## Continuous Integration & Delivery -The GitHub Actions CI services handle the project's building, testing, and management across Linux, macOS, and Windows platforms. The CI file manages the continuous integration processes, and list out their respective dependencies. Here we briefly summarize the functions of the files in CI. +The GitHub Actions CI services handle the project's building, testing, and management across Linux, macOS, and Windows platforms. The CI files can be found in the `./.github/workflows/` which manage the continuous integration process, the dependencies are listed out in the `./ci/environment-dev.yml` file. Here we briefly summarize the functions of the files in the `./ci/` directory. -```environment-dev.yml ``` - The environment configuration file specifies dependencies for Python development. +`environment-dev.yml` - The environment configuration file specifies dependencies for Python development. -```environment-mindeps.yaml``` - The test-environment file lists required and test dependencies for a testing environment. +`environment-mindeps.yaml`- Specifies an environment with the minimum supported dependency versions to detect backwards-incompatible code. -# Continuous Documentation +## Continuous Documentation -The Read the Docs service is used to preview documentation changes made in pull requests. This service uses a configuration file, ```.readthedocs.yaml```. +[ReadTheDocs](https://readthedocs.org/projects/earthaccess/) is used to generate and host [our documentation website](https://earthaccess.readthedocs.io/) as well as the preview for documentation changes made in pull requests. This service uses a configuration file in the root of the project, `.readthedocs.yml`. -# Making a Release -To automate releases, we employ a script called ```publish.sh``` in the scripts folder. This script utilizes Poetry for managing and publishing the package to PyPI. From 0fe3a16b122aeb9876107cac7734f2d34dd32440 Mon Sep 17 00:00:00 2001 From: Sherwin-14 Date: Tue, 25 Jun 2024 13:48:03 +0530 Subject: [PATCH 09/11] Added to the work with us section --- docs/{ => contributing}/maintainers-guide.md | 4 ++-- mkdocs.yml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) rename docs/{ => contributing}/maintainers-guide.md (91%) diff --git a/docs/maintainers-guide.md b/docs/contributing/maintainers-guide.md similarity index 91% rename from docs/maintainers-guide.md rename to docs/contributing/maintainers-guide.md index 123a6f6c..1ac2fc79 100644 --- a/docs/maintainers-guide.md +++ b/docs/contributing/maintainers-guide.md @@ -35,7 +35,7 @@ To get permissions, please start by participating on GitHub by answering questio 3d. Merge contributions promptly. -4. As a maintainer, you will be releasing different versions. More on this in [here](./contributing/releasing.md). +4. As a maintainer, you will be releasing different versions. More on this in [here](./releasing.md). ## Branches @@ -44,7 +44,7 @@ main: This is the main branch, which is consistently tested and prepared for rel ## Continuous Integration & Delivery -The GitHub Actions CI services handle the project's building, testing, and management across Linux, macOS, and Windows platforms. The CI files can be found in the `./.github/workflows/` which manage the continuous integration process, the dependencies are listed out in the `./ci/environment-dev.yml` file. Here we briefly summarize the functions of the files in the `./ci/` directory. +The GitHub Actions CI services handle the project's building, testing, and management across Linux, macOS, and Windows platforms. The CI configuration files can be found in the `./.github/workflows/`. Here we briefly summarize the functions of the files in the `./ci/` directory. `environment-dev.yml` - The environment configuration file specifies dependencies for Python development. diff --git a/mkdocs.yml b/mkdocs.yml index 579e0787..14317502 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -60,6 +60,8 @@ nav: - "Development": "contributing/development.md" - "Releasing": "contributing/releasing.md" - "Our meet-ups": "contributing/our-meet-ups.md" + + - "Maintainers Guide": "contributing/maintainers-guide.md" - "Resources": "resources.md" - USER GUIDE: - "user_guide/index.md" From 8b6bcc232e7529fce04a75037c1e192eca5513c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Jul 2024 04:55:21 +0000 Subject: [PATCH 10/11] Bump the pip-dependencies group with 9 updates Bumps the pip-dependencies group with 9 updates: | Package | From | To | | --- | --- | --- | | [numpy](https://github.com/numpy/numpy) | `1.26.4` | `2.0.0` | | [dask](https://github.com/dask/dask) | `2024.5.2` | `2024.6.2` | | [mypy](https://github.com/python/mypy) | `1.10.0` | `1.10.1` | | [jupyterlab](https://github.com/jupyterlab/jupyterlab) | `4.2.2` | `4.2.3` | | [responses](https://github.com/getsentry/responses) | `0.25.2` | `0.25.3` | | [ruff](https://github.com/astral-sh/ruff) | `0.4.8` | `0.5.0` | | [types-setuptools](https://github.com/python/typeshed) | `70.0.0.20240524` | `70.1.0.20240627` | | [xarray](https://github.com/pydata/xarray) | `2024.5.0` | `2024.6.0` | | [bump-my-version](https://github.com/callowayproject/bump-my-version) | `0.22.0` | `0.24.1` | Updates `numpy` from 1.26.4 to 2.0.0 - [Release notes](https://github.com/numpy/numpy/releases) - [Changelog](https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst) - [Commits](https://github.com/numpy/numpy/compare/v1.26.4...v2.0.0) Updates `dask` from 2024.5.2 to 2024.6.2 - [Release notes](https://github.com/dask/dask/releases) - [Changelog](https://github.com/dask/dask/blob/main/docs/release-procedure.md) - [Commits](https://github.com/dask/dask/compare/2024.5.2...2024.6.2) Updates `mypy` from 1.10.0 to 1.10.1 - [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md) - [Commits](https://github.com/python/mypy/compare/v1.10.0...v1.10.1) Updates `jupyterlab` from 4.2.2 to 4.2.3 - [Release notes](https://github.com/jupyterlab/jupyterlab/releases) - [Changelog](https://github.com/jupyterlab/jupyterlab/blob/@jupyterlab/lsp@4.2.3/CHANGELOG.md) - [Commits](https://github.com/jupyterlab/jupyterlab/compare/@jupyterlab/lsp@4.2.2...@jupyterlab/lsp@4.2.3) Updates `responses` from 0.25.2 to 0.25.3 - [Release notes](https://github.com/getsentry/responses/releases) - [Changelog](https://github.com/getsentry/responses/blob/master/CHANGES) - [Commits](https://github.com/getsentry/responses/compare/0.25.2...0.25.3) Updates `ruff` from 0.4.8 to 0.5.0 - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.8...0.5.0) Updates `types-setuptools` from 70.0.0.20240524 to 70.1.0.20240627 - [Commits](https://github.com/python/typeshed/commits) Updates `xarray` from 2024.5.0 to 2024.6.0 - [Release notes](https://github.com/pydata/xarray/releases) - [Changelog](https://github.com/pydata/xarray/blob/main/HOW_TO_RELEASE.md) - [Commits](https://github.com/pydata/xarray/compare/v2024.05.0...v2024.06.0) Updates `bump-my-version` from 0.22.0 to 0.24.1 - [Release notes](https://github.com/callowayproject/bump-my-version/releases) - [Changelog](https://github.com/callowayproject/bump-my-version/blob/master/CHANGELOG.md) - [Commits](https://github.com/callowayproject/bump-my-version/compare/0.22.0...0.24.1) --- updated-dependencies: - dependency-name: numpy dependency-type: direct:production update-type: version-update:semver-major dependency-group: pip-dependencies - dependency-name: dask dependency-type: direct:production update-type: version-update:semver-minor dependency-group: pip-dependencies - dependency-name: mypy dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pip-dependencies - dependency-name: jupyterlab dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pip-dependencies - dependency-name: responses dependency-type: direct:development update-type: version-update:semver-patch dependency-group: pip-dependencies - dependency-name: ruff dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pip-dependencies - dependency-name: types-setuptools dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pip-dependencies - dependency-name: xarray dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pip-dependencies - dependency-name: bump-my-version dependency-type: direct:development update-type: version-update:semver-minor dependency-group: pip-dependencies ... Signed-off-by: dependabot[bot] --- poetry.lock | 217 +++++++++++++++++++++++++++------------------------- 1 file changed, 114 insertions(+), 103 deletions(-) diff --git a/poetry.lock b/poetry.lock index 4412b582..00d277a3 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. [[package]] name = "aiobotocore" @@ -436,13 +436,13 @@ files = [ [[package]] name = "bump-my-version" -version = "0.22.0" +version = "0.24.1" description = "Version bump your Python project" optional = false python-versions = ">=3.8" files = [ - {file = "bump_my_version-0.22.0-py3-none-any.whl", hash = "sha256:57cd3ba68b8a84d774a9abd247a6c6323192151fa2b41f22eb6763cb17dfebee"}, - {file = "bump_my_version-0.22.0.tar.gz", hash = "sha256:b96f180d6aa154e98e199753e83847587609bd897df9114248e6392324c89620"}, + {file = "bump_my_version-0.24.1-py3-none-any.whl", hash = "sha256:400e2e116a0d04015c26cc0461f7b30ee9602601561162ff7929a1591c59d829"}, + {file = "bump_my_version-0.24.1.tar.gz", hash = "sha256:bf7a474aa23519405a739eaf15c782e4bb038e14ae6db234f53a1f61f8fe1441"}, ] [package.dependencies] @@ -845,13 +845,13 @@ tests = ["pytest", "pytest-cov", "pytest-xdist"] [[package]] name = "dask" -version = "2024.5.2" +version = "2024.6.2" description = "Parallel PyData with Task Scheduling" optional = true python-versions = ">=3.9" files = [ - {file = "dask-2024.5.2-py3-none-any.whl", hash = "sha256:acc2cfe41d9e0151c216ac40396dbe34df13bc3d8c51dfece190349e4f2243af"}, - {file = "dask-2024.5.2.tar.gz", hash = "sha256:5c9722c44d0195e78b6e54197aa3302e6fcaaac2310fd3014560bcb86253dcb3"}, + {file = "dask-2024.6.2-py3-none-any.whl", hash = "sha256:81b80ee015b2e057b93bb2d1bf13a866136e762e2b24bf54b6b621e8b86b7708"}, + {file = "dask-2024.6.2.tar.gz", hash = "sha256:d429d6b19e85fd1306ac37c188aaf99d03bbe69a6fe59d2b42882b2ac188686f"}, ] [package.dependencies] @@ -869,7 +869,7 @@ array = ["numpy (>=1.21)"] complete = ["dask[array,dataframe,diagnostics,distributed]", "lz4 (>=4.3.2)", "pyarrow (>=7.0)", "pyarrow-hotfix"] dataframe = ["dask-expr (>=1.1,<1.2)", "dask[array]", "pandas (>=1.3)"] diagnostics = ["bokeh (>=2.4.2)", "jinja2 (>=2.10.3)"] -distributed = ["distributed (==2024.5.2)"] +distributed = ["distributed (==2024.6.2)"] test = ["pandas[test]", "pre-commit", "pytest", "pytest-cov", "pytest-rerunfailures", "pytest-timeout", "pytest-xdist"] [[package]] @@ -1784,13 +1784,13 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.2.2" +version = "4.2.3" description = "JupyterLab computational environment" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab-4.2.2-py3-none-any.whl", hash = "sha256:59ee9b839f43308c3dfd55d72d1f1a299ed42a7f91f2d1afe9c12a783f9e525f"}, - {file = "jupyterlab-4.2.2.tar.gz", hash = "sha256:a534b6a25719a92a40d514fb133a9fe8f0d9981b0bbce5d8a5fcaa33344a3038"}, + {file = "jupyterlab-4.2.3-py3-none-any.whl", hash = "sha256:0b59d11808e84bb84105c73364edfa867dd475492429ab34ea388a52f2e2e596"}, + {file = "jupyterlab-4.2.3.tar.gz", hash = "sha256:df6e46969ea51d66815167f23d92f105423b7f1f06fa604d4f44aeb018c82c7b"}, ] [package.dependencies] @@ -2757,38 +2757,38 @@ files = [ [[package]] name = "mypy" -version = "1.10.0" +version = "1.10.1" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" files = [ - {file = "mypy-1.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:da1cbf08fb3b851ab3b9523a884c232774008267b1f83371ace57f412fe308c2"}, - {file = "mypy-1.10.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:12b6bfc1b1a66095ab413160a6e520e1dc076a28f3e22f7fb25ba3b000b4ef99"}, - {file = "mypy-1.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e36fb078cce9904c7989b9693e41cb9711e0600139ce3970c6ef814b6ebc2b2"}, - {file = "mypy-1.10.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2b0695d605ddcd3eb2f736cd8b4e388288c21e7de85001e9f85df9187f2b50f9"}, - {file = "mypy-1.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:cd777b780312ddb135bceb9bc8722a73ec95e042f911cc279e2ec3c667076051"}, - {file = "mypy-1.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3be66771aa5c97602f382230165b856c231d1277c511c9a8dd058be4784472e1"}, - {file = "mypy-1.10.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8b2cbaca148d0754a54d44121b5825ae71868c7592a53b7292eeb0f3fdae95ee"}, - {file = "mypy-1.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ec404a7cbe9fc0e92cb0e67f55ce0c025014e26d33e54d9e506a0f2d07fe5de"}, - {file = "mypy-1.10.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e22e1527dc3d4aa94311d246b59e47f6455b8729f4968765ac1eacf9a4760bc7"}, - {file = "mypy-1.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:a87dbfa85971e8d59c9cc1fcf534efe664d8949e4c0b6b44e8ca548e746a8d53"}, - {file = "mypy-1.10.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a781f6ad4bab20eef8b65174a57e5203f4be627b46291f4589879bf4e257b97b"}, - {file = "mypy-1.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b808e12113505b97d9023b0b5e0c0705a90571c6feefc6f215c1df9381256e30"}, - {file = "mypy-1.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f55583b12156c399dce2df7d16f8a5095291354f1e839c252ec6c0611e86e2e"}, - {file = "mypy-1.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4cf18f9d0efa1b16478c4c129eabec36148032575391095f73cae2e722fcf9d5"}, - {file = "mypy-1.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:bc6ac273b23c6b82da3bb25f4136c4fd42665f17f2cd850771cb600bdd2ebeda"}, - {file = "mypy-1.10.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9fd50226364cd2737351c79807775136b0abe084433b55b2e29181a4c3c878c0"}, - {file = "mypy-1.10.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f90cff89eea89273727d8783fef5d4a934be2fdca11b47def50cf5d311aff727"}, - {file = "mypy-1.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fcfc70599efde5c67862a07a1aaf50e55bce629ace26bb19dc17cece5dd31ca4"}, - {file = "mypy-1.10.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:075cbf81f3e134eadaf247de187bd604748171d6b79736fa9b6c9685b4083061"}, - {file = "mypy-1.10.0-cp38-cp38-win_amd64.whl", hash = "sha256:3f298531bca95ff615b6e9f2fc0333aae27fa48052903a0ac90215021cdcfa4f"}, - {file = "mypy-1.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fa7ef5244615a2523b56c034becde4e9e3f9b034854c93639adb667ec9ec2976"}, - {file = "mypy-1.10.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3236a4c8f535a0631f85f5fcdffba71c7feeef76a6002fcba7c1a8e57c8be1ec"}, - {file = "mypy-1.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a2b5cdbb5dd35aa08ea9114436e0d79aceb2f38e32c21684dcf8e24e1e92821"}, - {file = "mypy-1.10.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92f93b21c0fe73dc00abf91022234c79d793318b8a96faac147cd579c1671746"}, - {file = "mypy-1.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:28d0e038361b45f099cc086d9dd99c15ff14d0188f44ac883010e172ce86c38a"}, - {file = "mypy-1.10.0-py3-none-any.whl", hash = "sha256:f8c083976eb530019175aabadb60921e73b4f45736760826aa1689dda8208aee"}, - {file = "mypy-1.10.0.tar.gz", hash = "sha256:3d087fcbec056c4ee34974da493a826ce316947485cef3901f511848e687c131"}, + {file = "mypy-1.10.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e36f229acfe250dc660790840916eb49726c928e8ce10fbdf90715090fe4ae02"}, + {file = "mypy-1.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:51a46974340baaa4145363b9e051812a2446cf583dfaeba124af966fa44593f7"}, + {file = "mypy-1.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:901c89c2d67bba57aaaca91ccdb659aa3a312de67f23b9dfb059727cce2e2e0a"}, + {file = "mypy-1.10.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0cd62192a4a32b77ceb31272d9e74d23cd88c8060c34d1d3622db3267679a5d9"}, + {file = "mypy-1.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:a2cbc68cb9e943ac0814c13e2452d2046c2f2b23ff0278e26599224cf164e78d"}, + {file = "mypy-1.10.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bd6f629b67bb43dc0d9211ee98b96d8dabc97b1ad38b9b25f5e4c4d7569a0c6a"}, + {file = "mypy-1.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a1bbb3a6f5ff319d2b9d40b4080d46cd639abe3516d5a62c070cf0114a457d84"}, + {file = "mypy-1.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8edd4e9bbbc9d7b79502eb9592cab808585516ae1bcc1446eb9122656c6066f"}, + {file = "mypy-1.10.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6166a88b15f1759f94a46fa474c7b1b05d134b1b61fca627dd7335454cc9aa6b"}, + {file = "mypy-1.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:5bb9cd11c01c8606a9d0b83ffa91d0b236a0e91bc4126d9ba9ce62906ada868e"}, + {file = "mypy-1.10.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d8681909f7b44d0b7b86e653ca152d6dff0eb5eb41694e163c6092124f8246d7"}, + {file = "mypy-1.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:378c03f53f10bbdd55ca94e46ec3ba255279706a6aacaecac52ad248f98205d3"}, + {file = "mypy-1.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6bacf8f3a3d7d849f40ca6caea5c055122efe70e81480c8328ad29c55c69e93e"}, + {file = "mypy-1.10.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:701b5f71413f1e9855566a34d6e9d12624e9e0a8818a5704d74d6b0402e66c04"}, + {file = "mypy-1.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:3c4c2992f6ea46ff7fce0072642cfb62af7a2484efe69017ed8b095f7b39ef31"}, + {file = "mypy-1.10.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:604282c886497645ffb87b8f35a57ec773a4a2721161e709a4422c1636ddde5c"}, + {file = "mypy-1.10.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37fd87cab83f09842653f08de066ee68f1182b9b5282e4634cdb4b407266bade"}, + {file = "mypy-1.10.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8addf6313777dbb92e9564c5d32ec122bf2c6c39d683ea64de6a1fd98b90fe37"}, + {file = "mypy-1.10.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5cc3ca0a244eb9a5249c7c583ad9a7e881aa5d7b73c35652296ddcdb33b2b9c7"}, + {file = "mypy-1.10.1-cp38-cp38-win_amd64.whl", hash = "sha256:1b3a2ffce52cc4dbaeee4df762f20a2905aa171ef157b82192f2e2f368eec05d"}, + {file = "mypy-1.10.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fe85ed6836165d52ae8b88f99527d3d1b2362e0cb90b005409b8bed90e9059b3"}, + {file = "mypy-1.10.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c2ae450d60d7d020d67ab440c6e3fae375809988119817214440033f26ddf7bf"}, + {file = "mypy-1.10.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6be84c06e6abd72f960ba9a71561c14137a583093ffcf9bbfaf5e613d63fa531"}, + {file = "mypy-1.10.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2189ff1e39db399f08205e22a797383613ce1cb0cb3b13d8bcf0170e45b96cc3"}, + {file = "mypy-1.10.1-cp39-cp39-win_amd64.whl", hash = "sha256:97a131ee36ac37ce9581f4220311247ab6cba896b4395b9c87af0675a13a755f"}, + {file = "mypy-1.10.1-py3-none-any.whl", hash = "sha256:71d8ac0b906354ebda8ef1673e5fde785936ac1f29ff6987c7483cfbd5a4235a"}, + {file = "mypy-1.10.1.tar.gz", hash = "sha256:1f8f492d7db9e3593ef42d4f115f04e556130f2819ad33ab84551403e97dd4c0"}, ] [package.dependencies] @@ -2975,47 +2975,56 @@ zfpy = ["zfpy (>=1.0.0)"] [[package]] name = "numpy" -version = "1.26.4" +version = "2.0.0" description = "Fundamental package for array computing in Python" optional = false python-versions = ">=3.9" files = [ - {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, - {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, - {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, - {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, - {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, - {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, - {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, - {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, - {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, - {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, - {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, + {file = "numpy-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:04494f6ec467ccb5369d1808570ae55f6ed9b5809d7f035059000a37b8d7e86f"}, + {file = "numpy-2.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2635dbd200c2d6faf2ef9a0d04f0ecc6b13b3cad54f7c67c61155138835515d2"}, + {file = "numpy-2.0.0-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:0a43f0974d501842866cc83471bdb0116ba0dffdbaac33ec05e6afed5b615238"}, + {file = "numpy-2.0.0-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:8d83bb187fb647643bd56e1ae43f273c7f4dbcdf94550d7938cfc32566756514"}, + {file = "numpy-2.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79e843d186c8fb1b102bef3e2bc35ef81160ffef3194646a7fdd6a73c6b97196"}, + {file = "numpy-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d7696c615765091cc5093f76fd1fa069870304beaccfd58b5dcc69e55ef49c1"}, + {file = "numpy-2.0.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b4c76e3d4c56f145d41b7b6751255feefae92edbc9a61e1758a98204200f30fc"}, + {file = "numpy-2.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:acd3a644e4807e73b4e1867b769fbf1ce8c5d80e7caaef0d90dcdc640dfc9787"}, + {file = "numpy-2.0.0-cp310-cp310-win32.whl", hash = "sha256:cee6cc0584f71adefe2c908856ccc98702baf95ff80092e4ca46061538a2ba98"}, + {file = "numpy-2.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:ed08d2703b5972ec736451b818c2eb9da80d66c3e84aed1deeb0c345fefe461b"}, + {file = "numpy-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ad0c86f3455fbd0de6c31a3056eb822fc939f81b1618f10ff3406971893b62a5"}, + {file = "numpy-2.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e7f387600d424f91576af20518334df3d97bc76a300a755f9a8d6e4f5cadd289"}, + {file = "numpy-2.0.0-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:34f003cb88b1ba38cb9a9a4a3161c1604973d7f9d5552c38bc2f04f829536609"}, + {file = "numpy-2.0.0-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:b6f6a8f45d0313db07d6d1d37bd0b112f887e1369758a5419c0370ba915b3871"}, + {file = "numpy-2.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f64641b42b2429f56ee08b4f427a4d2daf916ec59686061de751a55aafa22e4"}, + {file = "numpy-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a7039a136017eaa92c1848152827e1424701532ca8e8967fe480fe1569dae581"}, + {file = "numpy-2.0.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:46e161722e0f619749d1cd892167039015b2c2817296104487cd03ed4a955995"}, + {file = "numpy-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0e50842b2295ba8414c8c1d9d957083d5dfe9e16828b37de883f51fc53c4016f"}, + {file = "numpy-2.0.0-cp311-cp311-win32.whl", hash = "sha256:2ce46fd0b8a0c947ae047d222f7136fc4d55538741373107574271bc00e20e8f"}, + {file = "numpy-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:fbd6acc766814ea6443628f4e6751d0da6593dae29c08c0b2606164db026970c"}, + {file = "numpy-2.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:354f373279768fa5a584bac997de6a6c9bc535c482592d7a813bb0c09be6c76f"}, + {file = "numpy-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4d2f62e55a4cd9c58c1d9a1c9edaedcd857a73cb6fda875bf79093f9d9086f85"}, + {file = "numpy-2.0.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:1e72728e7501a450288fc8e1f9ebc73d90cfd4671ebbd631f3e7857c39bd16f2"}, + {file = "numpy-2.0.0-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:84554fc53daa8f6abf8e8a66e076aff6ece62de68523d9f665f32d2fc50fd66e"}, + {file = "numpy-2.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c73aafd1afca80afecb22718f8700b40ac7cab927b8abab3c3e337d70e10e5a2"}, + {file = "numpy-2.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49d9f7d256fbc804391a7f72d4a617302b1afac1112fac19b6c6cec63fe7fe8a"}, + {file = "numpy-2.0.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:0ec84b9ba0654f3b962802edc91424331f423dcf5d5f926676e0150789cb3d95"}, + {file = "numpy-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:feff59f27338135776f6d4e2ec7aeeac5d5f7a08a83e80869121ef8164b74af9"}, + {file = "numpy-2.0.0-cp312-cp312-win32.whl", hash = "sha256:c5a59996dc61835133b56a32ebe4ef3740ea5bc19b3983ac60cc32be5a665d54"}, + {file = "numpy-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:a356364941fb0593bb899a1076b92dfa2029f6f5b8ba88a14fd0984aaf76d0df"}, + {file = "numpy-2.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e61155fae27570692ad1d327e81c6cf27d535a5d7ef97648a17d922224b216de"}, + {file = "numpy-2.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4554eb96f0fd263041baf16cf0881b3f5dafae7a59b1049acb9540c4d57bc8cb"}, + {file = "numpy-2.0.0-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:903703372d46bce88b6920a0cd86c3ad82dae2dbef157b5fc01b70ea1cfc430f"}, + {file = "numpy-2.0.0-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:3e8e01233d57639b2e30966c63d36fcea099d17c53bf424d77f088b0f4babd86"}, + {file = "numpy-2.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cde1753efe513705a0c6d28f5884e22bdc30438bf0085c5c486cdaff40cd67a"}, + {file = "numpy-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:821eedb7165ead9eebdb569986968b541f9908979c2da8a4967ecac4439bae3d"}, + {file = "numpy-2.0.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a1712c015831da583b21c5bfe15e8684137097969c6d22e8316ba66b5baabe4"}, + {file = "numpy-2.0.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:9c27f0946a3536403efb0e1c28def1ae6730a72cd0d5878db38824855e3afc44"}, + {file = "numpy-2.0.0-cp39-cp39-win32.whl", hash = "sha256:63b92c512d9dbcc37f9d81b123dec99fdb318ba38c8059afc78086fe73820275"}, + {file = "numpy-2.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:3f6bed7f840d44c08ebdb73b1825282b801799e325bcbdfa6bc5c370e5aecc65"}, + {file = "numpy-2.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9416a5c2e92ace094e9f0082c5fd473502c91651fb896bc17690d6fc475128d6"}, + {file = "numpy-2.0.0-pp39-pypy39_pp73-macosx_14_0_x86_64.whl", hash = "sha256:17067d097ed036636fa79f6a869ac26df7db1ba22039d962422506640314933a"}, + {file = "numpy-2.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ecb5b0582cd125f67a629072fed6f83562d9dd04d7e03256c9829bdec027ad"}, + {file = "numpy-2.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:cef04d068f5fb0518a77857953193b6bb94809a806bd0a14983a8f12ada060c9"}, + {file = "numpy-2.0.0.tar.gz", hash = "sha256:cf5d1c9e6837f8af9f92b6bd3e86d513cdc11f60fd62185cc49ec7d1aba34864"}, ] [[package]] @@ -3845,6 +3854,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -4136,13 +4146,13 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "responses" -version = "0.25.2" +version = "0.25.3" description = "A utility library for mocking out the `requests` Python library." optional = false python-versions = ">=3.8" files = [ - {file = "responses-0.25.2-py3-none-any.whl", hash = "sha256:b59707ea25de536d324670791ab073fafd41f3a351cec9c51cb6147089a9a30a"}, - {file = "responses-0.25.2.tar.gz", hash = "sha256:77a61ad7e6016ed2ac00739b7efa5f35c42351d5b9b5d26bb1be87f197632487"}, + {file = "responses-0.25.3-py3-none-any.whl", hash = "sha256:521efcbc82081ab8daa588e08f7e8a64ce79b91c39f6e62199b19159bea7dbcb"}, + {file = "responses-0.25.3.tar.gz", hash = "sha256:617b9247abd9ae28313d57a75880422d55ec63c29d33d629697590a034358dba"}, ] [package.dependencies] @@ -4326,28 +4336,29 @@ files = [ [[package]] name = "ruff" -version = "0.4.8" +version = "0.5.0" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.4.8-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:7663a6d78f6adb0eab270fa9cf1ff2d28618ca3a652b60f2a234d92b9ec89066"}, - {file = "ruff-0.4.8-py3-none-macosx_11_0_arm64.whl", hash = "sha256:eeceb78da8afb6de0ddada93112869852d04f1cd0f6b80fe464fd4e35c330913"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aad360893e92486662ef3be0a339c5ca3c1b109e0134fcd37d534d4be9fb8de3"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:284c2e3f3396fb05f5f803c9fffb53ebbe09a3ebe7dda2929ed8d73ded736deb"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a7354f921e3fbe04d2a62d46707e569f9315e1a613307f7311a935743c51a764"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:72584676164e15a68a15778fd1b17c28a519e7a0622161eb2debdcdabdc71883"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9678d5c9b43315f323af2233a04d747409d1e3aa6789620083a82d1066a35199"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704977a658131651a22b5ebeb28b717ef42ac6ee3b11e91dc87b633b5d83142b"}, - {file = "ruff-0.4.8-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d05f8d6f0c3cce5026cecd83b7a143dcad503045857bc49662f736437380ad45"}, - {file = "ruff-0.4.8-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:6ea874950daca5697309d976c9afba830d3bf0ed66887481d6bca1673fc5b66a"}, - {file = "ruff-0.4.8-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:fc95aac2943ddf360376be9aa3107c8cf9640083940a8c5bd824be692d2216dc"}, - {file = "ruff-0.4.8-py3-none-musllinux_1_2_i686.whl", hash = "sha256:384154a1c3f4bf537bac69f33720957ee49ac8d484bfc91720cc94172026ceed"}, - {file = "ruff-0.4.8-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:e9d5ce97cacc99878aa0d084c626a15cd21e6b3d53fd6f9112b7fc485918e1fa"}, - {file = "ruff-0.4.8-py3-none-win32.whl", hash = "sha256:6d795d7639212c2dfd01991259460101c22aabf420d9b943f153ab9d9706e6a9"}, - {file = "ruff-0.4.8-py3-none-win_amd64.whl", hash = "sha256:e14a3a095d07560a9d6769a72f781d73259655919d9b396c650fc98a8157555d"}, - {file = "ruff-0.4.8-py3-none-win_arm64.whl", hash = "sha256:14019a06dbe29b608f6b7cbcec300e3170a8d86efaddb7b23405cb7f7dcaf780"}, - {file = "ruff-0.4.8.tar.gz", hash = "sha256:16d717b1d57b2e2fd68bd0bf80fb43931b79d05a7131aa477d66fc40fbd86268"}, + {file = "ruff-0.5.0-py3-none-linux_armv6l.whl", hash = "sha256:ee770ea8ab38918f34e7560a597cc0a8c9a193aaa01bfbd879ef43cb06bd9c4c"}, + {file = "ruff-0.5.0-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:38f3b8327b3cb43474559d435f5fa65dacf723351c159ed0dc567f7ab735d1b6"}, + {file = "ruff-0.5.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:7594f8df5404a5c5c8f64b8311169879f6cf42142da644c7e0ba3c3f14130370"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:adc7012d6ec85032bc4e9065110df205752d64010bed5f958d25dbee9ce35de3"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d505fb93b0fabef974b168d9b27c3960714d2ecda24b6ffa6a87ac432905ea38"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9dc5cfd3558f14513ed0d5b70ce531e28ea81a8a3b1b07f0f48421a3d9e7d80a"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:db3ca35265de239a1176d56a464b51557fce41095c37d6c406e658cf80bbb362"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b1a321c4f68809fddd9b282fab6a8d8db796b270fff44722589a8b946925a2a8"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2c4dfcd8d34b143916994b3876b63d53f56724c03f8c1a33a253b7b1e6bf2a7d"}, + {file = "ruff-0.5.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:81e5facfc9f4a674c6a78c64d38becfbd5e4f739c31fcd9ce44c849f1fad9e4c"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e589e27971c2a3efff3fadafb16e5aef7ff93250f0134ec4b52052b673cf988d"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:d2ffbc3715a52b037bcb0f6ff524a9367f642cdc5817944f6af5479bbb2eb50e"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:cd096e23c6a4f9c819525a437fa0a99d1c67a1b6bb30948d46f33afbc53596cf"}, + {file = "ruff-0.5.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:46e193b36f2255729ad34a49c9a997d506e58f08555366b2108783b3064a0e1e"}, + {file = "ruff-0.5.0-py3-none-win32.whl", hash = "sha256:49141d267100f5ceff541b4e06552e98527870eafa1acc9dec9139c9ec5af64c"}, + {file = "ruff-0.5.0-py3-none-win_amd64.whl", hash = "sha256:e9118f60091047444c1b90952736ee7b1792910cab56e9b9a9ac20af94cd0440"}, + {file = "ruff-0.5.0-py3-none-win_arm64.whl", hash = "sha256:ed5c4df5c1fb4518abcb57725b576659542bdbe93366f4f329e8f398c4b71178"}, + {file = "ruff-0.5.0.tar.gz", hash = "sha256:eb641b5873492cf9bd45bc9c5ae5320648218e04386a5f0c264ad6ccce8226a1"}, ] [[package]] @@ -4637,13 +4648,13 @@ urllib3 = ">=2" [[package]] name = "types-setuptools" -version = "70.0.0.20240524" +version = "70.1.0.20240627" description = "Typing stubs for setuptools" optional = false python-versions = ">=3.8" files = [ - {file = "types-setuptools-70.0.0.20240524.tar.gz", hash = "sha256:e31fee7b9d15ef53980526579ac6089b3ae51a005a281acf97178e90ac71aff6"}, - {file = "types_setuptools-70.0.0.20240524-py3-none-any.whl", hash = "sha256:8f5379b9948682d72a9ab531fbe52932e84c4f38deda570255f9bae3edd766bc"}, + {file = "types-setuptools-70.1.0.20240627.tar.gz", hash = "sha256:385907a47b5cf302b928ce07953cd91147d5de6f3da604c31905fdf0ec309e83"}, + {file = "types_setuptools-70.1.0.20240627-py3-none-any.whl", hash = "sha256:c7bdf05cd0a8b66868b4774c7b3c079d01ae025d8c9562bfc8bf2ff44d263c9c"}, ] [[package]] @@ -5055,13 +5066,13 @@ files = [ [[package]] name = "xarray" -version = "2024.5.0" +version = "2024.6.0" description = "N-D labeled arrays and datasets in Python" optional = false python-versions = ">=3.9" files = [ - {file = "xarray-2024.5.0-py3-none-any.whl", hash = "sha256:7ddedfe2294a0ab00f02d0fbdcb9c6300ec589f3cf436a9c7b7b577a12cd9bcf"}, - {file = "xarray-2024.5.0.tar.gz", hash = "sha256:e0eb1cb265f265126795f388ed9591f3c752f2aca491f6c0576711fd15b708f2"}, + {file = "xarray-2024.6.0-py3-none-any.whl", hash = "sha256:721a7394e8ec3d592b2d8ebe21eed074ac077dc1bb1bd777ce00e41700b4866c"}, + {file = "xarray-2024.6.0.tar.gz", hash = "sha256:0b91e0bc4dc0296947947640fe31ec6e867ce258d2f7cbc10bedf4a6d68340c7"}, ] [package.dependencies] From 6f9990179225a55eb3cb2074b9fd103da19520e4 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 01:25:12 +0000 Subject: [PATCH 11/11] chore: update pre-commit hooks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.4.7 → v0.5.0](https://github.com/astral-sh/ruff-pre-commit/compare/v0.4.7...v0.5.0) - [github.com/google/yamlfmt: v0.12.1 → v0.13.0](https://github.com/google/yamlfmt/compare/v0.12.1...v0.13.0) --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 68202d5c..e596ad29 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -13,13 +13,13 @@ repos: - id: check-json - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.4.7 + rev: v0.5.0 hooks: - id: ruff args: ["--fix", "--exit-non-zero-on-fix"] - id: ruff-format - repo: https://github.com/google/yamlfmt - rev: v0.12.1 + rev: v0.13.0 hooks: - id: yamlfmt types_or: [yaml]