From b480400386f8ff259168c028738eeb893417aa35 Mon Sep 17 00:00:00 2001 From: Stefan VanBuren Date: Wed, 8 Oct 2025 10:40:16 -0400 Subject: [PATCH 1/5] Drop Python 3.9 support --- .github/workflows/ci.yaml | 2 +- pyproject.toml | 3 +- uv.lock | 120 +------------------------------------- 3 files changed, 3 insertions(+), 122 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index e9eb3c8..8c6e7ae 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13"] resolution: ["highest", "lowest-direct"] env: # Shared env variables for all the tests diff --git a/pyproject.toml b/pyproject.toml index 659e03d..6092788 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,9 +9,8 @@ readme = "README.md" license = "Apache-2.0" license-files = ["LICENSE"] keywords = ["validate", "protobuf", "protocol buffer"] -requires-python = ">=3.9" +requires-python = ">=3.10" classifiers = [ - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", diff --git a/uv.lock b/uv.lock index aa29c24..ec805cd 100644 --- a/uv.lock +++ b/uv.lock @@ -1,6 +1,6 @@ version = 1 revision = 3 -requires-python = ">=3.9" +requires-python = ">=3.10" resolution-markers = [ "python_full_version == '3.13.*'", "python_full_version == '3.12.*'", @@ -63,12 +63,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/59/27/7adf3a1ea2e486b7651c0d61ea5ed0e9d7639f276e71b95f6f7041d88f57/google_re2-1.0-1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:caa3985049720bcdc00299cc01cfae14f7468360a830b4512bf8889507517fce", size = 538027, upload-time = "2022-10-24T16:31:48.176Z" }, { url = "https://files.pythonhosted.org/packages/fb/c5/15a8c2966da0bddd2741b134b8b7ad6574e28d773e20a68e7c3d7f242e78/google_re2-1.0-1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39243332e4819e4d08bf76264f9c2468893cc44060d4652999d70d8a54226da9", size = 511361, upload-time = "2022-10-24T16:31:49.327Z" }, { url = "https://files.pythonhosted.org/packages/d6/5f/438a87a23056d6dd4630808d9cf91b8d094c88114cc0f127144393486792/google_re2-1.0-1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cca03214c327506d433fafaf54781201b68e6346e891258b38946e22b7d40b56", size = 518474, upload-time = "2022-10-24T16:31:50.721Z" }, - { url = "https://files.pythonhosted.org/packages/bd/ab/5179b55da2720ee87d39b3040cca3a1f265c74369657865ea9a532e82d52/google_re2-1.0-1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:ac76e3b75af7b7a9389a2811ae605da6698403cd038a3de20aa2009978ff9b3a", size = 890663, upload-time = "2022-10-24T16:32:08.473Z" }, - { url = "https://files.pythonhosted.org/packages/ba/27/030077f9f1c3d594e35989e723e0741a9c6eecf6081b9d19dc0b7867a4d0/google_re2-1.0-1-cp39-cp39-macosx_12_0_universal2.whl", hash = "sha256:a1f2dd7adccf232790cc726ff4b6b5b0f7b4ab20e5f4655256856bdbb9094820", size = 883518, upload-time = "2022-10-24T16:32:10.238Z" }, - { url = "https://files.pythonhosted.org/packages/99/fe/513d8201bdd926ea5440fbbdf9f82b0157f06c287bbeab8aceccbe1bf5c4/google_re2-1.0-1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:604ed232fc73854b6e7cb42cb9bd72055513f8f26156ab0ee661025fc061c7c3", size = 528718, upload-time = "2022-10-24T16:32:11.444Z" }, - { url = "https://files.pythonhosted.org/packages/db/ca/d0603191ceb6c40e87505d5364223276858f41b48ab8ae7d1af366db7e8f/google_re2-1.0-1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:15de87bc7d9ca0e526db01ebc73062879a92071f97fb07d82ec5e499e34f92fa", size = 537981, upload-time = "2022-10-24T16:32:12.708Z" }, - { url = "https://files.pythonhosted.org/packages/31/8c/9252548dfb0bf71027efc2774dc71662475809de82d4f227114eaf80bc34/google_re2-1.0-1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6f2a0bc9b63bf102b62962381c16c7a9068be3664b208f08586efa25a961913d", size = 511590, upload-time = "2022-10-24T16:32:13.887Z" }, - { url = "https://files.pythonhosted.org/packages/6e/a0/bcd4866af1ffa6f9aaedd5af0f8ffda4d86735ff7e9cb940c252d8062680/google_re2-1.0-1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e921ad4ef30c27f78742936f350ebc6fa50e4505cfed98f5c1d99075497883f", size = 518269, upload-time = "2022-10-24T16:32:15.314Z" }, { url = "https://files.pythonhosted.org/packages/35/0d/7111d48d0f8bcdd94e20762c28a6b4645900adbd583e313b2cc9a6788e4b/google_re2-1.0-2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:38b25e85b9bc714045a967f11f9563ccf418d698ebff5bdf4c1c56443fb3b82a", size = 436885, upload-time = "2022-11-05T16:36:20.442Z" }, { url = "https://files.pythonhosted.org/packages/eb/85/8a21afb57f5383eac97c14dc294db6e18291346a3445d370b1ab87787bf5/google_re2-1.0-2-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:645f7df9dbb5d6204bb171b39c7e49d200de4cb3317c4c7dd0ebe677aaa758e3", size = 460394, upload-time = "2022-11-05T16:36:21.684Z" }, { url = "https://files.pythonhosted.org/packages/a6/42/cb927c864d1787791442255dcaa2866e28519ed94b9a7d348f4a048f07c7/google_re2-1.0-2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:2c4de981a3b57bb17267977ef4c33addf42d25ec6543b400a584fbf8e0a453f8", size = 435498, upload-time = "2022-11-05T16:36:22.675Z" }, @@ -87,15 +81,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/7c/94/1b667e6cc61f97b614582d5e33cd642974f0e69127bc37b75f1ace6040e4/google_re2-1.0-2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d597b188cd780010e737792c40145f99731a9b68cac2611c25ca1c8c9b7b7b3b", size = 511065, upload-time = "2022-11-05T16:36:37.406Z" }, { url = "https://files.pythonhosted.org/packages/69/ab/8888d1d711484e3a35993af7e1a8a599ee6ea358724511cc44e9c1cb9f34/google_re2-1.0-2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3618b009beb9eeb264c7b8f8855b5c6bdc811afd7eee53c00ee5d5c87d052309", size = 518339, upload-time = "2022-11-05T16:36:38.519Z" }, { url = "https://files.pythonhosted.org/packages/93/c2/ec2790c5e0cda542b54d8a6ca6a70f35f9978ce801a504743338e3286cf2/google_re2-1.0-2-cp311-cp311-win_amd64.whl", hash = "sha256:ebe6cd1dc3ed49aebe64925ec86eb45ebbf75b2bbfb78ef38b12c8e0c08217c9", size = 274507, upload-time = "2022-11-05T16:36:39.529Z" }, - { url = "https://files.pythonhosted.org/packages/70/49/30e54f8f9981cb4cc63d90f406d6705d58fbbb1258eeced20a9c0ada1dcd/google_re2-1.0-2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:61e9c8368036c0efc8d7996af9446e87c0e67e59fcebed08c6fd85be6844cd3e", size = 437113, upload-time = "2022-11-05T16:37:01.574Z" }, - { url = "https://files.pythonhosted.org/packages/71/d7/8ff44ea9907d5bd865340a42c8a8df41cc89a09b25661879f23ebbaee873/google_re2-1.0-2-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:f026c523ad182cc2eac5f56e617f331d805699add62fd48d7cd550e44f1f63de", size = 460668, upload-time = "2022-11-05T16:37:02.616Z" }, - { url = "https://files.pythonhosted.org/packages/08/55/aad2ed7541130f5cf8bb436828654bc66dd9b730eb6a5fdfd0fba658b04b/google_re2-1.0-2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:24ae8918826afeb9b59f31fedb38309ad3b87626a2e15c640c288732c9a891fe", size = 435708, upload-time = "2022-11-05T16:37:03.694Z" }, - { url = "https://files.pythonhosted.org/packages/f2/be/684a428495e782502d428c978f02eec5824d37e4efad9716ceb1c776c6f5/google_re2-1.0-2-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:b6f0c72e47d9e6e772f8a8d60fce55485702e8126b09c51235c4a8c449179b49", size = 455592, upload-time = "2022-11-05T16:37:04.769Z" }, - { url = "https://files.pythonhosted.org/packages/f2/30/afe7b1e1813c13b182df2486ccb2c4fc23379bbd0a3cb1ea1ad05a4cf40f/google_re2-1.0-2-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2cd5a5268f22ee5164042452199143ef53c602c0cf3d12f039cd91d7082fa252", size = 529002, upload-time = "2022-11-05T16:37:05.803Z" }, - { url = "https://files.pythonhosted.org/packages/d2/ed/ec4a95a6e9f093bccb42a0637e68409c6d0d7b0d5808ec39b4039d9a1de0/google_re2-1.0-2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3d9fa038be85dc181bec115490023fec072525e26a5093783e094b1ea141acab", size = 537981, upload-time = "2022-11-05T16:37:07.191Z" }, - { url = "https://files.pythonhosted.org/packages/7c/1d/4f4b940a3475a43447adc409d267f4294fee90387696dc5c36076691a688/google_re2-1.0-2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e4fee619aea3e24eeeccbaf1072d41d0e3c89a7048fb56c184e1e7d1637a11e9", size = 511650, upload-time = "2022-11-05T16:37:08.263Z" }, - { url = "https://files.pythonhosted.org/packages/1f/96/f8350b467422f37ae4ab5f7643d5957248d62a3f740d3f11ba2cea302845/google_re2-1.0-2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ae3951d28a61b3f94c51f205f4729f450636a9c856326c022e4f9577f0c3104a", size = 518309, upload-time = "2022-11-05T16:37:09.357Z" }, - { url = "https://files.pythonhosted.org/packages/e6/cb/afe7670b56fcd321868e1c13ab3b657b9d610b6e85e6f08205c73d0c06bc/google_re2-1.0-2-cp39-cp39-win_amd64.whl", hash = "sha256:e86b36ac6c9bbb450b2dbec9de987ad9498b1922eaf8e7341f51dba32a966a39", size = 274648, upload-time = "2022-11-05T16:37:10.43Z" }, ] [[package]] @@ -131,18 +116,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/6d/6c/8761a6d3eb016bda1a6aaf983cb8cd6879bae3ed91e4c40d8fd67df42f6c/google_re2-1.1-1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:35a902ba31a71a3e9e114e44473624d9aa9f9b85ec981bfa91671aefe0ef1a6c", size = 511982, upload-time = "2023-07-31T16:02:29.722Z" }, { url = "https://files.pythonhosted.org/packages/5e/62/251143bbeb8c82f2402cd8126fa91f30dfb564068b086b36ce3259385e5c/google_re2-1.1-1-cp311-cp311-win32.whl", hash = "sha256:9469f26b485da2784c658e687a766c72e1a17b1e63b3ed24b5f64c3d19fbae3d", size = 398468, upload-time = "2023-07-31T16:02:31.355Z" }, { url = "https://files.pythonhosted.org/packages/ed/da/315fa37099fa06e146a255da864b46ba8980100403b9eb443aaffe08ab59/google_re2-1.1-1-cp311-cp311-win_amd64.whl", hash = "sha256:07dd0780240ee431781119b46c3bbf76f5cef24a2cbb542f6a08c643e0a68d98", size = 476830, upload-time = "2023-07-31T16:02:32.781Z" }, - { url = "https://files.pythonhosted.org/packages/dd/ef/7984e948c5556cad9615d3adb7ebda58ff00a3aeceb1033ee81c0f2d5421/google_re2-1.1-1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:998f31bf7efbc9bb603d0c356c1c77e5331f689c71783df8e21e67bb025fc66a", size = 430379, upload-time = "2023-07-31T16:02:52.201Z" }, - { url = "https://files.pythonhosted.org/packages/47/24/316753fb2cb56c1063b779d8b5133b89cc450323eecb508144082491b36e/google_re2-1.1-1-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:0b5f0eaab859d3ba5f462c82bf37ab56e9d37e19b40b5898c731dbe4213a85f7", size = 455782, upload-time = "2023-07-31T16:02:53.414Z" }, - { url = "https://files.pythonhosted.org/packages/52/d1/60f4b2cdae5f174f37596f9b85c38b7fc03d00d82dd89bfe4798a40f41dd/google_re2-1.1-1-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:f6d591d9c4cbc7142b729ddcc3f654d059d8ebc3bc95891198808a4785a6b4d8", size = 424597, upload-time = "2023-07-31T16:02:54.59Z" }, - { url = "https://files.pythonhosted.org/packages/5e/c5/0eeec0e8573e61b19a1c0cb418836e157567fe5ebed2ac3c831738423be6/google_re2-1.1-1-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:3c325c2eae197b423330a04ab62e2e1cf942676cd5560907db4d63e23ce0648a", size = 451160, upload-time = "2023-07-31T16:02:55.931Z" }, - { url = "https://files.pythonhosted.org/packages/72/31/edbb3f09c218a339e34e4474e96cf4c6ef67874ca0d4cd77bd1f3162a57d/google_re2-1.1-1-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:1e019e8f57955806ee843254ce454249b58800a6e872b2c8e9df2ef3459de0d5", size = 424599, upload-time = "2023-07-31T16:02:56.989Z" }, - { url = "https://files.pythonhosted.org/packages/54/53/f05805c7500874d58c655dd3789db34c62686f2c8edc195de8479e290c67/google_re2-1.1-1-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:58ebbcc7ad2b639768a6bca586357291660ea40dfac83039208e5055c357513b", size = 451161, upload-time = "2023-07-31T16:02:58.206Z" }, - { url = "https://files.pythonhosted.org/packages/80/b1/a35271e8e5a79ac35a9a386627c53b40303d765bf7db8cfbe2c107d32fac/google_re2-1.1-1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:723f8553e7fc022294071f14fb7dfc7958c365dc7d4a71d4938ccd2df8c6eca4", size = 517202, upload-time = "2023-07-31T16:02:59.373Z" }, - { url = "https://files.pythonhosted.org/packages/8d/13/4d2c2f27bb290d02b9d4c31897cb66b7ffb36a1ca408db8b951c390572a6/google_re2-1.1-1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d81512b08e6787fc8ef29fea365d3fdbf957553a625550e1d96c36877ae30355", size = 519508, upload-time = "2023-07-31T16:03:01.839Z" }, - { url = "https://files.pythonhosted.org/packages/a5/ca/399167d0774393e3beca2333c128c3648374350340112dc1b9459eaab7a0/google_re2-1.1-1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c58601b155651cc572a23ee2860788c77581aad85d3567a55b89b0674702f34d", size = 503731, upload-time = "2023-07-31T16:03:03.705Z" }, - { url = "https://files.pythonhosted.org/packages/71/eb/2919b3eb097cb2d0242a39d57b90650116c313b0f1a422936ce727a2b816/google_re2-1.1-1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9c6c9f64b9724ec38da8e514f404ac64e9a6a5e8b1d7031c2dadd05c1f4c16fd", size = 510656, upload-time = "2023-07-31T16:03:04.984Z" }, - { url = "https://files.pythonhosted.org/packages/60/96/d63d02c7378ea3a987d922ac13b1dbaf374ca46ddcaf2bf4618348b99a5c/google_re2-1.1-1-cp39-cp39-win32.whl", hash = "sha256:d1b751b9ab9f8e2ab2a36d72b909281ce65f328c9115a1685acae1a2d1afd7a4", size = 397743, upload-time = "2023-07-31T16:03:06.277Z" }, - { url = "https://files.pythonhosted.org/packages/f0/a2/8d609be6c1ebfcbdd8b88dd5def859fc767a0f8ecfa04512eecdef030adc/google_re2-1.1-1-cp39-cp39-win_amd64.whl", hash = "sha256:ac775c75cec7069351d201da4e0fb0cae4c1c5ebecd08fa34e1be89740c1d80b", size = 475868, upload-time = "2023-07-31T16:03:07.411Z" }, { url = "https://files.pythonhosted.org/packages/8f/c3/3ce50c835422b37996fe9f814f856ed504a06ec17140a7a48f7ad2452cbb/google_re2-1.1-2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5eaefe4705b75ca5f78178a50104b689e9282f868e12f119b26b4cffc0c7ee6e", size = 431556, upload-time = "2023-08-31T18:02:56.285Z" }, { url = "https://files.pythonhosted.org/packages/23/ed/cf22b04eebd1788f365b0c172c0b0779e37226bfd0d49fc87168b88684ad/google_re2-1.1-2-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:e35f2c8aabfaaa4ce6420b3cae86c0c29042b1b4f9937254347e9b985694a171", size = 456443, upload-time = "2023-08-31T18:02:58.538Z" }, { url = "https://files.pythonhosted.org/packages/16/37/b92452db036f13a6999f406ad1a47fbf19a7fb2afed54bf9bb9caa3f62e8/google_re2-1.1-2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:35fd189cbaaaa39c9a6a8a00164c8d9c709bacd0c231c694936879609beff516", size = 425458, upload-time = "2023-08-31T18:03:00.031Z" }, @@ -167,18 +140,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ac/92/5336df50c62dd741ab7236a15613a3c236f2069b6602885c0682f8b455c5/google_re2-1.1-2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b632eff5e4cd44545a9c0e52f2e1becd55831e25f4dd4e0d7ec8ee6ca50858c1", size = 513192, upload-time = "2023-08-31T18:03:34.444Z" }, { url = "https://files.pythonhosted.org/packages/42/aa/a5e0e4acfe916662014a211a2e6222a1c5f46fb62900715b3c91c888d6d4/google_re2-1.1-2-cp311-cp311-win32.whl", hash = "sha256:a42c733036e8f242ee4e5f0e27153ad4ca44ced9e4ce82f3972938ddee528db0", size = 398547, upload-time = "2023-08-31T18:03:35.987Z" }, { url = "https://files.pythonhosted.org/packages/c1/0e/cb9a5f50dab02181e8749c1967951cef62860ba707cfcbdfcc5410c31b06/google_re2-1.1-2-cp311-cp311-win_amd64.whl", hash = "sha256:64f8eed4ca96905d99b5286b3d14b5ca4f6a025ff3c1351626a7df2f93ad1ddd", size = 477216, upload-time = "2023-08-31T18:03:37.592Z" }, - { url = "https://files.pythonhosted.org/packages/14/47/29e0b879defd389e2332802a685a1469d20f5260e357cacc063bd47cc56d/google_re2-1.1-2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:221e38c27e1dd9ccb8e911e9c7aed6439f68ce81e7bb74001076830b0d6e931d", size = 431717, upload-time = "2023-08-31T18:04:01.56Z" }, - { url = "https://files.pythonhosted.org/packages/a8/4b/8e91dd62906a6d383ba160ebb12bb7cedc753546a0c2932cfdeedab0dca8/google_re2-1.1-2-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:d9145879e6c2e1b814445300b31f88a675e1f06c57564670d95a1442e8370c27", size = 456538, upload-time = "2023-08-31T18:04:03.719Z" }, - { url = "https://files.pythonhosted.org/packages/bd/70/54d6603b62433d19f5ad5668ee2b41d5726f0d64fb70cc67d6db108fea41/google_re2-1.1-2-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:c8a12f0740e2a52826bdbf95569a4b0abdf413b4012fa71e94ad25dd4715c6e5", size = 425596, upload-time = "2023-08-31T18:04:05.203Z" }, - { url = "https://files.pythonhosted.org/packages/b3/b2/1c0044fa46ca2b367b351dbe479f43665eda572e4d28c0c7fb5c73999ef7/google_re2-1.1-2-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:9c9998f71466f4db7bda752aa7c348b2881ff688e361108fe500caad1d8b9cb2", size = 452153, upload-time = "2023-08-31T18:04:06.927Z" }, - { url = "https://files.pythonhosted.org/packages/0c/73/42279c9032705d28992262e3d96fe38d3c5f07f501c3a757554ca66731ea/google_re2-1.1-2-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:0c39f69b702005963a3d3bf78743e1733ad73efd7e6e8465d76e3009e4694ceb", size = 425597, upload-time = "2023-08-31T18:04:09.007Z" }, - { url = "https://files.pythonhosted.org/packages/b3/0a/7d4e8cacbaf4aae87d0054375dd419a45d7e3a1cd60d7452922c59dbbf39/google_re2-1.1-2-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:6d0ce762dee8d6617d0b1788a9653e805e83a23046c441d0ea65f1e27bf84114", size = 452151, upload-time = "2023-08-31T18:04:10.652Z" }, - { url = "https://files.pythonhosted.org/packages/29/cb/54f6160581f0cd4c686df7f70b69afc06c39f03ec7a036b11d35346ab633/google_re2-1.1-2-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ecf3619d98c9b4a7844ab52552ad32597cdbc9a5bdbc7e3435391c653600d1e2", size = 518073, upload-time = "2023-08-31T18:04:12.773Z" }, - { url = "https://files.pythonhosted.org/packages/27/0c/d7527a822d212faeff54729c58a5d2bc1c202537ea77e8d6d032d3d4ad03/google_re2-1.1-2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9a1426a8cbd1fa004974574708d496005bd379310c4b1c7012be4bc75efde7a8", size = 520465, upload-time = "2023-08-31T18:04:14.387Z" }, - { url = "https://files.pythonhosted.org/packages/23/d5/5de414b19d8a20f20106d493af34d99e11e7845bb9d718142373a332a9cc/google_re2-1.1-2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a1a30626ba48b4070f3eab272d860ef1952e710b088792c4d68dddb155be6bfc", size = 504640, upload-time = "2023-08-31T18:04:16.732Z" }, - { url = "https://files.pythonhosted.org/packages/2a/92/41d653778fa7130db028d522b21f77329d10f09abd67b876cdc4564d5e9a/google_re2-1.1-2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1b9c1ffcfbc3095b6ff601ec2d2bf662988f6ea6763bc1c9d52bec55881f8fde", size = 511729, upload-time = "2023-08-31T18:04:18.387Z" }, - { url = "https://files.pythonhosted.org/packages/07/0f/012080736166d5a4e4ebc821bc9f3577db4086a4f7aee34064d528911e1b/google_re2-1.1-2-cp39-cp39-win32.whl", hash = "sha256:32ecf995a252c0548404c1065ba4b36f1e524f1f4a86b6367a1a6c3da3801e30", size = 397872, upload-time = "2023-08-31T18:04:19.818Z" }, - { url = "https://files.pythonhosted.org/packages/82/91/998c76aa4716c1ceb93f314d1da8fd0f59721567c9b5f4027abc63915a1f/google_re2-1.1-2-cp39-cp39-win_amd64.whl", hash = "sha256:e7865410f3b112a3609739283ec3f4f6f25aae827ff59c6bfdf806fd394d753e", size = 476318, upload-time = "2023-08-31T18:04:21.332Z" }, { url = "https://files.pythonhosted.org/packages/3d/87/ec30599c310753b330a94567df0c6653d56167818019a9832ed46f48ee2f/google_re2-1.1-3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3b21f83f0a201009c56f06fcc7294a33555ede97130e8a91b3f4cae01aed1d73", size = 431216, upload-time = "2023-11-08T13:05:32.9Z" }, { url = "https://files.pythonhosted.org/packages/09/42/8acc0dead1b5ea64738785f4c76ce9cd2d1b7e05aee6a21dd448e76f9048/google_re2-1.1-3-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:b38194b91354a38db1f86f25d09cdc6ac85d63aee4c67b43da3048ce637adf45", size = 456258, upload-time = "2023-11-08T13:05:35.272Z" }, { url = "https://files.pythonhosted.org/packages/e5/f6/e48f0f3c57f4eefae2d51b14400220c8c7af8edf1543a793d2df682df2d9/google_re2-1.1-3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:e7da3da8d6b5a18d6c3b61b11cc5b66b8564eaedce99d2312b15b6487730fc76", size = 425231, upload-time = "2023-11-08T13:05:36.97Z" }, @@ -215,18 +176,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/83/62/bf58174317fdaaadabda0b2d70f7aa847b411d71e7e682dd29c5f83bcac8/google_re2-1.1-3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:59c5ad438eddb3630def394456091284d7bbc5b89351987f94f3792d296d1f96", size = 511019, upload-time = "2023-11-08T13:06:33.244Z" }, { url = "https://files.pythonhosted.org/packages/3c/e9/7cc855d7523e14da014d0e4a4e1657ef07c12cad605beb71a9f949154da6/google_re2-1.1-3-cp312-cp312-win32.whl", hash = "sha256:5b9878c53f2bf16f75bf71d4ddd57f6611351408d5821040e91c53ebdf82c373", size = 397875, upload-time = "2023-11-08T13:06:34.766Z" }, { url = "https://files.pythonhosted.org/packages/09/62/539183181bf34f6560ec71d7217f5de1b66137c1d1ca78b7bc4a3ce404c2/google_re2-1.1-3-cp312-cp312-win_amd64.whl", hash = "sha256:4fdecfeb213110d0a85bad335a8e7cdb59fea7de81a4fe659233f487171980f9", size = 476617, upload-time = "2023-11-08T13:06:36.228Z" }, - { url = "https://files.pythonhosted.org/packages/a1/8e/575e7d4dadc418604a09528d87dca59d203f08f6cc54fb31c613702803aa/google_re2-1.1-3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:43a0cd77c87c894f28969ac622f94b2e6d1571261dfdd785026848a25cfdc9b9", size = 431362, upload-time = "2023-11-08T13:07:00.657Z" }, - { url = "https://files.pythonhosted.org/packages/d6/ab/7444c826cafe6d545e1dd28e02c348452592c0683f43c93c0df53776562d/google_re2-1.1-3-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:1038990b77fd66f279bd66a0832b67435ea925e15bb59eafc7b60fdec812b616", size = 456355, upload-time = "2023-11-08T13:07:02.463Z" }, - { url = "https://files.pythonhosted.org/packages/a3/78/202311a0d8514b31d50dc877445010cf20543eac81b095865387e5f4734d/google_re2-1.1-3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:fb5dda6875d18dd45f0f24ebced6d1f7388867c8fb04a235d1deab7ea479ce38", size = 425380, upload-time = "2023-11-08T13:07:04.011Z" }, - { url = "https://files.pythonhosted.org/packages/77/83/bb7bf536fdcff59155e9955d343433c15110e1acd20b32c4ee30123899cc/google_re2-1.1-3-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:bb1d164965c6d57a351b421d2f77c051403766a8b75aaa602324ee2451fff77f", size = 451749, upload-time = "2023-11-08T13:07:05.747Z" }, - { url = "https://files.pythonhosted.org/packages/d4/13/9bf61677052fff7feb995410f91c8aae82b2ac293b7c85a33847f0eaec8f/google_re2-1.1-3-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:a072ebfa495051d07ffecbf6ce21eb84793568d5c3c678c00ed8ff6b8066ab31", size = 423338, upload-time = "2023-11-08T13:07:07.309Z" }, - { url = "https://files.pythonhosted.org/packages/c5/01/c1a244cc1c1354256378c3cbe5b2252947fbf1f2146beb47f1d8934a1d4f/google_re2-1.1-3-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:4eb66c8398c8a510adc97978d944b3b29c91181237218841ea1a91dc39ec0e54", size = 446863, upload-time = "2023-11-08T13:07:09.03Z" }, - { url = "https://files.pythonhosted.org/packages/6a/bf/25a6dc4e0c205faf950c2ba986a7f1501869cf72ab075eaaeb97b71e3d5a/google_re2-1.1-3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f7c8b57b1f559553248d1757b7fa5b2e0cc845666738d155dff1987c2618264e", size = 517659, upload-time = "2023-11-08T13:07:10.748Z" }, - { url = "https://files.pythonhosted.org/packages/fd/7d/08500d99a5e1eba026e7c9e48974edd88ce86c304e99a5937147154a166b/google_re2-1.1-3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9162f6aa4f25453c682eb176f21b8e2f40205be9f667e98a54b3e1ff10d6ee75", size = 520507, upload-time = "2023-11-08T13:07:12.749Z" }, - { url = "https://files.pythonhosted.org/packages/ff/fc/4bad149ed127b642c3b2aeb995c1f9931f817b73783a278b80a91281e53a/google_re2-1.1-3-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a2d65ddf67fd7bf94705626871d463057d3d9a3538d41022f95b9d8f01df36e1", size = 504043, upload-time = "2023-11-08T13:07:14.691Z" }, - { url = "https://files.pythonhosted.org/packages/e1/4c/646bb54a41dc2fca4272136b048d9e4c63662a0462a9f0e1ece6dd057c6e/google_re2-1.1-3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d140c7b9395b4d1e654127aa1c99bcc603ed01000b7bc7e28c52562f1894ec12", size = 511371, upload-time = "2023-11-08T13:07:16.18Z" }, - { url = "https://files.pythonhosted.org/packages/eb/e1/cfd834cb365b54422fc5a7ca9474e43bd8642af89fc79421569f5e3ddd63/google_re2-1.1-3-cp39-cp39-win32.whl", hash = "sha256:80c5fc200f64b2d903eeb07b8d6cefc620a872a0240c7caaa9aca05b20f5568f", size = 397780, upload-time = "2023-11-08T13:07:17.973Z" }, - { url = "https://files.pythonhosted.org/packages/84/ee/4596525d85086527bb873936cc9f6a0d0f11d84b6f0aa5421fc7759c75d5/google_re2-1.1-3-cp39-cp39-win_amd64.whl", hash = "sha256:9eb6dbcee9b5dc4069bbc0634f2eb039ca524a14bed5868fdf6560aaafcbca06", size = 476365, upload-time = "2023-11-08T13:07:19.682Z" }, { url = "https://files.pythonhosted.org/packages/a2/2d/80c310e1a7c59847469eddf4b5e3f61085ad21edbf22ab4774f4340251f0/google_re2-1.1-4-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:0db114d7e1aa96dbcea452a40136d7d747d60cbb61394965774688ef59cccd4e", size = 428925, upload-time = "2024-01-31T13:51:38.006Z" }, { url = "https://files.pythonhosted.org/packages/91/6a/5961395700fcde48410c556719ee2d89e839ba349ff3d6ce419f4a3ee856/google_re2-1.1-4-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:82133958e003a1344e5b7a791b9a9dd7560b5c8f96936dbe16f294604524a633", size = 454604, upload-time = "2024-01-31T13:51:41.953Z" }, { url = "https://files.pythonhosted.org/packages/87/38/3ead9f51a489a164dee9cc8cfa9f645d5569ddb817bf596fe7ae581c7bbd/google_re2-1.1-4-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:9e74fd441d1f3d917d3303e319f61b82cdbd96b9a5ba919377a6eef1504a1e2b", size = 426070, upload-time = "2024-01-31T13:51:44.381Z" }, @@ -257,16 +206,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c2/e2/327cad5587842dde3dd4fdeb5813f18823825d9e4a0bcbe185f74c8280aa/google_re2-1.1-4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7dacf730fd7d6ec71b11d6404b0b26e230814bfc8e9bb0d3f13bec9b5531f8d", size = 514439, upload-time = "2024-01-31T13:52:26.951Z" }, { url = "https://files.pythonhosted.org/packages/f2/6e/31e44fd8277bb32817a16e67c14b5f3d3108acc675b133938bfea5fda38b/google_re2-1.1-4-cp312-cp312-win32.whl", hash = "sha256:8c764f62f4b1d89d1ef264853b6dd9fee14a89e9b86a81bc2157fe3531425eb4", size = 400937, upload-time = "2024-01-31T13:52:28.922Z" }, { url = "https://files.pythonhosted.org/packages/66/50/bc1c2de07f9a88b454e5949a63829c34c235e2b130184c7fb2acde88aca7/google_re2-1.1-4-cp312-cp312-win_amd64.whl", hash = "sha256:0be2666df4bc5381a5d693585f9bbfefb0bfd3c07530d7e403f181f5de47254a", size = 478573, upload-time = "2024-01-31T13:52:30.422Z" }, - { url = "https://files.pythonhosted.org/packages/48/75/3fb8eef6445b8f36837e43dd2712b1753efe584383ecc69faf64b6b58583/google_re2-1.1-4-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:25cb17ae0993a48c70596f3a3ef5d659638106401cc8193f51c0d7961b3b3eb7", size = 429174, upload-time = "2024-01-31T13:52:50.011Z" }, - { url = "https://files.pythonhosted.org/packages/68/4a/34ec4358103e38fa229ea86d8560b3fd883c327e8c55c1e599f33c438488/google_re2-1.1-4-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:5f101f86d14ca94ca4dcf63cceaa73d351f2be2481fcaa29d9e68eeab0dc2a88", size = 454700, upload-time = "2024-01-31T13:52:51.43Z" }, - { url = "https://files.pythonhosted.org/packages/47/fc/fbb19fd7655d40b8e66291bee1e36a932a8dd7030be74d78e1930e965446/google_re2-1.1-4-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:4e82591e85bf262a6d74cff152867e05fc97867c68ba81d6836ff8b0e7e62365", size = 426172, upload-time = "2024-01-31T13:52:52.948Z" }, - { url = "https://files.pythonhosted.org/packages/0e/a7/02fed0f38a76ebd1f0b2bddc8c37ad772b9649541c96a986a307f0b15a7b/google_re2-1.1-4-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:1f61c09b93ffd34b1e2557e5a9565039f935407a5786dbad46f64f1a484166e6", size = 450133, upload-time = "2024-01-31T13:52:54.95Z" }, - { url = "https://files.pythonhosted.org/packages/04/a8/d9362fd26125943705a9f8614d3300acebe1c74b8815b521fb9b00c2fea4/google_re2-1.1-4-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:12b390ad8c7e74bab068732f774e75e0680dade6469b249a721f3432f90edfc3", size = 427171, upload-time = "2024-01-31T13:52:56.416Z" }, - { url = "https://files.pythonhosted.org/packages/a3/16/cfb0deb1fde2ab268788fb0dc80dcc3e36762c725bc34e8b6cc942a69789/google_re2-1.1-4-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:1284343eb31c2e82ed2d8159f33ba6842238a56782c881b07845a6d85613b055", size = 454684, upload-time = "2024-01-31T13:52:58.585Z" }, - { url = "https://files.pythonhosted.org/packages/a6/81/5d109e2cb127135088ab4a34a7803c4e1f0f8bbf9fd33231deeda3a4ac82/google_re2-1.1-4-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6c7b38e0daf2c06e4d3163f4c732ab3ad2521aecfed6605b69e4482c612da303", size = 508887, upload-time = "2024-01-31T13:53:01.233Z" }, - { url = "https://files.pythonhosted.org/packages/30/0a/a278479e43f626b994c0cfefa4af59f3d80edefb9ec807c3094c089a16ec/google_re2-1.1-4-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f4d4f0823e8b2f6952a145295b1ff25245ce9bb136aff6fe86452e507d4c1dd", size = 514822, upload-time = "2024-01-31T13:53:03.012Z" }, - { url = "https://files.pythonhosted.org/packages/61/0f/c3c14f1a349cc12b66290dce3380e5d7d3c26005a7076b5b058222c81f69/google_re2-1.1-4-cp39-cp39-win32.whl", hash = "sha256:1afae56b2a07bb48cfcfefaa15ed85bae26a68f5dc7f9e128e6e6ea36914e847", size = 401114, upload-time = "2024-01-31T13:53:04.984Z" }, - { url = "https://files.pythonhosted.org/packages/7c/39/0a6599c987109dcb17cd414513a5cf9fc9396b2faf9a9f479d999ad37c1a/google_re2-1.1-4-cp39-cp39-win_amd64.whl", hash = "sha256:aa7d6d05911ab9c8adbf3c225a7a120ab50fd2784ac48f2f0d140c0b7afc2b55", size = 478663, upload-time = "2024-01-31T13:53:06.465Z" }, { url = "https://files.pythonhosted.org/packages/da/4d/1ec30df3e3bf0b4ce4634cafa2b8571b1361ab18c8b1c3dda2900da20baf/google_re2-1.1-5-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:222fc2ee0e40522de0b21ad3bc90ab8983be3bf3cec3d349c80d76c8bb1a4beb", size = 428876, upload-time = "2024-02-29T13:33:53.651Z" }, { url = "https://files.pythonhosted.org/packages/e6/f2/d567a49a2fa8ec7acb116d0bde5dfccdde8cf4dc6bc669039705bc45e29a/google_re2-1.1-5-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:d4763b0b9195b72132a4e7de8e5a9bf1f05542f442a9115aa27cfc2a8004f581", size = 454537, upload-time = "2024-02-29T13:33:57.414Z" }, { url = "https://files.pythonhosted.org/packages/db/1e/ec6b6f7102751d319aa77d728d254b2d1f030bd39275c66c618482c6f9c1/google_re2-1.1-5-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:209649da10c9d4a93d8a4d100ecbf9cc3b0252169426bec3e8b4ad7e57d600cf", size = 426612, upload-time = "2024-02-29T13:33:59.641Z" }, @@ -297,16 +236,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/0a/5b/9f7d68dd4c6be5490fe1354e953926186f79bb222aa9cf947b5ffa2cb1b6/google_re2-1.1-5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9ebedd84ae8be10b7a71a16162376fd67a2386fe6361ef88c622dcf7fd679daf", size = 514616, upload-time = "2024-02-29T13:34:50.471Z" }, { url = "https://files.pythonhosted.org/packages/d4/a5/8f415cd51ad387012f66748954529a8b669bbc3d72a83b36785945c0837d/google_re2-1.1-5-cp312-cp312-win32.whl", hash = "sha256:c8e22d1692bc2c81173330c721aff53e47ffd3c4403ff0cd9d91adfd255dd150", size = 401695, upload-time = "2024-02-29T13:34:53.635Z" }, { url = "https://files.pythonhosted.org/packages/3b/ba/a99ee755b355b81d35ecc591701e8c1edc3867beda6958a019bb9e9dfc94/google_re2-1.1-5-cp312-cp312-win_amd64.whl", hash = "sha256:5197a6af438bb8c4abda0bbe9c4fbd6c27c159855b211098b29d51b73e4cbcf6", size = 478659, upload-time = "2024-02-29T13:34:55.502Z" }, - { url = "https://files.pythonhosted.org/packages/7a/0d/7ef107f67af7e1c1f7529746435c62dbccb22e2c42a422882020f3da409b/google_re2-1.1-5-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:eb5adf89060f81c5ff26c28e261e6b4997530a923a6093c9726b8dec02a9a326", size = 429094, upload-time = "2024-02-29T13:35:22.701Z" }, - { url = "https://files.pythonhosted.org/packages/76/d7/7646b09b34d8dc133bbd08667015d8d9c03b39bf8b861524627901d9e683/google_re2-1.1-5-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:a22630c9dd9ceb41ca4316bccba2643a8b1d5c198f21c00ed5b50a94313aaf10", size = 454668, upload-time = "2024-02-29T13:35:24.571Z" }, - { url = "https://files.pythonhosted.org/packages/35/87/9bfa86a674485cb39d406168823882020c164f1294a95bf56679b409b22b/google_re2-1.1-5-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:544dc17fcc2d43ec05f317366375796351dec44058e1164e03c3f7d050284d58", size = 426733, upload-time = "2024-02-29T13:35:26.603Z" }, - { url = "https://files.pythonhosted.org/packages/c9/35/6ce2cac6af930f219abc988dd72f1edd51ec96fcae49a4eb404170b39d2f/google_re2-1.1-5-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:19710af5ea88751c7768575b23765ce0dfef7324d2539de576f75cdc319d6654", size = 454208, upload-time = "2024-02-29T13:35:28.278Z" }, - { url = "https://files.pythonhosted.org/packages/40/98/1553be0e5b0e54640d2d5765e220f95444b7e86912f037028a520b30d462/google_re2-1.1-5-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:f82995a205e08ad896f4bd5ce4847c834fab877e1772a44e5f262a647d8a1dec", size = 426732, upload-time = "2024-02-29T13:35:30.975Z" }, - { url = "https://files.pythonhosted.org/packages/a3/73/44f6987ad2948bdbb90cb434a45ade660d307ddcd897b1502453f9aeb39b/google_re2-1.1-5-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:63533c4d58da9dc4bc040250f1f52b089911699f0368e0e6e15f996387a984ed", size = 454207, upload-time = "2024-02-29T13:35:33.269Z" }, - { url = "https://files.pythonhosted.org/packages/a3/66/108a6f47b7f1990f1e0c9673d9dd343f152b1f0bb3310e920748a1f6f4c2/google_re2-1.1-5-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:79e00fcf0cb04ea35a22b9014712d448725ce4ddc9f08cc818322566176ca4b0", size = 509206, upload-time = "2024-02-29T13:35:35.121Z" }, - { url = "https://files.pythonhosted.org/packages/d9/83/e15af5df9d77030634082c42fef95c6a76b4a4042595c9a546f4208b2706/google_re2-1.1-5-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bc41afcefee2da6c4ed883a93d7f527c4b960cd1d26bbb0020a7b8c2d341a60a", size = 514834, upload-time = "2024-02-29T13:35:36.893Z" }, - { url = "https://files.pythonhosted.org/packages/c8/14/a3bfb213d6c3ab8818d7cdf89ef54ffdfad4f70a89f85a174300ef636719/google_re2-1.1-5-cp39-cp39-win32.whl", hash = "sha256:486730b5e1f1c31b0abc6d80abe174ce4f1188fe17d1b50698f2bf79dc6e44be", size = 401930, upload-time = "2024-02-29T13:35:38.605Z" }, - { url = "https://files.pythonhosted.org/packages/5f/65/dc8695c2b13ae3572b6f73bba70e074339ab56ab9eaf91151e2511f2b390/google_re2-1.1-5-cp39-cp39-win_amd64.whl", hash = "sha256:4de637ca328f1d23209e80967d1b987d6b352cd01b3a52a84b4d742c69c3da6c", size = 478740, upload-time = "2024-02-29T13:35:40.259Z" }, { url = "https://files.pythonhosted.org/packages/b8/dc/0a6fa04810228c5f37db128f81f9c5b10e27c23ab912a05658896799a1d9/google_re2-1.1-6-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:621e9c199d1ff0fdb2a068ad450111a84b3bf14f96dfe5a8a7a0deae5f3f4cce", size = 431563, upload-time = "2024-03-31T13:45:09.244Z" }, { url = "https://files.pythonhosted.org/packages/c8/95/0b0fb9564a997ff97020694a2a69f7b5f2deaacd1180e4cfe80664407e89/google_re2-1.1-6-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:220acd31e7dde95373f97c3d1f3b3bd2532b38936af28b1917ee265d25bebbf4", size = 455844, upload-time = "2024-03-31T13:45:13.347Z" }, { url = "https://files.pythonhosted.org/packages/ff/65/8a7e35bc8d3a5e056e340e83ea8c6412889a59e5597fbd137e2d0de8572e/google_re2-1.1-6-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:db34e1098d164f76251a6ece30e8f0ddfd65bb658619f48613ce71acb3f9cbdb", size = 427957, upload-time = "2024-03-31T13:45:15.104Z" }, @@ -337,16 +266,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8d/bf/854bc3c5322a8477f7dfaa9b76cc92a4970920689967b5a09d54dd7575f8/google_re2-1.1-6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a64b3796a7a616c7861247bd061c9a836b5caf0d5963e5ea8022125601cf7b09", size = 516181, upload-time = "2024-03-31T13:46:09.48Z" }, { url = "https://files.pythonhosted.org/packages/c2/e8/829c65c9935afd3081c0feded606e0c140008980452e5a478415174ac668/google_re2-1.1-6-cp312-cp312-win32.whl", hash = "sha256:32783b9cb88469ba4cd9472d459fe4865280a6b1acdad4480a7b5081144c4eb7", size = 402486, upload-time = "2024-03-31T13:46:11.886Z" }, { url = "https://files.pythonhosted.org/packages/37/14/564a590e8ab8b37807b5fea6ecf9aed06feed14fb6b4e3062e397690b8c5/google_re2-1.1-6-cp312-cp312-win_amd64.whl", hash = "sha256:259ff3fd2d39035b9cbcbf375995f83fa5d9e6a0c5b94406ff1cc168ed41d6c6", size = 479550, upload-time = "2024-03-31T13:46:13.73Z" }, - { url = "https://files.pythonhosted.org/packages/9d/c0/b696caa96859b7a6c75e17420905dcc9b0a49c111a6c0522e7417622a6fa/google_re2-1.1-6-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:7783137cb2e04f458a530c6d0ee9ef114815c1d48b9102f023998c371a3b060e", size = 431935, upload-time = "2024-03-31T13:46:35.979Z" }, - { url = "https://files.pythonhosted.org/packages/33/c6/317d4c52f68b16433b7f6b118ca0a979635a6e902ca7a11eef1cb6ee9f26/google_re2-1.1-6-cp39-cp39-macosx_12_0_x86_64.whl", hash = "sha256:a49b7153935e7a303675f4deb5f5d02ab1305adefc436071348706d147c889e0", size = 455934, upload-time = "2024-03-31T13:46:37.897Z" }, - { url = "https://files.pythonhosted.org/packages/22/57/7faee9c29a8d5e6a765ed6aac13d0a707e72a935433b8bb206fb9a21433b/google_re2-1.1-6-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:a96a8bb309182090704593c60bdb369a2756b38fe358bbf0d40ddeb99c71769f", size = 428063, upload-time = "2024-03-31T13:46:39.792Z" }, - { url = "https://files.pythonhosted.org/packages/a0/9d/0ff65d288a6299172b8247c35cbe7f3c528a8c46aae2e4cce4743124973c/google_re2-1.1-6-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:dff3d4be9f27ef8ec3705eed54f19ef4ab096f5876c15fe011628c69ba3b561c", size = 455697, upload-time = "2024-03-31T13:46:41.672Z" }, - { url = "https://files.pythonhosted.org/packages/ac/f4/54d7501c14980e13528da8b2e69414539953b4894acedd31e74aa13c8ac1/google_re2-1.1-6-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:40f818b0b39e26811fa677978112a8108269977fdab2ba0453ac4363c35d9e66", size = 428060, upload-time = "2024-03-31T13:46:43.679Z" }, - { url = "https://files.pythonhosted.org/packages/c2/a7/1131e067f51dea9fa179e841cfef9249f40c2a299bc90f6d66d348cff31b/google_re2-1.1-6-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:8a7e53538cdb40ef4296017acfbb05cab0c19998be7552db1cfb85ba40b171b9", size = 455698, upload-time = "2024-03-31T13:46:45.694Z" }, - { url = "https://files.pythonhosted.org/packages/2b/b7/31f79a56ce83e9f56fdffcceecc219c8f2a321b7e2cdcb7d6bcd4de83d92/google_re2-1.1-6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6ee18e7569fb714e5bb8c42809bf8160738637a5e71ed5a4797757a1fb4dc4de", size = 511353, upload-time = "2024-03-31T13:46:47.746Z" }, - { url = "https://files.pythonhosted.org/packages/8b/3d/ba49b1ed0fdc6eab58c5fcc6991b7649c97c53252e309ab10e6803e365b3/google_re2-1.1-6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1cda4f6d1a7d5b43ea92bc395f23853fba0caf8b1e1efa6e8c48685f912fcb89", size = 516666, upload-time = "2024-03-31T13:46:49.578Z" }, - { url = "https://files.pythonhosted.org/packages/d3/13/bab7c5fe589b024cdc9fd080e4e69b255d5e17012072e20043a47fe5bc8d/google_re2-1.1-6-cp39-cp39-win32.whl", hash = "sha256:6a9cdbdc36a2bf24f897be6a6c85125876dc26fea9eb4247234aec0decbdccfd", size = 402656, upload-time = "2024-03-31T13:46:52.156Z" }, - { url = "https://files.pythonhosted.org/packages/e3/30/04d8017fd10ad5f19294c41027bb0a3b726699c3cdfffee3f72d5e468d38/google_re2-1.1-6-cp39-cp39-win_amd64.whl", hash = "sha256:73f646cecfad7cc5b4330b4192c25f2e29730a3b8408e089ffd2078094208196", size = 479600, upload-time = "2024-03-31T13:46:54.507Z" }, ] [[package]] @@ -398,16 +317,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/45/98/9a88c831f726ca9ed157c2934722111426f0578cb54d49467112d2c0afde/google_re2-1.1.20250722-1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:282346724a98c04543ca13e2210f06d7e613933fe1475c2e9b577c2133587861", size = 566806, upload-time = "2025-07-28T15:40:35.132Z" }, { url = "https://files.pythonhosted.org/packages/b9/43/77598154e34e6d992cb81d004510473265b440a1bc30148f7a79e5ae86a8/google_re2-1.1.20250722-1-cp313-cp313-win32.whl", hash = "sha256:3961c05530981daae19a7452724fe6de93448dbc7fdbafb36f017bd8d5b3a482", size = 429049, upload-time = "2025-07-28T15:40:36.342Z" }, { url = "https://files.pythonhosted.org/packages/37/6d/d2cfcdabad0207b0f9ff813214518a15f573426e064b90ddcb75d77e9f50/google_re2-1.1.20250722-1-cp313-cp313-win_amd64.whl", hash = "sha256:879f1439e514b461b525f971afb6bee9a37743267f52a6ac60e1bbc26827a45d", size = 486706, upload-time = "2025-07-28T15:40:37.544Z" }, - { url = "https://files.pythonhosted.org/packages/d0/3e/d0df4fe9d6acb89d6a67fbaa71eac04fe4081c443046b8affc3cac237d0d/google_re2-1.1.20250722-1-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:4ac3b83ca1c7d54fadefd094dbcbcda7e78e4eae52f402dec2abc11128a5d452", size = 459223, upload-time = "2025-07-28T15:40:38.925Z" }, - { url = "https://files.pythonhosted.org/packages/44/b7/e4dfa4b691e03ae5656a515e899a4d9c7782857e3290dd2cb7d890e20641/google_re2-1.1.20250722-1-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:7f424835dbb89aab4b3d5b5df9d9134800e21aa5732d1a80a01317fcc421f7d3", size = 487197, upload-time = "2025-07-28T15:40:40.182Z" }, - { url = "https://files.pythonhosted.org/packages/2b/24/2f90ba0a265d11aac36d0c2a166a944de4ecd93e8585c89c3679daaf379d/google_re2-1.1.20250722-1-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:552e0cd71f8902b8fb6ad72f8b63d77cb8caad6b65e25a836c9f676053b8a396", size = 460012, upload-time = "2025-07-28T15:40:41.411Z" }, - { url = "https://files.pythonhosted.org/packages/e3/05/5affc3617ed57eaba49cd8f314907341fc47db0e570d05349afcae5df46d/google_re2-1.1.20250722-1-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:9447d321a9697c3084f7bf8d468b9549e53eb0dc15bd1e578a252e440e32c2fd", size = 488040, upload-time = "2025-07-28T15:40:42.624Z" }, - { url = "https://files.pythonhosted.org/packages/dc/74/21d429e287a05d88ee94d37e11f31c0caea7bfdb049e57150cccbefdc13b/google_re2-1.1.20250722-1-cp39-cp39-macosx_15_0_arm64.whl", hash = "sha256:ead8a2557175fb1609e18445c819bb0f31813be08d1162cc61501d26fbbf3c15", size = 460945, upload-time = "2025-07-28T15:40:44.722Z" }, - { url = "https://files.pythonhosted.org/packages/4d/2d/d0ce2f0eebee76942be711d58b4dc54ed96bbd704decf091271e670288db/google_re2-1.1.20250722-1-cp39-cp39-macosx_15_0_x86_64.whl", hash = "sha256:fd71cb2a313bc8f218b71af44de569c062def6781290aeadfb0de75514ff63a3", size = 484530, upload-time = "2025-07-28T15:40:45.957Z" }, - { url = "https://files.pythonhosted.org/packages/1b/18/2982d60e0789b16555aee1a1734fd8e258e592978f51e3604881133e3977/google_re2-1.1.20250722-1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:94f3111ebd01c1d88746134a24b7e4370557548cdf232dcad6e362e3b7d45cac", size = 551843, upload-time = "2025-07-28T15:40:47.202Z" }, - { url = "https://files.pythonhosted.org/packages/da/fa/c2db7feb34e7a22399bceadcd92ac5d90a9d718db0753d02a0359c82e35c/google_re2-1.1.20250722-1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c074f1a59b587004f1c929fbc8c5441b1d1ebc5f8a3ff876db972d311f281cfd", size = 565706, upload-time = "2025-07-28T15:40:48.459Z" }, - { url = "https://files.pythonhosted.org/packages/e6/a2/daf610bcddecc0b16c58746d8c5873c4ab0aff7f4a6c632e4ac00869f137/google_re2-1.1.20250722-1-cp39-cp39-win32.whl", hash = "sha256:fd98a1ea4da9cb9245a3cccdf0a8169fbfa1d516ac1bcac87dc49914f57f6a61", size = 428492, upload-time = "2025-07-28T15:40:49.733Z" }, - { url = "https://files.pythonhosted.org/packages/33/0b/d1a79ef5e3c2d37feb7c371ea0df602441200bfcbde667cd18d3813a0389/google_re2-1.1.20250722-1-cp39-cp39-win_amd64.whl", hash = "sha256:8922de94320c698f831525ceadd2d8f24912c4b02621308984d3dd1fcb10f6a0", size = 485734, upload-time = "2025-07-28T15:40:50.897Z" }, { url = "https://files.pythonhosted.org/packages/5e/87/881a3249dd20c4852c4c5b9c457dd0f4f439e13f21f99c355faff5b4c0d9/google_re2-1.1.20250722-2-cp310-cp310-macosx_13_0_arm64.whl", hash = "sha256:78f5bdd587cf33a85914b6be383ff889d7b04abe2bf7c0d3ce3cd9ee97935954", size = 459207, upload-time = "2025-07-28T18:19:11.216Z" }, { url = "https://files.pythonhosted.org/packages/39/0c/1987a8d4d7081e920b3bdce0b6f67afac1d02ce85befb1329e57536503ec/google_re2-1.1.20250722-2-cp310-cp310-macosx_13_0_x86_64.whl", hash = "sha256:7fc37f5ccef0138b79eef36f06b9955d24e6e70855f1ec3cf9c202ca478284d2", size = 487142, upload-time = "2025-07-28T18:19:13.017Z" }, { url = "https://files.pythonhosted.org/packages/bc/03/f253fdeccf816aa0a0fbe029a123a6e9260bcf0ef30f1497656853cdddf6/google_re2-1.1.20250722-2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:138ecb65512edd788548b314b2192bd5bdf5d943d5aef1efc53afb507fc1980f", size = 459958, upload-time = "2025-07-28T18:19:16.695Z" }, @@ -451,16 +360,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/cc/ef/64a4ac3c206e419c0eb4ac91eee807097738ad7d59aff10f7e22d2da9abc/google_re2-1.1.20250722-2-cp313-cp313-win32.whl", hash = "sha256:a201a4ca5c96736ae276d4ba8284bcd80d1a091988ea2a9d44ef576ae5e925ab", size = 429049, upload-time = "2025-07-28T18:20:16.534Z" }, { url = "https://files.pythonhosted.org/packages/05/58/c8ec5a1c070922f0272ca3d7d44853eb5babc37668e25e4f45f0a0e1de1a/google_re2-1.1.20250722-2-cp313-cp313-win_amd64.whl", hash = "sha256:8575ed57522af14c00a6ce616459c934a553cdaa2f6d83312e2dbc2364bf1d03", size = 486707, upload-time = "2025-07-28T18:20:17.881Z" }, { url = "https://files.pythonhosted.org/packages/e7/5c/c11c47908dbf287e7d26313f7cb766c6f7150ae9844bd718f4a48a4bbdbd/google_re2-1.1.20250722-2-cp313-cp313-win_arm64.whl", hash = "sha256:3d9ec2052befcada22b0941cd5ac6ada18023353c1e146aa5c9c16a3189b3cbf", size = 642451, upload-time = "2025-07-28T18:20:19.605Z" }, - { url = "https://files.pythonhosted.org/packages/2c/da/3d4b0860efc0ade017c197fd69d47a9bad36039e2a6ee54fbba4875da4db/google_re2-1.1.20250722-2-cp39-cp39-macosx_13_0_arm64.whl", hash = "sha256:0cdc640d98a619937a970fae1115095da8cb5a02b6f763913b4d1df784bd5891", size = 459221, upload-time = "2025-07-28T18:20:21.034Z" }, - { url = "https://files.pythonhosted.org/packages/05/cc/630afe4c2641e69213f303ee715508c7d8e575c756f0214ed7a2e9fd3c29/google_re2-1.1.20250722-2-cp39-cp39-macosx_13_0_x86_64.whl", hash = "sha256:8c34d555f26e80a6aee40f9b3022c7080de2d1600af56a1ffac57db5907216b1", size = 487197, upload-time = "2025-07-28T18:20:22.549Z" }, - { url = "https://files.pythonhosted.org/packages/1e/ec/986e39a414b406da9c2c48517b03c1cab2d3888e51dc83cd1c4bc31eddaa/google_re2-1.1.20250722-2-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:78103346dcd05a91dd4ef85e70f5f01ba47c5b34699c5d4d7b4deec39d38fd6f", size = 460012, upload-time = "2025-07-28T18:20:23.956Z" }, - { url = "https://files.pythonhosted.org/packages/fe/02/bd3d4560632dbeec184fc196b5f2a16af7c76c883ea5f8f23d79215c2486/google_re2-1.1.20250722-2-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:a3b0b20c4241003fe94e1784a16e9f046d156a5f27049c89287718e0e844d128", size = 488040, upload-time = "2025-07-28T18:20:25.721Z" }, - { url = "https://files.pythonhosted.org/packages/a8/69/b0d940ca732dd2a09656af002bb7602eaef59bfd45d800e3ecce16595d79/google_re2-1.1.20250722-2-cp39-cp39-macosx_15_0_arm64.whl", hash = "sha256:ecdc0811be0a83ed180e22437d68d08192b65c7bc52988f43bd19e8560e9ebbe", size = 460944, upload-time = "2025-07-28T18:20:27.059Z" }, - { url = "https://files.pythonhosted.org/packages/b8/b5/cd81139f4bad6b91d2add966e5b0f348e25bebcc5bd4b5e09be855a1f244/google_re2-1.1.20250722-2-cp39-cp39-macosx_15_0_x86_64.whl", hash = "sha256:fd6e66ca19a09647887fb2127d6ac5dde33afc0a34c1ea989e86f5102b37d4eb", size = 484534, upload-time = "2025-07-28T18:20:28.521Z" }, - { url = "https://files.pythonhosted.org/packages/ff/50/3c2208c79fea92e9cb68b8a27ff866796b63ef31764904cd9191daa3ccec/google_re2-1.1.20250722-2-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f6fdde12541a5be971e4bb32ddeb69131a8998285713e1ee783bdd86e2a08b18", size = 551841, upload-time = "2025-07-28T18:20:29.896Z" }, - { url = "https://files.pythonhosted.org/packages/5e/2e/1babde5bd843c6c64d005926a7a30e90f81cc69e2865cd03b84c899edcad/google_re2-1.1.20250722-2-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c76f94685960801eac4ffd52e5d83c3f61cff7ba29c2d81dc7cb8126bafe5341", size = 565704, upload-time = "2025-07-28T18:20:31.358Z" }, - { url = "https://files.pythonhosted.org/packages/30/fd/4e01c8acd4c1799a35b144a96bbb23a3b52a096225507193708540e4e7dd/google_re2-1.1.20250722-2-cp39-cp39-win32.whl", hash = "sha256:2618f8dad592cf02efd6900fd6c539c3acc4ffbd0295d205a3297e8198c093e8", size = 428492, upload-time = "2025-07-28T18:20:32.778Z" }, - { url = "https://files.pythonhosted.org/packages/5e/4e/bb6856475c91961db9bed13982fd6ee6329206e08ba4718da5d7009cb9b6/google_re2-1.1.20250722-2-cp39-cp39-win_amd64.whl", hash = "sha256:dfc3cf4d7dc9445a54e7af88d5bd6e4d24269c83885a1d3325fd56567ce7e59d", size = 485737, upload-time = "2025-07-28T18:20:34.438Z" }, ] [[package]] @@ -546,12 +445,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ab/26/c13c130f35ca8caa5f2ceab68a247775648fdcd6c9a18f158825f2bc2410/mypy-1.17.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c49562d3d908fd49ed0938e5423daed8d407774a479b595b143a3d7f87cdae6a", size = 12710189, upload-time = "2025-07-31T07:54:01.962Z" }, { url = "https://files.pythonhosted.org/packages/82/df/c7d79d09f6de8383fe800521d066d877e54d30b4fb94281c262be2df84ef/mypy-1.17.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:397fba5d7616a5bc60b45c7ed204717eaddc38f826e3645402c426057ead9a91", size = 12900322, upload-time = "2025-07-31T07:53:10.551Z" }, { url = "https://files.pythonhosted.org/packages/b8/98/3d5a48978b4f708c55ae832619addc66d677f6dc59f3ebad71bae8285ca6/mypy-1.17.1-cp314-cp314-win_amd64.whl", hash = "sha256:9d6b20b97d373f41617bd0708fd46aa656059af57f2ef72aa8c7d6a2b73b74ed", size = 9751879, upload-time = "2025-07-31T07:52:56.683Z" }, - { url = "https://files.pythonhosted.org/packages/29/cb/673e3d34e5d8de60b3a61f44f80150a738bff568cd6b7efb55742a605e98/mypy-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5d1092694f166a7e56c805caaf794e0585cabdbf1df36911c414e4e9abb62ae9", size = 10992466, upload-time = "2025-07-31T07:53:57.574Z" }, - { url = "https://files.pythonhosted.org/packages/0c/d0/fe1895836eea3a33ab801561987a10569df92f2d3d4715abf2cfeaa29cb2/mypy-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:79d44f9bfb004941ebb0abe8eff6504223a9c1ac51ef967d1263c6572bbebc99", size = 10117638, upload-time = "2025-07-31T07:53:34.256Z" }, - { url = "https://files.pythonhosted.org/packages/97/f3/514aa5532303aafb95b9ca400a31054a2bd9489de166558c2baaeea9c522/mypy-1.17.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b01586eed696ec905e61bd2568f48740f7ac4a45b3a468e6423a03d3788a51a8", size = 11915673, upload-time = "2025-07-31T07:52:59.361Z" }, - { url = "https://files.pythonhosted.org/packages/ab/c3/c0805f0edec96fe8e2c048b03769a6291523d509be8ee7f56ae922fa3882/mypy-1.17.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:43808d9476c36b927fbcd0b0255ce75efe1b68a080154a38ae68a7e62de8f0f8", size = 12649022, upload-time = "2025-07-31T07:53:45.92Z" }, - { url = "https://files.pythonhosted.org/packages/45/3e/d646b5a298ada21a8512fa7e5531f664535a495efa672601702398cea2b4/mypy-1.17.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:feb8cc32d319edd5859da2cc084493b3e2ce5e49a946377663cc90f6c15fb259", size = 12895536, upload-time = "2025-07-31T07:53:06.17Z" }, - { url = "https://files.pythonhosted.org/packages/14/55/e13d0dcd276975927d1f4e9e2ec4fd409e199f01bdc671717e673cc63a22/mypy-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d7598cf74c3e16539d4e2f0b8d8c318e00041553d83d4861f87c7a72e95ac24d", size = 9512564, upload-time = "2025-07-31T07:53:12.346Z" }, { url = "https://files.pythonhosted.org/packages/1d/f3/8fcd2af0f5b806f6cf463efaffd3c9548a28f84220493ecd38d127b6b66d/mypy-1.17.1-py3-none-any.whl", hash = "sha256:a9f52c0351c21fe24c21d8c0eb1f62967b262d6729393397b6f443c3b773c3b9", size = 2283411, upload-time = "2025-07-31T07:53:24.664Z" }, ] @@ -602,8 +495,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/7d/98/282bfe05071c9e1e7e4af692bc937e12e7adacf3b297e0274579de01c9d7/protobuf-5.26.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:7e47c57303466c867374a17b2b5e99c5a7c8b72a94118e2f28efb599f19b4069", size = 404047, upload-time = "2024-03-13T18:39:01.022Z" }, { url = "https://files.pythonhosted.org/packages/69/fd/0afea50450851849d60b8133abc887ce40a71e6098c8ea5cf7bf05b28b20/protobuf-5.26.0-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:e184175276edc222e2d5e314a72521e10049938a9a4961fe4bea9b25d073c03f", size = 300881, upload-time = "2024-03-13T18:39:03.463Z" }, { url = "https://files.pythonhosted.org/packages/39/3f/16bdd9d43b024c1d178e817826e4e1ca8a25da3faff1e7566f341094143d/protobuf-5.26.0-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:6ee9d1aa02f951c5ce10bf8c6cfb7604133773038e33f913183c8b5201350600", size = 302825, upload-time = "2024-03-13T18:39:05.262Z" }, - { url = "https://files.pythonhosted.org/packages/db/4d/6b844b343dbd630f4090d0d415327eaa7d93a1a5ea646d228e0c784bbe59/protobuf-5.26.0-cp39-cp39-win32.whl", hash = "sha256:ca825f4eecb8c342d2ec581e6a5ad1ad1a47bededaecd768e0d3451ae4aaac2b", size = 400055, upload-time = "2024-03-13T18:39:12.58Z" }, - { url = "https://files.pythonhosted.org/packages/38/52/85a3af7d48e010aca1971cde510fb1e315bf23d0bce6c6cd7998a2f9841f/protobuf-5.26.0-cp39-cp39-win_amd64.whl", hash = "sha256:efd4f5894c50bd76cbcfdd668cd941021333861ed0f441c78a83d8254a01cc9f", size = 420997, upload-time = "2024-03-13T18:39:14.114Z" }, { url = "https://files.pythonhosted.org/packages/82/98/757626ed06e0d99c59428f5761c57c0e35bddb45041c0e222183492d6ddb/protobuf-5.26.0-py3-none-any.whl", hash = "sha256:a49b6c5359bf34fb7bf965bf21abfab4476e4527d822ab5289ee3bf73f291159", size = 161231, upload-time = "2024-03-13T18:39:16.014Z" }, ] @@ -726,15 +617,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", size = 751597, upload-time = "2024-08-06T20:32:56.985Z" }, { url = "https://files.pythonhosted.org/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", size = 140527, upload-time = "2024-08-06T20:33:03.001Z" }, { url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446, upload-time = "2024-08-06T20:33:04.33Z" }, - { url = "https://files.pythonhosted.org/packages/65/d8/b7a1db13636d7fb7d4ff431593c510c8b8fca920ade06ca8ef20015493c5/PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d", size = 184777, upload-time = "2024-08-06T20:33:25.896Z" }, - { url = "https://files.pythonhosted.org/packages/0a/02/6ec546cd45143fdf9840b2c6be8d875116a64076218b61d68e12548e5839/PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f", size = 172318, upload-time = "2024-08-06T20:33:27.212Z" }, - { url = "https://files.pythonhosted.org/packages/0e/9a/8cc68be846c972bda34f6c2a93abb644fb2476f4dcc924d52175786932c9/PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290", size = 720891, upload-time = "2024-08-06T20:33:28.974Z" }, - { url = "https://files.pythonhosted.org/packages/e9/6c/6e1b7f40181bc4805e2e07f4abc10a88ce4648e7e95ff1abe4ae4014a9b2/PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12", size = 722614, upload-time = "2024-08-06T20:33:34.157Z" }, - { url = "https://files.pythonhosted.org/packages/3d/32/e7bd8535d22ea2874cef6a81021ba019474ace0d13a4819c2a4bce79bd6a/PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19", size = 737360, upload-time = "2024-08-06T20:33:35.84Z" }, - { url = "https://files.pythonhosted.org/packages/d7/12/7322c1e30b9be969670b672573d45479edef72c9a0deac3bb2868f5d7469/PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e", size = 699006, upload-time = "2024-08-06T20:33:37.501Z" }, - { url = "https://files.pythonhosted.org/packages/82/72/04fcad41ca56491995076630c3ec1e834be241664c0c09a64c9a2589b507/PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725", size = 723577, upload-time = "2024-08-06T20:33:39.389Z" }, - { url = "https://files.pythonhosted.org/packages/ed/5e/46168b1f2757f1fcd442bc3029cd8767d88a98c9c05770d8b420948743bb/PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631", size = 144593, upload-time = "2024-08-06T20:33:46.63Z" }, - { url = "https://files.pythonhosted.org/packages/19/87/5124b1c1f2412bb95c59ec481eaf936cd32f0fe2a7b16b97b81c4c017a6a/PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8", size = 162312, upload-time = "2024-08-06T20:33:49.073Z" }, ] [[package]] From 7b3ef014e87741e7d55d92f3c7d40199cdf74b81 Mon Sep 17 00:00:00 2001 From: Stefan VanBuren Date: Wed, 8 Oct 2025 10:41:01 -0400 Subject: [PATCH 2/5] Run `pyupgrade` via: ```console uvx pyupgrade --py310-plus protovalidate/**.py test/**.py ``` --- protovalidate/internal/extra_func.py | 6 ++-- protovalidate/internal/rules.py | 42 ++++++++++++------------- protovalidate/internal/string_format.py | 2 +- test/conformance/runner.py | 4 +-- test/test_format.py | 4 +-- 5 files changed, 29 insertions(+), 29 deletions(-) diff --git a/protovalidate/internal/extra_func.py b/protovalidate/internal/extra_func.py index 7245dc6..240254b 100644 --- a/protovalidate/internal/extra_func.py +++ b/protovalidate/internal/extra_func.py @@ -42,7 +42,7 @@ def cel_get_field(message: celtypes.Value, field_name: celtypes.Value) -> celpy. return field_to_cel(message.msg, message.desc.fields_by_name[field_name]) -def cel_is_ip(val: celtypes.Value, ver: typing.Optional[celtypes.Value] = None) -> celpy.Result: +def cel_is_ip(val: celtypes.Value, ver: celtypes.Value | None = None) -> celpy.Result: """Return True if the string is an IPv4 or IPv6 address, optionally limited to a specific version. Version 0 or None means either 4 or 6. Passing a version other than 0, 4, or 6 always returns False. @@ -307,7 +307,7 @@ def cel_is_nan(val: celtypes.Value) -> celpy.Result: return celtypes.BoolType(math.isnan(val)) -def cel_is_inf(val: celtypes.Value, sign: typing.Optional[celtypes.Value] = None) -> celpy.Result: +def cel_is_inf(val: celtypes.Value, sign: celtypes.Value | None = None) -> celpy.Result: if not isinstance(val, celtypes.DoubleType): msg = "invalid argument, expected double" raise celpy.CELEvalError(msg) @@ -512,7 +512,7 @@ class Ipv6: _double_colon_at: int # Number of 16-bit pieces found when double colon was found. _double_colon_seen: bool _dotted_raw: str # Dotted notation for right-most 32 bits. - _dotted_addr: typing.Optional[Ipv4] # Dotted notation successfully parsed as Ipv4. + _dotted_addr: Ipv4 | None # Dotted notation successfully parsed as Ipv4. _zone_id_found: bool _prefix_len: int # 0 -128 diff --git a/protovalidate/internal/rules.py b/protovalidate/internal/rules.py index 6eb08bb..8dbe5a2 100644 --- a/protovalidate/internal/rules.py +++ b/protovalidate/internal/rules.py @@ -125,7 +125,7 @@ def _get_type_name(fd: typing.Any) -> str: return md["name"] -def _get_type_ctor(fd: typing.Any) -> typing.Optional[typing.Callable[..., celtypes.Value]]: +def _get_type_ctor(fd: typing.Any) -> typing.Callable[..., celtypes.Value] | None: md = _FIELD_DESC_METADATA_MAP.get(fd) if md is None: return None @@ -312,19 +312,19 @@ def validate(self, ctx: RuleContext, _: message.Message): class CelRunner: runner: celpy.Runner rule: validate_pb2.Rule - rule_value: typing.Optional[typing.Any] = None - rule_cel: typing.Optional[celtypes.Value] = None - rule_path: typing.Optional[validate_pb2.FieldPath] = None + rule_value: typing.Any | None = None + rule_cel: celtypes.Value | None = None + rule_path: validate_pb2.FieldPath | None = None class CelRules(Rules): """A rule that has rules written in CEL.""" _cel: list[CelRunner] - _rules: typing.Optional[message.Message] = None - _rules_cel: typing.Optional[celtypes.Value] = None + _rules: message.Message | None = None + _rules_cel: celtypes.Value | None = None - def __init__(self, rules: typing.Optional[message.Message]): + def __init__(self, rules: message.Message | None): self._cel = [] if rules is not None: self._rules = rules @@ -334,8 +334,8 @@ def _validate_cel( self, ctx: RuleContext, *, - this_value: typing.Optional[typing.Any] = None, - this_cel: typing.Optional[celtypes.Value] = None, + this_value: typing.Any | None = None, + this_cel: celtypes.Value | None = None, for_key: bool = False, ): activation: dict[str, celtypes.Value] = {} @@ -379,8 +379,8 @@ def add_rule( funcs: dict[str, celpy.CELFunction], rules: validate_pb2.Rule, *, - rule_field: typing.Optional[descriptor.FieldDescriptor] = None, - rule_path: typing.Optional[validate_pb2.FieldPath] = None, + rule_field: descriptor.FieldDescriptor | None = None, + rule_path: validate_pb2.FieldPath | None = None, ): ast = env.compile(rules.expression) prog = env.program(ast, functions=funcs) @@ -430,7 +430,7 @@ class MessageRules(CelRules): _oneofs: list[MessageOneofRule] - def __init__(self, rules: typing.Optional[message.Message], desc: descriptor.Descriptor): + def __init__(self, rules: message.Message | None, desc: descriptor.Descriptor): super().__init__(rules) self._oneofs = [] self._desc = desc @@ -467,7 +467,7 @@ def add_oneof( self._oneofs.append(MessageOneofRule(fields, required=rule.required)) -def check_field_type(field: descriptor.FieldDescriptor, expected: int, wrapper_name: typing.Optional[str] = None): +def check_field_type(field: descriptor.FieldDescriptor, expected: int, wrapper_name: str | None = None): if field.type != expected and ( field.type != descriptor.FieldDescriptor.TYPE_MESSAGE or field.message_type.full_name != wrapper_name ): @@ -713,7 +713,7 @@ def validate(self, ctx: RuleContext, message: message.Message): class RepeatedRules(FieldRules): """Rules for a repeated field.""" - _item_rules: typing.Optional[FieldRules] = None + _item_rules: FieldRules | None = None _items_rules_suffix: typing.ClassVar[list[validate_pb2.FieldPathElement]] = [ _field_to_element( @@ -730,7 +730,7 @@ def __init__( funcs: dict[str, celpy.CELFunction], field: descriptor.FieldDescriptor, field_level: validate_pb2.FieldRules, - item_rules: typing.Optional[FieldRules], + item_rules: FieldRules | None, ): super().__init__(env, funcs, field, field_level) if item_rules is not None: @@ -760,8 +760,8 @@ def validate(self, ctx: RuleContext, message: message.Message): class MapRules(FieldRules): """Rules for a map field.""" - _key_rules: typing.Optional[FieldRules] = None - _value_rules: typing.Optional[FieldRules] = None + _key_rules: FieldRules | None = None + _value_rules: FieldRules | None = None _key_rules_suffix: typing.ClassVar[list[validate_pb2.FieldPathElement]] = [ _field_to_element(validate_pb2.MapRules.DESCRIPTOR.fields_by_number[validate_pb2.MapRules.KEYS_FIELD_NUMBER]), @@ -783,8 +783,8 @@ def __init__( funcs: dict[str, celpy.CELFunction], field: descriptor.FieldDescriptor, field_level: validate_pb2.FieldRules, - key_rules: typing.Optional[FieldRules], - value_rules: typing.Optional[FieldRules], + key_rules: FieldRules | None, + value_rules: FieldRules | None, ): super().__init__(env, funcs, field, field_level) if key_rules is not None: @@ -850,7 +850,7 @@ class RuleFactory: _env: celpy.Environment _funcs: dict[str, celpy.CELFunction] - _cache: dict[descriptor.Descriptor, typing.Union[list[Rules], Exception]] + _cache: dict[descriptor.Descriptor, list[Rules] | Exception] def __init__(self, funcs: dict[str, celpy.CELFunction]): self._env = celpy.Environment(runner_class=InterpretedRunner) @@ -1022,7 +1022,7 @@ def _new_field_rule( def _new_rules(self, desc: descriptor.Descriptor) -> list[Rules]: result: list[Rules] = [] - rule: typing.Optional[Rules] = None + rule: Rules | None = None all_msg_oneof_fields = set() if desc.GetOptions().HasExtension(validate_pb2.message): # type: ignore message_level = desc.GetOptions().Extensions[validate_pb2.message] # type: ignore diff --git a/protovalidate/internal/string_format.py b/protovalidate/internal/string_format.py index 87e0f70..04ba6d0 100644 --- a/protovalidate/internal/string_format.py +++ b/protovalidate/internal/string_format.py @@ -88,7 +88,7 @@ def format(self, fmt: celtypes.Value, args: celtypes.Value) -> celpy.Result: return celtypes.StringType(result) - def __validate_number(self, arg: Union[celtypes.DoubleType, celtypes.IntType, celtypes.UintType]) -> Optional[str]: + def __validate_number(self, arg: celtypes.DoubleType | celtypes.IntType | celtypes.UintType) -> str | None: if math.isnan(arg): return "NaN" if math.isinf(arg): diff --git a/test/conformance/runner.py b/test/conformance/runner.py index 1185424..35d0b7f 100644 --- a/test/conformance/runner.py +++ b/test/conformance/runner.py @@ -54,7 +54,7 @@ from buf.validate.conformance.harness import harness_pb2 -def run_test_case(tc: typing.Any, result: typing.Optional[harness_pb2.TestResult] = None) -> harness_pb2.TestResult: +def run_test_case(tc: typing.Any, result: harness_pb2.TestResult | None = None) -> harness_pb2.TestResult: if result is None: result = harness_pb2.TestResult() # Run the validator @@ -76,7 +76,7 @@ def run_test_case(tc: typing.Any, result: typing.Optional[harness_pb2.TestResult def run_any_test_case( pool: descriptor_pool.DescriptorPool, tc: any_pb2.Any, - result: typing.Optional[harness_pb2.TestResult] = None, + result: harness_pb2.TestResult | None = None, ) -> harness_pb2.TestResult: type_name = tc.type_url.split("/")[-1] desc: descriptor.Descriptor = pool.FindMessageTypeByName(type_name) diff --git a/test/test_format.py b/test/test_format.py index 8673bba..bae2bef 100644 --- a/test/test_format.py +++ b/test/test_format.py @@ -62,7 +62,7 @@ def build_variables(bindings: MutableMapping[str, eval_pb2.ExprValue]) -> dict[A return binder -def get_expected_result(test: simple_pb2.SimpleTest) -> Optional[str]: +def get_expected_result(test: simple_pb2.SimpleTest) -> str | None: if test.HasField("value"): val = test.value if val.HasField("string_value"): @@ -70,7 +70,7 @@ def get_expected_result(test: simple_pb2.SimpleTest) -> Optional[str]: return None -def get_eval_error_message(test: simple_pb2.SimpleTest) -> Optional[str]: +def get_eval_error_message(test: simple_pb2.SimpleTest) -> str | None: if test.HasField("eval_error"): err_set = test.eval_error if len(err_set.errors) == 1: From 274cc4c67fe6c0b9e2894d5e1e7a344d944cf19a Mon Sep 17 00:00:00 2001 From: Stefan VanBuren Date: Wed, 8 Oct 2025 10:45:41 -0400 Subject: [PATCH 3/5] Run `make format` --- protovalidate/internal/extra_func.py | 1 - protovalidate/internal/string_format.py | 1 - test/test_format.py | 2 +- test/test_validate.py | 2 +- 4 files changed, 2 insertions(+), 4 deletions(-) diff --git a/protovalidate/internal/extra_func.py b/protovalidate/internal/extra_func.py index 240254b..8172aed 100644 --- a/protovalidate/internal/extra_func.py +++ b/protovalidate/internal/extra_func.py @@ -13,7 +13,6 @@ # limitations under the License. import math -import typing from urllib import parse as urlparse import celpy diff --git a/protovalidate/internal/string_format.py b/protovalidate/internal/string_format.py index 04ba6d0..1c30145 100644 --- a/protovalidate/internal/string_format.py +++ b/protovalidate/internal/string_format.py @@ -15,7 +15,6 @@ import math import re from decimal import Decimal -from typing import Optional, Union import celpy from celpy import celtypes diff --git a/test/test_format.py b/test/test_format.py index bae2bef..aa1bfe6 100644 --- a/test/test_format.py +++ b/test/test_format.py @@ -14,7 +14,7 @@ from collections.abc import Iterable, MutableMapping from itertools import chain -from typing import Any, Optional +from typing import Any import celpy import pytest diff --git a/test/test_validate.py b/test/test_validate.py index 6ffe9f4..22db437 100644 --- a/test/test_validate.py +++ b/test/test_validate.py @@ -238,7 +238,7 @@ def check_compilation_errors(validator: protovalidate.Validator, msg: message.Me def _compare_violations(actual: list[rules.Violation], expected: list[rules.Violation]): """Compares two lists of violations. The violations are expected to be in the expected order also.""" assert len(actual) == len(expected) - for a, e in zip(actual, expected): + for a, e in zip(actual, expected, strict=False): assert a.proto.message == e.proto.message assert a.proto.rule_id == e.proto.rule_id assert a.proto.for_key == e.proto.for_key From 7ac029a4c9a4dfe708b0350297cf85bf812d2bfe Mon Sep 17 00:00:00 2001 From: Stefan VanBuren Date: Wed, 8 Oct 2025 10:46:34 -0400 Subject: [PATCH 4/5] Flip to `zip(..., strict=True)` Even though this is asserted above, we ought to keep this check around. --- test/test_validate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_validate.py b/test/test_validate.py index 22db437..b669d2d 100644 --- a/test/test_validate.py +++ b/test/test_validate.py @@ -238,7 +238,7 @@ def check_compilation_errors(validator: protovalidate.Validator, msg: message.Me def _compare_violations(actual: list[rules.Violation], expected: list[rules.Violation]): """Compares two lists of violations. The violations are expected to be in the expected order also.""" assert len(actual) == len(expected) - for a, e in zip(actual, expected, strict=False): + for a, e in zip(actual, expected, strict=True): assert a.proto.message == e.proto.message assert a.proto.rule_id == e.proto.rule_id assert a.proto.for_key == e.proto.for_key From 1fda74d6a1e1aa2e9e581bcbb5735f179b493d78 Mon Sep 17 00:00:00 2001 From: Stefan VanBuren Date: Wed, 8 Oct 2025 10:47:32 -0400 Subject: [PATCH 5/5] Apply "unsafe" ruff fixes ```console $ uv run ruff check --fix --unsafe-fixes protovalidate/ test/ ``` --- protovalidate/internal/extra_func.py | 2 +- protovalidate/internal/string_format.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/protovalidate/internal/extra_func.py b/protovalidate/internal/extra_func.py index 8172aed..e06c696 100644 --- a/protovalidate/internal/extra_func.py +++ b/protovalidate/internal/extra_func.py @@ -325,7 +325,7 @@ def cel_is_inf(val: celtypes.Value, sign: celtypes.Value | None = None) -> celpy def cel_unique(val: celtypes.Value) -> celpy.Result: - if not isinstance(val, (celtypes.ListType, list)): + if not isinstance(val, celtypes.ListType | list): msg = "invalid argument, expected list" raise celpy.CELEvalError(msg) return celtypes.BoolType(len(val) == len(set(val))) diff --git a/protovalidate/internal/string_format.py b/protovalidate/internal/string_format.py index 1c30145..164168c 100644 --- a/protovalidate/internal/string_format.py +++ b/protovalidate/internal/string_format.py @@ -121,7 +121,7 @@ def __format_exponential(self, arg: celtypes.Value, precision: int) -> str: raise celpy.CELEvalError(msg) def __format_int(self, arg: celtypes.Value) -> str: - if isinstance(arg, (celtypes.IntType, celtypes.UintType, celtypes.DoubleType)): + if isinstance(arg, celtypes.IntType | celtypes.UintType | celtypes.DoubleType): result = self.__validate_number(arg) if result is not None: return result @@ -133,7 +133,7 @@ def __format_int(self, arg: celtypes.Value) -> str: raise celpy.CELEvalError(msg) def __format_hex(self, arg: celtypes.Value) -> str: - if isinstance(arg, (celtypes.IntType, celtypes.UintType)): + if isinstance(arg, celtypes.IntType | celtypes.UintType): return f"{arg:x}" if isinstance(arg, celtypes.BytesType): return arg.hex() @@ -146,7 +146,7 @@ def __format_hex(self, arg: celtypes.Value) -> str: raise celpy.CELEvalError(msg) def __format_oct(self, arg: celtypes.Value) -> str: - if isinstance(arg, (celtypes.IntType, celtypes.UintType)): + if isinstance(arg, celtypes.IntType | celtypes.UintType): return f"{arg:o}" msg = ( "error during formatting: octal clause can only be used on integers, was given " @@ -155,7 +155,7 @@ def __format_oct(self, arg: celtypes.Value) -> str: raise celpy.CELEvalError(msg) def __format_bin(self, arg: celtypes.Value) -> str: - if isinstance(arg, (celtypes.IntType, celtypes.UintType, celtypes.BoolType)): + if isinstance(arg, celtypes.IntType | celtypes.UintType | celtypes.BoolType): return f"{arg:b}" msg = ( "error during formatting: only integers and bools can be formatted as binary, was given "