From 7faaf4ed5dc6330b2440e92ad06d316401fb3c8c Mon Sep 17 00:00:00 2001 From: Tyler Hutcherson Date: Wed, 1 May 2024 14:05:13 -0400 Subject: [PATCH] Repackage documentation and apply poetry updates (#146) Improves VL documentation with new Redis logos, poetry scripting, poetry docs dependencies, and also adds new reranking user guide. --- CONTRIBUTING.md | 16 +- docs/_static/Redis_Favicon_144x144_Red.png | Bin 0 -> 1931 bytes docs/_static/Redis_Favicon_16x16_Red.png | Bin 0 -> 461 bytes docs/_static/Redis_Favicon_32x32_Red.png | Bin 0 -> 801 bytes docs/_static/Redis_Logo_Red_RGB.svg | 66 ++ docs/_static/android-chrome-192x192.png | Bin 42149 -> 0 bytes docs/_static/android-chrome-512x512.png | Bin 192529 -> 0 bytes docs/_static/apple-touch-icon.png | Bin 39465 -> 0 bytes docs/_static/favicon-16x16.png | Bin 817 -> 0 bytes docs/_static/favicon-32x32.png | Bin 2288 -> 0 bytes docs/_static/favicon.ico | Bin 15406 -> 0 bytes docs/_static/js/sidebar.js | 2 + docs/_static/redis-cube-red-white-rgb.svg | 1 - docs/_static/site.webmanifest | 2 +- docs/conf.py | 15 +- docs/requirements-doc.txt | 9 - docs/user_guide/index.md | 1 + docs/user_guide/rerankers_06.ipynb | 250 +++++ poetry.lock | 1163 +++++++++++++++----- pyproject.toml | 20 +- redisvl/utils/rerank/cohere.py | 14 +- scripts.py | 8 +- 22 files changed, 1240 insertions(+), 327 deletions(-) create mode 100644 docs/_static/Redis_Favicon_144x144_Red.png create mode 100644 docs/_static/Redis_Favicon_16x16_Red.png create mode 100644 docs/_static/Redis_Favicon_32x32_Red.png create mode 100644 docs/_static/Redis_Logo_Red_RGB.svg delete mode 100644 docs/_static/android-chrome-192x192.png delete mode 100644 docs/_static/android-chrome-512x512.png delete mode 100644 docs/_static/apple-touch-icon.png delete mode 100644 docs/_static/favicon-16x16.png delete mode 100644 docs/_static/favicon-32x32.png delete mode 100644 docs/_static/favicon.ico delete mode 100644 docs/_static/redis-cube-red-white-rgb.svg delete mode 100644 docs/requirements-doc.txt create mode 100644 docs/user_guide/rerankers_06.ipynb diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 45634012..828be74a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -38,7 +38,6 @@ Then install the required libraries: poetry install --all-extras ``` - ### Linting and Tests Check formatting, linting, and typing: @@ -58,7 +57,7 @@ To run Testcontainers-based tests you need a local Docker installation such as: #### Running the Tests -Tests (with vectorizers): +Tests w/ vectorizers: ```bash poetry run test-cov ``` @@ -73,6 +72,19 @@ Tests w/out rerankers: SKIP_RERANKERS=true poetry run test-cov ``` +### Documentation +Docs are served from the `docs/` directory. + +Build the docs. Generates the `_build/html` contents: +```bash +poetry run build-docs +``` + +Serve the documentation with a local webserver: +```bash +poetry run serve-docs +``` + ### Getting Redis In order for your applications to use RedisVL, you must have [Redis](https://redis.io) accessible with Search & Query features enabled on [Redis Cloud](https://redis.com/try-free) or locally in docker with [Redis Stack](https://redis.io/docs/getting-started/install-stack/docker/): diff --git a/docs/_static/Redis_Favicon_144x144_Red.png b/docs/_static/Redis_Favicon_144x144_Red.png new file mode 100644 index 0000000000000000000000000000000000000000..32b0e92634c3e92831275672db52050aba8f5611 GIT binary patch literal 1931 zcmV;62Xy#}P)t<80drDELIAGL9O(c600d`2O+f$vv5yPi!lyMd7mq02Hh7+Ki zAbP+7mtn`FMcd3812)qN1XrqN1XrqGH-8cwp$} z(mXs;ix5Tg5ClI#1oL>8^Z1`R(D(v1H`ZbRN)13mAOAPNzfbYa5T4dgR4*KWXYN%% z-D=Lkr^^-!@C+ioi0>>;3RD86POyg|X!TYd{B;5zn5uv**!krm1nL!9QwyzT9;O9} z33^8z9CyJX-US?qreO^fissV7Y)~}Rq2o$OZvyI-r6yZi6s_O8XlW?u!VC)e=W!oO z;9Ni!4qy{sO?c>#HO|0t84;Zcs9!Fv0|_@xzvcu*v-q;@BvV?zZ&$e6polfyu(3pI z0l%rCY61=CC-sIjb__rW&8m9k`4;|q2;Yl%1dX8oFE)j(EqYx;OLEdf7E~)EZ}=@!3s=RoPS<7Jz6ZF3UQW_cCeTbZ+rtqSm58KArS?`w`NZY zM{udOo(S0oDOx`>JydRiF(05boQA?7hn;_ajIY19an1Y({@n%{naeSL|4Y3g7BMi7 zF6;!Ui-+8C$nUN!k@IeY1QZ6_w{s7n5u@QXh;9+)P5q#qfLD*ZU;|kk z35T7&J>;y!BXH=N9F{z!5F`vP{RzlVRdz!m`6ITtu}I%qJP>A5v^oV3)W8;+<#d6s zAm4+-XE;p9u@(=Lqxdk|k|vmo^b)_?P9hl2)O(3POCk1iI1?^77mv<8qgTN!!$!}KMM;eFP`33?~X;{al%)rEe!e>CG9vk7o_*S z3s_n_J_%+>UM^u^8|>tDZnT9u%#>>l7Kq%0*CFggyvef;c;eDy>)Svrimh!Nw!Y&9 zNfU1tsDFFjf=GA4IlRZ*oOtwh);5lKk}5w7r=VZ{OvORcneTqVb-GQ6rUj)P+$U9AL;re;d&a#q zk(~(0OQkFAZrCbJsZ*}+8uy-kRXh}lH|!G^bt31Nw2GR@Kb9WCd?D(nOP@!g)hQct zy_%izDFG#RsR|)ayvaT_(~d1A;OIg=tONsMb@0y#sA$=lPmIsAoR-)f!om2p+DqwE zn0CCifL_HTlxp!05|M_p^)@ApiYnRaGV+rn&M$V;19G*WergN6i^r$|Je^&*vv(3- zw~ZZqRp>HUH0-q2y+YB3=g&(#(3V8XkQWO$9q~qVvJ$g#vHmx=_h%#|<6hA|UKsvJK!Ab^$z^3i_n;CoeM#WD|EK9y|3mKG}Z-joPk6 zB&*Xazw7}Rx}sWsI<8Pau11xn#Is1MsNxfg%R}1e=+C4DkVDAgFvYfotBa3#BQ3*b zg`4-af{SiCt45tzv|H5ik;PoW89vk=F8B8Fd|~El;wC#y+nG&%MH-Cf&G>%1#fN3x zYnkoG)GJ*#I4B;Tzlj~JUH%89Nix)<>riNu_Mt=}IWzCw!_sak&L;1HGibkfa?2AR z(!(rN7o_&neW2DZLx)cGezD$%2M3jom{old83H;gB&RfaUj3eJnVeSwQPo$5fG#Rf z(ZOTZBkur|uN=BqxxzaPYPtAHAM!Pjw^dE+Ov7S#K(3$AKKDU7VT6Q&e>yE#HpyBqSeR zJcMb&d%;Jg77Cdbm{UNR)ne6FJZ{ZyLv6rRNNO2Nibv$Hg|F({Mnfygu7j2k&w$=V z3{7eoO(|R$>KC{wQF*J9^i@U~yd-YP5U4!ZqQ)@)vyrj*2=iPI^2iWzYJivXsfzR&&m|C!4gV9VqSMv8z!IU0?RUtq^{J9cqBya=e zIoBX^$bAjf&CiR486KfQoPw;0@irzm7)a)E3fP4Jv-V4#zO2nWlO70ye*Ed^$hspw7E?dLNZLHgG1E! zhV&FjpiRiV6V={Cd}q1^?sebg-_~XC*E*7A4rAI|M|@-}N4f&Nb49Mep@k=6*^JA` z$|t)f0jkm`i4GJwl_|MzN*7K%v`ofIA5xtu<=vk@Z3Bh?rZCbC00000NkvXXu0mjf D+IhUi literal 0 HcmV?d00001 diff --git a/docs/_static/Redis_Favicon_32x32_Red.png b/docs/_static/Redis_Favicon_32x32_Red.png new file mode 100644 index 0000000000000000000000000000000000000000..55f78869092767748e1640c05699003fffe9c43a GIT binary patch literal 801 zcmV++1K#|JP)> zYGM5L95{cwdpKC*P5BbYp52}KW@cw*muQXq4yF|$d*urLizK{587^X+C!s>1ktg`R zB$iX!AcxRI&H%a~GaUS?l;sj~qo}Q_b4If9`KV97b0yEv2rB6e;Fx!wH&s3xgB;^24Gl-s z4ksBq$a?0}xN51C3rh_Ekwc!hu40r?NzKU%2%E@ZAl6%&BH>4xZYNp^#wwVvG+lwY zS5|TbgkIyWJwdZleIo)#r?DU$&O~z6`EI2k^@?}i*S}D@vwe^s>U-%#pIU-M@>QUY zX)xZ7PiN>qk(-Vw(SVfXElNr5=TfcQ#qVpP0qH&GZ`P*c^#HGe7UX;7*U;Gr_XjNr zkxY5IzDXH&+2`}I3T=OWf6Qg36CQk;M0P52KVp3ByP%W*9IC!;+_P + + + + + + + + + +]> + + + + + + + + + + + diff --git a/docs/_static/android-chrome-192x192.png b/docs/_static/android-chrome-192x192.png deleted file mode 100644 index 48ef20198e53b8224d7b77fb0d2da0bf449820b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42149 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ν+9=X#3;k8hV`P%`w6C6>48|rD3(O)b5oRd3s&zXe3PjrDw?3Ba#{wJPXaFRW2YcJejQ%G?AHKv;=C7NyXEA(C1VsOtDW|Z# zt%_VlX828@P8k_)Z5|Fvee*245{B>64J4KH!ITcm%;(}6z0I2s`USp{Sn2=tZx@vl z$+=EFq1*k6?%)Eqd!f=l5;L#J0{>)A$-&_uAfG;BDSflMi&0uq_4Pu&k1iWk00q%} zACjS0Yq1 zLvi_*Y{oS*kT;vU>|VUniG{3LlY~);sYZF3Kpyv?Y10{QB;|LC#~7ylo({lAu=sGd z&EM=Hz;hj18*-_s=)516VdOE(riGL_FMj(!!tFM{Votv9wdPz(lX!iitZX7ns`(z0 zg0C8!kisSk5wv(@{zBgW7Wrky4XCh|@+8s$Lo1N&UNVdnKH�gP7!FJ5n@&eosEf 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 diff --git a/docs/_static/apple-touch-icon.png b/docs/_static/apple-touch-icon.png deleted file mode 100644 index 393a92e6d65467b8833b2f603f46513684922ab4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39465 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 diff --git a/docs/_static/js/sidebar.js b/docs/_static/js/sidebar.js index 5f04b2dc..7a52eb54 100644 --- a/docs/_static/js/sidebar.js +++ b/docs/_static/js/sidebar.js @@ -9,6 +9,7 @@ const toc = [ { title: "Query and Filter", path: "/user_guide/hybrid_queries_02.html" }, { title: "JSON vs Hash Storage", path: "/user_guide/hash_vs_json_05.html" }, { title: "Vectorizers", path: "/user_guide/vectorizers_04.html" }, + { title: "Rerankers", path: "/user_guide/rerankers_06.html"}, { title: "Semantic Caching", path: "/user_guide/llmcache_03.html" }, ]}, { header: "API", toc: [ @@ -17,6 +18,7 @@ const toc = [ { title: "Query", path: "/api/query.html" }, { title: "Filter", path: "/api/filter.html" }, { title: "Vectorizers", path: "/api/vectorizer.html" }, + { title: "Rerankers", path: "/api/reranker.html" }, { title: "LLMCache", path: "/api/cache.html" } ]} ]; diff --git a/docs/_static/redis-cube-red-white-rgb.svg b/docs/_static/redis-cube-red-white-rgb.svg deleted file mode 100644 index 25583faa..00000000 --- a/docs/_static/redis-cube-red-white-rgb.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/_static/site.webmanifest b/docs/_static/site.webmanifest index 45dc8a20..d41b4c04 100644 --- a/docs/_static/site.webmanifest +++ b/docs/_static/site.webmanifest @@ -1 +1 @@ -{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file +{"name":"","short_name":"","icons":[{"src":"Redis_Favicon_144x144_Red.png","sizes":"144x144","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/docs/conf.py b/docs/conf.py index 5bb6da16..1f3868de 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -76,8 +76,8 @@ html_context = { "default_mode": "dark" } -html_logo = "_static/redis-cube-red-white-rgb.svg" -html_favicon = "_static/redis-cube-red-white-rgb.svg" +html_logo = "_static/Redis_Favicon_32x32_Red.png" +html_favicon = "_static/Redis_Favicon_32x32_Red.png" html_context = { "github_user": "RedisVentures", "github_repo": "RedisVL", @@ -145,13 +145,10 @@ # see https://sphinx-favicon.readthedocs.io for more information about the # sphinx-favicon extension + favicons = [ # generic icons compatible with most browsers - "favicon-32x32.png", - "favicon-16x16.png", - {"rel": "shortcut icon", "sizes": "any", "href": "favicon.ico"}, - # chrome specific - "android-chrome-192x192.png", - # apple icons - {"rel": "apple-touch-icon", "href": "apple-touch-icon.png"}, + "Redis_Favicon_32x32_Red.png", + "Redis_Favicon_16x16_Red.png", + "Redis_Favicon_144x144_Red.png", ] diff --git a/docs/requirements-doc.txt b/docs/requirements-doc.txt deleted file mode 100644 index ab071b48..00000000 --- a/docs/requirements-doc.txt +++ /dev/null @@ -1,9 +0,0 @@ -sphinx>=4.4.0 -pydata-sphinx-theme -nbsphinx -ipython -jinja2 -sphinx-copybutton -sphinx-favicon -sphinx-design -myst_nb \ No newline at end of file diff --git a/docs/user_guide/index.md b/docs/user_guide/index.md index 26b85e9c..8cab09fc 100644 --- a/docs/user_guide/index.md +++ b/docs/user_guide/index.md @@ -16,5 +16,6 @@ hybrid_queries_02 llmcache_03 vectorizers_04 hash_vs_json_05 +rerankers_06 ``` diff --git a/docs/user_guide/rerankers_06.ipynb b/docs/user_guide/rerankers_06.ipynb new file mode 100644 index 00000000..d3ef7a66 --- /dev/null +++ b/docs/user_guide/rerankers_06.ipynb @@ -0,0 +1,250 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Rerankers\n", + "\n", + "In this notebook, we will show how to use RedisVL to rerank search results\n", + "(documents or chunks or records) based on the input query. Today RedisVL\n", + "supports reranking through the [Cohere /rerank API](https://docs.cohere.com/docs/rerank-2).\n", + "\n", + "Before running this notebook, be sure to:\n", + "1. Have installed ``redisvl`` and have that environment active for this notebook.\n", + "2. Have a running Redis Stack instance with RediSearch > 2.4 active.\n", + "\n", + "For example, you can run Redis Stack locally with Docker:\n", + "\n", + "```bash\n", + "docker run -d -p 6379:6379 -p 8001:8001 redis/redis-stack:latest\n", + "```\n", + "\n", + "This will run Redis on port 6379 and RedisInsight at http://localhost:8001." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# import necessary modules\n", + "import os" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simple Reranking\n", + "\n", + "Reranking provides a relevance boost to search results generated by\n", + "traditional (lexical) or semantic search strategies.\n", + "\n", + "As a simple demonstration, take the passages and user query below:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "query = \"What is the capital of the United States?\"\n", + "docs = [\n", + " \"Carson City is the capital city of the American state of Nevada. At the 2010 United States Census, Carson City had a population of 55,274.\",\n", + " \"The Commonwealth of the Northern Mariana Islands is a group of islands in the Pacific Ocean that are a political division controlled by the United States. Its capital is Saipan.\",\n", + " \"Charlotte Amalie is the capital and largest city of the United States Virgin Islands. It has about 20,000 people. The city is on the island of Saint Thomas.\",\n", + " \"Washington, D.C. (also known as simply Washington or D.C., and officially as the District of Columbia) is the capital of the United States. It is a federal district. The President of the USA and many major national government offices are in the territory. This makes it the political center of the United States of America.\",\n", + " \"Capital punishment (the death penalty) has existed in the United States since before the United States was a country. As of 2017, capital punishment is legal in 30 of the 50 states. The federal government (including the United States military) also uses capital punishment.\"\n", + "]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The goal of reranking is to provide a more fine-grained quality improvement to\n", + "initial search results. With RedisVL, this would likely be results coming back\n", + "from a search operation like full text or vector." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Init the Reranker\n", + "\n", + "Initialize the reranker. Install the cohere library and provide the right Cohere API Key." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#!pip install cohere" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import getpass\n", + "\n", + "# setup the API Key\n", + "api_key = os.environ.get(\"COHERE_API_KEY\") or getpass.getpass(\"Enter your Cohere API key: \")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "from redisvl.utils.rerank import CohereReranker\n", + "\n", + "reranker = CohereReranker(limit=3, api_config={\"api_key\": api_key})" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Rerank documents\n", + "\n", + "Below we will use the `CohereReranker` to rerank and also truncate the list of\n", + "documents above based on relevance to the initial query." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "results, scores = reranker.rank(query=query, docs=docs)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.9990564 -- Washington, D.C. (also known as simply Washington or D.C., and officially as the District of Columbia) is the capital of the United States. It is a federal district. The President of the USA and many major national government offices are in the territory. This makes it the political center of the United States of America.\n", + "0.7516481 -- Capital punishment (the death penalty) has existed in the United States since before the United States was a country. As of 2017, capital punishment is legal in 30 of the 50 states. The federal government (including the United States military) also uses capital punishment.\n", + "0.08882029 -- The Commonwealth of the Northern Mariana Islands is a group of islands in the Pacific Ocean that are a political division controlled by the United States. Its capital is Saipan.\n" + ] + } + ], + "source": [ + "for result, score in zip(results, scores):\n", + " print(score, \" -- \", result)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Working with semi-structured documents\n", + "\n", + "Often times the initial result set includes other metadata and components that could be used to steer the reranking relevancy. To accomplish this, we can set the `rank_by` argument and provide documents with those additional fields." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "docs = [\n", + " {\n", + " \"source\": \"wiki\",\n", + " \"passage\": \"Carson City is the capital city of the American state of Nevada. At the 2010 United States Census, Carson City had a population of 55,274.\"\n", + " },\n", + " {\n", + " \"source\": \"encyclopedia\",\n", + " \"passage\": \"The Commonwealth of the Northern Mariana Islands is a group of islands in the Pacific Ocean that are a political division controlled by the United States. Its capital is Saipan.\"\n", + " },\n", + " {\n", + " \"source\": \"textbook\",\n", + " \"passage\": \"Charlotte Amalie is the capital and largest city of the United States Virgin Islands. It has about 20,000 people. The city is on the island of Saint Thomas.\"\n", + " },\n", + " {\n", + " \"source\": \"textbook\",\n", + " \"passage\": \"Washington, D.C. (also known as simply Washington or D.C., and officially as the District of Columbia) is the capital of the United States. It is a federal district. The President of the USA and many major national government offices are in the territory. This makes it the political center of the United States of America.\"\n", + " },\n", + " {\n", + " \"source\": \"wiki\",\n", + " \"passage\": \"Capital punishment (the death penalty) has existed in the United States since before the United States was a country. As of 2017, capital punishment is legal in 30 of the 50 states. The federal government (including the United States military) also uses capital punishment.\"\n", + " }\n", + "]" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "results, scores = reranker.rank(query=query, docs=docs, rank_by=[\"passage\", \"source\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.9988121 -- {'source': 'textbook', 'passage': 'Washington, D.C. (also known as simply Washington or D.C., and officially as the District of Columbia) is the capital of the United States. It is a federal district. The President of the USA and many major national government offices are in the territory. This makes it the political center of the United States of America.'}\n", + "0.5974905 -- {'source': 'wiki', 'passage': 'Capital punishment (the death penalty) has existed in the United States since before the United States was a country. As of 2017, capital punishment is legal in 30 of the 50 states. The federal government (including the United States military) also uses capital punishment.'}\n", + "0.059101548 -- {'source': 'encyclopedia', 'passage': 'The Commonwealth of the Northern Mariana Islands is a group of islands in the Pacific Ocean that are a political division controlled by the United States. Its capital is Saipan.'}\n" + ] + } + ], + "source": [ + "for result, score in zip(results, scores):\n", + " print(score, \" -- \", result)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.8.13 ('redisvl2')", + "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.10.14" + }, + "orig_nbformat": 4, + "vscode": { + "interpreter": { + "hash": "9b1e6e9c2967143209c2f955cb869d1d3234f92dc4787f49f155f3abbdfb1316" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/poetry.lock b/poetry.lock index d4793861..afee9c3d 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,5 +1,30 @@ # This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +[[package]] +name = "accessible-pygments" +version = "0.0.4" +description = "A collection of accessible pygments styles" +optional = false +python-versions = "*" +files = [ + {file = "accessible-pygments-0.0.4.tar.gz", hash = "sha256:e7b57a9b15958e9601c7e9eb07a440c813283545a20973f2574a5f453d0e953e"}, + {file = "accessible_pygments-0.0.4-py2.py3-none-any.whl", hash = "sha256:416c6d8c1ea1c5ad8701903a20fcedf953c6e720d64f33dc47bfb2d3f2fa4e8d"}, +] + +[package.dependencies] +pygments = ">=1.5" + +[[package]] +name = "alabaster" +version = "0.7.16" +description = "A light, configurable Sphinx theme" +optional = false +python-versions = ">=3.9" +files = [ + {file = "alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92"}, + {file = "alabaster-0.7.16.tar.gz", hash = "sha256:75a8b99c28a5dad50dd7f8ccdd447a121ddb3892da9e53d1ca5cca3106d58d65"}, +] + [[package]] name = "annotated-types" version = "0.6.0" @@ -233,33 +258,33 @@ lxml = ["lxml"] [[package]] name = "black" -version = "24.4.1" +version = "24.4.2" description = "The uncompromising code formatter." optional = false python-versions = ">=3.8" files = [ - {file = "black-24.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f7749fd0d97ff9415975a1432fac7df89bf13c3833cea079e55fa004d5f28c0"}, - {file = "black-24.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:859f3cc5d2051adadf8fd504a01e02b0fd866d7549fff54bc9202d524d2e8bd7"}, - {file = "black-24.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:59271c9c29dfa97f7fda51f56c7809b3f78e72fd8d2205189bbd23022a0618b6"}, - {file = "black-24.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:5ed9c34cba223149b5a0144951a0f33d65507cf82c5449cb3c35fe4b515fea9a"}, - {file = "black-24.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9dae3ae59d6f2dc93700fd5034a3115434686e66fd6e63d4dcaa48d19880f2b0"}, - {file = "black-24.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5f8698974a81af83283eb47644f2711b5261138d6d9180c863fce673cbe04b13"}, - {file = "black-24.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f404b6e77043b23d0321fb7772522b876b6de737ad3cb97d6b156638d68ce81"}, - {file = "black-24.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:c94e52b766477bdcd010b872ba0714d5458536dc9d0734eff6583ba7266ffd89"}, - {file = "black-24.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:962d9e953872cdb83b97bb737ad47244ce2938054dc946685a4cad98520dab38"}, - {file = "black-24.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b1d8e3b2486b7dd522b1ab2ba1ec4907f0aa8f5e10a33c4271fb331d1d10b70c"}, - {file = "black-24.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed77e214b785148f57e43ca425b6e0850165144aa727d66ac604e56a70bb7825"}, - {file = "black-24.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:4ef4764437d7eba8386689cd06e1fb5341ee0ae2e9e22582b21178782de7ed94"}, - {file = "black-24.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:92b183f8eef5baf7b20a513abcf982ad616f544f593f6688bb2850d2982911f1"}, - {file = "black-24.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:945abd7b3572add997757c94295bb3e73c6ffaf3366b1f26cb2356a4bffd1dc3"}, - {file = "black-24.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db5154b9e5b478031371d8bc41ff37b33855fa223a6cfba456c9b73fb96f77d4"}, - {file = "black-24.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:afc84c33c1a9aaf3d73140cee776b4ddf73ff429ffe6b7c56dc1c9c10725856d"}, - {file = "black-24.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0889f4eb8b3bdf8b189e41a71cf0dbb8141a98346cd1a2695dea5995d416e940"}, - {file = "black-24.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5bb0143f175db45a55227eefd63e90849d96c266330ba31719e9667d0d5ec3b9"}, - {file = "black-24.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:713a04a78e78f28ef7e8df7a16fe075670ea164860fcef3885e4f3dffc0184b3"}, - {file = "black-24.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:171959bc879637a8cdbc53dc3fddae2a83e151937a28cf605fd175ce61e0e94a"}, - {file = "black-24.4.1-py3-none-any.whl", hash = "sha256:ecbab810604fe02c70b3a08afd39beb599f7cc9afd13e81f5336014133b4fe35"}, - {file = "black-24.4.1.tar.gz", hash = "sha256:5241612dc8cad5b6fd47432b8bd04db80e07cfbc53bb69e9ae18985063bcb8dd"}, + {file = "black-24.4.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dd1b5a14e417189db4c7b64a6540f31730713d173f0b63e55fabd52d61d8fdce"}, + {file = "black-24.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8e537d281831ad0e71007dcdcbe50a71470b978c453fa41ce77186bbe0ed6021"}, + {file = "black-24.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eaea3008c281f1038edb473c1aa8ed8143a5535ff18f978a318f10302b254063"}, + {file = "black-24.4.2-cp310-cp310-win_amd64.whl", hash = "sha256:7768a0dbf16a39aa5e9a3ded568bb545c8c2727396d063bbaf847df05b08cd96"}, + {file = "black-24.4.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:257d724c2c9b1660f353b36c802ccece186a30accc7742c176d29c146df6e474"}, + {file = "black-24.4.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bdde6f877a18f24844e381d45e9947a49e97933573ac9d4345399be37621e26c"}, + {file = "black-24.4.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e151054aa00bad1f4e1f04919542885f89f5f7d086b8a59e5000e6c616896ffb"}, + {file = "black-24.4.2-cp311-cp311-win_amd64.whl", hash = "sha256:7e122b1c4fb252fd85df3ca93578732b4749d9be076593076ef4d07a0233c3e1"}, + {file = "black-24.4.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:accf49e151c8ed2c0cdc528691838afd217c50412534e876a19270fea1e28e2d"}, + {file = "black-24.4.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:88c57dc656038f1ab9f92b3eb5335ee9b021412feaa46330d5eba4e51fe49b04"}, + {file = "black-24.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be8bef99eb46d5021bf053114442914baeb3649a89dc5f3a555c88737e5e98fc"}, + {file = "black-24.4.2-cp312-cp312-win_amd64.whl", hash = "sha256:415e686e87dbbe6f4cd5ef0fbf764af7b89f9057b97c908742b6008cc554b9c0"}, + {file = "black-24.4.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bf10f7310db693bb62692609b397e8d67257c55f949abde4c67f9cc574492cc7"}, + {file = "black-24.4.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:98e123f1d5cfd42f886624d84464f7756f60ff6eab89ae845210631714f6db94"}, + {file = "black-24.4.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:48a85f2cb5e6799a9ef05347b476cce6c182d6c71ee36925a6c194d074336ef8"}, + {file = "black-24.4.2-cp38-cp38-win_amd64.whl", hash = "sha256:b1530ae42e9d6d5b670a34db49a94115a64596bc77710b1d05e9801e62ca0a7c"}, + {file = "black-24.4.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:37aae07b029fa0174d39daf02748b379399b909652a806e5708199bd93899da1"}, + {file = "black-24.4.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:da33a1a5e49c4122ccdfd56cd021ff1ebc4a1ec4e2d01594fef9b6f267a9e741"}, + {file = "black-24.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef703f83fc32e131e9bcc0a5094cfe85599e7109f896fe8bc96cc402f3eb4b6e"}, + {file = "black-24.4.2-cp39-cp39-win_amd64.whl", hash = "sha256:b9176b9832e84308818a99a561e90aa479e73c523b3f77afd07913380ae2eab7"}, + {file = "black-24.4.2-py3-none-any.whl", hash = "sha256:d36ed1124bb81b32f8614555b34cc4259c3fbc7eec17870e8ff8ded335b58d8c"}, + {file = "black-24.4.2.tar.gz", hash = "sha256:c872b53057f000085da66a19c55d68f6f8ddcac2642392ad3a355878406fbd4d"}, ] [package.dependencies] @@ -496,13 +521,13 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} [[package]] name = "cohere" -version = "5.3.3" +version = "5.3.4" description = "" optional = true python-versions = "<4.0,>=3.8" files = [ - {file = "cohere-5.3.3-py3-none-any.whl", hash = "sha256:686db9d7c0b858be8c1da173fbe77dfda377fd794e221e473b654440e81336cd"}, - {file = "cohere-5.3.3.tar.gz", hash = "sha256:fbf59c0bab0ded4d28091fa0c193a116d8303c4c0b09a42721dd8a1230ea27c3"}, + {file = "cohere-5.3.4-py3-none-any.whl", hash = "sha256:2d62306ed86c346d472e2355cf653b8fbd8722330e554355d576fb6061e204f2"}, + {file = "cohere-5.3.4.tar.gz", hash = "sha256:b45a2c85b025dd15367d69bf92748de4a30ec82abb4b08fa5301b72e89051fe2"}, ] [package.dependencies] @@ -802,6 +827,17 @@ files = [ {file = "docstring_parser-0.16.tar.gz", hash = "sha256:538beabd0af1e2db0146b6bd3caa526c35a34d61af9fd2887f3a8a27a739aa6e"}, ] +[[package]] +name = "docutils" +version = "0.21.2" +description = "Docutils -- Python Documentation Utilities" +optional = false +python-versions = ">=3.9" +files = [ + {file = "docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2"}, + {file = "docutils-0.21.2.tar.gz", hash = "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f"}, +] + [[package]] name = "exceptiongroup" version = "1.2.1" @@ -892,13 +928,13 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc [[package]] name = "filelock" -version = "3.13.4" +version = "3.14.0" description = "A platform independent file lock." optional = true python-versions = ">=3.8" files = [ - {file = "filelock-3.13.4-py3-none-any.whl", hash = "sha256:404e5e9253aa60ad457cae1be07c0f0ca90a63931200a47d9b6a6af84fd7b45f"}, - {file = "filelock-3.13.4.tar.gz", hash = "sha256:d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4"}, + {file = "filelock-3.14.0-py3-none-any.whl", hash = "sha256:43339835842f110ca7ae60f1e1c160714c5a6afd15a2873419ab185334975c0f"}, + {file = "filelock-3.14.0.tar.gz", hash = "sha256:6ea72da3be9b8c82afd3edcf99f2fffbb5076335a5ae4d03248bb5b6c3eae78a"}, ] [package.extras] @@ -954,13 +990,13 @@ tqdm = ["tqdm"] [[package]] name = "google-api-core" -version = "2.18.0" +version = "2.19.0" description = "Google API client core library" optional = true python-versions = ">=3.7" files = [ - {file = "google-api-core-2.18.0.tar.gz", hash = "sha256:62d97417bfc674d6cef251e5c4d639a9655e00c45528c4364fbfebb478ce72a9"}, - {file = "google_api_core-2.18.0-py3-none-any.whl", hash = "sha256:5a63aa102e0049abe85b5b88cb9409234c1f70afcda21ce1e40b285b9629c1d6"}, + {file = "google-api-core-2.19.0.tar.gz", hash = "sha256:cf1b7c2694047886d2af1128a03ae99e391108a08804f87cfd35970e49c9cd10"}, + {file = "google_api_core-2.19.0-py3-none-any.whl", hash = "sha256:8661eec4078c35428fd3f69a2c7ee29e342896b70f01d1a1cbcb334372dd6251"}, ] [package.dependencies] @@ -1008,13 +1044,13 @@ requests = ["requests (>=2.20.0,<3.0.0.dev0)"] [[package]] name = "google-cloud-aiplatform" -version = "1.48.0" +version = "1.49.0" description = "Vertex AI API client library" optional = true python-versions = ">=3.8" files = [ - {file = "google-cloud-aiplatform-1.48.0.tar.gz", hash = "sha256:70fa242247693092412270e26109729e0d2ef3f3fe8caf0ce823208f8dc156c7"}, - {file = "google_cloud_aiplatform-1.48.0-py2.py3-none-any.whl", hash = "sha256:bf7b0fd6b6bd9f95082c0489c3f29ba9ee560e1aaeff64a574719304eeb68c85"}, + {file = "google-cloud-aiplatform-1.49.0.tar.gz", hash = "sha256:e6e6d01079bb5def49e4be4db4d12b13c624b5c661079c869c13c855e5807429"}, + {file = "google_cloud_aiplatform-1.49.0-py2.py3-none-any.whl", hash = "sha256:8072d9e0c18d8942c704233d1a93b8d6312fc7b278786a283247950e28ae98df"}, ] [package.dependencies] @@ -1035,9 +1071,9 @@ autologging = ["mlflow (>=1.27.0,<=2.1.1)"] cloud-profiler = ["tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "werkzeug (>=2.0.0,<2.1.0dev)"] datasets = ["pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)"] endpoint = ["requests (>=2.28.1)"] -full = ["cloudpickle (<3.0)", "cloudpickle (>=2.2.1,<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<=0.109.1)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pydantic (<3)", "pyyaml (>=5.3.1,<7)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "starlette (>=0.17.1)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.3.0,<3.0.0dev)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)"] +full = ["cloudpickle (<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<=0.109.1)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pyyaml (>=5.3.1,<7)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "starlette (>=0.17.1)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.3.0,<3.0.0dev)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)"] langchain = ["langchain (>=0.1.13,<0.2)", "langchain-core (<0.2)", "langchain-google-vertexai (<0.2)"] -langchain-testing = ["langchain (>=0.1.13,<0.2)", "langchain-core (<0.2)", "langchain-google-vertexai (<0.2)", "pytest-xdist"] +langchain-testing = ["absl-py", "cloudpickle (>=2.2.1,<3.0)", "langchain (>=0.1.13,<0.2)", "langchain-core (<0.2)", "langchain-google-vertexai (<0.2)", "pydantic (>=2.6.3,<3)", "pytest-xdist"] lit = ["explainable-ai-sdk (>=1.0.0)", "lit-nlp (==0.4.0)", "pandas (>=1.0.0)", "tensorflow (>=2.3.0,<3.0.0dev)"] metadata = ["numpy (>=1.15.0)", "pandas (>=1.0.0)"] pipelines = ["pyyaml (>=5.3.1,<7)"] @@ -1047,9 +1083,9 @@ private-endpoints = ["requests (>=2.28.1)", "urllib3 (>=1.21.1,<1.27)"] rapid-evaluation = ["nest-asyncio (>=1.0.0,<1.6.0)", "pandas (>=1.0.0,<2.2.0)"] ray = ["google-cloud-bigquery", "google-cloud-bigquery-storage", "immutabledict", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=6.0.1)", "pydantic (<2)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)"] ray-testing = ["google-cloud-bigquery", "google-cloud-bigquery-storage", "immutabledict", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pytest-xdist", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "ray[train] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "scikit-learn", "tensorflow", "torch (>=2.0.0,<2.1.0)", "xgboost", "xgboost-ray"] -reasoningengine = ["cloudpickle (>=2.2.1,<3.0)", "pydantic (<3)"] +reasoningengine = ["cloudpickle (>=2.2.1,<3.0)", "pydantic (>=2.6.3,<3)"] tensorboard = ["tensorflow (>=2.3.0,<3.0.0dev)"] -testing = ["bigframes", "cloudpickle (<3.0)", "cloudpickle (>=2.2.1,<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<=0.109.1)", "google-api-core (>=2.11,<3.0.0)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "grpcio-testing", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "ipython", "kfp (>=2.6.0,<3.0.0)", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pydantic (<3)", "pyfakefs", "pytest-asyncio", "pytest-xdist", "pyyaml (>=5.3.1,<7)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "requests-toolbelt (<1.0.0)", "scikit-learn", "starlette (>=0.17.1)", "tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (==2.13.0)", "tensorflow (==2.16.1)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "torch (>=2.0.0,<2.1.0)", "torch (>=2.2.0)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)", "werkzeug (>=2.0.0,<2.1.0dev)", "xgboost"] +testing = ["bigframes", "cloudpickle (<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<=0.109.1)", "google-api-core (>=2.11,<3.0.0)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "grpcio-testing", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "ipython", "kfp (>=2.6.0,<3.0.0)", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pyfakefs", "pytest-asyncio", "pytest-xdist", "pyyaml (>=5.3.1,<7)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "requests-toolbelt (<1.0.0)", "scikit-learn", "starlette (>=0.17.1)", "tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (==2.13.0)", "tensorflow (==2.16.1)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "torch (>=2.0.0,<2.1.0)", "torch (>=2.2.0)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)", "werkzeug (>=2.0.0,<2.1.0dev)", "xgboost"] vizier = ["google-vizier (>=0.1.6)"] xai = ["tensorflow (>=2.3.0,<3.0.0dev)"] @@ -1258,6 +1294,77 @@ protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.1 || >4.21.1,<4 [package.extras] grpc = ["grpcio (>=1.44.0,<2.0.0.dev0)"] +[[package]] +name = "greenlet" +version = "3.0.3" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=3.7" +files = [ + {file = "greenlet-3.0.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:9da2bd29ed9e4f15955dd1595ad7bc9320308a3b766ef7f837e23ad4b4aac31a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d353cadd6083fdb056bb46ed07e4340b0869c305c8ca54ef9da3421acbdf6881"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dca1e2f3ca00b84a396bc1bce13dd21f680f035314d2379c4160c98153b2059b"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ed7fb269f15dc662787f4119ec300ad0702fa1b19d2135a37c2c4de6fadfd4a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd4f49ae60e10adbc94b45c0b5e6a179acc1736cf7a90160b404076ee283cf83"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73a411ef564e0e097dbe7e866bb2dda0f027e072b04da387282b02c308807405"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7f362975f2d179f9e26928c5b517524e89dd48530a0202570d55ad6ca5d8a56f"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:649dde7de1a5eceb258f9cb00bdf50e978c9db1b996964cd80703614c86495eb"}, + {file = "greenlet-3.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:68834da854554926fbedd38c76e60c4a2e3198c6fbed520b106a8986445caaf9"}, + {file = "greenlet-3.0.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:b1b5667cced97081bf57b8fa1d6bfca67814b0afd38208d52538316e9422fc61"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52f59dd9c96ad2fc0d5724107444f76eb20aaccb675bf825df6435acb7703559"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:afaff6cf5200befd5cec055b07d1c0a5a06c040fe5ad148abcd11ba6ab9b114e"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe754d231288e1e64323cfad462fcee8f0288654c10bdf4f603a39ed923bef33"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2797aa5aedac23af156bbb5a6aa2cd3427ada2972c828244eb7d1b9255846379"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f009caad047246ed379e1c4dbcb8b020f0a390667ea74d2387be2998f58a22"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e1536de2aad7bf62e27baf79225d0d64360d4168cf2e6becb91baf1ed074f3"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:894393ce10ceac937e56ec00bb71c4c2f8209ad516e96033e4b3b1de270e200d"}, + {file = "greenlet-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:1ea188d4f49089fc6fb283845ab18a2518d279c7cd9da1065d7a84e991748728"}, + {file = "greenlet-3.0.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:70fb482fdf2c707765ab5f0b6655e9cfcf3780d8d87355a063547b41177599be"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4d1ac74f5c0c0524e4a24335350edad7e5f03b9532da7ea4d3c54d527784f2e"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149e94a2dd82d19838fe4b2259f1b6b9957d5ba1b25640d2380bea9c5df37676"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15d79dd26056573940fcb8c7413d84118086f2ec1a8acdfa854631084393efcc"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b7db1ebff4ba09aaaeae6aa491daeb226c8150fc20e836ad00041bcb11230"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fcd2469d6a2cf298f198f0487e0a5b1a47a42ca0fa4dfd1b6862c999f018ebbf"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f672519db1796ca0d8753f9e78ec02355e862d0998193038c7073045899f305"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2516a9957eed41dd8f1ec0c604f1cdc86758b587d964668b5b196a9db5bfcde6"}, + {file = "greenlet-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:bba5387a6975598857d86de9eac14210a49d554a77eb8261cc68b7d082f78ce2"}, + {file = "greenlet-3.0.3-cp37-cp37m-macosx_11_0_universal2.whl", hash = "sha256:5b51e85cb5ceda94e79d019ed36b35386e8c37d22f07d6a751cb659b180d5274"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:daf3cb43b7cf2ba96d614252ce1684c1bccee6b2183a01328c98d36fcd7d5cb0"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99bf650dc5d69546e076f413a87481ee1d2d09aaaaaca058c9251b6d8c14783f"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dd6e660effd852586b6a8478a1d244b8dc90ab5b1321751d2ea15deb49ed414"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3391d1e16e2a5a1507d83e4a8b100f4ee626e8eca43cf2cadb543de69827c4c"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1f145462f1fa6e4a4ae3c0f782e580ce44d57c8f2c7aae1b6fa88c0b2efdb41"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1a7191e42732df52cb5f39d3527217e7ab73cae2cb3694d241e18f53d84ea9a7"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0448abc479fab28b00cb472d278828b3ccca164531daab4e970a0458786055d6"}, + {file = "greenlet-3.0.3-cp37-cp37m-win32.whl", hash = "sha256:b542be2440edc2d48547b5923c408cbe0fc94afb9f18741faa6ae970dbcb9b6d"}, + {file = "greenlet-3.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:01bc7ea167cf943b4c802068e178bbf70ae2e8c080467070d01bfa02f337ee67"}, + {file = "greenlet-3.0.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:1996cb9306c8595335bb157d133daf5cf9f693ef413e7673cb07e3e5871379ca"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc0f794e6ad661e321caa8d2f0a55ce01213c74722587256fb6566049a8b04"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9db1c18f0eaad2f804728c67d6c610778456e3e1cc4ab4bbd5eeb8e6053c6fc"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7170375bcc99f1a2fbd9c306f5be8764eaf3ac6b5cb968862cad4c7057756506"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b66c9c1e7ccabad3a7d037b2bcb740122a7b17a53734b7d72a344ce39882a1b"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:098d86f528c855ead3479afe84b49242e174ed262456c342d70fc7f972bc13c4"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81bb9c6d52e8321f09c3d165b2a78c680506d9af285bfccbad9fb7ad5a5da3e5"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd096eb7ffef17c456cfa587523c5f92321ae02427ff955bebe9e3c63bc9f0da"}, + {file = "greenlet-3.0.3-cp38-cp38-win32.whl", hash = "sha256:d46677c85c5ba00a9cb6f7a00b2bfa6f812192d2c9f7d9c4f6a55b60216712f3"}, + {file = "greenlet-3.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:419b386f84949bf0e7c73e6032e3457b82a787c1ab4a0e43732898a761cc9dbf"}, + {file = "greenlet-3.0.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:da70d4d51c8b306bb7a031d5cff6cc25ad253affe89b70352af5f1cb68e74b53"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086152f8fbc5955df88382e8a75984e2bb1c892ad2e3c80a2508954e52295257"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d73a9fe764d77f87f8ec26a0c85144d6a951a6c438dfe50487df5595c6373eac"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7dcbe92cc99f08c8dd11f930de4d99ef756c3591a5377d1d9cd7dd5e896da71"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1551a8195c0d4a68fac7a4325efac0d541b48def35feb49d803674ac32582f61"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64d7675ad83578e3fc149b617a444fab8efdafc9385471f868eb5ff83e446b8b"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b37eef18ea55f2ffd8f00ff8fe7c8d3818abd3e25fb73fae2ca3b672e333a7a6"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:77457465d89b8263bca14759d7c1684df840b6811b2499838cc5b040a8b5b113"}, + {file = "greenlet-3.0.3-cp39-cp39-win32.whl", hash = "sha256:57e8974f23e47dac22b83436bdcf23080ade568ce77df33159e019d161ce1d1e"}, + {file = "greenlet-3.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c5ee858cfe08f34712f548c3c363e807e7186f03ad7a5039ebadb29e8c6be067"}, + {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"}, +] + +[package.extras] +docs = ["Sphinx", "furo"] +test = ["objgraph", "psutil"] + [[package]] name = "grpc-google-iam-v1" version = "0.13.0" @@ -1276,69 +1383,61 @@ protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.1 || >4.21.1,<4 [[package]] name = "grpcio" -version = "1.62.2" +version = "1.63.0" description = "HTTP/2-based RPC framework" optional = true -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "grpcio-1.62.2-cp310-cp310-linux_armv7l.whl", hash = "sha256:66344ea741124c38588a664237ac2fa16dfd226964cca23ddc96bd4accccbde5"}, - {file = "grpcio-1.62.2-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:5dab7ac2c1e7cb6179c6bfad6b63174851102cbe0682294e6b1d6f0981ad7138"}, - {file = "grpcio-1.62.2-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:3ad00f3f0718894749d5a8bb0fa125a7980a2f49523731a9b1fabf2b3522aa43"}, - {file = "grpcio-1.62.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e72ddfee62430ea80133d2cbe788e0d06b12f865765cb24a40009668bd8ea05"}, - {file = "grpcio-1.62.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53d3a59a10af4c2558a8e563aed9f256259d2992ae0d3037817b2155f0341de1"}, - {file = "grpcio-1.62.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a1511a303f8074f67af4119275b4f954189e8313541da7b88b1b3a71425cdb10"}, - {file = "grpcio-1.62.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b94d41b7412ef149743fbc3178e59d95228a7064c5ab4760ae82b562bdffb199"}, - {file = "grpcio-1.62.2-cp310-cp310-win32.whl", hash = "sha256:a75af2fc7cb1fe25785be7bed1ab18cef959a376cdae7c6870184307614caa3f"}, - {file = "grpcio-1.62.2-cp310-cp310-win_amd64.whl", hash = "sha256:80407bc007754f108dc2061e37480238b0dc1952c855e86a4fc283501ee6bb5d"}, - {file = "grpcio-1.62.2-cp311-cp311-linux_armv7l.whl", hash = "sha256:c1624aa686d4b36790ed1c2e2306cc3498778dffaf7b8dd47066cf819028c3ad"}, - {file = "grpcio-1.62.2-cp311-cp311-macosx_10_10_universal2.whl", hash = "sha256:1c1bb80299bdef33309dff03932264636450c8fdb142ea39f47e06a7153d3063"}, - {file = "grpcio-1.62.2-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:db068bbc9b1fa16479a82e1ecf172a93874540cb84be69f0b9cb9b7ac3c82670"}, - {file = "grpcio-1.62.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e2cc8a308780edbe2c4913d6a49dbdb5befacdf72d489a368566be44cadaef1a"}, - {file = "grpcio-1.62.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d0695ae31a89f1a8fc8256050329a91a9995b549a88619263a594ca31b76d756"}, - {file = "grpcio-1.62.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:88b4f9ee77191dcdd8810241e89340a12cbe050be3e0d5f2f091c15571cd3930"}, - {file = "grpcio-1.62.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2a0204532aa2f1afd467024b02b4069246320405bc18abec7babab03e2644e75"}, - {file = "grpcio-1.62.2-cp311-cp311-win32.whl", hash = "sha256:6e784f60e575a0de554ef9251cbc2ceb8790914fe324f11e28450047f264ee6f"}, - {file = "grpcio-1.62.2-cp311-cp311-win_amd64.whl", hash = "sha256:112eaa7865dd9e6d7c0556c8b04ae3c3a2dc35d62ad3373ab7f6a562d8199200"}, - {file = "grpcio-1.62.2-cp312-cp312-linux_armv7l.whl", hash = "sha256:65034473fc09628a02fb85f26e73885cf1ed39ebd9cf270247b38689ff5942c5"}, - {file = "grpcio-1.62.2-cp312-cp312-macosx_10_10_universal2.whl", hash = "sha256:d2c1771d0ee3cf72d69bb5e82c6a82f27fbd504c8c782575eddb7839729fbaad"}, - {file = "grpcio-1.62.2-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:3abe6838196da518863b5d549938ce3159d809218936851b395b09cad9b5d64a"}, - {file = "grpcio-1.62.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5ffeb269f10cedb4f33142b89a061acda9f672fd1357331dbfd043422c94e9e"}, - {file = "grpcio-1.62.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:404d3b4b6b142b99ba1cff0b2177d26b623101ea2ce51c25ef6e53d9d0d87bcc"}, - {file = "grpcio-1.62.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:262cda97efdabb20853d3b5a4c546a535347c14b64c017f628ca0cc7fa780cc6"}, - {file = "grpcio-1.62.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:17708db5b11b966373e21519c4c73e5a750555f02fde82276ea2a267077c68ad"}, - {file = "grpcio-1.62.2-cp312-cp312-win32.whl", hash = "sha256:b7ec9e2f8ffc8436f6b642a10019fc513722858f295f7efc28de135d336ac189"}, - {file = "grpcio-1.62.2-cp312-cp312-win_amd64.whl", hash = "sha256:aa787b83a3cd5e482e5c79be030e2b4a122ecc6c5c6c4c42a023a2b581fdf17b"}, - {file = "grpcio-1.62.2-cp37-cp37m-linux_armv7l.whl", hash = "sha256:cfd23ad29bfa13fd4188433b0e250f84ec2c8ba66b14a9877e8bce05b524cf54"}, - {file = "grpcio-1.62.2-cp37-cp37m-macosx_10_10_universal2.whl", hash = "sha256:af15e9efa4d776dfcecd1d083f3ccfb04f876d613e90ef8432432efbeeac689d"}, - {file = "grpcio-1.62.2-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:f4aa94361bb5141a45ca9187464ae81a92a2a135ce2800b2203134f7a1a1d479"}, - {file = "grpcio-1.62.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82af3613a219512a28ee5c95578eb38d44dd03bca02fd918aa05603c41018051"}, - {file = "grpcio-1.62.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:55ddaf53474e8caeb29eb03e3202f9d827ad3110475a21245f3c7712022882a9"}, - {file = "grpcio-1.62.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c79b518c56dddeec79e5500a53d8a4db90da995dfe1738c3ac57fe46348be049"}, - {file = "grpcio-1.62.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a5eb4844e5e60bf2c446ef38c5b40d7752c6effdee882f716eb57ae87255d20a"}, - {file = "grpcio-1.62.2-cp37-cp37m-win_amd64.whl", hash = "sha256:aaae70364a2d1fb238afd6cc9fcb10442b66e397fd559d3f0968d28cc3ac929c"}, - {file = "grpcio-1.62.2-cp38-cp38-linux_armv7l.whl", hash = "sha256:1bcfe5070e4406f489e39325b76caeadab28c32bf9252d3ae960c79935a4cc36"}, - {file = "grpcio-1.62.2-cp38-cp38-macosx_10_10_universal2.whl", hash = "sha256:da6a7b6b938c15fa0f0568e482efaae9c3af31963eec2da4ff13a6d8ec2888e4"}, - {file = "grpcio-1.62.2-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:41955b641c34db7d84db8d306937b72bc4968eef1c401bea73081a8d6c3d8033"}, - {file = "grpcio-1.62.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c772f225483905f675cb36a025969eef9712f4698364ecd3a63093760deea1bc"}, - {file = "grpcio-1.62.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:07ce1f775d37ca18c7a141300e5b71539690efa1f51fe17f812ca85b5e73262f"}, - {file = "grpcio-1.62.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:26f415f40f4a93579fd648f48dca1c13dfacdfd0290f4a30f9b9aeb745026811"}, - {file = "grpcio-1.62.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:db707e3685ff16fc1eccad68527d072ac8bdd2e390f6daa97bc394ea7de4acea"}, - {file = "grpcio-1.62.2-cp38-cp38-win32.whl", hash = "sha256:589ea8e75de5fd6df387de53af6c9189c5231e212b9aa306b6b0d4f07520fbb9"}, - {file = "grpcio-1.62.2-cp38-cp38-win_amd64.whl", hash = "sha256:3c3ed41f4d7a3aabf0f01ecc70d6b5d00ce1800d4af652a549de3f7cf35c4abd"}, - {file = "grpcio-1.62.2-cp39-cp39-linux_armv7l.whl", hash = "sha256:162ccf61499c893831b8437120600290a99c0bc1ce7b51f2c8d21ec87ff6af8b"}, - {file = "grpcio-1.62.2-cp39-cp39-macosx_10_10_universal2.whl", hash = "sha256:f27246d7da7d7e3bd8612f63785a7b0c39a244cf14b8dd9dd2f2fab939f2d7f1"}, - {file = "grpcio-1.62.2-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:2507006c8a478f19e99b6fe36a2464696b89d40d88f34e4b709abe57e1337467"}, - {file = "grpcio-1.62.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a90ac47a8ce934e2c8d71e317d2f9e7e6aaceb2d199de940ce2c2eb611b8c0f4"}, - {file = "grpcio-1.62.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99701979bcaaa7de8d5f60476487c5df8f27483624f1f7e300ff4669ee44d1f2"}, - {file = "grpcio-1.62.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:af7dc3f7a44f10863b1b0ecab4078f0a00f561aae1edbd01fd03ad4dcf61c9e9"}, - {file = "grpcio-1.62.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:fa63245271920786f4cb44dcada4983a3516be8f470924528cf658731864c14b"}, - {file = "grpcio-1.62.2-cp39-cp39-win32.whl", hash = "sha256:c6ad9c39704256ed91a1cffc1379d63f7d0278d6a0bad06b0330f5d30291e3a3"}, - {file = "grpcio-1.62.2-cp39-cp39-win_amd64.whl", hash = "sha256:16da954692fd61aa4941fbeda405a756cd96b97b5d95ca58a92547bba2c1624f"}, - {file = "grpcio-1.62.2.tar.gz", hash = "sha256:c77618071d96b7a8be2c10701a98537823b9c65ba256c0b9067e0594cdbd954d"}, + {file = "grpcio-1.63.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:2e93aca840c29d4ab5db93f94ed0a0ca899e241f2e8aec6334ab3575dc46125c"}, + {file = "grpcio-1.63.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:91b73d3f1340fefa1e1716c8c1ec9930c676d6b10a3513ab6c26004cb02d8b3f"}, + {file = "grpcio-1.63.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:b3afbd9d6827fa6f475a4f91db55e441113f6d3eb9b7ebb8fb806e5bb6d6bd0d"}, + {file = "grpcio-1.63.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8f3f6883ce54a7a5f47db43289a0a4c776487912de1a0e2cc83fdaec9685cc9f"}, + {file = "grpcio-1.63.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf8dae9cc0412cb86c8de5a8f3be395c5119a370f3ce2e69c8b7d46bb9872c8d"}, + {file = "grpcio-1.63.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:08e1559fd3b3b4468486b26b0af64a3904a8dbc78d8d936af9c1cf9636eb3e8b"}, + {file = "grpcio-1.63.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5c039ef01516039fa39da8a8a43a95b64e288f79f42a17e6c2904a02a319b357"}, + {file = "grpcio-1.63.0-cp310-cp310-win32.whl", hash = "sha256:ad2ac8903b2eae071055a927ef74121ed52d69468e91d9bcbd028bd0e554be6d"}, + {file = "grpcio-1.63.0-cp310-cp310-win_amd64.whl", hash = "sha256:b2e44f59316716532a993ca2966636df6fbe7be4ab6f099de6815570ebe4383a"}, + {file = "grpcio-1.63.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:f28f8b2db7b86c77916829d64ab21ff49a9d8289ea1564a2b2a3a8ed9ffcccd3"}, + {file = "grpcio-1.63.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:65bf975639a1f93bee63ca60d2e4951f1b543f498d581869922910a476ead2f5"}, + {file = "grpcio-1.63.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:b5194775fec7dc3dbd6a935102bb156cd2c35efe1685b0a46c67b927c74f0cfb"}, + {file = "grpcio-1.63.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4cbb2100ee46d024c45920d16e888ee5d3cf47c66e316210bc236d5bebc42b3"}, + {file = "grpcio-1.63.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ff737cf29b5b801619f10e59b581869e32f400159e8b12d7a97e7e3bdeee6a2"}, + {file = "grpcio-1.63.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cd1e68776262dd44dedd7381b1a0ad09d9930ffb405f737d64f505eb7f77d6c7"}, + {file = "grpcio-1.63.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:93f45f27f516548e23e4ec3fbab21b060416007dbe768a111fc4611464cc773f"}, + {file = "grpcio-1.63.0-cp311-cp311-win32.whl", hash = "sha256:878b1d88d0137df60e6b09b74cdb73db123f9579232c8456f53e9abc4f62eb3c"}, + {file = "grpcio-1.63.0-cp311-cp311-win_amd64.whl", hash = "sha256:756fed02dacd24e8f488f295a913f250b56b98fb793f41d5b2de6c44fb762434"}, + {file = "grpcio-1.63.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:93a46794cc96c3a674cdfb59ef9ce84d46185fe9421baf2268ccb556f8f81f57"}, + {file = "grpcio-1.63.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:a7b19dfc74d0be7032ca1eda0ed545e582ee46cd65c162f9e9fc6b26ef827dc6"}, + {file = "grpcio-1.63.0-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:8064d986d3a64ba21e498b9a376cbc5d6ab2e8ab0e288d39f266f0fca169b90d"}, + {file = "grpcio-1.63.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:219bb1848cd2c90348c79ed0a6b0ea51866bc7e72fa6e205e459fedab5770172"}, + {file = "grpcio-1.63.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2d60cd1d58817bc5985fae6168d8b5655c4981d448d0f5b6194bbcc038090d2"}, + {file = "grpcio-1.63.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:9e350cb096e5c67832e9b6e018cf8a0d2a53b2a958f6251615173165269a91b0"}, + {file = "grpcio-1.63.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:56cdf96ff82e3cc90dbe8bac260352993f23e8e256e063c327b6cf9c88daf7a9"}, + {file = "grpcio-1.63.0-cp312-cp312-win32.whl", hash = "sha256:3a6d1f9ea965e750db7b4ee6f9fdef5fdf135abe8a249e75d84b0a3e0c668a1b"}, + {file = "grpcio-1.63.0-cp312-cp312-win_amd64.whl", hash = "sha256:d2497769895bb03efe3187fb1888fc20e98a5f18b3d14b606167dacda5789434"}, + {file = "grpcio-1.63.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:fdf348ae69c6ff484402cfdb14e18c1b0054ac2420079d575c53a60b9b2853ae"}, + {file = "grpcio-1.63.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a3abfe0b0f6798dedd2e9e92e881d9acd0fdb62ae27dcbbfa7654a57e24060c0"}, + {file = "grpcio-1.63.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:6ef0ad92873672a2a3767cb827b64741c363ebaa27e7f21659e4e31f4d750280"}, + {file = "grpcio-1.63.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b416252ac5588d9dfb8a30a191451adbf534e9ce5f56bb02cd193f12d8845b7f"}, + {file = "grpcio-1.63.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3b77eaefc74d7eb861d3ffbdf91b50a1bb1639514ebe764c47773b833fa2d91"}, + {file = "grpcio-1.63.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:b005292369d9c1f80bf70c1db1c17c6c342da7576f1c689e8eee4fb0c256af85"}, + {file = "grpcio-1.63.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cdcda1156dcc41e042d1e899ba1f5c2e9f3cd7625b3d6ebfa619806a4c1aadda"}, + {file = "grpcio-1.63.0-cp38-cp38-win32.whl", hash = "sha256:01799e8649f9e94ba7db1aeb3452188048b0019dc37696b0f5ce212c87c560c3"}, + {file = "grpcio-1.63.0-cp38-cp38-win_amd64.whl", hash = "sha256:6a1a3642d76f887aa4009d92f71eb37809abceb3b7b5a1eec9c554a246f20e3a"}, + {file = "grpcio-1.63.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:75f701ff645858a2b16bc8c9fc68af215a8bb2d5a9b647448129de6e85d52bce"}, + {file = "grpcio-1.63.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cacdef0348a08e475a721967f48206a2254a1b26ee7637638d9e081761a5ba86"}, + {file = "grpcio-1.63.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:0697563d1d84d6985e40ec5ec596ff41b52abb3fd91ec240e8cb44a63b895094"}, + {file = "grpcio-1.63.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6426e1fb92d006e47476d42b8f240c1d916a6d4423c5258ccc5b105e43438f61"}, + {file = "grpcio-1.63.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e48cee31bc5f5a31fb2f3b573764bd563aaa5472342860edcc7039525b53e46a"}, + {file = "grpcio-1.63.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:50344663068041b34a992c19c600236e7abb42d6ec32567916b87b4c8b8833b3"}, + {file = "grpcio-1.63.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:259e11932230d70ef24a21b9fb5bb947eb4703f57865a404054400ee92f42f5d"}, + {file = "grpcio-1.63.0-cp39-cp39-win32.whl", hash = "sha256:a44624aad77bf8ca198c55af811fd28f2b3eaf0a50ec5b57b06c034416ef2d0a"}, + {file = "grpcio-1.63.0-cp39-cp39-win_amd64.whl", hash = "sha256:166e5c460e5d7d4656ff9e63b13e1f6029b122104c1633d5f37eaea348d7356d"}, + {file = "grpcio-1.63.0.tar.gz", hash = "sha256:f3023e14805c61bc439fb40ca545ac3d5740ce66120a678a3c6c2c55b70343d1"}, ] [package.extras] -protobuf = ["grpcio-tools (>=1.62.2)"] +protobuf = ["grpcio-tools (>=1.63.0)"] [[package]] name = "grpcio-status" @@ -1482,6 +1581,17 @@ files = [ {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, ] +[[package]] +name = "imagesize" +version = "1.4.1" +description = "Getting image size from png/jpeg/jpeg2000/gif file" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, + {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, +] + [[package]] name = "importlib-metadata" version = "7.1.0" @@ -1716,13 +1826,13 @@ files = [ [[package]] name = "jsonschema" -version = "4.21.1" +version = "4.22.0" description = "An implementation of JSON Schema validation for Python" optional = false python-versions = ">=3.8" files = [ - {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, - {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, + {file = "jsonschema-4.22.0-py3-none-any.whl", hash = "sha256:ff4cfd6b1367a40e7bc6411caec72effadd3db0bbe5017de188f2d6108335802"}, + {file = "jsonschema-4.22.0.tar.gz", hash = "sha256:5b22d434a45935119af990552c862e5d6d564e8f6601206b305a61fdf661a2b7"}, ] [package.dependencies] @@ -1777,6 +1887,33 @@ nbconvert = "*" notebook = "*" qtconsole = "*" +[[package]] +name = "jupyter-cache" +version = "1.0.0" +description = "A defined interface for working with a cache of jupyter notebooks." +optional = false +python-versions = ">=3.9" +files = [ + {file = "jupyter_cache-1.0.0-py3-none-any.whl", hash = "sha256:594b1c4e29b488b36547e12477645f489dbdc62cc939b2408df5679f79245078"}, + {file = "jupyter_cache-1.0.0.tar.gz", hash = "sha256:d0fa7d7533cd5798198d8889318269a8c1382ed3b22f622c09a9356521f48687"}, +] + +[package.dependencies] +attrs = "*" +click = "*" +importlib-metadata = "*" +nbclient = ">=0.2" +nbformat = "*" +pyyaml = "*" +sqlalchemy = ">=1.3.12,<3" +tabulate = "*" + +[package.extras] +cli = ["click-log"] +code-style = ["pre-commit (>=2.12)"] +rtd = ["ipykernel", "jupytext", "myst-nb", "nbdime", "sphinx-book-theme", "sphinx-copybutton"] +testing = ["coverage", "ipykernel", "jupytext", "matplotlib", "nbdime", "nbformat (>=5.1)", "numpy", "pandas", "pytest (>=6,<8)", "pytest-cov", "pytest-regressions", "sympy"] + [[package]] name = "jupyter-client" version = "8.6.1" @@ -1941,13 +2078,13 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.1.6" +version = "4.1.8" description = "JupyterLab computational environment" optional = false python-versions = ">=3.8" files = [ - {file = "jupyterlab-4.1.6-py3-none-any.whl", hash = "sha256:cf3e862bc10dbf4331e4eb37438634f813c238cfc62c71c640b3b3b2caa089a8"}, - {file = "jupyterlab-4.1.6.tar.gz", hash = "sha256:7935f36ba26eb615183a4f5c2bbca5791b5108ce2a00b5505f8cfd100d53648e"}, + {file = "jupyterlab-4.1.8-py3-none-any.whl", hash = "sha256:c3baf3a2f91f89d110ed5786cd18672b9a357129d4e389d2a0dead15e11a4d2c"}, + {file = "jupyterlab-4.1.8.tar.gz", hash = "sha256:3384aded8680e7ce504fd63b8bb89a39df21c9c7694d9e7dc4a68742cdb30f9b"}, ] [package.dependencies] @@ -1959,7 +2096,7 @@ jinja2 = ">=3.0.3" jupyter-core = "*" jupyter-lsp = ">=2.0.0" jupyter-server = ">=2.4.0,<3" -jupyterlab-server = ">=2.19.0,<3" +jupyterlab-server = ">=2.27.1,<3" notebook-shim = ">=0.2" packaging = "*" tomli = {version = ">=1.2.2", markers = "python_version < \"3.11\""} @@ -2021,6 +2158,30 @@ files = [ {file = "jupyterlab_widgets-3.0.10.tar.gz", hash = "sha256:04f2ac04976727e4f9d0fa91cdc2f1ab860f965e504c29dbd6a65c882c9d04c0"}, ] +[[package]] +name = "markdown-it-py" +version = "3.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" +optional = false +python-versions = ">=3.8" +files = [ + {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, + {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, +] + +[package.dependencies] +mdurl = ">=0.1,<1.0" + +[package.extras] +benchmarking = ["psutil", "pytest", "pytest-benchmark"] +code-style = ["pre-commit (>=3.0,<4.0)"] +compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] +linkify = ["linkify-it-py (>=1,<3)"] +plugins = ["mdit-py-plugins"] +profiling = ["gprof2dot"] +rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + [[package]] name = "markupsafe" version = "2.1.5" @@ -2115,6 +2276,36 @@ files = [ {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, ] +[[package]] +name = "mdit-py-plugins" +version = "0.4.0" +description = "Collection of plugins for markdown-it-py" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mdit_py_plugins-0.4.0-py3-none-any.whl", hash = "sha256:b51b3bb70691f57f974e257e367107857a93b36f322a9e6d44ca5bf28ec2def9"}, + {file = "mdit_py_plugins-0.4.0.tar.gz", hash = "sha256:d8ab27e9aed6c38aa716819fedfde15ca275715955f8a185a8e1cf90fb1d2c1b"}, +] + +[package.dependencies] +markdown-it-py = ">=1.0.0,<4.0.0" + +[package.extras] +code-style = ["pre-commit"] +rtd = ["myst-parser", "sphinx-book-theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "mdurl" +version = "0.1.2" +description = "Markdown URL utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, +] + [[package]] name = "mistune" version = "3.0.2" @@ -2219,6 +2410,60 @@ files = [ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, ] +[[package]] +name = "myst-nb" +version = "1.1.0" +description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser." +optional = false +python-versions = ">=3.9" +files = [ + {file = "myst_nb-1.1.0-py3-none-any.whl", hash = "sha256:0ac29b2a346f9a1257edbfb5d6c47d528728a37e6b9438903c2821f69fda9235"}, + {file = "myst_nb-1.1.0.tar.gz", hash = "sha256:9278840e844f5d780b5acc5400cbf63d97caaccf8eb442a55ebd9a03e2522d5e"}, +] + +[package.dependencies] +importlib_metadata = "*" +ipykernel = "*" +ipython = "*" +jupyter-cache = ">=0.5" +myst-parser = ">=1.0.0" +nbclient = "*" +nbformat = ">=5.0" +pyyaml = "*" +sphinx = ">=5" +typing-extensions = "*" + +[package.extras] +code-style = ["pre-commit"] +rtd = ["alabaster", "altair", "bokeh", "coconut (>=1.4.3,<3.1.0)", "ipykernel (>=5.5,<7.0)", "ipywidgets", "jupytext (>=1.11.2,<1.16.0)", "matplotlib", "numpy", "pandas", "plotly", "sphinx-book-theme (>=0.3)", "sphinx-copybutton", "sphinx-design (>=0.4.0,<0.5.0)", "sphinxcontrib-bibtex", "sympy"] +testing = ["beautifulsoup4", "coverage (>=6.4,<8.0)", "ipykernel (>=5.5,<7.0)", "ipython (!=8.1.0,<8.17)", "ipywidgets (>=8)", "jupytext (>=1.11.2,<1.16.0)", "matplotlib (==3.7.*)", "nbdime", "numpy", "pandas (==1.5.*)", "pyarrow", "pytest (>=7.1,<8.0)", "pytest-cov (>=3,<5)", "pytest-param-files (>=0.3.3,<0.4.0)", "pytest-regressions", "sympy (>=1.10.1)"] + +[[package]] +name = "myst-parser" +version = "3.0.1" +description = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser," +optional = false +python-versions = ">=3.8" +files = [ + {file = "myst_parser-3.0.1-py3-none-any.whl", hash = "sha256:6457aaa33a5d474aca678b8ead9b3dc298e89c68e67012e73146ea6fd54babf1"}, + {file = "myst_parser-3.0.1.tar.gz", hash = "sha256:88f0cb406cb363b077d176b51c476f62d60604d68a8dcdf4832e080441301a87"}, +] + +[package.dependencies] +docutils = ">=0.18,<0.22" +jinja2 = "*" +markdown-it-py = ">=3.0,<4.0" +mdit-py-plugins = ">=0.4,<1.0" +pyyaml = "*" +sphinx = ">=6,<8" + +[package.extras] +code-style = ["pre-commit (>=3.0,<4.0)"] +linkify = ["linkify-it-py (>=2.0,<3.0)"] +rtd = ["ipython", "sphinx (>=7)", "sphinx-autodoc2 (>=0.5.0,<0.6.0)", "sphinx-book-theme (>=1.1,<2.0)", "sphinx-copybutton", "sphinx-design", "sphinx-pyscript", "sphinx-tippy (>=0.4.3)", "sphinx-togglebutton", "sphinxext-opengraph (>=0.9.0,<0.10.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] +testing = ["beautifulsoup4", "coverage[toml]", "defusedxml", "pytest (>=8,<9)", "pytest-cov", "pytest-param-files (>=0.6.0,<0.7.0)", "pytest-regressions", "sphinx-pytest"] +testing-docutils = ["pygments", "pytest (>=8,<9)", "pytest-param-files (>=0.6.0,<0.7.0)"] + [[package]] name = "nbclient" version = "0.10.0" @@ -2243,13 +2488,13 @@ test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>= [[package]] name = "nbconvert" -version = "7.16.3" +version = "7.16.4" description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." optional = false python-versions = ">=3.8" files = [ - {file = "nbconvert-7.16.3-py3-none-any.whl", hash = "sha256:ddeff14beeeedf3dd0bc506623e41e4507e551736de59df69a91f86700292b3b"}, - {file = "nbconvert-7.16.3.tar.gz", hash = "sha256:a6733b78ce3d47c3f85e504998495b07e6ea9cf9bf6ec1c98dda63ec6ad19142"}, + {file = "nbconvert-7.16.4-py3-none-any.whl", hash = "sha256:05873c620fe520b6322bf8a5ad562692343fe3452abda5765c7a34b7d1aa3eb3"}, + {file = "nbconvert-7.16.4.tar.gz", hash = "sha256:86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4"}, ] [package.dependencies] @@ -2271,9 +2516,9 @@ tinycss2 = "*" traitlets = ">=5.1" [package.extras] -all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"] +all = ["flaky", "ipykernel", "ipython", "ipywidgets (>=7.5)", "myst-parser", "nbsphinx (>=0.2.12)", "playwright", "pydata-sphinx-theme", "pyqtwebengine (>=5.15)", "pytest (>=7)", "sphinx (==5.0.2)", "sphinxcontrib-spelling", "tornado (>=6.1)"] docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] -qtpdf = ["nbconvert[qtpng]"] +qtpdf = ["pyqtwebengine (>=5.15)"] qtpng = ["pyqtwebengine (>=5.15)"] serve = ["tornado (>=6.1)"] test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest (>=7)"] @@ -2300,6 +2545,25 @@ traitlets = ">=5.1" docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] test = ["pep440", "pre-commit", "pytest", "testpath"] +[[package]] +name = "nbsphinx" +version = "0.9.3" +description = "Jupyter Notebook Tools for Sphinx" +optional = false +python-versions = ">=3.6" +files = [ + {file = "nbsphinx-0.9.3-py3-none-any.whl", hash = "sha256:6e805e9627f4a358bd5720d5cbf8bf48853989c79af557afd91a5f22e163029f"}, + {file = "nbsphinx-0.9.3.tar.gz", hash = "sha256:ec339c8691b688f8676104a367a4b8cf3ea01fd089dc28d24dec22d563b11562"}, +] + +[package.dependencies] +docutils = "*" +jinja2 = "*" +nbconvert = "!=5.4" +nbformat = "*" +sphinx = ">=1.8" +traitlets = ">=5" + [[package]] name = "nest-asyncio" version = "1.6.0" @@ -2558,13 +2822,13 @@ files = [ [[package]] name = "openai" -version = "1.23.6" +version = "1.25.0" description = "The official Python library for the openai API" optional = true python-versions = ">=3.7.1" files = [ - {file = "openai-1.23.6-py3-none-any.whl", hash = "sha256:f406c76ba279d16b9aca5a89cee0d968488e39f671f4dc6f0d690ac3c6f6fca1"}, - {file = "openai-1.23.6.tar.gz", hash = "sha256:612de2d54cf580920a1156273f84aada6b3dca26d048f62eb5364a4314d7f449"}, + {file = "openai-1.25.0-py3-none-any.whl", hash = "sha256:d0cfdf6afb31a5dabf3b95966cb31f3c757a0edaf3228715409cb404b9933de0"}, + {file = "openai-1.25.0.tar.gz", hash = "sha256:22c35b26b8281cd2759b1a4c05ac99e2f2b26a9df71f90a0b4ddb75aa27adc81"}, ] [package.dependencies] @@ -3033,6 +3297,33 @@ files = [ [package.dependencies] typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" +[[package]] +name = "pydata-sphinx-theme" +version = "0.15.2" +description = "Bootstrap-based Sphinx theme from the PyData community" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydata_sphinx_theme-0.15.2-py3-none-any.whl", hash = "sha256:0c5fa1fa98a9b26dae590666ff576f27e26c7ba708fee754ecb9e07359ed4588"}, + {file = "pydata_sphinx_theme-0.15.2.tar.gz", hash = "sha256:4243fee85b3afcfae9df64f83210a04e7182e53bc3db8841ffff6d21d95ae320"}, +] + +[package.dependencies] +accessible-pygments = "*" +Babel = "*" +beautifulsoup4 = "*" +docutils = "!=0.17.0" +packaging = "*" +pygments = ">=2.7" +sphinx = ">=5.0" +typing-extensions = "*" + +[package.extras] +a11y = ["pytest-playwright"] +dev = ["nox", "pre-commit", "pydata-sphinx-theme[doc,test]", "pyyaml"] +doc = ["ablog (>=0.11.0rc2)", "colorama", "ipykernel", "ipyleaflet", "jupyter_sphinx", "jupyterlite-sphinx", "linkify-it-py", "matplotlib", "myst-parser", "nbsphinx", "numpy", "numpydoc", "pandas", "plotly", "rich", "sphinx-autoapi (>=3.0.0)", "sphinx-copybutton", "sphinx-design", "sphinx-favicon (>=1.0.1)", "sphinx-sitemap", "sphinx-togglebutton", "sphinxcontrib-youtube (<1.4)", "sphinxext-rediraffe", "xarray"] +test = ["pytest", "pytest-cov", "pytest-regressions"] + [[package]] name = "pygments" version = "2.17.2" @@ -3272,99 +3563,99 @@ files = [ [[package]] name = "pyzmq" -version = "26.0.2" +version = "26.0.3" description = "Python bindings for 0MQ" optional = false python-versions = ">=3.7" files = [ - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:1a60a03b01e8c9c58932ec0cca15b1712d911c2800eb82d4281bc1ae5b6dad50"}, - {file = "pyzmq-26.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:949067079e14ea1973bd740255e0840118c163d4bce8837f539d749f145cf5c3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37e7edfa6cf96d036a403775c96afa25058d1bb940a79786a9a2fc94a783abe3"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:903cc7a84a7d4326b43755c368780800e035aa3d711deae84a533fdffa8755b0"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6cb2e41af165e5f327d06fbdd79a42a4e930267fade4e9f92d17f3ccce03f3a7"}, - {file = "pyzmq-26.0.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:55353b8189adcfc4c125fc4ce59d477744118e9c0ec379dd0999c5fa120ac4f5"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f961423ff6236a752ced80057a20e623044df95924ed1009f844cde8b3a595f9"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ba77fe84fe4f5f3dc0ef681a6d366685c8ffe1c8439c1d7530997b05ac06a04b"}, - {file = "pyzmq-26.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:52589f0a745ef61b9c75c872cf91f8c1f7c0668eb3dd99d7abd639d8c0fb9ca7"}, - {file = "pyzmq-26.0.2-cp310-cp310-win32.whl", hash = "sha256:b7b6d2a46c7afe2ad03ec8faf9967090c8ceae85c4d8934d17d7cae6f9062b64"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:86531e20de249d9204cc6d8b13d5a30537748c78820215161d8a3b9ea58ca111"}, - {file = "pyzmq-26.0.2-cp310-cp310-win_arm64.whl", hash = "sha256:f26a05029ecd2bd306b941ff8cb80f7620b7901421052bc429d238305b1cbf2f"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:70770e296a9cb03d955540c99360aab861cbb3cba29516abbd106a15dbd91268"}, - {file = "pyzmq-26.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2740fd7161b39e178554ebf21aa5667a1c9ef0cd2cb74298fd4ef017dae7aec4"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5e3706c32dea077faa42b1c92d825b7f86c866f72532d342e0be5e64d14d858"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0fa1416876194927f7723d6b7171b95e1115602967fc6bfccbc0d2d51d8ebae1"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ef9a79a48794099c57dc2df00340b5d47c5caa1792f9ddb8c7a26b1280bd575"}, - {file = "pyzmq-26.0.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:1c60fcdfa3229aeee4291c5d60faed3a813b18bdadb86299c4bf49e8e51e8605"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e943c39c206b04df2eb5d71305761d7c3ca75fd49452115ea92db1b5b98dbdef"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8da0ed8a598693731c76659880a668f4748b59158f26ed283a93f7f04d47447e"}, - {file = "pyzmq-26.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7bf51970b11d67096bede97cdbad0f4333f7664f4708b9b2acb352bf4faa3140"}, - {file = "pyzmq-26.0.2-cp311-cp311-win32.whl", hash = "sha256:6f8e6bd5d066be605faa9fe5ec10aa1a46ad9f18fc8646f2b9aaefc8fb575742"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:6d03da3a0ae691b361edcb39530075461202f699ce05adbb15055a0e1c9bcaa4"}, - {file = "pyzmq-26.0.2-cp311-cp311-win_arm64.whl", hash = "sha256:f84e33321b68ff00b60e9dbd1a483e31ab6022c577c8de525b8e771bd274ce68"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:44c33ebd1c62a01db7fbc24e18bdda569d6639217d13d5929e986a2b0f69070d"}, - {file = "pyzmq-26.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ac04f904b4fce4afea9cdccbb78e24d468cb610a839d5a698853e14e2a3f9ecf"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f2133de5ba9adc5f481884ccb699eac9ce789708292945c05746880f95b241c0"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7753c67c570d7fc80c2dc59b90ca1196f1224e0e2e29a548980c95fe0fe27fc1"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d4e51632e6b12e65e8d9d7612446ecda2eda637a868afa7bce16270194650dd"}, - {file = "pyzmq-26.0.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:d6c38806f6ecd0acf3104b8d7e76a206bcf56dadd6ce03720d2fa9d9157d5718"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:48f496bbe14686b51cec15406323ae6942851e14022efd7fc0e2ecd092c5982c"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e84a3161149c75bb7a7dc8646384186c34033e286a67fec1ad1bdedea165e7f4"}, - {file = "pyzmq-26.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:dabf796c67aa9f5a4fcc956d47f0d48b5c1ed288d628cf53aa1cf08e88654343"}, - {file = "pyzmq-26.0.2-cp312-cp312-win32.whl", hash = "sha256:3eee4c676af1b109f708d80ef0cf57ecb8aaa5900d1edaf90406aea7e0e20e37"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:26721fec65846b3e4450dad050d67d31b017f97e67f7e0647b5f98aa47f828cf"}, - {file = "pyzmq-26.0.2-cp312-cp312-win_arm64.whl", hash = "sha256:653955c6c233e90de128a1b8e882abc7216f41f44218056bd519969c8c413a15"}, - {file = "pyzmq-26.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:becd8d8fb068fbb5a52096efd83a2d8e54354383f691781f53a4c26aee944542"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:7a15e5465e7083c12517209c9dd24722b25e9b63c49a563922922fc03554eb35"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e8158ac8616941f874841f9fa0f6d2f1466178c2ff91ea08353fdc19de0d40c2"}, - {file = "pyzmq-26.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea2c6a53e28c7066ea7db86fcc0b71d78d01b818bb11d4a4341ec35059885295"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bdbc7dab0b0e9c62c97b732899c4242e3282ba803bad668e03650b59b165466e"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e74b6d5ef57bb65bf1b4a37453d8d86d88550dde3fb0f23b1f1a24e60c70af5b"}, - {file = "pyzmq-26.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ed4c6ee624ecbc77b18aeeb07bf0700d26571ab95b8f723f0d02e056b5bce438"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win32.whl", hash = "sha256:8a98b3cb0484b83c19d8fb5524c8a469cd9f10e743f5904ac285d92678ee761f"}, - {file = "pyzmq-26.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:aa5f95d71b6eca9cec28aa0a2f8310ea53dea313b63db74932879ff860c1fb8d"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:5ff56c76ce77b9805378a7a73032c17cbdb1a5b84faa1df03c5d3e306e5616df"}, - {file = "pyzmq-26.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bab697fc1574fee4b81da955678708567c43c813c84c91074e452bda5346c921"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0c0fed8aa9ba0488ee1cbdaa304deea92d52fab43d373297002cfcc69c0a20c5"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:606b922699fcec472ed814dda4dc3ff7c748254e0b26762a0ba21a726eb1c107"}, - {file = "pyzmq-26.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45f0fd82bad4d199fa993fbf0ac586a7ac5879addbe436a35a389df7e0eb4c91"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:166c5e41045939a52c01e6f374e493d9a6a45dfe677360d3e7026e38c42e8906"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d566e859e8b8d5bca08467c093061774924b3d78a5ba290e82735b2569edc84b"}, - {file = "pyzmq-26.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:264ee0e72b72ca59279dc320deab5ae0fac0d97881aed1875ce4bde2e56ffde0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win32.whl", hash = "sha256:3152bbd3a4744cbdd83dfb210ed701838b8b0c9065cef14671d6d91df12197d0"}, - {file = "pyzmq-26.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:bf77601d75ca692c179154b7e5943c286a4aaffec02c491afe05e60493ce95f2"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:c770a7545b3deca2db185b59175e710a820dd4ed43619f4c02e90b0e227c6252"}, - {file = "pyzmq-26.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d47175f0a380bfd051726bc5c0054036ae4a5d8caf922c62c8a172ccd95c1a2a"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:9bce298c1ce077837e110367c321285dc4246b531cde1abfc27e4a5bbe2bed4d"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c40b09b7e184d6e3e1be1c8af2cc320c0f9f610d8a5df3dd866e6e6e4e32b235"}, - {file = "pyzmq-26.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d420d856bf728713874cefb911398efe69e1577835851dd297a308a78c14c249"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d792d3cab987058451e55c70c5926e93e2ceb68ca5a2334863bb903eb860c9cb"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:83ec17729cf6d3464dab98a11e98294fcd50e6b17eaabd3d841515c23f6dbd3a"}, - {file = "pyzmq-26.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47c17d5ebfa88ae90f08960c97b49917098665b8cd8be31f2c24e177bcf37a0f"}, - {file = "pyzmq-26.0.2-cp39-cp39-win32.whl", hash = "sha256:d509685d1cd1d018705a811c5f9d5bc237790936ead6d06f6558b77e16cc7235"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:c7cc8cc009e8f6989a6d86c96f87dae5f5fb07d6c96916cdc7719d546152c7db"}, - {file = "pyzmq-26.0.2-cp39-cp39-win_arm64.whl", hash = "sha256:3ada31cb879cd7532f4a85b501f4255c747d4813ab76b35c49ed510ce4865b45"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0a6ceaddc830dd3ca86cb8451cf373d1f05215368e11834538c2902ed5205139"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a967681463aa7a99eb9a62bb18229b653b45c10ff0947b31cc0837a83dfb86f"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6472a73bc115bc40a2076609a90894775abe6faf19a78375675a2f889a613071"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d6aea92bcccfe5e5524d3c70a6f16ffdae548390ddad26f4207d55c55a40593"}, - {file = "pyzmq-26.0.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e025f6351e49d48a5aa2f5a09293aa769b0ee7369c25bed551647234b7fa0c75"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:40bd7ebe4dbb37d27f0c56e2a844f360239343a99be422085e13e97da13f73f9"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1dd40d586ad6f53764104df6e01810fe1b4e88fd353774629a5e6fe253813f79"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f2aca15e9ad8c8657b5b3d7ae3d1724dc8c1c1059c06b4b674c3aa36305f4930"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:450ec234736732eb0ebeffdb95a352450d4592f12c3e087e2a9183386d22c8bf"}, - {file = "pyzmq-26.0.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:f43be2bebbd09360a2f23af83b243dc25ffe7b583ea8c722e6df03e03a55f02f"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:867f55e54aff254940bcec5eec068e7c0ac1e6bf360ab91479394a8bf356b0e6"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b4dbc033c5ad46f8c429bf238c25a889b8c1d86bfe23a74e1031a991cb3f0000"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6e8dd2961462e337e21092ec2da0c69d814dcb1b6e892955a37444a425e9cfb8"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35391e72df6c14a09b697c7b94384947c1dd326aca883ff98ff137acdf586c33"}, - {file = "pyzmq-26.0.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:1c3d3c92fa54eda94ab369ca5b8d35059987c326ba5e55326eb068862f64b1fc"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e7aa61a9cc4f0523373e31fc9255bf4567185a099f85ca3598e64de484da3ab2"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee53a8191271f144cc20b12c19daa9f1546adc84a2f33839e3338039b55c373c"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ac60a980f07fa988983f7bfe6404ef3f1e4303f5288a01713bc1266df6d18783"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88896b1b4817d7b2fe1ec7205c4bbe07bf5d92fb249bf2d226ddea8761996068"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:18dfffe23751edee917764ffa133d5d3fef28dfd1cf3adebef8c90bc854c74c4"}, - {file = "pyzmq-26.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:6926dd14cfe6967d3322640b6d5c3c3039db71716a5e43cca6e3b474e73e0b36"}, - {file = "pyzmq-26.0.2.tar.gz", hash = "sha256:f0f9bb370449158359bb72a3e12c658327670c0ffe6fbcd1af083152b64f9df0"}, + {file = "pyzmq-26.0.3-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:44dd6fc3034f1eaa72ece33588867df9e006a7303725a12d64c3dff92330f625"}, + {file = "pyzmq-26.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:acb704195a71ac5ea5ecf2811c9ee19ecdc62b91878528302dd0be1b9451cc90"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dbb9c997932473a27afa93954bb77a9f9b786b4ccf718d903f35da3232317de"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6bcb34f869d431799c3ee7d516554797f7760cb2198ecaa89c3f176f72d062be"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:38ece17ec5f20d7d9b442e5174ae9f020365d01ba7c112205a4d59cf19dc38ee"}, + {file = "pyzmq-26.0.3-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:ba6e5e6588e49139a0979d03a7deb9c734bde647b9a8808f26acf9c547cab1bf"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:3bf8b000a4e2967e6dfdd8656cd0757d18c7e5ce3d16339e550bd462f4857e59"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2136f64fbb86451dbbf70223635a468272dd20075f988a102bf8a3f194a411dc"}, + {file = "pyzmq-26.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e8918973fbd34e7814f59143c5f600ecd38b8038161239fd1a3d33d5817a38b8"}, + {file = "pyzmq-26.0.3-cp310-cp310-win32.whl", hash = "sha256:0aaf982e68a7ac284377d051c742610220fd06d330dcd4c4dbb4cdd77c22a537"}, + {file = "pyzmq-26.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:f1a9b7d00fdf60b4039f4455afd031fe85ee8305b019334b72dcf73c567edc47"}, + {file = "pyzmq-26.0.3-cp310-cp310-win_arm64.whl", hash = "sha256:80b12f25d805a919d53efc0a5ad7c0c0326f13b4eae981a5d7b7cc343318ebb7"}, + {file = "pyzmq-26.0.3-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:a72a84570f84c374b4c287183debc776dc319d3e8ce6b6a0041ce2e400de3f32"}, + {file = "pyzmq-26.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7ca684ee649b55fd8f378127ac8462fb6c85f251c2fb027eb3c887e8ee347bcd"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e222562dc0f38571c8b1ffdae9d7adb866363134299264a1958d077800b193b7"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f17cde1db0754c35a91ac00b22b25c11da6eec5746431d6e5092f0cd31a3fea9"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b7c0c0b3244bb2275abe255d4a30c050d541c6cb18b870975553f1fb6f37527"}, + {file = "pyzmq-26.0.3-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:ac97a21de3712afe6a6c071abfad40a6224fd14fa6ff0ff8d0c6e6cd4e2f807a"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:88b88282e55fa39dd556d7fc04160bcf39dea015f78e0cecec8ff4f06c1fc2b5"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:72b67f966b57dbd18dcc7efbc1c7fc9f5f983e572db1877081f075004614fcdd"}, + {file = "pyzmq-26.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f4b6cecbbf3b7380f3b61de3a7b93cb721125dc125c854c14ddc91225ba52f83"}, + {file = "pyzmq-26.0.3-cp311-cp311-win32.whl", hash = "sha256:eed56b6a39216d31ff8cd2f1d048b5bf1700e4b32a01b14379c3b6dde9ce3aa3"}, + {file = "pyzmq-26.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:3191d312c73e3cfd0f0afdf51df8405aafeb0bad71e7ed8f68b24b63c4f36500"}, + {file = "pyzmq-26.0.3-cp311-cp311-win_arm64.whl", hash = "sha256:b6907da3017ef55139cf0e417c5123a84c7332520e73a6902ff1f79046cd3b94"}, + {file = "pyzmq-26.0.3-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:068ca17214038ae986d68f4a7021f97e187ed278ab6dccb79f837d765a54d753"}, + {file = "pyzmq-26.0.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7821d44fe07335bea256b9f1f41474a642ca55fa671dfd9f00af8d68a920c2d4"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eeb438a26d87c123bb318e5f2b3d86a36060b01f22fbdffd8cf247d52f7c9a2b"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:69ea9d6d9baa25a4dc9cef5e2b77b8537827b122214f210dd925132e34ae9b12"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7daa3e1369355766dea11f1d8ef829905c3b9da886ea3152788dc25ee6079e02"}, + {file = "pyzmq-26.0.3-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:6ca7a9a06b52d0e38ccf6bca1aeff7be178917893f3883f37b75589d42c4ac20"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1b7d0e124948daa4d9686d421ef5087c0516bc6179fdcf8828b8444f8e461a77"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e746524418b70f38550f2190eeee834db8850088c834d4c8406fbb9bc1ae10b2"}, + {file = "pyzmq-26.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:6b3146f9ae6af82c47a5282ac8803523d381b3b21caeae0327ed2f7ecb718798"}, + {file = "pyzmq-26.0.3-cp312-cp312-win32.whl", hash = "sha256:2b291d1230845871c00c8462c50565a9cd6026fe1228e77ca934470bb7d70ea0"}, + {file = "pyzmq-26.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:926838a535c2c1ea21c903f909a9a54e675c2126728c21381a94ddf37c3cbddf"}, + {file = "pyzmq-26.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:5bf6c237f8c681dfb91b17f8435b2735951f0d1fad10cc5dfd96db110243370b"}, + {file = "pyzmq-26.0.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0c0991f5a96a8e620f7691e61178cd8f457b49e17b7d9cfa2067e2a0a89fc1d5"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:dbf012d8fcb9f2cf0643b65df3b355fdd74fc0035d70bb5c845e9e30a3a4654b"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:01fbfbeb8249a68d257f601deb50c70c929dc2dfe683b754659569e502fbd3aa"}, + {file = "pyzmq-26.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c8eb19abe87029c18f226d42b8a2c9efdd139d08f8bf6e085dd9075446db450"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:5344b896e79800af86ad643408ca9aa303a017f6ebff8cee5a3163c1e9aec987"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:204e0f176fd1d067671157d049466869b3ae1fc51e354708b0dc41cf94e23a3a"}, + {file = "pyzmq-26.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a42db008d58530efa3b881eeee4991146de0b790e095f7ae43ba5cc612decbc5"}, + {file = "pyzmq-26.0.3-cp37-cp37m-win32.whl", hash = "sha256:8d7a498671ca87e32b54cb47c82a92b40130a26c5197d392720a1bce1b3c77cf"}, + {file = "pyzmq-26.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:3b4032a96410bdc760061b14ed6a33613ffb7f702181ba999df5d16fb96ba16a"}, + {file = "pyzmq-26.0.3-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:2cc4e280098c1b192c42a849de8de2c8e0f3a84086a76ec5b07bfee29bda7d18"}, + {file = "pyzmq-26.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5bde86a2ed3ce587fa2b207424ce15b9a83a9fa14422dcc1c5356a13aed3df9d"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:34106f68e20e6ff253c9f596ea50397dbd8699828d55e8fa18bd4323d8d966e6"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ebbbd0e728af5db9b04e56389e2299a57ea8b9dd15c9759153ee2455b32be6ad"}, + {file = "pyzmq-26.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6b1d1c631e5940cac5a0b22c5379c86e8df6a4ec277c7a856b714021ab6cfad"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:e891ce81edd463b3b4c3b885c5603c00141151dd9c6936d98a680c8c72fe5c67"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:9b273ecfbc590a1b98f014ae41e5cf723932f3b53ba9367cfb676f838038b32c"}, + {file = "pyzmq-26.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b32bff85fb02a75ea0b68f21e2412255b5731f3f389ed9aecc13a6752f58ac97"}, + {file = "pyzmq-26.0.3-cp38-cp38-win32.whl", hash = "sha256:f6c21c00478a7bea93caaaef9e7629145d4153b15a8653e8bb4609d4bc70dbfc"}, + {file = "pyzmq-26.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:3401613148d93ef0fd9aabdbddb212de3db7a4475367f49f590c837355343972"}, + {file = "pyzmq-26.0.3-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:2ed8357f4c6e0daa4f3baf31832df8a33334e0fe5b020a61bc8b345a3db7a606"}, + {file = "pyzmq-26.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c1c8f2a2ca45292084c75bb6d3a25545cff0ed931ed228d3a1810ae3758f975f"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:b63731993cdddcc8e087c64e9cf003f909262b359110070183d7f3025d1c56b5"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b3cd31f859b662ac5d7f4226ec7d8bd60384fa037fc02aee6ff0b53ba29a3ba8"}, + {file = "pyzmq-26.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:115f8359402fa527cf47708d6f8a0f8234f0e9ca0cab7c18c9c189c194dbf620"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:715bdf952b9533ba13dfcf1f431a8f49e63cecc31d91d007bc1deb914f47d0e4"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:e1258c639e00bf5e8a522fec6c3eaa3e30cf1c23a2f21a586be7e04d50c9acab"}, + {file = "pyzmq-26.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:15c59e780be8f30a60816a9adab900c12a58d79c1ac742b4a8df044ab2a6d920"}, + {file = "pyzmq-26.0.3-cp39-cp39-win32.whl", hash = "sha256:d0cdde3c78d8ab5b46595054e5def32a755fc028685add5ddc7403e9f6de9879"}, + {file = "pyzmq-26.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:ce828058d482ef860746bf532822842e0ff484e27f540ef5c813d516dd8896d2"}, + {file = "pyzmq-26.0.3-cp39-cp39-win_arm64.whl", hash = "sha256:788f15721c64109cf720791714dc14afd0f449d63f3a5487724f024345067381"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2c18645ef6294d99b256806e34653e86236eb266278c8ec8112622b61db255de"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e6bc96ebe49604df3ec2c6389cc3876cabe475e6bfc84ced1bf4e630662cb35"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:971e8990c5cc4ddcff26e149398fc7b0f6a042306e82500f5e8db3b10ce69f84"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8416c23161abd94cc7da80c734ad7c9f5dbebdadfdaa77dad78244457448223"}, + {file = "pyzmq-26.0.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:082a2988364b60bb5de809373098361cf1dbb239623e39e46cb18bc035ed9c0c"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d57dfbf9737763b3a60d26e6800e02e04284926329aee8fb01049635e957fe81"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:77a85dca4c2430ac04dc2a2185c2deb3858a34fe7f403d0a946fa56970cf60a1"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4c82a6d952a1d555bf4be42b6532927d2a5686dd3c3e280e5f63225ab47ac1f5"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4496b1282c70c442809fc1b151977c3d967bfb33e4e17cedbf226d97de18f709"}, + {file = "pyzmq-26.0.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:e4946d6bdb7ba972dfda282f9127e5756d4f299028b1566d1245fa0d438847e6"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:03c0ae165e700364b266876d712acb1ac02693acd920afa67da2ebb91a0b3c09"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:3e3070e680f79887d60feeda051a58d0ac36622e1759f305a41059eff62c6da7"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6ca08b840fe95d1c2bd9ab92dac5685f949fc6f9ae820ec16193e5ddf603c3b2"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e76654e9dbfb835b3518f9938e565c7806976c07b37c33526b574cc1a1050480"}, + {file = "pyzmq-26.0.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:871587bdadd1075b112e697173e946a07d722459d20716ceb3d1bd6c64bd08ce"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d0a2d1bd63a4ad79483049b26514e70fa618ce6115220da9efdff63688808b17"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0270b49b6847f0d106d64b5086e9ad5dc8a902413b5dbbb15d12b60f9c1747a4"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:703c60b9910488d3d0954ca585c34f541e506a091a41930e663a098d3b794c67"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:74423631b6be371edfbf7eabb02ab995c2563fee60a80a30829176842e71722a"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4adfbb5451196842a88fda3612e2c0414134874bffb1c2ce83ab4242ec9e027d"}, + {file = "pyzmq-26.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:3516119f4f9b8671083a70b6afaa0a070f5683e431ab3dc26e9215620d7ca1ad"}, + {file = "pyzmq-26.0.3.tar.gz", hash = "sha256:dba7d9f2e047dfa2bca3b01f4f84aa5246725203d6284e3790f2ca15fba6b40a"}, ] [package.dependencies] @@ -3447,104 +3738,90 @@ rpds-py = ">=0.7.0" [[package]] name = "regex" -version = "2024.4.16" +version = "2024.4.28" description = "Alternative regular expression module, to replace re." optional = true -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "regex-2024.4.16-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fb83cc090eac63c006871fd24db5e30a1f282faa46328572661c0a24a2323a08"}, - {file = "regex-2024.4.16-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8c91e1763696c0eb66340c4df98623c2d4e77d0746b8f8f2bee2c6883fd1fe18"}, - {file = "regex-2024.4.16-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:10188fe732dec829c7acca7422cdd1bf57d853c7199d5a9e96bb4d40db239c73"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:956b58d692f235cfbf5b4f3abd6d99bf102f161ccfe20d2fd0904f51c72c4c66"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a70b51f55fd954d1f194271695821dd62054d949efd6368d8be64edd37f55c86"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c02fcd2bf45162280613d2e4a1ca3ac558ff921ae4e308ecb307650d3a6ee51"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4ed75ea6892a56896d78f11006161eea52c45a14994794bcfa1654430984b22"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bd727ad276bb91928879f3aa6396c9a1d34e5e180dce40578421a691eeb77f47"}, - {file = "regex-2024.4.16-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:7cbc5d9e8a1781e7be17da67b92580d6ce4dcef5819c1b1b89f49d9678cc278c"}, - {file = "regex-2024.4.16-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:78fddb22b9ef810b63ef341c9fcf6455232d97cfe03938cbc29e2672c436670e"}, - {file = "regex-2024.4.16-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:445ca8d3c5a01309633a0c9db57150312a181146315693273e35d936472df912"}, - {file = "regex-2024.4.16-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:95399831a206211d6bc40224af1c635cb8790ddd5c7493e0bd03b85711076a53"}, - {file = "regex-2024.4.16-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:7731728b6568fc286d86745f27f07266de49603a6fdc4d19c87e8c247be452af"}, - {file = "regex-2024.4.16-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4facc913e10bdba42ec0aee76d029aedda628161a7ce4116b16680a0413f658a"}, - {file = "regex-2024.4.16-cp310-cp310-win32.whl", hash = "sha256:911742856ce98d879acbea33fcc03c1d8dc1106234c5e7d068932c945db209c0"}, - {file = "regex-2024.4.16-cp310-cp310-win_amd64.whl", hash = "sha256:e0a2df336d1135a0b3a67f3bbf78a75f69562c1199ed9935372b82215cddd6e2"}, - {file = "regex-2024.4.16-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1210365faba7c2150451eb78ec5687871c796b0f1fa701bfd2a4a25420482d26"}, - {file = "regex-2024.4.16-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9ab40412f8cd6f615bfedea40c8bf0407d41bf83b96f6fc9ff34976d6b7037fd"}, - {file = "regex-2024.4.16-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fd80d1280d473500d8086d104962a82d77bfbf2b118053824b7be28cd5a79ea5"}, - {file = "regex-2024.4.16-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bb966fdd9217e53abf824f437a5a2d643a38d4fd5fd0ca711b9da683d452969"}, - {file = "regex-2024.4.16-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:20b7a68444f536365af42a75ccecb7ab41a896a04acf58432db9e206f4e525d6"}, - {file = "regex-2024.4.16-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b74586dd0b039c62416034f811d7ee62810174bb70dffcca6439f5236249eb09"}, - {file = "regex-2024.4.16-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c8290b44d8b0af4e77048646c10c6e3aa583c1ca67f3b5ffb6e06cf0c6f0f89"}, - {file = "regex-2024.4.16-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2d80a6749724b37853ece57988b39c4e79d2b5fe2869a86e8aeae3bbeef9eb0"}, - {file = "regex-2024.4.16-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:3a1018e97aeb24e4f939afcd88211ace472ba566efc5bdf53fd8fd7f41fa7170"}, - {file = "regex-2024.4.16-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:8d015604ee6204e76569d2f44e5a210728fa917115bef0d102f4107e622b08d5"}, - {file = "regex-2024.4.16-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:3d5ac5234fb5053850d79dd8eb1015cb0d7d9ed951fa37aa9e6249a19aa4f336"}, - {file = "regex-2024.4.16-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:0a38d151e2cdd66d16dab550c22f9521ba79761423b87c01dae0a6e9add79c0d"}, - {file = "regex-2024.4.16-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:159dc4e59a159cb8e4e8f8961eb1fa5d58f93cb1acd1701d8aff38d45e1a84a6"}, - {file = "regex-2024.4.16-cp311-cp311-win32.whl", hash = "sha256:ba2336d6548dee3117520545cfe44dc28a250aa091f8281d28804aa8d707d93d"}, - {file = "regex-2024.4.16-cp311-cp311-win_amd64.whl", hash = "sha256:8f83b6fd3dc3ba94d2b22717f9c8b8512354fd95221ac661784df2769ea9bba9"}, - {file = "regex-2024.4.16-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:80b696e8972b81edf0af2a259e1b2a4a661f818fae22e5fa4fa1a995fb4a40fd"}, - {file = "regex-2024.4.16-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d61ae114d2a2311f61d90c2ef1358518e8f05eafda76eaf9c772a077e0b465ec"}, - {file = "regex-2024.4.16-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8ba6745440b9a27336443b0c285d705ce73adb9ec90e2f2004c64d95ab5a7598"}, - {file = "regex-2024.4.16-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6295004b2dd37b0835ea5c14a33e00e8cfa3c4add4d587b77287825f3418d310"}, - {file = "regex-2024.4.16-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4aba818dcc7263852aabb172ec27b71d2abca02a593b95fa79351b2774eb1d2b"}, - {file = "regex-2024.4.16-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d0800631e565c47520aaa04ae38b96abc5196fe8b4aa9bd864445bd2b5848a7a"}, - {file = "regex-2024.4.16-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:08dea89f859c3df48a440dbdcd7b7155bc675f2fa2ec8c521d02dc69e877db70"}, - {file = "regex-2024.4.16-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eeaa0b5328b785abc344acc6241cffde50dc394a0644a968add75fcefe15b9d4"}, - {file = "regex-2024.4.16-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4e819a806420bc010489f4e741b3036071aba209f2e0989d4750b08b12a9343f"}, - {file = "regex-2024.4.16-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:c2d0e7cbb6341e830adcbfa2479fdeebbfbb328f11edd6b5675674e7a1e37730"}, - {file = "regex-2024.4.16-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:91797b98f5e34b6a49f54be33f72e2fb658018ae532be2f79f7c63b4ae225145"}, - {file = "regex-2024.4.16-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:d2da13568eff02b30fd54fccd1e042a70fe920d816616fda4bf54ec705668d81"}, - {file = "regex-2024.4.16-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:370c68dc5570b394cbaadff50e64d705f64debed30573e5c313c360689b6aadc"}, - {file = "regex-2024.4.16-cp312-cp312-win32.whl", hash = "sha256:904c883cf10a975b02ab3478bce652f0f5346a2c28d0a8521d97bb23c323cc8b"}, - {file = "regex-2024.4.16-cp312-cp312-win_amd64.whl", hash = "sha256:785c071c982dce54d44ea0b79cd6dfafddeccdd98cfa5f7b86ef69b381b457d9"}, - {file = "regex-2024.4.16-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e2f142b45c6fed48166faeb4303b4b58c9fcd827da63f4cf0a123c3480ae11fb"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e87ab229332ceb127a165612d839ab87795972102cb9830e5f12b8c9a5c1b508"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:81500ed5af2090b4a9157a59dbc89873a25c33db1bb9a8cf123837dcc9765047"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b340cccad138ecb363324aa26893963dcabb02bb25e440ebdf42e30963f1a4e0"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c72608e70f053643437bd2be0608f7f1c46d4022e4104d76826f0839199347a"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a01fe2305e6232ef3e8f40bfc0f0f3a04def9aab514910fa4203bafbc0bb4682"}, - {file = "regex-2024.4.16-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:03576e3a423d19dda13e55598f0fd507b5d660d42c51b02df4e0d97824fdcae3"}, - {file = "regex-2024.4.16-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:549c3584993772e25f02d0656ac48abdda73169fe347263948cf2b1cead622f3"}, - {file = "regex-2024.4.16-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:34422d5a69a60b7e9a07a690094e824b66f5ddc662a5fc600d65b7c174a05f04"}, - {file = "regex-2024.4.16-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:5f580c651a72b75c39e311343fe6875d6f58cf51c471a97f15a938d9fe4e0d37"}, - {file = "regex-2024.4.16-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:3399dd8a7495bbb2bacd59b84840eef9057826c664472e86c91d675d007137f5"}, - {file = "regex-2024.4.16-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8d1f86f3f4e2388aa3310b50694ac44daefbd1681def26b4519bd050a398dc5a"}, - {file = "regex-2024.4.16-cp37-cp37m-win32.whl", hash = "sha256:dd5acc0a7d38fdc7a3a6fd3ad14c880819008ecb3379626e56b163165162cc46"}, - {file = "regex-2024.4.16-cp37-cp37m-win_amd64.whl", hash = "sha256:ba8122e3bb94ecda29a8de4cf889f600171424ea586847aa92c334772d200331"}, - {file = "regex-2024.4.16-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:743deffdf3b3481da32e8a96887e2aa945ec6685af1cfe2bcc292638c9ba2f48"}, - {file = "regex-2024.4.16-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7571f19f4a3fd00af9341c7801d1ad1967fc9c3f5e62402683047e7166b9f2b4"}, - {file = "regex-2024.4.16-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:df79012ebf6f4efb8d307b1328226aef24ca446b3ff8d0e30202d7ebcb977a8c"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e757d475953269fbf4b441207bb7dbdd1c43180711b6208e129b637792ac0b93"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4313ab9bf6a81206c8ac28fdfcddc0435299dc88cad12cc6305fd0e78b81f9e4"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d83c2bc678453646f1a18f8db1e927a2d3f4935031b9ad8a76e56760461105dd"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9df1bfef97db938469ef0a7354b2d591a2d438bc497b2c489471bec0e6baf7c4"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62120ed0de69b3649cc68e2965376048793f466c5a6c4370fb27c16c1beac22d"}, - {file = "regex-2024.4.16-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c2ef6f7990b6e8758fe48ad08f7e2f66c8f11dc66e24093304b87cae9037bb4a"}, - {file = "regex-2024.4.16-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8fc6976a3395fe4d1fbeb984adaa8ec652a1e12f36b56ec8c236e5117b585427"}, - {file = "regex-2024.4.16-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:03e68f44340528111067cecf12721c3df4811c67268b897fbe695c95f860ac42"}, - {file = "regex-2024.4.16-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:ec7e0043b91115f427998febaa2beb82c82df708168b35ece3accb610b91fac1"}, - {file = "regex-2024.4.16-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:c21fc21a4c7480479d12fd8e679b699f744f76bb05f53a1d14182b31f55aac76"}, - {file = "regex-2024.4.16-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:12f6a3f2f58bb7344751919a1876ee1b976fe08b9ffccb4bbea66f26af6017b9"}, - {file = "regex-2024.4.16-cp38-cp38-win32.whl", hash = "sha256:479595a4fbe9ed8f8f72c59717e8cf222da2e4c07b6ae5b65411e6302af9708e"}, - {file = "regex-2024.4.16-cp38-cp38-win_amd64.whl", hash = "sha256:0534b034fba6101611968fae8e856c1698da97ce2efb5c2b895fc8b9e23a5834"}, - {file = "regex-2024.4.16-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a7ccdd1c4a3472a7533b0a7aa9ee34c9a2bef859ba86deec07aff2ad7e0c3b94"}, - {file = "regex-2024.4.16-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6f2f017c5be19984fbbf55f8af6caba25e62c71293213f044da3ada7091a4455"}, - {file = "regex-2024.4.16-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:803b8905b52de78b173d3c1e83df0efb929621e7b7c5766c0843704d5332682f"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:684008ec44ad275832a5a152f6e764bbe1914bea10968017b6feaecdad5736e0"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65436dce9fdc0aeeb0a0effe0839cb3d6a05f45aa45a4d9f9c60989beca78b9c"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ea355eb43b11764cf799dda62c658c4d2fdb16af41f59bb1ccfec517b60bcb07"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98c1165f3809ce7774f05cb74e5408cd3aa93ee8573ae959a97a53db3ca3180d"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cccc79a9be9b64c881f18305a7c715ba199e471a3973faeb7ba84172abb3f317"}, - {file = "regex-2024.4.16-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:00169caa125f35d1bca6045d65a662af0202704489fada95346cfa092ec23f39"}, - {file = "regex-2024.4.16-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6cc38067209354e16c5609b66285af17a2863a47585bcf75285cab33d4c3b8df"}, - {file = "regex-2024.4.16-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:23cff1b267038501b179ccbbd74a821ac4a7192a1852d1d558e562b507d46013"}, - {file = "regex-2024.4.16-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:b9d320b3bf82a39f248769fc7f188e00f93526cc0fe739cfa197868633d44701"}, - {file = "regex-2024.4.16-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:89ec7f2c08937421bbbb8b48c54096fa4f88347946d4747021ad85f1b3021b3c"}, - {file = "regex-2024.4.16-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4918fd5f8b43aa7ec031e0fef1ee02deb80b6afd49c85f0790be1dc4ce34cb50"}, - {file = "regex-2024.4.16-cp39-cp39-win32.whl", hash = "sha256:684e52023aec43bdf0250e843e1fdd6febbe831bd9d52da72333fa201aaa2335"}, - {file = "regex-2024.4.16-cp39-cp39-win_amd64.whl", hash = "sha256:e697e1c0238133589e00c244a8b676bc2cfc3ab4961318d902040d099fec7483"}, - {file = "regex-2024.4.16.tar.gz", hash = "sha256:fa454d26f2e87ad661c4f0c5a5fe4cf6aab1e307d1b94f16ffdfcb089ba685c0"}, + {file = "regex-2024.4.28-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:cd196d056b40af073d95a2879678585f0b74ad35190fac04ca67954c582c6b61"}, + {file = "regex-2024.4.28-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8bb381f777351bd534462f63e1c6afb10a7caa9fa2a421ae22c26e796fe31b1f"}, + {file = "regex-2024.4.28-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:47af45b6153522733aa6e92543938e97a70ce0900649ba626cf5aad290b737b6"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99d6a550425cc51c656331af0e2b1651e90eaaa23fb4acde577cf15068e2e20f"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bf29304a8011feb58913c382902fde3395957a47645bf848eea695839aa101b7"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:92da587eee39a52c91aebea8b850e4e4f095fe5928d415cb7ed656b3460ae79a"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6277d426e2f31bdbacb377d17a7475e32b2d7d1f02faaecc48d8e370c6a3ff31"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:28e1f28d07220c0f3da0e8fcd5a115bbb53f8b55cecf9bec0c946eb9a059a94c"}, + {file = "regex-2024.4.28-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:aaa179975a64790c1f2701ac562b5eeb733946eeb036b5bcca05c8d928a62f10"}, + {file = "regex-2024.4.28-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6f435946b7bf7a1b438b4e6b149b947c837cb23c704e780c19ba3e6855dbbdd3"}, + {file = "regex-2024.4.28-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:19d6c11bf35a6ad077eb23852827f91c804eeb71ecb85db4ee1386825b9dc4db"}, + {file = "regex-2024.4.28-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:fdae0120cddc839eb8e3c15faa8ad541cc6d906d3eb24d82fb041cfe2807bc1e"}, + {file = "regex-2024.4.28-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:e672cf9caaf669053121f1766d659a8813bd547edef6e009205378faf45c67b8"}, + {file = "regex-2024.4.28-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f57515750d07e14743db55d59759893fdb21d2668f39e549a7d6cad5d70f9fea"}, + {file = "regex-2024.4.28-cp310-cp310-win32.whl", hash = "sha256:a1409c4eccb6981c7baabc8888d3550df518add6e06fe74fa1d9312c1838652d"}, + {file = "regex-2024.4.28-cp310-cp310-win_amd64.whl", hash = "sha256:1f687a28640f763f23f8a9801fe9e1b37338bb1ca5d564ddd41619458f1f22d1"}, + {file = "regex-2024.4.28-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:84077821c85f222362b72fdc44f7a3a13587a013a45cf14534df1cbbdc9a6796"}, + {file = "regex-2024.4.28-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b45d4503de8f4f3dc02f1d28a9b039e5504a02cc18906cfe744c11def942e9eb"}, + {file = "regex-2024.4.28-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:457c2cd5a646dd4ed536c92b535d73548fb8e216ebee602aa9f48e068fc393f3"}, + {file = "regex-2024.4.28-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2b51739ddfd013c6f657b55a508de8b9ea78b56d22b236052c3a85a675102dc6"}, + {file = "regex-2024.4.28-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:459226445c7d7454981c4c0ce0ad1a72e1e751c3e417f305722bbcee6697e06a"}, + {file = "regex-2024.4.28-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:670fa596984b08a4a769491cbdf22350431970d0112e03d7e4eeaecaafcd0fec"}, + {file = "regex-2024.4.28-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe00f4fe11c8a521b173e6324d862ee7ee3412bf7107570c9b564fe1119b56fb"}, + {file = "regex-2024.4.28-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:36f392dc7763fe7924575475736bddf9ab9f7a66b920932d0ea50c2ded2f5636"}, + {file = "regex-2024.4.28-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:23a412b7b1a7063f81a742463f38821097b6a37ce1e5b89dd8e871d14dbfd86b"}, + {file = "regex-2024.4.28-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:f1d6e4b7b2ae3a6a9df53efbf199e4bfcff0959dbdb5fd9ced34d4407348e39a"}, + {file = "regex-2024.4.28-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:499334ad139557de97cbc4347ee921c0e2b5e9c0f009859e74f3f77918339257"}, + {file = "regex-2024.4.28-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:0940038bec2fe9e26b203d636c44d31dd8766abc1fe66262da6484bd82461ccf"}, + {file = "regex-2024.4.28-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:66372c2a01782c5fe8e04bff4a2a0121a9897e19223d9eab30c54c50b2ebeb7f"}, + {file = "regex-2024.4.28-cp311-cp311-win32.whl", hash = "sha256:c77d10ec3c1cf328b2f501ca32583625987ea0f23a0c2a49b37a39ee5c4c4630"}, + {file = "regex-2024.4.28-cp311-cp311-win_amd64.whl", hash = "sha256:fc0916c4295c64d6890a46e02d4482bb5ccf33bf1a824c0eaa9e83b148291f90"}, + {file = "regex-2024.4.28-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:08a1749f04fee2811c7617fdd46d2e46d09106fa8f475c884b65c01326eb15c5"}, + {file = "regex-2024.4.28-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b8eb28995771c087a73338f695a08c9abfdf723d185e57b97f6175c5051ff1ae"}, + {file = "regex-2024.4.28-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:dd7ef715ccb8040954d44cfeff17e6b8e9f79c8019daae2fd30a8806ef5435c0"}, + {file = "regex-2024.4.28-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb0315a2b26fde4005a7c401707c5352df274460f2f85b209cf6024271373013"}, + {file = "regex-2024.4.28-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f2fc053228a6bd3a17a9b0a3f15c3ab3cf95727b00557e92e1cfe094b88cc662"}, + {file = "regex-2024.4.28-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7fe9739a686dc44733d52d6e4f7b9c77b285e49edf8570754b322bca6b85b4cc"}, + {file = "regex-2024.4.28-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a74fcf77d979364f9b69fcf8200849ca29a374973dc193a7317698aa37d8b01c"}, + {file = "regex-2024.4.28-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:965fd0cf4694d76f6564896b422724ec7b959ef927a7cb187fc6b3f4e4f59833"}, + {file = "regex-2024.4.28-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:2fef0b38c34ae675fcbb1b5db760d40c3fc3612cfa186e9e50df5782cac02bcd"}, + {file = "regex-2024.4.28-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bc365ce25f6c7c5ed70e4bc674f9137f52b7dd6a125037f9132a7be52b8a252f"}, + {file = "regex-2024.4.28-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:ac69b394764bb857429b031d29d9604842bc4cbfd964d764b1af1868eeebc4f0"}, + {file = "regex-2024.4.28-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:144a1fc54765f5c5c36d6d4b073299832aa1ec6a746a6452c3ee7b46b3d3b11d"}, + {file = "regex-2024.4.28-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2630ca4e152c221072fd4a56d4622b5ada876f668ecd24d5ab62544ae6793ed6"}, + {file = "regex-2024.4.28-cp312-cp312-win32.whl", hash = "sha256:7f3502f03b4da52bbe8ba962621daa846f38489cae5c4a7b5d738f15f6443d17"}, + {file = "regex-2024.4.28-cp312-cp312-win_amd64.whl", hash = "sha256:0dd3f69098511e71880fb00f5815db9ed0ef62c05775395968299cb400aeab82"}, + {file = "regex-2024.4.28-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:374f690e1dd0dbdcddea4a5c9bdd97632cf656c69113f7cd6a361f2a67221cb6"}, + {file = "regex-2024.4.28-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:25f87ae6b96374db20f180eab083aafe419b194e96e4f282c40191e71980c666"}, + {file = "regex-2024.4.28-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5dbc1bcc7413eebe5f18196e22804a3be1bfdfc7e2afd415e12c068624d48247"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f85151ec5a232335f1be022b09fbbe459042ea1951d8a48fef251223fc67eee1"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:57ba112e5530530fd175ed550373eb263db4ca98b5f00694d73b18b9a02e7185"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:224803b74aab56aa7be313f92a8d9911dcade37e5f167db62a738d0c85fdac4b"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a54a047b607fd2d2d52a05e6ad294602f1e0dec2291152b745870afc47c1397"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a2a512d623f1f2d01d881513af9fc6a7c46e5cfffb7dc50c38ce959f9246c94"}, + {file = "regex-2024.4.28-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c06bf3f38f0707592898428636cbb75d0a846651b053a1cf748763e3063a6925"}, + {file = "regex-2024.4.28-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1031a5e7b048ee371ab3653aad3030ecfad6ee9ecdc85f0242c57751a05b0ac4"}, + {file = "regex-2024.4.28-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d7a353ebfa7154c871a35caca7bfd8f9e18666829a1dc187115b80e35a29393e"}, + {file = "regex-2024.4.28-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:7e76b9cfbf5ced1aca15a0e5b6f229344d9b3123439ffce552b11faab0114a02"}, + {file = "regex-2024.4.28-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5ce479ecc068bc2a74cb98dd8dba99e070d1b2f4a8371a7dfe631f85db70fe6e"}, + {file = "regex-2024.4.28-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7d77b6f63f806578c604dca209280e4c54f0fa9a8128bb8d2cc5fb6f99da4150"}, + {file = "regex-2024.4.28-cp38-cp38-win32.whl", hash = "sha256:d84308f097d7a513359757c69707ad339da799e53b7393819ec2ea36bc4beb58"}, + {file = "regex-2024.4.28-cp38-cp38-win_amd64.whl", hash = "sha256:2cc1b87bba1dd1a898e664a31012725e48af826bf3971e786c53e32e02adae6c"}, + {file = "regex-2024.4.28-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7413167c507a768eafb5424413c5b2f515c606be5bb4ef8c5dee43925aa5718b"}, + {file = "regex-2024.4.28-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:108e2dcf0b53a7c4ab8986842a8edcb8ab2e59919a74ff51c296772e8e74d0ae"}, + {file = "regex-2024.4.28-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f1c5742c31ba7d72f2dedf7968998730664b45e38827637e0f04a2ac7de2f5f1"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ecc6148228c9ae25ce403eade13a0961de1cb016bdb35c6eafd8e7b87ad028b1"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7d893c8cf0e2429b823ef1a1d360a25950ed11f0e2a9df2b5198821832e1947"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4290035b169578ffbbfa50d904d26bec16a94526071ebec3dadbebf67a26b25e"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44a22ae1cfd82e4ffa2066eb3390777dc79468f866f0625261a93e44cdf6482b"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd24fd140b69f0b0bcc9165c397e9b2e89ecbeda83303abf2a072609f60239e2"}, + {file = "regex-2024.4.28-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:39fb166d2196413bead229cd64a2ffd6ec78ebab83fff7d2701103cf9f4dfd26"}, + {file = "regex-2024.4.28-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9301cc6db4d83d2c0719f7fcda37229691745168bf6ae849bea2e85fc769175d"}, + {file = "regex-2024.4.28-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7c3d389e8d76a49923683123730c33e9553063d9041658f23897f0b396b2386f"}, + {file = "regex-2024.4.28-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:99ef6289b62042500d581170d06e17f5353b111a15aa6b25b05b91c6886df8fc"}, + {file = "regex-2024.4.28-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:b91d529b47798c016d4b4c1d06cc826ac40d196da54f0de3c519f5a297c5076a"}, + {file = "regex-2024.4.28-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:43548ad74ea50456e1c68d3c67fff3de64c6edb85bcd511d1136f9b5376fc9d1"}, + {file = "regex-2024.4.28-cp39-cp39-win32.whl", hash = "sha256:05d9b6578a22db7dedb4df81451f360395828b04f4513980b6bd7a1412c679cc"}, + {file = "regex-2024.4.28-cp39-cp39-win_amd64.whl", hash = "sha256:3986217ec830c2109875be740531feb8ddafe0dfa49767cdcd072ed7e8927962"}, + {file = "regex-2024.4.28.tar.gz", hash = "sha256:83ab366777ea45d58f72593adf35d36ca911ea8bd838483c1823b883a121b0e4"}, ] [[package]] @@ -4040,6 +4317,17 @@ files = [ {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, ] +[[package]] +name = "snowballstemmer" +version = "2.2.0" +description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +optional = false +python-versions = "*" +files = [ + {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, + {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, +] + [[package]] name = "soupsieve" version = "2.5" @@ -4051,6 +4339,283 @@ files = [ {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, ] +[[package]] +name = "sphinx" +version = "7.3.7" +description = "Python documentation generator" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinx-7.3.7-py3-none-any.whl", hash = "sha256:413f75440be4cacf328f580b4274ada4565fb2187d696a84970c23f77b64d8c3"}, + {file = "sphinx-7.3.7.tar.gz", hash = "sha256:a4a7db75ed37531c05002d56ed6948d4c42f473a36f46e1382b0bd76ca9627bc"}, +] + +[package.dependencies] +alabaster = ">=0.7.14,<0.8.0" +babel = ">=2.9" +colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} +docutils = ">=0.18.1,<0.22" +imagesize = ">=1.3" +importlib-metadata = {version = ">=4.8", markers = "python_version < \"3.10\""} +Jinja2 = ">=3.0" +packaging = ">=21.0" +Pygments = ">=2.14" +requests = ">=2.25.0" +snowballstemmer = ">=2.0" +sphinxcontrib-applehelp = "*" +sphinxcontrib-devhelp = "*" +sphinxcontrib-htmlhelp = ">=2.0.0" +sphinxcontrib-jsmath = "*" +sphinxcontrib-qthelp = "*" +sphinxcontrib-serializinghtml = ">=1.1.9" +tomli = {version = ">=2", markers = "python_version < \"3.11\""} + +[package.extras] +docs = ["sphinxcontrib-websupport"] +lint = ["flake8 (>=3.5.0)", "importlib_metadata", "mypy (==1.9.0)", "pytest (>=6.0)", "ruff (==0.3.7)", "sphinx-lint", "tomli", "types-docutils", "types-requests"] +test = ["cython (>=3.0)", "defusedxml (>=0.7.1)", "pytest (>=6.0)", "setuptools (>=67.0)"] + +[[package]] +name = "sphinx-copybutton" +version = "0.5.2" +description = "Add a copy button to each of your code cells." +optional = false +python-versions = ">=3.7" +files = [ + {file = "sphinx-copybutton-0.5.2.tar.gz", hash = "sha256:4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd"}, + {file = "sphinx_copybutton-0.5.2-py3-none-any.whl", hash = "sha256:fb543fd386d917746c9a2c50360c7905b605726b9355cd26e9974857afeae06e"}, +] + +[package.dependencies] +sphinx = ">=1.8" + +[package.extras] +code-style = ["pre-commit (==2.12.1)"] +rtd = ["ipython", "myst-nb", "sphinx", "sphinx-book-theme", "sphinx-examples"] + +[[package]] +name = "sphinx-design" +version = "0.5.0" +description = "A sphinx extension for designing beautiful, view size responsive web components." +optional = false +python-versions = ">=3.8" +files = [ + {file = "sphinx_design-0.5.0-py3-none-any.whl", hash = "sha256:1af1267b4cea2eedd6724614f19dcc88fe2e15aff65d06b2f6252cee9c4f4c1e"}, + {file = "sphinx_design-0.5.0.tar.gz", hash = "sha256:e8e513acea6f92d15c6de3b34e954458f245b8e761b45b63950f65373352ab00"}, +] + +[package.dependencies] +sphinx = ">=5,<8" + +[package.extras] +code-style = ["pre-commit (>=3,<4)"] +rtd = ["myst-parser (>=1,<3)"] +testing = ["myst-parser (>=1,<3)", "pytest (>=7.1,<8.0)", "pytest-cov", "pytest-regressions"] +theme-furo = ["furo (>=2023.7.0,<2023.8.0)"] +theme-pydata = ["pydata-sphinx-theme (>=0.13.0,<0.14.0)"] +theme-rtd = ["sphinx-rtd-theme (>=1.0,<2.0)"] +theme-sbt = ["sphinx-book-theme (>=1.0,<2.0)"] + +[[package]] +name = "sphinx-favicon" +version = "1.0.1" +description = "Sphinx Extension adding support for custom favicons" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sphinx-favicon-1.0.1.tar.gz", hash = "sha256:df796de32125609c1b4a8964db74270ebf4502089c27cd53f542354dc0b57e8e"}, + {file = "sphinx_favicon-1.0.1-py3-none-any.whl", hash = "sha256:7c93d6b634cb4c9687ceab67a8526f05d3b02679df94e273e51a43282e6b034c"}, +] + +[package.dependencies] +sphinx = ">=3.4" + +[package.extras] +dev = ["nox", "pre-commit"] +doc = ["pydata-sphinx-theme", "sphinx (<6)", "sphinx-copybutton", "sphinx-design"] +test = ["beautifulsoup4", "pytest", "pytest-cov"] + +[[package]] +name = "sphinxcontrib-applehelp" +version = "1.0.8" +description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_applehelp-1.0.8-py3-none-any.whl", hash = "sha256:cb61eb0ec1b61f349e5cc36b2028e9e7ca765be05e49641c97241274753067b4"}, + {file = "sphinxcontrib_applehelp-1.0.8.tar.gz", hash = "sha256:c40a4f96f3776c4393d933412053962fac2b84f4c99a7982ba42e09576a70619"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-devhelp" +version = "1.0.6" +description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_devhelp-1.0.6-py3-none-any.whl", hash = "sha256:6485d09629944511c893fa11355bda18b742b83a2b181f9a009f7e500595c90f"}, + {file = "sphinxcontrib_devhelp-1.0.6.tar.gz", hash = "sha256:9893fd3f90506bc4b97bdb977ceb8fbd823989f4316b28c3841ec128544372d3"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-htmlhelp" +version = "2.0.5" +description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_htmlhelp-2.0.5-py3-none-any.whl", hash = "sha256:393f04f112b4d2f53d93448d4bce35842f62b307ccdc549ec1585e950bc35e04"}, + {file = "sphinxcontrib_htmlhelp-2.0.5.tar.gz", hash = "sha256:0dc87637d5de53dd5eec3a6a01753b1ccf99494bd756aafecd74b4fa9e729015"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["html5lib", "pytest"] + +[[package]] +name = "sphinxcontrib-jsmath" +version = "1.0.1" +description = "A sphinx extension which renders display math in HTML via JavaScript" +optional = false +python-versions = ">=3.5" +files = [ + {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, + {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, +] + +[package.extras] +test = ["flake8", "mypy", "pytest"] + +[[package]] +name = "sphinxcontrib-qthelp" +version = "1.0.7" +description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_qthelp-1.0.7-py3-none-any.whl", hash = "sha256:e2ae3b5c492d58fcbd73281fbd27e34b8393ec34a073c792642cd8e529288182"}, + {file = "sphinxcontrib_qthelp-1.0.7.tar.gz", hash = "sha256:053dedc38823a80a7209a80860b16b722e9e0209e32fea98c90e4e6624588ed6"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sphinxcontrib-serializinghtml" +version = "1.1.10" +description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "sphinxcontrib_serializinghtml-1.1.10-py3-none-any.whl", hash = "sha256:326369b8df80a7d2d8d7f99aa5ac577f51ea51556ed974e7716cfd4fca3f6cb7"}, + {file = "sphinxcontrib_serializinghtml-1.1.10.tar.gz", hash = "sha256:93f3f5dc458b91b192fe10c397e324f262cf163d79f3282c158e8436a2c4511f"}, +] + +[package.extras] +lint = ["docutils-stubs", "flake8", "mypy"] +standalone = ["Sphinx (>=5)"] +test = ["pytest"] + +[[package]] +name = "sqlalchemy" +version = "2.0.29" +description = "Database Abstraction Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-2.0.29-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4c142852ae192e9fe5aad5c350ea6befe9db14370b34047e1f0f7cf99e63c63b"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:99a1e69d4e26f71e750e9ad6fdc8614fbddb67cfe2173a3628a2566034e223c7"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ef3fbccb4058355053c51b82fd3501a6e13dd808c8d8cd2561e610c5456013c"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d6753305936eddc8ed190e006b7bb33a8f50b9854823485eed3a886857ab8d1"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0f3ca96af060a5250a8ad5a63699180bc780c2edf8abf96c58af175921df847a"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c4520047006b1d3f0d89e0532978c0688219857eb2fee7c48052560ae76aca1e"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-win32.whl", hash = "sha256:b2a0e3cf0caac2085ff172c3faacd1e00c376e6884b5bc4dd5b6b84623e29e4f"}, + {file = "SQLAlchemy-2.0.29-cp310-cp310-win_amd64.whl", hash = "sha256:01d10638a37460616708062a40c7b55f73e4d35eaa146781c683e0fa7f6c43fb"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:308ef9cb41d099099fffc9d35781638986870b29f744382904bf9c7dadd08513"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:296195df68326a48385e7a96e877bc19aa210e485fa381c5246bc0234c36c78e"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a13b917b4ffe5a0a31b83d051d60477819ddf18276852ea68037a144a506efb9"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f6d971255d9ddbd3189e2e79d743ff4845c07f0633adfd1de3f63d930dbe673"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:61405ea2d563407d316c63a7b5271ae5d274a2a9fbcd01b0aa5503635699fa1e"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:de7202ffe4d4a8c1e3cde1c03e01c1a3772c92858837e8f3879b497158e4cb44"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-win32.whl", hash = "sha256:b5d7ed79df55a731749ce65ec20d666d82b185fa4898430b17cb90c892741520"}, + {file = "SQLAlchemy-2.0.29-cp311-cp311-win_amd64.whl", hash = "sha256:205f5a2b39d7c380cbc3b5dcc8f2762fb5bcb716838e2d26ccbc54330775b003"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d96710d834a6fb31e21381c6d7b76ec729bd08c75a25a5184b1089141356171f"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:52de4736404e53c5c6a91ef2698c01e52333988ebdc218f14c833237a0804f1b"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c7b02525ede2a164c5fa5014915ba3591730f2cc831f5be9ff3b7fd3e30958e"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dfefdb3e54cd15f5d56fd5ae32f1da2d95d78319c1f6dfb9bcd0eb15d603d5d"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a88913000da9205b13f6f195f0813b6ffd8a0c0c2bd58d499e00a30eb508870c"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fecd5089c4be1bcc37c35e9aa678938d2888845a134dd016de457b942cf5a758"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-win32.whl", hash = "sha256:8197d6f7a3d2b468861ebb4c9f998b9df9e358d6e1cf9c2a01061cb9b6cf4e41"}, + {file = "SQLAlchemy-2.0.29-cp312-cp312-win_amd64.whl", hash = "sha256:9b19836ccca0d321e237560e475fd99c3d8655d03da80c845c4da20dda31b6e1"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:87a1d53a5382cdbbf4b7619f107cc862c1b0a4feb29000922db72e5a66a5ffc0"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a0732dffe32333211801b28339d2a0babc1971bc90a983e3035e7b0d6f06b93"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90453597a753322d6aa770c5935887ab1fc49cc4c4fdd436901308383d698b4b"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:ea311d4ee9a8fa67f139c088ae9f905fcf0277d6cd75c310a21a88bf85e130f5"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5f20cb0a63a3e0ec4e169aa8890e32b949c8145983afa13a708bc4b0a1f30e03"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-win32.whl", hash = "sha256:e5bbe55e8552019c6463709b39634a5fc55e080d0827e2a3a11e18eb73f5cdbd"}, + {file = "SQLAlchemy-2.0.29-cp37-cp37m-win_amd64.whl", hash = "sha256:c2f9c762a2735600654c654bf48dad388b888f8ce387b095806480e6e4ff6907"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7e614d7a25a43a9f54fcce4675c12761b248547f3d41b195e8010ca7297c369c"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:471fcb39c6adf37f820350c28aac4a7df9d3940c6548b624a642852e727ea586"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:988569c8732f54ad3234cf9c561364221a9e943b78dc7a4aaf35ccc2265f1930"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dddaae9b81c88083e6437de95c41e86823d150f4ee94bf24e158a4526cbead01"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:334184d1ab8f4c87f9652b048af3f7abea1c809dfe526fb0435348a6fef3d380"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:38b624e5cf02a69b113c8047cf7f66b5dfe4a2ca07ff8b8716da4f1b3ae81567"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-win32.whl", hash = "sha256:bab41acf151cd68bc2b466deae5deeb9e8ae9c50ad113444151ad965d5bf685b"}, + {file = "SQLAlchemy-2.0.29-cp38-cp38-win_amd64.whl", hash = "sha256:52c8011088305476691b8750c60e03b87910a123cfd9ad48576d6414b6ec2a1d"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3071ad498896907a5ef756206b9dc750f8e57352113c19272bdfdc429c7bd7de"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:dba622396a3170974f81bad49aacebd243455ec3cc70615aeaef9e9613b5bca5"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b184e3de58009cc0bf32e20f137f1ec75a32470f5fede06c58f6c355ed42a72"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c37f1050feb91f3d6c32f864d8e114ff5545a4a7afe56778d76a9aec62638ba"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bda7ce59b06d0f09afe22c56714c65c957b1068dee3d5e74d743edec7daba552"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:25664e18bef6dc45015b08f99c63952a53a0a61f61f2e48a9e70cec27e55f699"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-win32.whl", hash = "sha256:77d29cb6c34b14af8a484e831ab530c0f7188f8efed1c6a833a2c674bf3c26ec"}, + {file = "SQLAlchemy-2.0.29-cp39-cp39-win_amd64.whl", hash = "sha256:04c487305ab035a9548f573763915189fc0fe0824d9ba28433196f8436f1449c"}, + {file = "SQLAlchemy-2.0.29-py3-none-any.whl", hash = "sha256:dc4ee2d4ee43251905f88637d5281a8d52e916a021384ec10758826f5cbae305"}, + {file = "SQLAlchemy-2.0.29.tar.gz", hash = "sha256:bd9566b8e58cabd700bc367b60e90d9349cd16f0984973f98a9a09f9c64e86f0"}, +] + +[package.dependencies] +greenlet = {version = "!=0.4.17", markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\""} +typing-extensions = ">=4.6.0" + +[package.extras] +aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] +aioodbc = ["aioodbc", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)"] +mysql = ["mysqlclient (>=1.4.0)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx_oracle (>=8)"] +oracle-oracledb = ["oracledb (>=1.0.1)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.29.1)"] +postgresql-psycopg = ["psycopg (>=3.0.7)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] +pymysql = ["pymysql"] +sqlcipher = ["sqlcipher3_binary"] + [[package]] name = "stack-data" version = "0.6.3" @@ -4191,13 +4756,13 @@ weaviate = ["weaviate-client (>=4.5.4,<5.0.0)"] [[package]] name = "threadpoolctl" -version = "3.4.0" +version = "3.5.0" description = "threadpoolctl" optional = true python-versions = ">=3.8" files = [ - {file = "threadpoolctl-3.4.0-py3-none-any.whl", hash = "sha256:8f4c689a65b23e5ed825c8436a92b818aac005e0f3715f6a1664d7c7ee29d262"}, - {file = "threadpoolctl-3.4.0.tar.gz", hash = "sha256:f11b491a03661d6dd7ef692dd422ab34185d982466c49c8f98c8f716b5c93196"}, + {file = "threadpoolctl-3.5.0-py3-none-any.whl", hash = "sha256:56c1e26c150397e58c4926da8eeee87533b1e32bef131bd4bf6a2f45f3185467"}, + {file = "threadpoolctl-3.5.0.tar.gz", hash = "sha256:082433502dd922bf738de0d8bcc4fdcbf0979ff44c42bd40f5af8a282f6fa107"}, ] [[package]] @@ -4885,4 +5450,4 @@ sentence-transformers = ["sentence-transformers"] [metadata] lock-version = "2.0" python-versions = ">=3.9,<4.0" -content-hash = "02eda81b7fd15211d9ebd5bd2c31da4a27f211bca2766c0419fb3b760a5a75cc" +content-hash = "dc48145088ceb6ad88c87000d25f85e0ed07fd2778c33addbdb4f18da4505555" diff --git a/pyproject.toml b/pyproject.toml index 79051f6c..e3173e8c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,7 +37,7 @@ sentence-transformers = ["sentence-transformers"] google_cloud_aiplatform = ["google_cloud_aiplatform"] cohere = ["cohere"] -[tool.poetry.dev-dependencies] +[tool.poetry.group.dev.dependencies] black = ">=20.8b1" isort = ">=5.6.4" pylint = "3.1.0" @@ -50,6 +50,19 @@ types-pyyaml = "*" types-tabulate = "*" treon = "*" +[tool.poetry.group.test.dependencies] +testcontainers = "^4.3.1" + +[tool.poetry.group.docs.dependencies] +sphinx = ">=4.4.0" +pydata-sphinx-theme = "^0.15.2" +nbsphinx = "^0.9.3" +jinja2 = "^3.1.3" +sphinx-copybutton = "^0.5.2" +sphinx-favicon = "^1.0.1" +sphinx-design = "^0.5.0" +myst-nb = "^1.1.0" + [tool.poetry.scripts] rvl = "redisvl.cli.runner:main" format = "scripts:format" @@ -63,9 +76,8 @@ test-verbose = "scripts:test_verbose" test-cov = "scripts:test_cov" cov = "scripts:cov" test-notebooks = "scripts:test_notebooks" - -[tool.poetry.group.test.dependencies] -testcontainers = "^4.3.1" +build-docs = "scripts:build_docs" +serve-docs = "scripts:serve_docs" [build-system] requires = ["poetry-core>=1.0.0"] diff --git a/redisvl/utils/rerank/cohere.py b/redisvl/utils/rerank/cohere.py index 29a69788..7b5c0927 100644 --- a/redisvl/utils/rerank/cohere.py +++ b/redisvl/utils/rerank/cohere.py @@ -20,7 +20,19 @@ class CohereReranker(BaseReranker): .. code-block:: python - + from redisvl.utils.rerank import CohereReranker + + # set up the Cohere reranker with some configuration + reranker = CohereReranker(rank_by=["content"], limit=2) + # rerank raw search results based on user input/query + results = reranker.rank( + query="your input query text here", + docs=[ + {"content": "document 1"}, + {"content": "document 2"}, + {"content": "document 3"} + ] + ) """ _client: Any = PrivateAttr() diff --git a/scripts.py b/scripts.py index 61d36636..e5b31128 100644 --- a/scripts.py +++ b/scripts.py @@ -33,4 +33,10 @@ def cov(): print("If data was present, coverage report is in ./htmlcov/index.html") def test_notebooks(): - subprocess.run(["cd", "docs/", "&&", "poetry run treon", "-v"]) \ No newline at end of file + subprocess.run(["cd", "docs/", "&&", "poetry run treon", "-v"]) + +def build_docs(): + subprocess.run("cd docs/ && make html", shell=True) + +def serve_docs(): + subprocess.run("cd docs/_build/html && python -m http.server", shell=True)