From f9cc9bdcf31b2683127ac089fc47ab4780d28dcd Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Thu, 17 Oct 2024 06:32:40 -0700 Subject: [PATCH 1/8] core: release 0.3.12 (#27410) --- libs/core/poetry.lock | 202 +++++++++++++++++++-------------------- libs/core/pyproject.toml | 8 +- 2 files changed, 108 insertions(+), 102 deletions(-) diff --git a/libs/core/poetry.lock b/libs/core/poetry.lock index 15fb395e20..6b960860db 100644 --- a/libs/core/poetry.lock +++ b/libs/core/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "annotated-types" @@ -2595,110 +2595,110 @@ testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs ( [[package]] name = "simsimd" -version = "5.7.1" +version = "5.7.2" description = "Fastest SIMD-Accelerated Vector Similarity Functions for x86 and Arm" optional = false python-versions = "*" files = [ - {file = "simsimd-5.7.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d9af57be5c2f327b2c343fcbcdee36b99358beb649b925698defc7719a4904c0"}, - {file = "simsimd-5.7.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1eaf9cb6a57ef0f3bfe9108a70c6c178daf023d6e2b586ff4126db2927278114"}, - {file = "simsimd-5.7.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a42f00cb8a656fec5271926f1b03838f32b57120a86265385c33132f85fb3bef"}, - {file = "simsimd-5.7.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dd8fb9997949c60e1e6f4c5b60c8ad3635cae4d7f983160e7f8e4eccb7133b9f"}, - {file = "simsimd-5.7.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dc85ada054d56ba2f614f27d8b40cb22e205dc9f713b2ed5e78fcbfdb4c524b"}, - {file = "simsimd-5.7.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e495e63ad7b1e44fdb9ccce5e2b481b0934b122ba2b08ff749d950dd23cca8"}, - {file = "simsimd-5.7.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:80fe2b318bdf98976c0546d21291a5c68e73586260cbbc27275ee0944f94f9c6"}, - {file = "simsimd-5.7.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:fc691a42c8c8e93a2f5e575f0b1c973b1135b497d816487c66f24beb11c0bc65"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:efa11defaa50d81c7b5c829128c037cbeae6d5382b71d76bb0f6f933c7e3ed02"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:6bd895b73d787884e6a5f2a2441332ba9c7cb453d22ec5b445a7e41257008e1f"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:05b5b7ac1115ec397692670e81e6637e6317e8b53ad1856b3ee14e7a56dc3aec"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:8ab34d7cfee466dbb83a3db68dcd3b10285feff37d61806ba1d0859d35a1bb93"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:9926f9f35c1c5a2313d88b3270206913b3ae858bd888be7708dd06e8f4e50bc5"}, - {file = "simsimd-5.7.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:15e2e2c811edeaa6eb89b4bb2db15f0c615caca688ff3748d82e1508eb1d79d9"}, - {file = "simsimd-5.7.1-cp310-cp310-win32.whl", hash = "sha256:9d80e9e4400a783ad7b6ec999e568eacff4b01d352b5d69a2ce1327bdb61bab8"}, - {file = "simsimd-5.7.1-cp310-cp310-win_amd64.whl", hash = "sha256:21ab443cf47fb72b17e147d46084875d1dc3bfd5d1cbef589a70b60b5f21546b"}, - {file = "simsimd-5.7.1-cp310-cp310-win_arm64.whl", hash = "sha256:7a123c888349364994447079b765119cb4bcd624bfd4ec80d281093cfde7647c"}, - {file = "simsimd-5.7.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7eea990503a050396ae63273d4055f021ae2ec81b830d5bc18917f606f224bfa"}, - {file = "simsimd-5.7.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8b041a858c7ce7fe78e4278f53573f33b87f1e187e196d3ca6b25fef53b4fd8f"}, - {file = "simsimd-5.7.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b7f674ee6fc5a8009dce185777b260352297860f0f31602df205019c92891276"}, - {file = "simsimd-5.7.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3e3a432eeaa1f339cf3cf104792ba4d16afc41ddaa8a934730dbfd194a6d6ccd"}, - {file = "simsimd-5.7.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3d6044ab5e4077b737d848219151831abbd3ccc7a41f891ca3cd13f2772d99f8"}, - {file = "simsimd-5.7.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b591b218eb6383f7c04ca8d4ef665dbbd1ed8d0a5c6fed13b4d9e93806a74cd4"}, - {file = "simsimd-5.7.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:a5202b3dd342695ee268bc1d51298ed3d1a040cf56cbd4a88ffee68b238667e5"}, - {file = "simsimd-5.7.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:2a05155e4e569229d9595c2755a498f5adfcdaa15b492522cdb6ffc434245c24"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d9c86452fe4f2db4519a35379bd6533895ca79ea4eb7286cbe7423e8991aa5f6"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:5a43c77b536c58c352e4952522b65bf2c5e2fdbe23e890021621ff068daa4d96"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:f103ef5758d38482af3eafb9b65d95df7c74318113fb2f81c5d19fdb9644faa6"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:0c92c3d802fecf683dc1fa9f5bd3e24458ccf9fd11dd9fd8e6166b95d2ae0728"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:db2f18a9a239418ba7dfa856b0d60b8055690d0671a382d9b12eb2a901e6fee8"}, - {file = "simsimd-5.7.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:82fdd43c4daec9f820a3548d7f1877c5fe320a61e45ab65e1918e8db37d932c1"}, - {file = "simsimd-5.7.1-cp311-cp311-win32.whl", hash = "sha256:e8f538415011579b642ed413332b6e33ab1a1e855b4002f48c1f5c701e73abc4"}, - {file = "simsimd-5.7.1-cp311-cp311-win_amd64.whl", hash = "sha256:c8fec4c376b41d0862dc2768550ce89b48a3908dab9ffee26a370ff55299b0d4"}, - {file = "simsimd-5.7.1-cp311-cp311-win_arm64.whl", hash = "sha256:8696eb041fde3b9d70a55521c5f8907831682b8e773563abd0fabd28b9c581c0"}, - {file = "simsimd-5.7.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:1d56c81bc4aee46934ac10280390a815d5e6c525f276fce24039a5028981363a"}, - {file = "simsimd-5.7.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:1a983856488596fbc8bddbba2248070cad2a71d345f41fe345abce3385d348b2"}, - {file = "simsimd-5.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e2d61d3c1fb25e8c60f5454c91c611d068706631b3d38fe9de076a70dbdece1e"}, - {file = "simsimd-5.7.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3a5ae3f9c7760bbee33aa12d672b0c5837ad8fba2b3778445bcace821633c742"}, - {file = "simsimd-5.7.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a3f5e3a16bb1f78ed7a3c4d1ebc0dadaa5beb8102a6111f6b0eca49e4a07ebe"}, - {file = "simsimd-5.7.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dc0e3f8cca6fbac7756f87b5e79e8477a3f6b08e7a3f64d082fb3c7bd02b936"}, - {file = "simsimd-5.7.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:249dfa5ed0c7319b0d7b69c894ec43594dbc46f9198028d540eb97277f170aa9"}, - {file = "simsimd-5.7.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:d4c600ab0c6d8ab6b27c244f7de74cd50ac5bc50039813ffd41edc8d378da613"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e6ef0f0e4419c6fa7fafc7176cf519618e7917b20d29e40cc51587ec9dc2d76e"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:2dcef24b58867a981794a502533bb7ad440b1e095de1468cdb075668e6a5a1db"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:69c33c41d487fe9b3705475c8e419cfaa0bc032b719d2d9b8e9698a925aa1084"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:969d2ff3e004e3dd03036bddb0628236ef41e3356a3512e936a48438392e59b1"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:6cf7d1439030f53843109705fbb38556978b990cdae7bba6af95e8b5f8e23618"}, - {file = "simsimd-5.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5fd00ac528f31daaa3f45ef644d37210a0fcbb1c2fd8155b8e68bc52c4f49fe1"}, - {file = "simsimd-5.7.1-cp312-cp312-win32.whl", hash = "sha256:3751b633e2afa29646d37577b87474a963ac5700ee6e104783f0efcfacf90b7c"}, - {file = "simsimd-5.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:cd9f1110228a3639c273342911805d5d6d6c7c4fa9ddbf14a178309ca9c372e7"}, - {file = "simsimd-5.7.1-cp312-cp312-win_arm64.whl", hash = "sha256:e8e6d95dfee9736bb6060ef8e63f134497594964a0f5ec97fdad25d6533909bf"}, - {file = "simsimd-5.7.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:d0b6d05ab62a9261b0350d1e6e962e4d72f973d68e50f3fb4c59b96a550cddf5"}, - {file = "simsimd-5.7.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:14bd9a931117b7fc400a50899bd81557fa80b481ff38e5a7431f57f5952f8344"}, - {file = "simsimd-5.7.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:18473bd2c8f683f7c38e12ede7f9ef368b44e2015639ebd8177107c937267836"}, - {file = "simsimd-5.7.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c35f4cdae42f5007fe87c717c580f4bd6be05a520c3676e73be4d2cbbecfc32b"}, - {file = "simsimd-5.7.1-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:76c116bb8d1b9afe6a788117f5101449ee9418c5505d05b76de3347b4f1c3674"}, - {file = "simsimd-5.7.1-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:452a006f3d8e43d7d1e3ed9d37df8155cfa24f72f081251ca063fc1eadbd759f"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:dd416d7482d99a8dfcdb3665640784263f05b6e1cbc519d564b861a81c1a173f"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_armv7l.whl", hash = "sha256:9c1c53029ef3f716ff7d67756bf9bf3078863a48a2430f6fa638c42ccd92d393"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:e23df8f144b3bf3cea26badcaed9c5d0c1f3091d7ff4107adb4c5901d7a9b568"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:524a886b6f6b97ce0bcde03331f498af832bdcdf9825fe11296d96e68bf64ed1"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:e394b794fd1f5c942cc5efa0a45eb877f7fb2b26e0c35a7976550734d62dbfdf"}, - {file = "simsimd-5.7.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:3e1691806fc37d688177a52a99c6b88ac34232da51e4e5803c30e6c30ec068c5"}, - {file = "simsimd-5.7.1-cp37-cp37m-win32.whl", hash = "sha256:a9c1d0938922cea2259b1a4ed7c6f839b71dfbd83694e6b887dce32c8130dff2"}, - {file = "simsimd-5.7.1-cp37-cp37m-win_amd64.whl", hash = "sha256:9fab64c82d37e53a8d14437f158b896ba451f6d83d3e5ac49886e4e28aefb5dc"}, - {file = "simsimd-5.7.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:9ad89bb80b3498ac3873a6f9ed459be538ef31704ed033b814606afad8261b64"}, - {file = "simsimd-5.7.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:4cced7b196f2942bed356cb1d5ad70d497107ee729db659e950f0d568c6dd495"}, - {file = "simsimd-5.7.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6c2810c29b4f602727d08bbadf1aaee851315a2726e8b333f1ec95c532e21182"}, - {file = "simsimd-5.7.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3011c0f0e6fb34669a078756e0e978689679c3184e9edba327205b60a47e6edc"}, - {file = "simsimd-5.7.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:935e4d75088cdccef8a36e06a4973d3fc9655fc20f003ce6a3e6b4f970706597"}, - {file = "simsimd-5.7.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8aaaf2d9d8c78570a96c4153ad3e97c2c9966d8ee95f725d1d2f4a43d59abfe"}, - {file = "simsimd-5.7.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:f73463a0b112e7ec059f4e53ee0c429abdb53ff82ca962f948fa00478cd98d0d"}, - {file = "simsimd-5.7.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:a5ca829bcda9798733876078a0cd4a5353ea6f6bd42210192387bee5eea4ac44"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:d897d0baed2e153d19dada94449b77e3d832130a7abf32b0169367968193cabf"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_armv7l.whl", hash = "sha256:07fcdef0d4ac257cb4f2902a3e450b8bce85f46e4d12e38488da495bdb26e5b4"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:dfc6e45d5c9b94ec50a815e63d373b66def0ee097256d79e1536d7a8f16f00c7"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:8c52183bd855de7d7d2cc9b59cf86dc3163fddd97c9e947225999771c0fe128e"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:fc2879b1668b0b1193b46822fe5a45753f5e328feef2517ab600c3e6c958c37a"}, - {file = "simsimd-5.7.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:a53fbf5d306953942f73f37d829501881fc9a472dcdfad66abc0306eb87ef8c7"}, - {file = "simsimd-5.7.1-cp38-cp38-win32.whl", hash = "sha256:e17d46f1333502383066cad3be571f3eed570dc28acf5d155f9d19f81a0d6009"}, - {file = "simsimd-5.7.1-cp38-cp38-win_amd64.whl", hash = "sha256:d024e450df1c3bac1a6f4c0c73fb452776982ecfec88441b89189f9cbae2d50c"}, - {file = "simsimd-5.7.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c36812039a2b2dbecc1d69df4b3426784fedc51c4b7f0f2c35944ffae02669ff"}, - {file = "simsimd-5.7.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:34c1348d432cc6bb84c1f024b77b79b5f1d1b1fef712c36da1889f33f11541ef"}, - {file = "simsimd-5.7.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0c116336dde39715e5c54ff8c603dd80755f793f50b9fcc0c799f87ac6ed96b3"}, - {file = "simsimd-5.7.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6859c13597cf3e95531eb55799f0afd693bb6fe42255f97073a760abc0a8f7d7"}, - {file = "simsimd-5.7.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f646891dc507beb66ba0243a9dc55f89f9efb9b8dbfabefb1bf719f5202e4d2b"}, - {file = "simsimd-5.7.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b62098b68a7cee904d10f7a3b1cc5435b2d30b143b34da556e6d20e0b7155beb"}, - {file = "simsimd-5.7.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:b882520bdac8f34709c9d82ddd4f13de1ae0f13be9b21224baa8a45d3fde9048"}, - {file = "simsimd-5.7.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:22b78ff1036071f9fc28ea37353024cc8215d2eb2598de53a67cded567d33d3b"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:e0737a6b44d9ca91ebf91f9aca33430db94d8e26e79826478b288d5f6383bff2"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:cab828ee1eed1eb6d17825a4950dfd3d6ac648462f1d5bcfbc8b52642d9620db"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:07c6d52c3defcd1dbbe757e0c2807250106500f450ad9bd2e1d5dfe01d95f867"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:c54c3d2c5dfefcda6477c8b5b3d9e28c320bd7b8dbb4a13ae083d2941ee99a3f"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:7f7b9c1321a8d32f5f705607a2f8278eb7a2ccb37553df9a5027bb7ab17c16c4"}, - {file = "simsimd-5.7.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6286b4b36cdd91e2a75bb65dc0a1c75c343f298e1823c90703ac07dd405e2c0e"}, - {file = "simsimd-5.7.1-cp39-cp39-win32.whl", hash = "sha256:81c9732321dfb3d36f36b8becafb63bab5d8778e859f8d9b990fca6650d01872"}, - {file = "simsimd-5.7.1-cp39-cp39-win_amd64.whl", hash = "sha256:47e5a69c5ea296b3885cc7ae357b2367b39a7a3c29208c627a3d4ca10f2d8fa3"}, - {file = "simsimd-5.7.1-cp39-cp39-win_arm64.whl", hash = "sha256:91aaf13c0436e086fd8cd90320666afb3ab9e9d234dbbb71ebb1e5f13776a37d"}, - {file = "simsimd-5.7.1.tar.gz", hash = "sha256:1b54e9808dbfa2afbc9c5f0f5548dd572eb542ca260a57c32034acaf170919da"}, + {file = "simsimd-5.7.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:06dae257a7c89a7925240c89e3635040edaf5b6f12527abe6c8e4cae4484a874"}, + {file = "simsimd-5.7.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f144f24f3b6d910bbb2e1ad7a270f99f71012a1d18199a892a3bab90a4bb53c6"}, + {file = "simsimd-5.7.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9208c3ff020bc655582854f703193094df3d3b19ee07d59c7c9d2358f6ac5181"}, + {file = "simsimd-5.7.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:53a09a2d0911efeba04ea0a08fcbeab3a397396bf92a187c0e61fc3019be7d60"}, + {file = "simsimd-5.7.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0d853da0ac3067b4672f8c1246ba26422d888b2ff9611001c29eaa2a72fef3ee"}, + {file = "simsimd-5.7.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a737e4b59f07e838c2055f6732be434ffa1a2d268fe95493c1389b76ea375853"}, + {file = "simsimd-5.7.2-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:7bbfb41620d783a250078f71eda0a4248c8d77588ded923d04e5764a99b16bc1"}, + {file = "simsimd-5.7.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:900b1887e8f44cc7505371848ef6ac290bb8fea446d2e5be4251c7b0add51ff5"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:4061b2fcbbbab37c53016a1717895cc029476a5f1de92966776549b96fb3f90a"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:ddd120c3bc3fe11c1b313cdc7a32a2b857d1f1edf1dfa5547dac69caa5053a39"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:83f91e06241766b7ddba246f548c2f79610ff33213d0ac74b2b7768a7a0eaff9"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:f94640d1aedd252d0d34d9e15f2865fda79ca1dfa164f7d3ac014f276bb08aa2"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:d57fe0e2d3dacc0d17c37113d3f1c16d6c53bbfa1e3c959a6ef79cc96a357f6f"}, + {file = "simsimd-5.7.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:88783aab51a48db1e6f20e7334644a6952f3119f47657b28380e79b281453914"}, + {file = "simsimd-5.7.2-cp310-cp310-win32.whl", hash = "sha256:48362c6eda9d9027f2e6b121af5936ce152653b9a3f08ab6192540440b7beb90"}, + {file = "simsimd-5.7.2-cp310-cp310-win_amd64.whl", hash = "sha256:2e4f18cdeadb352ed49702cfaa81d7507485df4c565c4fccbea0a12e860bac76"}, + {file = "simsimd-5.7.2-cp310-cp310-win_arm64.whl", hash = "sha256:bb7957417f04dd16243e527dfefd223e9c93c944d7bc86c72a6b51620f706c49"}, + {file = "simsimd-5.7.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:536c043d92a8b992392e74268503150f9f5133697b2cc28432dd791765e9bec2"}, + {file = "simsimd-5.7.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:92cba22a37ec1600417912e4b013e3e3db24343e4ca11e61a5c5fbb4d55a676c"}, + {file = "simsimd-5.7.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1ee79a2625ed60e38405fd054e862646c1a8d92c00ce617a7532643e8f6c74bd"}, + {file = "simsimd-5.7.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f7c40fc40e1934b744f22f8995db4064e16d6390f1019f91a023747baf3407bb"}, + {file = "simsimd-5.7.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6f349bbbe3c4ae089e29b385f939dd9391e008cf6fb4d09d8fc73f48b0220aca"}, + {file = "simsimd-5.7.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4856fbb44020b7c83323188de99e93ce8d113897b2c68e1350e76736a1e112aa"}, + {file = "simsimd-5.7.2-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:27e538c6dbb45c6e8f3a1cbe82f4e74dc9a1cbcddf9bcc41fdde4cf0ee640c7c"}, + {file = "simsimd-5.7.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:13dc2c6d5a2c6ce14e64384647c532eb211649b28678f80e104475f08c4f15f3"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8e69f9e59e20ae5851d638692c22d01996588fa558e05c29435920319b402b7e"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:31eb60ca9a8543b6885f97eb3056945d7e73129ad8a7e2af38f184af03413de4"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:0e79c2eba6da2049ea5337b3a6fc2d1eee62308de519107fa7e0bf5548b7bebc"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:9faa9172f121b371fd1e68b53e46df7948af3261792570c323d076d47e88e692"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:5cdab4fddda1569d7abadd57fa589e9cf4bcaa90ae682a988f9249363d3e1c3c"}, + {file = "simsimd-5.7.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:637068cc0d5973e47d48e391e46ab4ce3ea936b339e6c3b53b0a61bc822c68d0"}, + {file = "simsimd-5.7.2-cp311-cp311-win32.whl", hash = "sha256:6e432a698a56fd673699bf360291be040ed60d0ef3bb0696d78209e60c0ea720"}, + {file = "simsimd-5.7.2-cp311-cp311-win_amd64.whl", hash = "sha256:1984d3290d7189cbffbb9e8cbfbc1bf2cfe124c3a7fc53d8f6a62dfc950df7aa"}, + {file = "simsimd-5.7.2-cp311-cp311-win_arm64.whl", hash = "sha256:5b192e533bbc18a64f445ffaf66e13e53564a52168c3f51aa024906aa1a46707"}, + {file = "simsimd-5.7.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9711607f2db9ab820eeaf9473be3ec236a103528eaa129f836206cb6f477d401"}, + {file = "simsimd-5.7.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:498f5c47bf0b00b1a20b2a48339e07fba9de26584702bf7b402254baccdd812a"}, + {file = "simsimd-5.7.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:880c5502acb1c8a6baf73e3e8934174957ba3ffe10a94ba87da491381aac934e"}, + {file = "simsimd-5.7.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fbee1f697c3c2f0ac988ccbb66d5acd30946ff8482526236ebac6e47a2be4b11"}, + {file = "simsimd-5.7.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de0013bbadd257cd5e6938702463bf28a230330d47847ba0c55605784ed8250f"}, + {file = "simsimd-5.7.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d6d33d9492326c5de32a97adc4d9ec3e1812441f81a693dce07ea5187c508ef1"}, + {file = "simsimd-5.7.2-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:dbb6b818216447b3c6bb8c34b4431d6f01fa14d09a74766213bee8a70d4a7648"}, + {file = "simsimd-5.7.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:5c48e47fc1eee75d9d21d52792f8ed1da5e3ccd0c5ea5e0cae093cb35e1cdd02"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:37f2f2416f9da965c227ca86cbe8715dec9e656096f9ec3670374999ab2a60e5"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:4c619cec4168bbcc8cff1042f615cea91212be4cd5c548975fb4b3da50559539"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:39658d42f16913b706ad976b9e7751de74e1fa6d5ef7ab135e699cb47f3e0be1"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:ea384a6a335ef71e19b996b4ca249d780c2c678c498dd335701953db58bb97c4"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:cdba401f1d86bd8f6adeb6fa0341616919bac69b3bd98495b0a8476d70643609"}, + {file = "simsimd-5.7.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:63aa613b2dfb70a681bbe25d1efd586b441a04150670588959ce6f0fb5e6ede2"}, + {file = "simsimd-5.7.2-cp312-cp312-win32.whl", hash = "sha256:a572f4eff81a7ac5518adad55d26591560fce1836a4894c2cfc5e0da82969c89"}, + {file = "simsimd-5.7.2-cp312-cp312-win_amd64.whl", hash = "sha256:c10db37c90e1af83b1c2fd42cc5b20112ec8faf3ab2ff1267a26502b2d7f3871"}, + {file = "simsimd-5.7.2-cp312-cp312-win_arm64.whl", hash = "sha256:19c2f7573e722ae828279298edc174b85a18c15fba7ffe558e77cc5069e6cdec"}, + {file = "simsimd-5.7.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8ed953939a830e77097ae9091f197c654b8c27aa6e99ae7cbc21a184e2f5931b"}, + {file = "simsimd-5.7.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:68596aca7d3bef6f7bd90840a54c85feb00acbab14b13c8a957df1e7a34abe33"}, + {file = "simsimd-5.7.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:20de1bc709aab06be05ee8e1bbf8c4839a0e3ad4a3226cd7af3a209a0d39b8c4"}, + {file = "simsimd-5.7.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:32eb54545ce316f76e4781754ce6851bf913ad4b8ae22c71b2a0f4c58abfe2b1"}, + {file = "simsimd-5.7.2-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:2b2fba2cbb7c8bda67e39a7b31df68f526d90081e3d30c7ef2708613e26c7b0e"}, + {file = "simsimd-5.7.2-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:ff79b7d00a13a0b3af53856931cef8b7e5561dea725727a619b48c8be3541b29"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:d9594ccb9ca38eaf42a38ff1187fa575e75405f75508cee7edc97087d09fb8aa"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_armv7l.whl", hash = "sha256:40022feb691558af64f6f466d2aea9d6464d44541521b05d1bf65002ca27b9d8"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:30a7be9ab4d591e8aeabdb9b08442192bae56e38a09d1f99bd1514c90328c0d0"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:1703aa656790d0dec568a23089f532030ed22fe13bc5406a05f33e8754f7aa9f"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:b3aa831d870f0abea801d5378e98b56c24283af23873c270d403ac97592e012c"}, + {file = "simsimd-5.7.2-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:30112c056e8e9b27f72748ce6c73f7f746eb7c458ea0fa868dc8b97c6b86302b"}, + {file = "simsimd-5.7.2-cp37-cp37m-win32.whl", hash = "sha256:f3623e6d35e8ef2d4fae428fa6d2f6eed776200862c393497c7b8fccb93fd5fb"}, + {file = "simsimd-5.7.2-cp37-cp37m-win_amd64.whl", hash = "sha256:e0c662030c6dd6129500790cfb1084c97f8a47fab6d3ba7f31353a587ec60db6"}, + {file = "simsimd-5.7.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a175a5454785b180a73692d797d0ddb441afd9eee52eef220b1b7ad2c8dee5c0"}, + {file = "simsimd-5.7.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0f950b89e6d347f484c3e0e326dc7bb412f4b9e15b339ef923060ffc59b4f096"}, + {file = "simsimd-5.7.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7da292f878174d751f176c7eddad771ad6f6d8262c5491cc5ef795036c8a02de"}, + {file = "simsimd-5.7.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09a3a030ec75944cb4c9ccbbca98e62daba59c97874b02d4ddec69058011877"}, + {file = "simsimd-5.7.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8f0de711fbd56e8298d16be5723fe4a960782b441ec16ccee9092196b12ed3"}, + {file = "simsimd-5.7.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4f4a2699bdb711dc99925292d1a852dc02076a7f1eccd623120eb97ff3a7fded"}, + {file = "simsimd-5.7.2-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:a1368ea6492765be77b8746cf5ae8eb571b0ed730fd6efa9a26243d6b5f8de30"}, + {file = "simsimd-5.7.2-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:6aad4f243736f2e37ccc42232dddfd297276eec1ed97cf32b72f28b5fe709810"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8c610e1e53625dbf215cdd944990c8c31219bc0cca48c7feb07085319fc6b418"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_armv7l.whl", hash = "sha256:109a34e5c880541d251e668307bb8b3c147caa8289647b06cfc025bafa02349d"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:0bdfc6bd105e53f817f7f005c3dbbf14873f575bd938af963fa113a0d6839a11"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:0ca50f188ecd63b4ff184465eb8afe416bc78e4d33f1a325c806ffc7923041b1"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:7bc6221ec42933c03f54afe00e82a494d324eba3426ad4422ac7dc8d85dc2d7a"}, + {file = "simsimd-5.7.2-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:1533345d1b30de3b5a4974b5804b204a71a1bab7f8e50e80f6294407b78fc72d"}, + {file = "simsimd-5.7.2-cp38-cp38-win32.whl", hash = "sha256:524adcf09f48409a5a86de60ebbd5db083e9950424531778c291cf1f8f37e008"}, + {file = "simsimd-5.7.2-cp38-cp38-win_amd64.whl", hash = "sha256:e445aaf7a2430ccb5add737dc672534e5bf966cdf57a0463d2cc9e0cac2c3696"}, + {file = "simsimd-5.7.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:84efcbefb07f4d4da1f705779612e69e496b1fc4e71c19fab1e9568557754d99"}, + {file = "simsimd-5.7.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:589e2dd8a04bf22d9c21ad073522d8df8038b838239974a160a38f79d272a49d"}, + {file = "simsimd-5.7.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ead0fb95c9dfef7fbfeb6331836d32385fc6ac4191ac2a945b205a5b0900a83a"}, + {file = "simsimd-5.7.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cd5c2d2446dbcbce8df3c93aeffa811a221c111885a9aef07988aed264264a74"}, + {file = "simsimd-5.7.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9ea47fd60141163d5464ea5847f9894b47be6c692028a3f70d2f55133d5c39be"}, + {file = "simsimd-5.7.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c1403394aa023d05f41f249558d4844d574e545a7ea0edcdddc49f859a699ee"}, + {file = "simsimd-5.7.2-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:fdf44c1009c24d3b844cced218c8b89f3ef448acf2a8ff0c6600190b39aed664"}, + {file = "simsimd-5.7.2-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:d0eb8834fbc669588eb63eb66ec510173a24cc093db43510d57b1d1ae1889fa0"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4f56e01b732670d394e99b3a89445401a077f814314ad03ede272fef2bc46f35"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:eea25b5fc063b4cd8778ba62524f19763b86fe570e1afaded20499ff04394dfc"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:531f37af4672bd1f18a19c992146082229a191e7d111d9c75773f0873fcb3b15"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:34e29a7db85d632cf78d7bdd60906d07d9a9c8c93ef9f5dd6d591a55a0dbb37c"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:03ad6c19c5642909e1e582b09a4c8700c1d36094667cae294d6d08d0aafdc879"}, + {file = "simsimd-5.7.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f565f7f4685985c00d734d87d92dfede6d50760da354642f3464273b49caecaf"}, + {file = "simsimd-5.7.2-cp39-cp39-win32.whl", hash = "sha256:b70fed46f59e6da24932bc19b6af092e94764030918572f11eb2a0eed9d6f73c"}, + {file = "simsimd-5.7.2-cp39-cp39-win_amd64.whl", hash = "sha256:4b0b36634a9a3d6b2d7dfaed4233c802028882c13c36f49d613b76c0269581af"}, + {file = "simsimd-5.7.2-cp39-cp39-win_arm64.whl", hash = "sha256:de69350e4491cb25321b22575404d6ab2eb47548264147213827fcdcbb344ec1"}, + {file = "simsimd-5.7.2.tar.gz", hash = "sha256:a1a0f2b025484044864b62ca6ad64afc1f9e5a8b020963d1db1d4a5a8f105616"}, ] [[package]] diff --git a/libs/core/pyproject.toml b/libs/core/pyproject.toml index 0f48099afb..4a26b7f35a 100644 --- a/libs/core/pyproject.toml +++ b/libs/core/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "langchain-core" -version = "0.3.11" +version = "0.3.12" description = "Building applications with LLMs through composability" authors = [] license = "MIT" @@ -133,6 +133,7 @@ classmethod-decorators = [ ruff = "^0.5" + [tool.poetry.group.typing.dependencies] mypy = ">=1.10,<1.11" types-pyyaml = "^6.0.12.2" @@ -141,12 +142,14 @@ types-jinja2 = "^2.11.9" simsimd = "^5.0.0" + [tool.poetry.group.dev.dependencies] jupyter = "^1.0.0" setuptools = "^67.6.1" grandalf = "^0.8" + [tool.poetry.group.test.dependencies] pytest = "^7.3.0" freezegun = "^1.2.2" @@ -166,14 +169,17 @@ version = "^1.26.0" python = ">=3.12" + [tool.poetry.group.test_integration.dependencies] + [tool.poetry.group.typing.dependencies.langchain-text-splitters] path = "../text-splitters" develop = true + [tool.poetry.group.test.dependencies.langchain-standard-tests] path = "../standard-tests" develop = true From 4d11211c8998e9b8e3243417c275290cade0c71f Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Thu, 17 Oct 2024 07:31:14 -0700 Subject: [PATCH 2/8] infra: schedule triggers monorepo only by default (#27428) fixes https://github.com/langchain-ai/langchain/issues/27426 --- .github/workflows/api_doc_build.yml | 1 + .github/workflows/check-broken-links.yml | 2 +- .github/workflows/people.yml | 2 +- .github/workflows/run_notebooks.yml | 5 +++-- .github/workflows/scheduled_test.yml | 2 +- 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/workflows/api_doc_build.yml b/.github/workflows/api_doc_build.yml index 6973e64f74..361dfd775c 100644 --- a/.github/workflows/api_doc_build.yml +++ b/.github/workflows/api_doc_build.yml @@ -10,6 +10,7 @@ env: jobs: build: + if: github.repository == 'langchain-ai/langchain' || github.event_name != 'schedule' runs-on: ubuntu-latest permissions: write-all steps: diff --git a/.github/workflows/check-broken-links.yml b/.github/workflows/check-broken-links.yml index 37c94910fa..626d345051 100644 --- a/.github/workflows/check-broken-links.yml +++ b/.github/workflows/check-broken-links.yml @@ -7,7 +7,7 @@ on: jobs: check-links: - if: github.repository_owner == 'langchain-ai' + if: github.repository_owner == 'langchain-ai' || github.event_name != 'schedule' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/people.yml b/.github/workflows/people.yml index adc3a789f6..8321a31979 100644 --- a/.github/workflows/people.yml +++ b/.github/workflows/people.yml @@ -14,7 +14,7 @@ on: jobs: langchain-people: - if: github.repository_owner == 'langchain-ai' + if: github.repository_owner == 'langchain-ai' || github.event_name != 'schedule' runs-on: ubuntu-latest permissions: write-all steps: diff --git a/.github/workflows/run_notebooks.yml b/.github/workflows/run_notebooks.yml index 9d4091c107..06c9a74d90 100644 --- a/.github/workflows/run_notebooks.yml +++ b/.github/workflows/run_notebooks.yml @@ -20,7 +20,7 @@ env: jobs: build: runs-on: ubuntu-latest - + if: github.repository == 'langchain-ai/langchain' || github.event_name != 'schedule' name: "Test docs" steps: - uses: actions/checkout@v4 @@ -51,5 +51,6 @@ jobs: MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }} OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} TAVILY_API_KEY: ${{ secrets.TAVILY_API_KEY }} + WORKING_DIRECTORY: ${{ github.event.inputs.working-directory || 'all' }} run: | - ./docs/scripts/execute_notebooks.sh ${{ github.event.inputs.working-directory || 'all' }} + ./docs/scripts/execute_notebooks.sh $WORKING_DIRECTORY diff --git a/.github/workflows/scheduled_test.yml b/.github/workflows/scheduled_test.yml index 0523fbab8f..6a4767988b 100644 --- a/.github/workflows/scheduled_test.yml +++ b/.github/workflows/scheduled_test.yml @@ -10,7 +10,7 @@ env: jobs: build: - if: github.repository_owner == 'langchain-ai' + if: github.repository_owner == 'langchain-ai' || github.event_name != 'schedule' name: Python ${{ matrix.python-version }} - ${{ matrix.working-directory }} runs-on: ubuntu-latest strategy: From 322ca8481245d3e50350236de55c8aa5c9235e31 Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Thu, 17 Oct 2024 07:47:29 -0700 Subject: [PATCH 3/8] infra: add ibm api build (#27425) test build: https://github.com/langchain-ai/langchain/actions/runs/11386155179 --- .github/workflows/api_doc_build.yml | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/api_doc_build.yml b/.github/workflows/api_doc_build.yml index 361dfd775c..460699f6de 100644 --- a/.github/workflows/api_doc_build.yml +++ b/.github/workflows/api_doc_build.yml @@ -78,6 +78,11 @@ jobs: with: repository: langchain-ai/langchain-databricks path: langchain-databricks + - uses: actions/checkout@v4 + with: + repository: langchain-ai/langchain-ibm + path: langchain-ibm + - name: Set Git config @@ -103,7 +108,8 @@ jobs: langchain/libs/experimental \ langchain/libs/partners/milvus \ langchain/libs/partners/unstructured \ - langchain/libs/databricks + langchain/libs/partners/databricks \ + langchain/libs/partners/ibm mv langchain-google/libs/genai langchain/libs/partners/google-genai mv langchain-google/libs/vertexai langchain/libs/partners/google-vertexai mv langchain-google/libs/community langchain/libs/partners/google-community @@ -120,6 +126,7 @@ jobs: mv langchain-milvus/libs/milvus langchain/libs/partners/milvus mv langchain-unstructured/libs/unstructured langchain/libs/partners/unstructured mv langchain-databricks/libs/databricks langchain/libs/partners/databricks + mv langchain-ibm/libs/ibm langchain/libs/partners/ibm - name: Rm old html run: @@ -138,8 +145,8 @@ jobs: run: | python -m pip install -U uv python -m uv pip install --upgrade --no-cache-dir pip setuptools - # skip airbyte and ibm due to pandas dependency issue - python -m uv pip install $(ls ./libs/partners | grep -vE "airbyte|ibm" | xargs -I {} echo "./libs/partners/{}") + # skip airbyte due to pandas dependency issue + python -m uv pip install $(ls ./libs/partners | grep -vE "airbyte" | xargs -I {} echo "./libs/partners/{}") python -m uv pip install libs/core libs/langchain libs/text-splitters libs/community libs/experimental python -m uv pip install -r docs/api_reference/requirements.txt From 2a27234a772da182ece41db4fda888729fa80448 Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Thu, 17 Oct 2024 08:51:33 -0700 Subject: [PATCH 4/8] docs: fix error reference header (#27431) --- docs/docs/troubleshooting/errors/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docs/troubleshooting/errors/index.mdx b/docs/docs/troubleshooting/errors/index.mdx index 2258714de1..aad0308b9c 100644 --- a/docs/docs/troubleshooting/errors/index.mdx +++ b/docs/docs/troubleshooting/errors/index.mdx @@ -1,4 +1,4 @@ -# Error codes +# Error reference This page contains guides around resolving common errors you may find while building with LangChain. Errors referenced below will have an `lc_error_code` property corresponding to one of the below codes when they are thrown in code. From 6e228c84a895d1889a5378eea1763244dfeba8ea Mon Sep 17 00:00:00 2001 From: Isaac Francisco <78627776+isahers1@users.noreply.github.com> Date: Thu, 17 Oct 2024 11:29:29 -0700 Subject: [PATCH 5/8] docs: update mongo table (#27434) --- docs/src/theme/FeatureTables.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/src/theme/FeatureTables.js b/docs/src/theme/FeatureTables.js index 4a46e08cb1..2016c7c545 100644 --- a/docs/src/theme/FeatureTables.js +++ b/docs/src/theme/FeatureTables.js @@ -1026,8 +1026,8 @@ const FEATURE_TABLES = { link: "mongodb_atlas", deleteById: true, filtering: true, - searchByVector: false, - searchWithScore: false, + searchByVector: true, + searchWithScore: true, async: true, passesStandardTests: false, multiTenancy: false, From 97dc578d473d684e495a3c5e6bf9bf5c74ab6134 Mon Sep 17 00:00:00 2001 From: Mateusz Szewczyk <139469471+MateuszOssGit@users.noreply.github.com> Date: Thu, 17 Oct 2024 21:41:24 +0200 Subject: [PATCH 6/8] docs: Update custom name for IBM (#27437) Thank you for contributing to LangChain! PR: Update custom name for IBM in api_reference docs Co-authored-by: Erick Friis --- docs/api_reference/create_api_rst.py | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/api_reference/create_api_rst.py b/docs/api_reference/create_api_rst.py index bb67e0bcd0..d907eec4c3 100644 --- a/docs/api_reference/create_api_rst.py +++ b/docs/api_reference/create_api_rst.py @@ -533,6 +533,7 @@ def _build_index(dirs: List[str]) -> None: "airbyte": "Airbyte", "aws": "AWS", "ai21": "AI21", + "ibm": "IBM", } ordered = ["core", "langchain", "text-splitters", "community", "experimental"] main_ = [dir_ for dir_ in ordered if dir_ in dirs] From 7d65a32ee0859bf1cf1f3cf86e41791f3be8ba3c Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Fri, 18 Oct 2024 08:02:09 -0700 Subject: [PATCH 7/8] openai: audio modality, remove sockets from unit tests (#27436) --- libs/partners/openai/.gitignore | 1 + libs/partners/openai/Makefile | 14 +- .../langchain_openai/chat_models/base.py | 13 + libs/partners/openai/poetry.lock | 586 ++++++++++-------- libs/partners/openai/pyproject.toml | 3 +- .../chat_models/audio_input.wav | Bin 0 -> 223278 bytes .../chat_models/test_base.py | 69 +++ .../tests/unit_tests/chat_models/test_base.py | 7 +- .../openai/tests/unit_tests/llms/test_base.py | 2 +- .../tests/unit_tests/test_token_counts.py | 1 + 10 files changed, 417 insertions(+), 279 deletions(-) create mode 100644 libs/partners/openai/tests/integration_tests/chat_models/audio_input.wav diff --git a/libs/partners/openai/.gitignore b/libs/partners/openai/.gitignore index bee8a64b79..fb181ca6a5 100644 --- a/libs/partners/openai/.gitignore +++ b/libs/partners/openai/.gitignore @@ -1 +1,2 @@ __pycache__ +tiktoken_cache \ No newline at end of file diff --git a/libs/partners/openai/Makefile b/libs/partners/openai/Makefile index 28b03e388a..210bdb4479 100644 --- a/libs/partners/openai/Makefile +++ b/libs/partners/openai/Makefile @@ -8,7 +8,19 @@ TEST_FILE ?= tests/unit_tests/ integration_test integration_tests: TEST_FILE=tests/integration_tests/ -test tests integration_test integration_tests: +# unit tests are run with the --disable-socket flag to prevent network calls +# use tiktoken cache to enable token counting without socket (internet) access +test tests: + mkdir -p tiktoken_cache + @if [ ! -f tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 ]; then \ + curl -o tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 https://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken; \ + fi + @if [ ! -f tiktoken_cache/fb374d419588a4632f3f557e76b4b70aebbca790 ]; then \ + curl -o tiktoken_cache/fb374d419588a4632f3f557e76b4b70aebbca790 https://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken; \ + fi + TIKTOKEN_CACHE_DIR=tiktoken_cache poetry run pytest --disable-socket --allow-unix-socket $(TEST_FILE) + +integration_test integration_tests: poetry run pytest $(TEST_FILE) test_watch: diff --git a/libs/partners/openai/langchain_openai/chat_models/base.py b/libs/partners/openai/langchain_openai/chat_models/base.py index 233fa8700a..a1b7e989e7 100644 --- a/libs/partners/openai/langchain_openai/chat_models/base.py +++ b/libs/partners/openai/langchain_openai/chat_models/base.py @@ -129,6 +129,8 @@ def _convert_dict_to_message(_dict: Mapping[str, Any]) -> BaseMessage: invalid_tool_calls.append( make_invalid_tool_call(raw_tool_call, str(e)) ) + if audio := _dict.get("audio"): + additional_kwargs["audio"] = audio return AIMessage( content=content, additional_kwargs=additional_kwargs, @@ -219,6 +221,17 @@ def _convert_message_to_dict(message: BaseMessage) -> dict: # If tool calls present, content null value should be None not empty string. if "function_call" in message_dict or "tool_calls" in message_dict: message_dict["content"] = message_dict["content"] or None + + if "audio" in message.additional_kwargs: + # openai doesn't support passing the data back - only the id + # https://platform.openai.com/docs/guides/audio/multi-turn-conversations + raw_audio = message.additional_kwargs["audio"] + audio = ( + {"id": message.additional_kwargs["audio"]["id"]} + if "id" in raw_audio + else raw_audio + ) + message_dict["audio"] = audio elif isinstance(message, SystemMessage): message_dict["role"] = "system" elif isinstance(message, FunctionMessage): diff --git a/libs/partners/openai/poetry.lock b/libs/partners/openai/poetry.lock index 9d9e88d6a4..e253f4abf7 100644 --- a/libs/partners/openai/poetry.lock +++ b/libs/partners/openai/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "annotated-types" @@ -13,13 +13,13 @@ files = [ [[package]] name = "anyio" -version = "4.6.0" +version = "4.6.2.post1" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.9" files = [ - {file = "anyio-4.6.0-py3-none-any.whl", hash = "sha256:c7d2e9d63e31599eeb636c8c5c03a7e108d73b345f064f1c19fdc87b79036a9a"}, - {file = "anyio-4.6.0.tar.gz", hash = "sha256:137b4559cbb034c477165047febb6ff83f390fc3b20bf181c1fc0a728cb8beeb"}, + {file = "anyio-4.6.2.post1-py3-none-any.whl", hash = "sha256:6d170c36fba3bdd840c73d3868c1e777e33676a69c3a72cf0a0d5d6d8009b61d"}, + {file = "anyio-4.6.2.post1.tar.gz", hash = "sha256:4c8bc31ccdb51c7f7bd251f51c609e038d63e34219b44aa86e47576389880b4c"}, ] [package.dependencies] @@ -30,7 +30,7 @@ typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} [package.extras] doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.21.0b1)"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] trio = ["trio (>=0.26.1)"] [[package]] @@ -46,101 +46,116 @@ files = [ [[package]] name = "charset-normalizer" -version = "3.3.2" +version = "3.4.0" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false python-versions = ">=3.7.0" files = [ - {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win32.whl", hash = "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win32.whl", hash = "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win32.whl", hash = "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win32.whl", hash = "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win32.whl", hash = "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win32.whl", hash = "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win32.whl", hash = "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca"}, + {file = "charset_normalizer-3.4.0-py3-none-any.whl", hash = "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079"}, + {file = "charset_normalizer-3.4.0.tar.gz", hash = "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e"}, ] [[package]] @@ -173,83 +188,73 @@ files = [ [[package]] name = "coverage" -version = "7.6.1" +version = "7.6.3" description = "Code coverage measurement for Python" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "coverage-7.6.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b06079abebbc0e89e6163b8e8f0e16270124c154dc6e4a47b413dd538859af16"}, - {file = "coverage-7.6.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cf4b19715bccd7ee27b6b120e7e9dd56037b9c0681dcc1adc9ba9db3d417fa36"}, - {file = "coverage-7.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61c0abb4c85b095a784ef23fdd4aede7a2628478e7baba7c5e3deba61070a02"}, - {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd21f6ae3f08b41004dfb433fa895d858f3f5979e7762d052b12aef444e29afc"}, - {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f59d57baca39b32db42b83b2a7ba6f47ad9c394ec2076b084c3f029b7afca23"}, - {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a1ac0ae2b8bd743b88ed0502544847c3053d7171a3cff9228af618a068ed9c34"}, - {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e6a08c0be454c3b3beb105c0596ebdc2371fab6bb90c0c0297f4e58fd7e1012c"}, - {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f5796e664fe802da4f57a168c85359a8fbf3eab5e55cd4e4569fbacecc903959"}, - {file = "coverage-7.6.1-cp310-cp310-win32.whl", hash = "sha256:7bb65125fcbef8d989fa1dd0e8a060999497629ca5b0efbca209588a73356232"}, - {file = "coverage-7.6.1-cp310-cp310-win_amd64.whl", hash = "sha256:3115a95daa9bdba70aea750db7b96b37259a81a709223c8448fa97727d546fe0"}, - {file = "coverage-7.6.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7dea0889685db8550f839fa202744652e87c60015029ce3f60e006f8c4462c93"}, - {file = "coverage-7.6.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ed37bd3c3b063412f7620464a9ac1314d33100329f39799255fb8d3027da50d3"}, - {file = "coverage-7.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d85f5e9a5f8b73e2350097c3756ef7e785f55bd71205defa0bfdaf96c31616ff"}, - {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bc572be474cafb617672c43fe989d6e48d3c83af02ce8de73fff1c6bb3c198d"}, - {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c0420b573964c760df9e9e86d1a9a622d0d27f417e1a949a8a66dd7bcee7bc6"}, - {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1f4aa8219db826ce6be7099d559f8ec311549bfc4046f7f9fe9b5cea5c581c56"}, - {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:fc5a77d0c516700ebad189b587de289a20a78324bc54baee03dd486f0855d234"}, - {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b48f312cca9621272ae49008c7f613337c53fadca647d6384cc129d2996d1133"}, - {file = "coverage-7.6.1-cp311-cp311-win32.whl", hash = "sha256:1125ca0e5fd475cbbba3bb67ae20bd2c23a98fac4e32412883f9bcbaa81c314c"}, - {file = "coverage-7.6.1-cp311-cp311-win_amd64.whl", hash = "sha256:8ae539519c4c040c5ffd0632784e21b2f03fc1340752af711f33e5be83a9d6c6"}, - {file = "coverage-7.6.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:95cae0efeb032af8458fc27d191f85d1717b1d4e49f7cb226cf526ff28179778"}, - {file = "coverage-7.6.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5621a9175cf9d0b0c84c2ef2b12e9f5f5071357c4d2ea6ca1cf01814f45d2391"}, - {file = "coverage-7.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:260933720fdcd75340e7dbe9060655aff3af1f0c5d20f46b57f262ab6c86a5e8"}, - {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07e2ca0ad381b91350c0ed49d52699b625aab2b44b65e1b4e02fa9df0e92ad2d"}, - {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c44fee9975f04b33331cb8eb272827111efc8930cfd582e0320613263ca849ca"}, - {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:877abb17e6339d96bf08e7a622d05095e72b71f8afd8a9fefc82cf30ed944163"}, - {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:3e0cadcf6733c09154b461f1ca72d5416635e5e4ec4e536192180d34ec160f8a"}, - {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c3c02d12f837d9683e5ab2f3d9844dc57655b92c74e286c262e0fc54213c216d"}, - {file = "coverage-7.6.1-cp312-cp312-win32.whl", hash = "sha256:e05882b70b87a18d937ca6768ff33cc3f72847cbc4de4491c8e73880766718e5"}, - {file = "coverage-7.6.1-cp312-cp312-win_amd64.whl", hash = "sha256:b5d7b556859dd85f3a541db6a4e0167b86e7273e1cdc973e5b175166bb634fdb"}, - {file = "coverage-7.6.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a4acd025ecc06185ba2b801f2de85546e0b8ac787cf9d3b06e7e2a69f925b106"}, - {file = "coverage-7.6.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a6d3adcf24b624a7b778533480e32434a39ad8fa30c315208f6d3e5542aeb6e9"}, - {file = "coverage-7.6.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0c212c49b6c10e6951362f7c6df3329f04c2b1c28499563d4035d964ab8e08c"}, - {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e81d7a3e58882450ec4186ca59a3f20a5d4440f25b1cff6f0902ad890e6748a"}, - {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78b260de9790fd81e69401c2dc8b17da47c8038176a79092a89cb2b7d945d060"}, - {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a78d169acd38300060b28d600344a803628c3fd585c912cacc9ea8790fe96862"}, - {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2c09f4ce52cb99dd7505cd0fc8e0e37c77b87f46bc9c1eb03fe3bc9991085388"}, - {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6878ef48d4227aace338d88c48738a4258213cd7b74fd9a3d4d7582bb1d8a155"}, - {file = "coverage-7.6.1-cp313-cp313-win32.whl", hash = "sha256:44df346d5215a8c0e360307d46ffaabe0f5d3502c8a1cefd700b34baf31d411a"}, - {file = "coverage-7.6.1-cp313-cp313-win_amd64.whl", hash = "sha256:8284cf8c0dd272a247bc154eb6c95548722dce90d098c17a883ed36e67cdb129"}, - {file = "coverage-7.6.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:d3296782ca4eab572a1a4eca686d8bfb00226300dcefdf43faa25b5242ab8a3e"}, - {file = "coverage-7.6.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:502753043567491d3ff6d08629270127e0c31d4184c4c8d98f92c26f65019962"}, - {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a89ecca80709d4076b95f89f308544ec8f7b4727e8a547913a35f16717856cb"}, - {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a318d68e92e80af8b00fa99609796fdbcdfef3629c77c6283566c6f02c6d6704"}, - {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13b0a73a0896988f053e4fbb7de6d93388e6dd292b0d87ee51d106f2c11b465b"}, - {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4421712dbfc5562150f7554f13dde997a2e932a6b5f352edcce948a815efee6f"}, - {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:166811d20dfea725e2e4baa71fffd6c968a958577848d2131f39b60043400223"}, - {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:225667980479a17db1048cb2bf8bfb39b8e5be8f164b8f6628b64f78a72cf9d3"}, - {file = "coverage-7.6.1-cp313-cp313t-win32.whl", hash = "sha256:170d444ab405852903b7d04ea9ae9b98f98ab6d7e63e1115e82620807519797f"}, - {file = "coverage-7.6.1-cp313-cp313t-win_amd64.whl", hash = "sha256:b9f222de8cded79c49bf184bdbc06630d4c58eec9459b939b4a690c82ed05657"}, - {file = "coverage-7.6.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6db04803b6c7291985a761004e9060b2bca08da6d04f26a7f2294b8623a0c1a0"}, - {file = "coverage-7.6.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f1adfc8ac319e1a348af294106bc6a8458a0f1633cc62a1446aebc30c5fa186a"}, - {file = "coverage-7.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a95324a9de9650a729239daea117df21f4b9868ce32e63f8b650ebe6cef5595b"}, - {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b43c03669dc4618ec25270b06ecd3ee4fa94c7f9b3c14bae6571ca00ef98b0d3"}, - {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8929543a7192c13d177b770008bc4e8119f2e1f881d563fc6b6305d2d0ebe9de"}, - {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:a09ece4a69cf399510c8ab25e0950d9cf2b42f7b3cb0374f95d2e2ff594478a6"}, - {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:9054a0754de38d9dbd01a46621636689124d666bad1936d76c0341f7d71bf569"}, - {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0dbde0f4aa9a16fa4d754356a8f2e36296ff4d83994b2c9d8398aa32f222f989"}, - {file = "coverage-7.6.1-cp38-cp38-win32.whl", hash = "sha256:da511e6ad4f7323ee5702e6633085fb76c2f893aaf8ce4c51a0ba4fc07580ea7"}, - {file = "coverage-7.6.1-cp38-cp38-win_amd64.whl", hash = "sha256:3f1156e3e8f2872197af3840d8ad307a9dd18e615dc64d9ee41696f287c57ad8"}, - {file = "coverage-7.6.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:abd5fd0db5f4dc9289408aaf34908072f805ff7792632250dcb36dc591d24255"}, - {file = "coverage-7.6.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:547f45fa1a93154bd82050a7f3cddbc1a7a4dd2a9bf5cb7d06f4ae29fe94eaf8"}, - {file = "coverage-7.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:645786266c8f18a931b65bfcefdbf6952dd0dea98feee39bd188607a9d307ed2"}, - {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9e0b2df163b8ed01d515807af24f63de04bebcecbd6c3bfeff88385789fdf75a"}, - {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:609b06f178fe8e9f89ef676532760ec0b4deea15e9969bf754b37f7c40326dbc"}, - {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:702855feff378050ae4f741045e19a32d57d19f3e0676d589df0575008ea5004"}, - {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:2bdb062ea438f22d99cba0d7829c2ef0af1d768d1e4a4f528087224c90b132cb"}, - {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:9c56863d44bd1c4fe2abb8a4d6f5371d197f1ac0ebdee542f07f35895fc07f36"}, - {file = "coverage-7.6.1-cp39-cp39-win32.whl", hash = "sha256:6e2cd258d7d927d09493c8df1ce9174ad01b381d4729a9d8d4e38670ca24774c"}, - {file = "coverage-7.6.1-cp39-cp39-win_amd64.whl", hash = "sha256:06a737c882bd26d0d6ee7269b20b12f14a8704807a01056c80bb881a4b2ce6ca"}, - {file = "coverage-7.6.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:e9a6e0eb86070e8ccaedfbd9d38fec54864f3125ab95419970575b42af7541df"}, - {file = "coverage-7.6.1.tar.gz", hash = "sha256:953510dfb7b12ab69d20135a0662397f077c59b1e6379a768e97c59d852ee51d"}, + {file = "coverage-7.6.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6da42bbcec130b188169107ecb6ee7bd7b4c849d24c9370a0c884cf728d8e976"}, + {file = "coverage-7.6.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c222958f59b0ae091f4535851cbb24eb57fc0baea07ba675af718fb5302dddb2"}, + {file = "coverage-7.6.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ab84a8b698ad5a6c365b08061920138e7a7dd9a04b6feb09ba1bfae68346ce6d"}, + {file = "coverage-7.6.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:70a6756ce66cd6fe8486c775b30889f0dc4cb20c157aa8c35b45fd7868255c5c"}, + {file = "coverage-7.6.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c2e6fa98032fec8282f6b27e3f3986c6e05702828380618776ad794e938f53a"}, + {file = "coverage-7.6.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:921fbe13492caf6a69528f09d5d7c7d518c8d0e7b9f6701b7719715f29a71e6e"}, + {file = "coverage-7.6.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:6d99198203f0b9cb0b5d1c0393859555bc26b548223a769baf7e321a627ed4fc"}, + {file = "coverage-7.6.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:87cd2e29067ea397a47e352efb13f976eb1b03e18c999270bb50589323294c6e"}, + {file = "coverage-7.6.3-cp310-cp310-win32.whl", hash = "sha256:a3328c3e64ea4ab12b85999eb0779e6139295bbf5485f69d42cf794309e3d007"}, + {file = "coverage-7.6.3-cp310-cp310-win_amd64.whl", hash = "sha256:bca4c8abc50d38f9773c1ec80d43f3768df2e8576807d1656016b9d3eeaa96fd"}, + {file = "coverage-7.6.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c51ef82302386d686feea1c44dbeef744585da16fcf97deea2a8d6c1556f519b"}, + {file = "coverage-7.6.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0ca37993206402c6c35dc717f90d4c8f53568a8b80f0bf1a1b2b334f4d488fba"}, + {file = "coverage-7.6.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c77326300b839c44c3e5a8fe26c15b7e87b2f32dfd2fc9fee1d13604347c9b38"}, + {file = "coverage-7.6.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e484e479860e00da1f005cd19d1c5d4a813324e5951319ac3f3eefb497cc549"}, + {file = "coverage-7.6.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c6c0f4d53ef603397fc894a895b960ecd7d44c727df42a8d500031716d4e8d2"}, + {file = "coverage-7.6.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:37be7b5ea3ff5b7c4a9db16074dc94523b5f10dd1f3b362a827af66a55198175"}, + {file = "coverage-7.6.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:43b32a06c47539fe275106b376658638b418c7cfdfff0e0259fbf877e845f14b"}, + {file = "coverage-7.6.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ee77c7bef0724165e795b6b7bf9c4c22a9b8468a6bdb9c6b4281293c6b22a90f"}, + {file = "coverage-7.6.3-cp311-cp311-win32.whl", hash = "sha256:43517e1f6b19f610a93d8227e47790722c8bf7422e46b365e0469fc3d3563d97"}, + {file = "coverage-7.6.3-cp311-cp311-win_amd64.whl", hash = "sha256:04f2189716e85ec9192df307f7c255f90e78b6e9863a03223c3b998d24a3c6c6"}, + {file = "coverage-7.6.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:27bd5f18d8f2879e45724b0ce74f61811639a846ff0e5c0395b7818fae87aec6"}, + {file = "coverage-7.6.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d546cfa78844b8b9c1c0533de1851569a13f87449897bbc95d698d1d3cb2a30f"}, + {file = "coverage-7.6.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9975442f2e7a5cfcf87299c26b5a45266ab0696348420049b9b94b2ad3d40234"}, + {file = "coverage-7.6.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:583049c63106c0555e3ae3931edab5669668bbef84c15861421b94e121878d3f"}, + {file = "coverage-7.6.3-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2341a78ae3a5ed454d524206a3fcb3cec408c2a0c7c2752cd78b606a2ff15af4"}, + {file = "coverage-7.6.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a4fb91d5f72b7e06a14ff4ae5be625a81cd7e5f869d7a54578fc271d08d58ae3"}, + {file = "coverage-7.6.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e279f3db904e3b55f520f11f983cc8dc8a4ce9b65f11692d4718ed021ec58b83"}, + {file = "coverage-7.6.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aa23ce39661a3e90eea5f99ec59b763b7d655c2cada10729ed920a38bfc2b167"}, + {file = "coverage-7.6.3-cp312-cp312-win32.whl", hash = "sha256:52ac29cc72ee7e25ace7807249638f94c9b6a862c56b1df015d2b2e388e51dbd"}, + {file = "coverage-7.6.3-cp312-cp312-win_amd64.whl", hash = "sha256:40e8b1983080439d4802d80b951f4a93d991ef3261f69e81095a66f86cf3c3c6"}, + {file = "coverage-7.6.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9134032f5aa445ae591c2ba6991d10136a1f533b1d2fa8f8c21126468c5025c6"}, + {file = "coverage-7.6.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:99670790f21a96665a35849990b1df447993880bb6463a0a1d757897f30da929"}, + {file = "coverage-7.6.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2dc7d6b380ca76f5e817ac9eef0c3686e7834c8346bef30b041a4ad286449990"}, + {file = "coverage-7.6.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f7b26757b22faf88fcf232f5f0e62f6e0fd9e22a8a5d0d5016888cdfe1f6c1c4"}, + {file = "coverage-7.6.3-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c59d6a4a4633fad297f943c03d0d2569867bd5372eb5684befdff8df8522e39"}, + {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f263b18692f8ed52c8de7f40a0751e79015983dbd77b16906e5b310a39d3ca21"}, + {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:79644f68a6ff23b251cae1c82b01a0b51bc40c8468ca9585c6c4b1aeee570e0b"}, + {file = "coverage-7.6.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:71967c35828c9ff94e8c7d405469a1fb68257f686bca7c1ed85ed34e7c2529c4"}, + {file = "coverage-7.6.3-cp313-cp313-win32.whl", hash = "sha256:e266af4da2c1a4cbc6135a570c64577fd3e6eb204607eaff99d8e9b710003c6f"}, + {file = "coverage-7.6.3-cp313-cp313-win_amd64.whl", hash = "sha256:ea52bd218d4ba260399a8ae4bb6b577d82adfc4518b93566ce1fddd4a49d1dce"}, + {file = "coverage-7.6.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8d4c6ea0f498c7c79111033a290d060c517853a7bcb2f46516f591dab628ddd3"}, + {file = "coverage-7.6.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:331b200ad03dbaa44151d74daeb7da2cf382db424ab923574f6ecca7d3b30de3"}, + {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54356a76b67cf8a3085818026bb556545ebb8353951923b88292556dfa9f812d"}, + {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ebec65f5068e7df2d49466aab9128510c4867e532e07cb6960075b27658dca38"}, + {file = "coverage-7.6.3-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d33a785ea8354c480515e781554d3be582a86297e41ccbea627a5c632647f2cd"}, + {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:f7ddb920106bbbbcaf2a274d56f46956bf56ecbde210d88061824a95bdd94e92"}, + {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:70d24936ca6c15a3bbc91ee9c7fc661132c6f4c9d42a23b31b6686c05073bde5"}, + {file = "coverage-7.6.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c30e42ea11badb147f0d2e387115b15e2bd8205a5ad70d6ad79cf37f6ac08c91"}, + {file = "coverage-7.6.3-cp313-cp313t-win32.whl", hash = "sha256:365defc257c687ce3e7d275f39738dcd230777424117a6c76043459db131dd43"}, + {file = "coverage-7.6.3-cp313-cp313t-win_amd64.whl", hash = "sha256:23bb63ae3f4c645d2d82fa22697364b0046fbafb6261b258a58587441c5f7bd0"}, + {file = "coverage-7.6.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:da29ceabe3025a1e5a5aeeb331c5b1af686daab4ff0fb4f83df18b1180ea83e2"}, + {file = "coverage-7.6.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:df8c05a0f574d480947cba11b947dc41b1265d721c3777881da2fb8d3a1ddfba"}, + {file = "coverage-7.6.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec1e3b40b82236d100d259854840555469fad4db64f669ab817279eb95cd535c"}, + {file = "coverage-7.6.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b4adeb878a374126f1e5cf03b87f66279f479e01af0e9a654cf6d1509af46c40"}, + {file = "coverage-7.6.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43d6a66e33b1455b98fc7312b124296dad97a2e191c80320587234a77b1b736e"}, + {file = "coverage-7.6.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1990b1f4e2c402beb317840030bb9f1b6a363f86e14e21b4212e618acdfce7f6"}, + {file = "coverage-7.6.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:12f9515d875859faedb4144fd38694a761cd2a61ef9603bf887b13956d0bbfbb"}, + {file = "coverage-7.6.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:99ded130555c021d99729fabd4ddb91a6f4cc0707df4b1daf912c7850c373b13"}, + {file = "coverage-7.6.3-cp39-cp39-win32.whl", hash = "sha256:c3a79f56dee9136084cf84a6c7c4341427ef36e05ae6415bf7d787c96ff5eaa3"}, + {file = "coverage-7.6.3-cp39-cp39-win_amd64.whl", hash = "sha256:aac7501ae73d4a02f4b7ac8fcb9dc55342ca98ffb9ed9f2dfb8a25d53eda0e4d"}, + {file = "coverage-7.6.3-pp39.pp310-none-any.whl", hash = "sha256:b9853509b4bf57ba7b1f99b9d866c422c9c5248799ab20e652bbb8a184a38181"}, + {file = "coverage-7.6.3.tar.gz", hash = "sha256:bb7d5fe92bd0dc235f63ebe9f8c6e0884f7360f88f3411bfed1350c872ef2054"}, ] [package.dependencies] @@ -381,72 +386,84 @@ files = [ [[package]] name = "jiter" -version = "0.5.0" +version = "0.6.1" description = "Fast iterable JSON parser." optional = false python-versions = ">=3.8" files = [ - {file = "jiter-0.5.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b599f4e89b3def9a94091e6ee52e1d7ad7bc33e238ebb9c4c63f211d74822c3f"}, - {file = "jiter-0.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2a063f71c4b06225543dddadbe09d203dc0c95ba352d8b85f1221173480a71d5"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:acc0d5b8b3dd12e91dd184b87273f864b363dfabc90ef29a1092d269f18c7e28"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c22541f0b672f4d741382a97c65609332a783501551445ab2df137ada01e019e"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:63314832e302cc10d8dfbda0333a384bf4bcfce80d65fe99b0f3c0da8945a91a"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a25fbd8a5a58061e433d6fae6d5298777c0814a8bcefa1e5ecfff20c594bd749"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:503b2c27d87dfff5ab717a8200fbbcf4714516c9d85558048b1fc14d2de7d8dc"}, - {file = "jiter-0.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6d1f3d27cce923713933a844872d213d244e09b53ec99b7a7fdf73d543529d6d"}, - {file = "jiter-0.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c95980207b3998f2c3b3098f357994d3fd7661121f30669ca7cb945f09510a87"}, - {file = "jiter-0.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:afa66939d834b0ce063f57d9895e8036ffc41c4bd90e4a99631e5f261d9b518e"}, - {file = "jiter-0.5.0-cp310-none-win32.whl", hash = "sha256:f16ca8f10e62f25fd81d5310e852df6649af17824146ca74647a018424ddeccf"}, - {file = "jiter-0.5.0-cp310-none-win_amd64.whl", hash = "sha256:b2950e4798e82dd9176935ef6a55cf6a448b5c71515a556da3f6b811a7844f1e"}, - {file = "jiter-0.5.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d4c8e1ed0ef31ad29cae5ea16b9e41529eb50a7fba70600008e9f8de6376d553"}, - {file = "jiter-0.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c6f16e21276074a12d8421692515b3fd6d2ea9c94fd0734c39a12960a20e85f3"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5280e68e7740c8c128d3ae5ab63335ce6d1fb6603d3b809637b11713487af9e6"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:583c57fc30cc1fec360e66323aadd7fc3edeec01289bfafc35d3b9dcb29495e4"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:26351cc14507bdf466b5f99aba3df3143a59da75799bf64a53a3ad3155ecded9"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4829df14d656b3fb87e50ae8b48253a8851c707da9f30d45aacab2aa2ba2d614"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a42a4bdcf7307b86cb863b2fb9bb55029b422d8f86276a50487982d99eed7c6e"}, - {file = "jiter-0.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04d461ad0aebf696f8da13c99bc1b3e06f66ecf6cfd56254cc402f6385231c06"}, - {file = "jiter-0.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e6375923c5f19888c9226582a124b77b622f8fd0018b843c45eeb19d9701c403"}, - {file = "jiter-0.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:2cec323a853c24fd0472517113768c92ae0be8f8c384ef4441d3632da8baa646"}, - {file = "jiter-0.5.0-cp311-none-win32.whl", hash = "sha256:aa1db0967130b5cab63dfe4d6ff547c88b2a394c3410db64744d491df7f069bb"}, - {file = "jiter-0.5.0-cp311-none-win_amd64.whl", hash = "sha256:aa9d2b85b2ed7dc7697597dcfaac66e63c1b3028652f751c81c65a9f220899ae"}, - {file = "jiter-0.5.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9f664e7351604f91dcdd557603c57fc0d551bc65cc0a732fdacbf73ad335049a"}, - {file = "jiter-0.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:044f2f1148b5248ad2c8c3afb43430dccf676c5a5834d2f5089a4e6c5bbd64df"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:702e3520384c88b6e270c55c772d4bd6d7b150608dcc94dea87ceba1b6391248"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:528d742dcde73fad9d63e8242c036ab4a84389a56e04efd854062b660f559544"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8cf80e5fe6ab582c82f0c3331df27a7e1565e2dcf06265afd5173d809cdbf9ba"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:44dfc9ddfb9b51a5626568ef4e55ada462b7328996294fe4d36de02fce42721f"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c451f7922992751a936b96c5f5b9bb9312243d9b754c34b33d0cb72c84669f4e"}, - {file = "jiter-0.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:308fce789a2f093dca1ff91ac391f11a9f99c35369117ad5a5c6c4903e1b3e3a"}, - {file = "jiter-0.5.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7f5ad4a7c6b0d90776fdefa294f662e8a86871e601309643de30bf94bb93a64e"}, - {file = "jiter-0.5.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ea189db75f8eca08807d02ae27929e890c7d47599ce3d0a6a5d41f2419ecf338"}, - {file = "jiter-0.5.0-cp312-none-win32.whl", hash = "sha256:e3bbe3910c724b877846186c25fe3c802e105a2c1fc2b57d6688b9f8772026e4"}, - {file = "jiter-0.5.0-cp312-none-win_amd64.whl", hash = "sha256:a586832f70c3f1481732919215f36d41c59ca080fa27a65cf23d9490e75b2ef5"}, - {file = "jiter-0.5.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:f04bc2fc50dc77be9d10f73fcc4e39346402ffe21726ff41028f36e179b587e6"}, - {file = "jiter-0.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6f433a4169ad22fcb550b11179bb2b4fd405de9b982601914ef448390b2954f3"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad4a6398c85d3a20067e6c69890ca01f68659da94d74c800298581724e426c7e"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6baa88334e7af3f4d7a5c66c3a63808e5efbc3698a1c57626541ddd22f8e4fbf"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ece0a115c05efca597c6d938f88c9357c843f8c245dbbb53361a1c01afd7148"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:335942557162ad372cc367ffaf93217117401bf930483b4b3ebdb1223dbddfa7"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:649b0ee97a6e6da174bffcb3c8c051a5935d7d4f2f52ea1583b5b3e7822fbf14"}, - {file = "jiter-0.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f4be354c5de82157886ca7f5925dbda369b77344b4b4adf2723079715f823989"}, - {file = "jiter-0.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5206144578831a6de278a38896864ded4ed96af66e1e63ec5dd7f4a1fce38a3a"}, - {file = "jiter-0.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8120c60f8121ac3d6f072b97ef0e71770cc72b3c23084c72c4189428b1b1d3b6"}, - {file = "jiter-0.5.0-cp38-none-win32.whl", hash = "sha256:6f1223f88b6d76b519cb033a4d3687ca157c272ec5d6015c322fc5b3074d8a5e"}, - {file = "jiter-0.5.0-cp38-none-win_amd64.whl", hash = "sha256:c59614b225d9f434ea8fc0d0bec51ef5fa8c83679afedc0433905994fb36d631"}, - {file = "jiter-0.5.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:0af3838cfb7e6afee3f00dc66fa24695199e20ba87df26e942820345b0afc566"}, - {file = "jiter-0.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:550b11d669600dbc342364fd4adbe987f14d0bbedaf06feb1b983383dcc4b961"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:489875bf1a0ffb3cb38a727b01e6673f0f2e395b2aad3c9387f94187cb214bbf"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b250ca2594f5599ca82ba7e68785a669b352156260c5362ea1b4e04a0f3e2389"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8ea18e01f785c6667ca15407cd6dabbe029d77474d53595a189bdc813347218e"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:462a52be85b53cd9bffd94e2d788a09984274fe6cebb893d6287e1c296d50653"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:92cc68b48d50fa472c79c93965e19bd48f40f207cb557a8346daa020d6ba973b"}, - {file = "jiter-0.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1c834133e59a8521bc87ebcad773608c6fa6ab5c7a022df24a45030826cf10bc"}, - {file = "jiter-0.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ab3a71ff31cf2d45cb216dc37af522d335211f3a972d2fe14ea99073de6cb104"}, - {file = "jiter-0.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cccd3af9c48ac500c95e1bcbc498020c87e1781ff0345dd371462d67b76643eb"}, - {file = "jiter-0.5.0-cp39-none-win32.whl", hash = "sha256:368084d8d5c4fc40ff7c3cc513c4f73e02c85f6009217922d0823a48ee7adf61"}, - {file = "jiter-0.5.0-cp39-none-win_amd64.whl", hash = "sha256:ce03f7b4129eb72f1687fa11300fbf677b02990618428934662406d2a76742a1"}, - {file = "jiter-0.5.0.tar.gz", hash = "sha256:1d916ba875bcab5c5f7d927df998c4cb694d27dceddf3392e58beaf10563368a"}, + {file = "jiter-0.6.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:d08510593cb57296851080018006dfc394070178d238b767b1879dc1013b106c"}, + {file = "jiter-0.6.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:adef59d5e2394ebbad13b7ed5e0306cceb1df92e2de688824232a91588e77aa7"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b3e02f7a27f2bcc15b7d455c9df05df8ffffcc596a2a541eeda9a3110326e7a3"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed69a7971d67b08f152c17c638f0e8c2aa207e9dd3a5fcd3cba294d39b5a8d2d"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b2019d966e98f7c6df24b3b8363998575f47d26471bfb14aade37630fae836a1"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:36c0b51a285b68311e207a76c385650322734c8717d16c2eb8af75c9d69506e7"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:220e0963b4fb507c525c8f58cde3da6b1be0bfddb7ffd6798fb8f2531226cdb1"}, + {file = "jiter-0.6.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aa25c7a9bf7875a141182b9c95aed487add635da01942ef7ca726e42a0c09058"}, + {file = "jiter-0.6.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e90552109ca8ccd07f47ca99c8a1509ced93920d271bb81780a973279974c5ab"}, + {file = "jiter-0.6.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:67723a011964971864e0b484b0ecfee6a14de1533cff7ffd71189e92103b38a8"}, + {file = "jiter-0.6.1-cp310-none-win32.whl", hash = "sha256:33af2b7d2bf310fdfec2da0177eab2fedab8679d1538d5b86a633ebfbbac4edd"}, + {file = "jiter-0.6.1-cp310-none-win_amd64.whl", hash = "sha256:7cea41c4c673353799906d940eee8f2d8fd1d9561d734aa921ae0f75cb9732f4"}, + {file = "jiter-0.6.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:b03c24e7da7e75b170c7b2b172d9c5e463aa4b5c95696a368d52c295b3f6847f"}, + {file = "jiter-0.6.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:47fee1be677b25d0ef79d687e238dc6ac91a8e553e1a68d0839f38c69e0ee491"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25f0d2f6e01a8a0fb0eab6d0e469058dab2be46ff3139ed2d1543475b5a1d8e7"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0b809e39e342c346df454b29bfcc7bca3d957f5d7b60e33dae42b0e5ec13e027"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e9ac7c2f092f231f5620bef23ce2e530bd218fc046098747cc390b21b8738a7a"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e51a2d80d5fe0ffb10ed2c82b6004458be4a3f2b9c7d09ed85baa2fbf033f54b"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3343d4706a2b7140e8bd49b6c8b0a82abf9194b3f0f5925a78fc69359f8fc33c"}, + {file = "jiter-0.6.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:82521000d18c71e41c96960cb36e915a357bc83d63a8bed63154b89d95d05ad1"}, + {file = "jiter-0.6.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:3c843e7c1633470708a3987e8ce617ee2979ee18542d6eb25ae92861af3f1d62"}, + {file = "jiter-0.6.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a2e861658c3fe849efc39b06ebb98d042e4a4c51a8d7d1c3ddc3b1ea091d0784"}, + {file = "jiter-0.6.1-cp311-none-win32.whl", hash = "sha256:7d72fc86474862c9c6d1f87b921b70c362f2b7e8b2e3c798bb7d58e419a6bc0f"}, + {file = "jiter-0.6.1-cp311-none-win_amd64.whl", hash = "sha256:3e36a320634f33a07794bb15b8da995dccb94f944d298c8cfe2bd99b1b8a574a"}, + {file = "jiter-0.6.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:1fad93654d5a7dcce0809aff66e883c98e2618b86656aeb2129db2cd6f26f867"}, + {file = "jiter-0.6.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4e6e340e8cd92edab7f6a3a904dbbc8137e7f4b347c49a27da9814015cc0420c"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:691352e5653af84ed71763c3c427cff05e4d658c508172e01e9c956dfe004aba"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:defee3949313c1f5b55e18be45089970cdb936eb2a0063f5020c4185db1b63c9"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:26d2bdd5da097e624081c6b5d416d3ee73e5b13f1703bcdadbb1881f0caa1933"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:18aa9d1626b61c0734b973ed7088f8a3d690d0b7f5384a5270cd04f4d9f26c86"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a3567c8228afa5ddcce950631c6b17397ed178003dc9ee7e567c4c4dcae9fa0"}, + {file = "jiter-0.6.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e5c0507131c922defe3f04c527d6838932fcdfd69facebafd7d3574fa3395314"}, + {file = "jiter-0.6.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:540fcb224d7dc1bcf82f90f2ffb652df96f2851c031adca3c8741cb91877143b"}, + {file = "jiter-0.6.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e7b75436d4fa2032b2530ad989e4cb0ca74c655975e3ff49f91a1a3d7f4e1df2"}, + {file = "jiter-0.6.1-cp312-none-win32.whl", hash = "sha256:883d2ced7c21bf06874fdeecab15014c1c6d82216765ca6deef08e335fa719e0"}, + {file = "jiter-0.6.1-cp312-none-win_amd64.whl", hash = "sha256:91e63273563401aadc6c52cca64a7921c50b29372441adc104127b910e98a5b6"}, + {file = "jiter-0.6.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:852508a54fe3228432e56019da8b69208ea622a3069458252f725d634e955b31"}, + {file = "jiter-0.6.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f491cc69ff44e5a1e8bc6bf2b94c1f98d179e1aaf4a554493c171a5b2316b701"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc56c8f0b2a28ad4d8047f3ae62d25d0e9ae01b99940ec0283263a04724de1f3"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:51b58f7a0d9e084a43b28b23da2b09fc5e8df6aa2b6a27de43f991293cab85fd"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5f79ce15099154c90ef900d69c6b4c686b64dfe23b0114e0971f2fecd306ec6c"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:03a025b52009f47e53ea619175d17e4ded7c035c6fbd44935cb3ada11e1fd592"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c74a8d93718137c021d9295248a87c2f9fdc0dcafead12d2930bc459ad40f885"}, + {file = "jiter-0.6.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:40b03b75f903975f68199fc4ec73d546150919cb7e534f3b51e727c4d6ccca5a"}, + {file = "jiter-0.6.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:825651a3f04cf92a661d22cad61fc913400e33aa89b3e3ad9a6aa9dc8a1f5a71"}, + {file = "jiter-0.6.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:928bf25eb69ddb292ab8177fe69d3fbf76c7feab5fce1c09265a7dccf25d3991"}, + {file = "jiter-0.6.1-cp313-none-win32.whl", hash = "sha256:352cd24121e80d3d053fab1cc9806258cad27c53cad99b7a3cac57cf934b12e4"}, + {file = "jiter-0.6.1-cp313-none-win_amd64.whl", hash = "sha256:be7503dd6f4bf02c2a9bacb5cc9335bc59132e7eee9d3e931b13d76fd80d7fda"}, + {file = "jiter-0.6.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:31d8e00e1fb4c277df8ab6f31a671f509ebc791a80e5c61fdc6bc8696aaa297c"}, + {file = "jiter-0.6.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:77c296d65003cd7ee5d7b0965f6acbe6cffaf9d1fa420ea751f60ef24e85fed5"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aeeb0c0325ef96c12a48ea7e23e2e86fe4838e6e0a995f464cf4c79fa791ceeb"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a31c6fcbe7d6c25d6f1cc6bb1cba576251d32795d09c09961174fe461a1fb5bd"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59e2b37f3b9401fc9e619f4d4badcab2e8643a721838bcf695c2318a0475ae42"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bae5ae4853cb9644144e9d0755854ce5108d470d31541d83f70ca7ecdc2d1637"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9df588e9c830b72d8db1dd7d0175af6706b0904f682ea9b1ca8b46028e54d6e9"}, + {file = "jiter-0.6.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:15f8395e835cf561c85c1adee72d899abf2733d9df72e9798e6d667c9b5c1f30"}, + {file = "jiter-0.6.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5a99d4e0b5fc3b05ea732d67eb2092fe894e95a90e6e413f2ea91387e228a307"}, + {file = "jiter-0.6.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a311df1fa6be0ccd64c12abcd85458383d96e542531bafbfc0a16ff6feda588f"}, + {file = "jiter-0.6.1-cp38-none-win32.whl", hash = "sha256:81116a6c272a11347b199f0e16b6bd63f4c9d9b52bc108991397dd80d3c78aba"}, + {file = "jiter-0.6.1-cp38-none-win_amd64.whl", hash = "sha256:13f9084e3e871a7c0b6e710db54444088b1dd9fbefa54d449b630d5e73bb95d0"}, + {file = "jiter-0.6.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:f1c53615fcfec3b11527c08d19cff6bc870da567ce4e57676c059a3102d3a082"}, + {file = "jiter-0.6.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f791b6a4da23238c17a81f44f5b55d08a420c5692c1fda84e301a4b036744eb1"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c97e90fec2da1d5f68ef121444c2c4fa72eabf3240829ad95cf6bbeca42a301"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3cbc1a66b4e41511209e97a2866898733c0110b7245791ac604117b7fb3fedb7"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4e85f9e12cd8418ab10e1fcf0e335ae5bb3da26c4d13a0fd9e6a17a674783b6"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08be33db6dcc374c9cc19d3633af5e47961a7b10d4c61710bd39e48d52a35824"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:677be9550004f5e010d673d3b2a2b815a8ea07a71484a57d3f85dde7f14cf132"}, + {file = "jiter-0.6.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e8bd065be46c2eecc328e419d6557bbc37844c88bb07b7a8d2d6c91c7c4dedc9"}, + {file = "jiter-0.6.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bd95375ce3609ec079a97c5d165afdd25693302c071ca60c7ae1cf826eb32022"}, + {file = "jiter-0.6.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:db459ed22d0208940d87f614e1f0ea5a946d29a3cfef71f7e1aab59b6c6b2afb"}, + {file = "jiter-0.6.1-cp39-none-win32.whl", hash = "sha256:d71c962f0971347bd552940ab96aa42ceefcd51b88c4ced8a27398182efa8d80"}, + {file = "jiter-0.6.1-cp39-none-win_amd64.whl", hash = "sha256:d465db62d2d10b489b7e7a33027c4ae3a64374425d757e963f86df5b5f2e7fc5"}, + {file = "jiter-0.6.1.tar.gz", hash = "sha256:e19cd21221fc139fb032e4112986656cb2739e9fe6d84c13956ab30ccc7d4449"}, ] [[package]] @@ -476,7 +493,7 @@ files = [ [[package]] name = "langchain-core" -version = "0.3.9" +version = "0.3.12" description = "Building applications with LLMs through composability" optional = false python-versions = ">=3.9,<4.0" @@ -492,7 +509,7 @@ pydantic = [ {version = ">=2.7.4,<3.0.0", markers = "python_full_version >= \"3.12.4\""}, ] PyYAML = ">=5.3" -tenacity = "^8.1.0,!=8.4.0" +tenacity = ">=8.1.0,!=8.4.0,<10.0.0" typing-extensions = ">=4.7" [package.source] @@ -520,13 +537,13 @@ url = "../../standard-tests" [[package]] name = "langsmith" -version = "0.1.131" +version = "0.1.136" description = "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform." optional = false python-versions = "<4.0,>=3.8.1" files = [ - {file = "langsmith-0.1.131-py3-none-any.whl", hash = "sha256:80c106b1c42307195cc0bb3a596472c41ef91b79d15bcee9938307800336c563"}, - {file = "langsmith-0.1.131.tar.gz", hash = "sha256:626101a3bf3ca481e5110d5155ace8aa066e4e9cc2fa7d96c8290ade0fbff797"}, + {file = "langsmith-0.1.136-py3-none-any.whl", hash = "sha256:cad2215eb7a754ee259878e19c558f4f8d3795aa1b699f087d4500e640f80d0a"}, + {file = "langsmith-0.1.136.tar.gz", hash = "sha256:5c0de01a313db70dd9a85845c0f416a69b5b653b3e98ba413d7d41e8851315b1"}, ] [package.dependencies] @@ -541,38 +558,43 @@ requests-toolbelt = ">=1.0.0,<2.0.0" [[package]] name = "mypy" -version = "1.11.2" +version = "1.12.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" files = [ - {file = "mypy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d42a6dd818ffce7be66cce644f1dff482f1d97c53ca70908dff0b9ddc120b77a"}, - {file = "mypy-1.11.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:801780c56d1cdb896eacd5619a83e427ce436d86a3bdf9112527f24a66618fef"}, - {file = "mypy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41ea707d036a5307ac674ea172875f40c9d55c5394f888b168033177fce47383"}, - {file = "mypy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6e658bd2d20565ea86da7d91331b0eed6d2eee22dc031579e6297f3e12c758c8"}, - {file = "mypy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:478db5f5036817fe45adb7332d927daa62417159d49783041338921dcf646fc7"}, - {file = "mypy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75746e06d5fa1e91bfd5432448d00d34593b52e7e91a187d981d08d1f33d4385"}, - {file = "mypy-1.11.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a976775ab2256aadc6add633d44f100a2517d2388906ec4f13231fafbb0eccca"}, - {file = "mypy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cd953f221ac1379050a8a646585a29574488974f79d8082cedef62744f0a0104"}, - {file = "mypy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:57555a7715c0a34421013144a33d280e73c08df70f3a18a552938587ce9274f4"}, - {file = "mypy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:36383a4fcbad95f2657642a07ba22ff797de26277158f1cc7bd234821468b1b6"}, - {file = "mypy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e8960dbbbf36906c5c0b7f4fbf2f0c7ffb20f4898e6a879fcf56a41a08b0d318"}, - {file = "mypy-1.11.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:06d26c277962f3fb50e13044674aa10553981ae514288cb7d0a738f495550b36"}, - {file = "mypy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6e7184632d89d677973a14d00ae4d03214c8bc301ceefcdaf5c474866814c987"}, - {file = "mypy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3a66169b92452f72117e2da3a576087025449018afc2d8e9bfe5ffab865709ca"}, - {file = "mypy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:969ea3ef09617aff826885a22ece0ddef69d95852cdad2f60c8bb06bf1f71f70"}, - {file = "mypy-1.11.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:37c7fa6121c1cdfcaac97ce3d3b5588e847aa79b580c1e922bb5d5d2902df19b"}, - {file = "mypy-1.11.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4a8a53bc3ffbd161b5b2a4fff2f0f1e23a33b0168f1c0778ec70e1a3d66deb86"}, - {file = "mypy-1.11.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ff93107f01968ed834f4256bc1fc4475e2fecf6c661260066a985b52741ddce"}, - {file = "mypy-1.11.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:edb91dded4df17eae4537668b23f0ff6baf3707683734b6a818d5b9d0c0c31a1"}, - {file = "mypy-1.11.2-cp38-cp38-win_amd64.whl", hash = "sha256:ee23de8530d99b6db0573c4ef4bd8f39a2a6f9b60655bf7a1357e585a3486f2b"}, - {file = "mypy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:801ca29f43d5acce85f8e999b1e431fb479cb02d0e11deb7d2abb56bdaf24fd6"}, - {file = "mypy-1.11.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:af8d155170fcf87a2afb55b35dc1a0ac21df4431e7d96717621962e4b9192e70"}, - {file = "mypy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f7821776e5c4286b6a13138cc935e2e9b6fde05e081bdebf5cdb2bb97c9df81d"}, - {file = "mypy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:539c570477a96a4e6fb718b8d5c3e0c0eba1f485df13f86d2970c91f0673148d"}, - {file = "mypy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:3f14cd3d386ac4d05c5a39a51b84387403dadbd936e17cb35882134d4f8f0d24"}, - {file = "mypy-1.11.2-py3-none-any.whl", hash = "sha256:b499bc07dbdcd3de92b0a8b29fdf592c111276f6a12fe29c30f6c417dd546d12"}, - {file = "mypy-1.11.2.tar.gz", hash = "sha256:7f9993ad3e0ffdc95c2a14b66dee63729f021968bff8ad911867579c65d13a79"}, + {file = "mypy-1.12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4397081e620dc4dc18e2f124d5e1d2c288194c2c08df6bdb1db31c38cd1fe1ed"}, + {file = "mypy-1.12.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:684a9c508a283f324804fea3f0effeb7858eb03f85c4402a967d187f64562469"}, + {file = "mypy-1.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6cabe4cda2fa5eca7ac94854c6c37039324baaa428ecbf4de4567279e9810f9e"}, + {file = "mypy-1.12.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:060a07b10e999ac9e7fa249ce2bdcfa9183ca2b70756f3bce9df7a92f78a3c0a"}, + {file = "mypy-1.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:0eff042d7257f39ba4ca06641d110ca7d2ad98c9c1fb52200fe6b1c865d360ff"}, + {file = "mypy-1.12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4b86de37a0da945f6d48cf110d5206c5ed514b1ca2614d7ad652d4bf099c7de7"}, + {file = "mypy-1.12.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:20c7c5ce0c1be0b0aea628374e6cf68b420bcc772d85c3c974f675b88e3e6e57"}, + {file = "mypy-1.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a64ee25f05fc2d3d8474985c58042b6759100a475f8237da1f4faf7fcd7e6309"}, + {file = "mypy-1.12.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:faca7ab947c9f457a08dcb8d9a8664fd438080e002b0fa3e41b0535335edcf7f"}, + {file = "mypy-1.12.0-cp311-cp311-win_amd64.whl", hash = "sha256:5bc81701d52cc8767005fdd2a08c19980de9ec61a25dbd2a937dfb1338a826f9"}, + {file = "mypy-1.12.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:8462655b6694feb1c99e433ea905d46c478041a8b8f0c33f1dab00ae881b2164"}, + {file = "mypy-1.12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:923ea66d282d8af9e0f9c21ffc6653643abb95b658c3a8a32dca1eff09c06475"}, + {file = "mypy-1.12.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1ebf9e796521f99d61864ed89d1fb2926d9ab6a5fab421e457cd9c7e4dd65aa9"}, + {file = "mypy-1.12.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e478601cc3e3fa9d6734d255a59c7a2e5c2934da4378f3dd1e3411ea8a248642"}, + {file = "mypy-1.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:c72861b7139a4f738344faa0e150834467521a3fba42dc98264e5aa9507dd601"}, + {file = "mypy-1.12.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:52b9e1492e47e1790360a43755fa04101a7ac72287b1a53ce817f35899ba0521"}, + {file = "mypy-1.12.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:48d3e37dd7d9403e38fa86c46191de72705166d40b8c9f91a3de77350daa0893"}, + {file = "mypy-1.12.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2f106db5ccb60681b622ac768455743ee0e6a857724d648c9629a9bd2ac3f721"}, + {file = "mypy-1.12.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:233e11b3f73ee1f10efada2e6da0f555b2f3a5316e9d8a4a1224acc10e7181d3"}, + {file = "mypy-1.12.0-cp313-cp313-win_amd64.whl", hash = "sha256:4ae8959c21abcf9d73aa6c74a313c45c0b5a188752bf37dace564e29f06e9c1b"}, + {file = "mypy-1.12.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eafc1b7319b40ddabdc3db8d7d48e76cfc65bbeeafaa525a4e0fa6b76175467f"}, + {file = "mypy-1.12.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9b9ce1ad8daeb049c0b55fdb753d7414260bad8952645367e70ac91aec90e07e"}, + {file = "mypy-1.12.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bfe012b50e1491d439172c43ccb50db66d23fab714d500b57ed52526a1020bb7"}, + {file = "mypy-1.12.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2c40658d4fa1ab27cb53d9e2f1066345596af2f8fe4827defc398a09c7c9519b"}, + {file = "mypy-1.12.0-cp38-cp38-win_amd64.whl", hash = "sha256:dee78a8b9746c30c1e617ccb1307b351ded57f0de0d287ca6276378d770006c0"}, + {file = "mypy-1.12.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6b5df6c8a8224f6b86746bda716bbe4dbe0ce89fd67b1fa4661e11bfe38e8ec8"}, + {file = "mypy-1.12.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5feee5c74eb9749e91b77f60b30771563327329e29218d95bedbe1257e2fe4b0"}, + {file = "mypy-1.12.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:77278e8c6ffe2abfba6db4125de55f1024de9a323be13d20e4f73b8ed3402bd1"}, + {file = "mypy-1.12.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:dcfb754dea911039ac12434d1950d69a2f05acd4d56f7935ed402be09fad145e"}, + {file = "mypy-1.12.0-cp39-cp39-win_amd64.whl", hash = "sha256:06de0498798527451ffb60f68db0d368bd2bae2bbfb5237eae616d4330cc87aa"}, + {file = "mypy-1.12.0-py3-none-any.whl", hash = "sha256:fd313226af375d52e1e36c383f39bf3836e1f192801116b31b090dfcd3ec5266"}, + {file = "mypy-1.12.0.tar.gz", hash = "sha256:65a22d87e757ccd95cbbf6f7e181e6caa87128255eb2b6be901bb71b26d8a99d"}, ] [package.dependencies] @@ -644,13 +666,13 @@ files = [ [[package]] name = "openai" -version = "1.51.0" +version = "1.52.0" description = "The official Python library for the openai API" optional = false python-versions = ">=3.7.1" files = [ - {file = "openai-1.51.0-py3-none-any.whl", hash = "sha256:d9affafb7e51e5a27dce78589d4964ce4d6f6d560307265933a94b2e3f3c5d2c"}, - {file = "openai-1.51.0.tar.gz", hash = "sha256:8dc4f9d75ccdd5466fc8c99a952186eddceb9fd6ba694044773f3736a847149d"}, + {file = "openai-1.52.0-py3-none-any.whl", hash = "sha256:0c249f20920183b0a2ca4f7dba7b0452df3ecd0fa7985eb1d91ad884bc3ced9c"}, + {file = "openai-1.52.0.tar.gz", hash = "sha256:95c65a5f77559641ab8f3e4c3a050804f7b51d278870e2ec1f7444080bfe565a"}, ] [package.dependencies] @@ -1054,6 +1076,20 @@ pytest = ">=6.2.5" [package.extras] dev = ["pre-commit", "pytest-asyncio", "tox"] +[[package]] +name = "pytest-socket" +version = "0.6.0" +description = "Pytest Plugin to disable socket calls during tests" +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "pytest_socket-0.6.0-py3-none-any.whl", hash = "sha256:cca72f134ff01e0023c402e78d31b32e68da3efdf3493bf7788f8eba86a6824c"}, + {file = "pytest_socket-0.6.0.tar.gz", hash = "sha256:363c1d67228315d4fc7912f1aabfd570de29d0e3db6217d61db5728adacd7138"}, +] + +[package.dependencies] +pytest = ">=3.6.3" + [[package]] name = "pytest-watcher" version = "0.3.5" @@ -1334,13 +1370,13 @@ files = [ [[package]] name = "syrupy" -version = "4.7.1" +version = "4.7.2" description = "Pytest Snapshot Test Utility" optional = false python-versions = ">=3.8.1" files = [ - {file = "syrupy-4.7.1-py3-none-any.whl", hash = "sha256:be002267a512a4bedddfae2e026c93df1ea928ae10baadc09640516923376d41"}, - {file = "syrupy-4.7.1.tar.gz", hash = "sha256:f9d4485f3f27d0e5df6ed299cac6fa32eb40a441915d988e82be5a4bdda335c8"}, + {file = "syrupy-4.7.2-py3-none-any.whl", hash = "sha256:eae7ba6be5aed190237caa93be288e97ca1eec5ca58760e4818972a10c4acc64"}, + {file = "syrupy-4.7.2.tar.gz", hash = "sha256:ea45e099f242de1bb53018c238f408a5bb6c82007bc687aefcbeaa0e1c2e935a"}, ] [package.dependencies] @@ -1348,13 +1384,13 @@ pytest = ">=7.0.0,<9.0.0" [[package]] name = "tenacity" -version = "8.5.0" +version = "9.0.0" description = "Retry code until it succeeds" optional = false python-versions = ">=3.8" files = [ - {file = "tenacity-8.5.0-py3-none-any.whl", hash = "sha256:b594c2a5945830c267ce6b79a166228323ed52718f30302c1359836112346687"}, - {file = "tenacity-8.5.0.tar.gz", hash = "sha256:8bc6c0c8a09b31e6cad13c47afbed1a567518250a9a171418582ed8d9c20ca78"}, + {file = "tenacity-9.0.0-py3-none-any.whl", hash = "sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539"}, + {file = "tenacity-9.0.0.tar.gz", hash = "sha256:807f37ca97d62aa361264d497b0e31e92b8027044942bfa756160d908320d73b"}, ] [package.extras] @@ -1523,4 +1559,4 @@ watchmedo = ["PyYAML (>=3.10)"] [metadata] lock-version = "2.0" python-versions = ">=3.9,<4.0" -content-hash = "fec30c155fdf4518310435f840b374ff86183936452fed3f59ad8ee0fcfefac5" +content-hash = "82984f2d0f65cf0d18789eda536b66448839e19edf0466583e06ca3f0c709159" diff --git a/libs/partners/openai/pyproject.toml b/libs/partners/openai/pyproject.toml index c33100e5ec..e5f2f3f9b7 100644 --- a/libs/partners/openai/pyproject.toml +++ b/libs/partners/openai/pyproject.toml @@ -24,7 +24,7 @@ ignore_missing_imports = true [tool.poetry.dependencies] python = ">=3.9,<4.0" langchain-core = "^0.3.9" -openai = "^1.40.0" +openai = "^1.52.0" tiktoken = ">=0.7,<1" [tool.ruff.lint] @@ -72,6 +72,7 @@ syrupy = "^4.0.2" pytest-watcher = "^0.3.4" pytest-asyncio = "^0.21.1" pytest-cov = "^4.1.0" +pytest-socket = "^0.6.0" [[tool.poetry.group.test.dependencies.numpy]] version = "^1" python = "<3.12" diff --git a/libs/partners/openai/tests/integration_tests/chat_models/audio_input.wav b/libs/partners/openai/tests/integration_tests/chat_models/audio_input.wav new file mode 100644 index 0000000000000000000000000000000000000000..2238bf1405695b9175ff0200fbc230fdd2fd1eb8 GIT binary patch literal 223278 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�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 z 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

>|i2{8L`q;>!b+fhZW^Y70j{#) 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 J|Kn=<{{XqC*jWGo literal 0 HcmV?d00001 diff --git a/libs/partners/openai/tests/integration_tests/chat_models/test_base.py b/libs/partners/openai/tests/integration_tests/chat_models/test_base.py index 950a52ce3e..ccce5722c3 100644 --- a/libs/partners/openai/tests/integration_tests/chat_models/test_base.py +++ b/libs/partners/openai/tests/integration_tests/chat_models/test_base.py @@ -2,6 +2,7 @@ import base64 import json +from pathlib import Path from typing import Any, AsyncIterator, List, Literal, Optional, cast import httpx @@ -949,3 +950,71 @@ async def test_json_mode_async() -> None: assert isinstance(full, AIMessageChunk) assert isinstance(full.content, str) assert json.loads(full.content) == {"a": 1} + + +def test_audio_output_modality() -> None: + llm = ChatOpenAI( + model="gpt-4o-audio-preview", + temperature=0, + model_kwargs={ + "modalities": ["text", "audio"], + "audio": {"voice": "alloy", "format": "wav"}, + }, + ) + + history: List[BaseMessage] = [ + HumanMessage("Make me a short audio clip of you yelling") + ] + + output = llm.invoke(history) + + assert isinstance(output, AIMessage) + assert "audio" in output.additional_kwargs + + history.append(output) + history.append(HumanMessage("Make me a short audio clip of you whispering")) + + output = llm.invoke(history) + + assert isinstance(output, AIMessage) + assert "audio" in output.additional_kwargs + + +def test_audio_input_modality() -> None: + llm = ChatOpenAI( + model="gpt-4o-audio-preview", + temperature=0, + model_kwargs={ + "modalities": ["text", "audio"], + "audio": {"voice": "alloy", "format": "wav"}, + }, + ) + filepath = Path(__file__).parent / "audio_input.wav" + + audio_data = filepath.read_bytes() + b64_audio_data = base64.b64encode(audio_data).decode("utf-8") + + history: list[BaseMessage] = [ + HumanMessage( + [ + {"type": "text", "text": "What is happening in this audio clip"}, + { + "type": "input_audio", + "input_audio": {"data": b64_audio_data, "format": "wav"}, + }, + ] + ) + ] + + output = llm.invoke(history) + + assert isinstance(output, AIMessage) + assert "audio" in output.additional_kwargs + + history.append(output) + history.append(HumanMessage("Why?")) + + output = llm.invoke(history) + + assert isinstance(output, AIMessage) + assert "audio" in output.additional_kwargs diff --git a/libs/partners/openai/tests/unit_tests/chat_models/test_base.py b/libs/partners/openai/tests/unit_tests/chat_models/test_base.py index c6065a137e..c6118a414a 100644 --- a/libs/partners/openai/tests/unit_tests/chat_models/test_base.py +++ b/libs/partners/openai/tests/unit_tests/chat_models/test_base.py @@ -162,7 +162,12 @@ def test__convert_dict_to_message_tool_call() -> None: name="GenerateUsername", args="oops", id="call_wm0JY6CdwOMZ4eTxHWUThDNz", - error="Function GenerateUsername arguments:\n\noops\n\nare not valid JSON. Received JSONDecodeError Expecting value: line 1 column 1 (char 0)", # noqa: E501 + error=( + "Function GenerateUsername arguments:\n\noops\n\nare not " + "valid JSON. Received JSONDecodeError Expecting value: line 1 " + "column 1 (char 0)\nFor troubleshooting, visit: https://python" + ".langchain.com/docs/troubleshooting/errors/OUTPUT_PARSING_FAILURE" + ), type="invalid_tool_call", ) ], diff --git a/libs/partners/openai/tests/unit_tests/llms/test_base.py b/libs/partners/openai/tests/unit_tests/llms/test_base.py index e9b43190cd..e6b281324f 100644 --- a/libs/partners/openai/tests/unit_tests/llms/test_base.py +++ b/libs/partners/openai/tests/unit_tests/llms/test_base.py @@ -58,7 +58,7 @@ def mock_completion() -> dict: } -@pytest.mark.parametrize("model", ["gpt-3.5-turbo-instruct", "text-davinci-003"]) +@pytest.mark.parametrize("model", ["gpt-3.5-turbo-instruct"]) def test_get_token_ids(model: str) -> None: OpenAI(model=model).get_token_ids("foo") return diff --git a/libs/partners/openai/tests/unit_tests/test_token_counts.py b/libs/partners/openai/tests/unit_tests/test_token_counts.py index 66abb3869a..6ffcda94c8 100644 --- a/libs/partners/openai/tests/unit_tests/test_token_counts.py +++ b/libs/partners/openai/tests/unit_tests/test_token_counts.py @@ -16,6 +16,7 @@ _MODELS = models = ["ada", "babbage", "curie", "davinci"] _CHAT_MODELS = ["gpt-4", "gpt-4-32k", "gpt-3.5-turbo"] +@pytest.mark.xfail(reason="Old models require different tiktoken cached file") @pytest.mark.parametrize("model", _MODELS) def test_openai_get_num_tokens(model: str) -> None: """Test get_tokens.""" From 2cf2cefe3909f55dfe1e9171bb15752f6a4ee2df Mon Sep 17 00:00:00 2001 From: Erick Friis Date: Fri, 18 Oct 2024 08:16:01 -0700 Subject: [PATCH 8/8] partners/openai: release 0.2.3 (#27457) --- libs/partners/openai/poetry.lock | 2 +- libs/partners/openai/pyproject.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/partners/openai/poetry.lock b/libs/partners/openai/poetry.lock index e253f4abf7..00d9445245 100644 --- a/libs/partners/openai/poetry.lock +++ b/libs/partners/openai/poetry.lock @@ -1559,4 +1559,4 @@ watchmedo = ["PyYAML (>=3.10)"] [metadata] lock-version = "2.0" python-versions = ">=3.9,<4.0" -content-hash = "82984f2d0f65cf0d18789eda536b66448839e19edf0466583e06ca3f0c709159" +content-hash = "8a60367ec11be17e65f368842c2da805aa6d450d4330b23eb6828964be2ad16c" diff --git a/libs/partners/openai/pyproject.toml b/libs/partners/openai/pyproject.toml index e5f2f3f9b7..b889892039 100644 --- a/libs/partners/openai/pyproject.toml +++ b/libs/partners/openai/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" [tool.poetry] name = "langchain-openai" -version = "0.2.2" +version = "0.2.3" description = "An integration package connecting OpenAI and LangChain" authors = [] readme = "README.md" @@ -23,7 +23,7 @@ ignore_missing_imports = true [tool.poetry.dependencies] python = ">=3.9,<4.0" -langchain-core = "^0.3.9" +langchain-core = "^0.3.12" openai = "^1.52.0" tiktoken = ">=0.7,<1"