From 40a55e34ffb81a3764b4bd0269ecb7b6e315415e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Nov 2024 09:39:37 +0000 Subject: [PATCH 1/9] Bump tree-sitter from 0.22.3 to 0.23.2 Bumps [tree-sitter](https://github.com/tree-sitter/py-tree-sitter) from 0.22.3 to 0.23.2. - [Release notes](https://github.com/tree-sitter/py-tree-sitter/releases) - [Commits](https://github.com/tree-sitter/py-tree-sitter/compare/v0.22.3...v0.23.2) --- updated-dependencies: - dependency-name: tree-sitter dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- poetry.lock | 78 +++++++++++++++++++++++++++++--------------------- pyproject.toml | 2 +- 2 files changed, 46 insertions(+), 34 deletions(-) diff --git a/poetry.lock b/poetry.lock index fca9d83..16c2858 100644 --- a/poetry.lock +++ b/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" @@ -1557,45 +1557,57 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0, [[package]] name = "tree-sitter" -version = "0.22.3" +version = "0.23.2" description = "Python bindings to the Tree-sitter parsing library" optional = false python-versions = ">=3.9" files = [ - {file = "tree-sitter-0.22.3.tar.gz", hash = "sha256:6516bcef5d36e0365670b97c91a169c8b1aa82ea4b60946b879020820718ce3d"}, - {file = "tree_sitter-0.22.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d9a26dd80cf10763527483b02ba35a0b8d9168f324dbbce3f07860256c29bf15"}, - {file = "tree_sitter-0.22.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4bcbe0a7358628629d9ec8e5687477e12f7c6aae6943b0872afb7170db039b86"}, - {file = "tree_sitter-0.22.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfa45e6bf2542862ce987482fe212ef3153bd331d5bba5873b9f485f8923f65a"}, - {file = "tree_sitter-0.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4545b142da82f9668007180e0081583054682d0154cd6349796ac77dc8520d63"}, - {file = "tree_sitter-0.22.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4978d22fe2868ab9a91125f49bd576ce5f954cc887c19471e0c33e104f37ba71"}, - {file = "tree_sitter-0.22.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0ec593a69f8c4f1c81494147814d11b7fc6c903e5299e084ae7b89caf95cef84"}, - {file = "tree_sitter-0.22.3-cp310-cp310-win_amd64.whl", hash = "sha256:0f66b88b8e9993630613d594e845f3cf2695fef87d0ca1475437cb17eeb72dc5"}, - {file = "tree_sitter-0.22.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e627eb129421f63378e936b5d0e13b8befa6e7c5267a8a7621a397a84e8f1f7"}, - {file = "tree_sitter-0.22.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3cfa2a9860bfb0404ae28a9cf056dab8f2eb7f1673d8cc9b3f7e21452daad0e0"}, - {file = "tree_sitter-0.22.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9a66cc5f19635119a9d8325bcb00a58ed48427e3c3d307caf7c00d745ac83a5"}, - {file = "tree_sitter-0.22.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de16468ea22c910e67caa91c99be9d6eb73e97e5164480a890f678b22d32faca"}, - {file = "tree_sitter-0.22.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:98c697427f82abab6b39cfe2ade6547d844dd419fa8cfc89031bcdf7c10579b6"}, - {file = "tree_sitter-0.22.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:548aa34f15a29aef1fc8e85507f13e0678a54f1de16461f844d86179b19bb5f6"}, - {file = "tree_sitter-0.22.3-cp311-cp311-win_amd64.whl", hash = "sha256:2fc0e1097fb86623b340141e80a0f2b7668b09d953501d91adc715a577e32c61"}, - {file = "tree_sitter-0.22.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7cb5c145fbd4bcc0cd4851dc4d0a6079a8e2f61257f8c0effc92434f6fb19b14"}, - {file = "tree_sitter-0.22.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d4a592080db6b9472a886f4593b4705d02630721fdbe4a700085fe775fcab20e"}, - {file = "tree_sitter-0.22.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f36bf523763f05edf924126583ea997f905162046c0f184d6fd040cc1ccbf2c5"}, - {file = "tree_sitter-0.22.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e1193f27c25aab299f4fc154664122c7bfe80633b726bb457356d371479a5b"}, - {file = "tree_sitter-0.22.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:156df7e71a6c6b542ff29526cad6886a41115e42dc768c55101398d68325db54"}, - {file = "tree_sitter-0.22.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:82e1d467ce23dd2ecc37d4fb83965e891fc37b943639c517cd5acf54a2df0ff7"}, - {file = "tree_sitter-0.22.3-cp312-cp312-win_amd64.whl", hash = "sha256:e541a0c08a04f229ba9479a8c441dd267fdaa3e5842ae70a744c178bcaf53fa3"}, - {file = "tree_sitter-0.22.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a85a1d0fdff21cc524a959b3277c311941a9b5b91a862e462c1b55470893884a"}, - {file = "tree_sitter-0.22.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f96c6acd2799bafa28543a267937eec6a3d9ccbdeb6e1d05858114d4cd882da9"}, - {file = "tree_sitter-0.22.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed2708aecd3a4c8d20a89350d3c89ac2f964985ee9117c39357cee3098a9498a"}, - {file = "tree_sitter-0.22.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b2f99535aa4195b20fef18559defaabd9e12fe8ed8806c101d51820f240ca64"}, - {file = "tree_sitter-0.22.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:459a0f3bf8d6dbb9e9f651d67cee3a60f0b799fefd4a33f49a7e9501ada98e35"}, - {file = "tree_sitter-0.22.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4a51bfe99dcd8bbfb0fe95113f0197e6e540db3077abce77a058235beec747a3"}, - {file = "tree_sitter-0.22.3-cp39-cp39-win_amd64.whl", hash = "sha256:8d54ef562492493bf091cb3fd605cb7e60bf1d56634a94ab48075741d823e3a5"}, + {file = "tree-sitter-0.23.2.tar.gz", hash = "sha256:66bae8dd47f1fed7bdef816115146d3a41c39b5c482d7bad36d9ba1def088450"}, + {file = "tree_sitter-0.23.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:3a937f5d8727bc1c74c4bf2a9d1c25ace049e8628273016ad0d45914ae904e10"}, + {file = "tree_sitter-0.23.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2c7eae7fe2af215645a38660d2d57d257a4c461fe3ec827cca99a79478284e80"}, + {file = "tree_sitter-0.23.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a71d607595270b6870eaf778a1032d146b2aa79bfcfa60f57a82a7b7584a4c7"}, + {file = "tree_sitter-0.23.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fe9b9ea7a0aa23b52fd97354da95d1b2580065bc12a4ac868f9164a127211d6"}, + {file = "tree_sitter-0.23.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d74d00a8021719eae14d10d1b1e28649e15d8b958c01c2b2c3dad7a2ebc4dbae"}, + {file = "tree_sitter-0.23.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:6de18d8d8a7f67ab71f472d1fcb01cc506e080cbb5e13d52929e4b6fdce6bbee"}, + {file = "tree_sitter-0.23.2-cp310-cp310-win_amd64.whl", hash = "sha256:12b60dca70d2282af942b650a6d781be487485454668c7c956338a367b98cdee"}, + {file = "tree_sitter-0.23.2-cp310-cp310-win_arm64.whl", hash = "sha256:3346a4dd0447a42aabb863443b0fd8c92b909baf40ed2344fae4b94b625d5955"}, + {file = "tree_sitter-0.23.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:91fda41d4f8824335cc43c64e2c37d8089c8c563bd3900a512d2852d075af719"}, + {file = "tree_sitter-0.23.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:92b2b489d5ce54b41f94c6f23fbaf592bd6e84dc2877048fd1cb060480fa53f7"}, + {file = "tree_sitter-0.23.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:64859bd4aa1567d0d6016a811b2b49c59d4a4427d096e3d8c84b2521455f62b7"}, + {file = "tree_sitter-0.23.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:614590611636044e071d3a0b748046d52676dbda3bc9fa431216231e11dd98f7"}, + {file = "tree_sitter-0.23.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:08466953c78ae57be61057188fb88c89791b0a562856010228e0ccf60e2ac453"}, + {file = "tree_sitter-0.23.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:8a33f03a562de91f7fd05eefcedd8994a06cd44c62f7aabace811ad82bc11cbd"}, + {file = "tree_sitter-0.23.2-cp311-cp311-win_amd64.whl", hash = "sha256:03b70296b569ef64f7b92b42ca5da9bf86d81bee2afd480bea35092687f51dae"}, + {file = "tree_sitter-0.23.2-cp311-cp311-win_arm64.whl", hash = "sha256:7cb4bb953ea7c0b50eeafc4454783e030357179d2a93c3dd5ebed2da5588ddd0"}, + {file = "tree_sitter-0.23.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a014498b6a9e6003fae8c6eb72f5927d62da9dcb72b28b3ce8cd15c6ff6a6572"}, + {file = "tree_sitter-0.23.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:04f8699b131d4bcbe3805c37e4ef3d159ee9a82a0e700587625623999ba0ea53"}, + {file = "tree_sitter-0.23.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4471577df285059c71686ecb208bc50fb472099b38dcc8e849b0e86652891e87"}, + {file = "tree_sitter-0.23.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f342c925290dd4e20ecd5787ef7ae8749981597ab364783a1eb73173efe65226"}, + {file = "tree_sitter-0.23.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a4e9e53d07dd076bede72e4f7d3a0173d7b9ad6576572dd86da008a740a9bb22"}, + {file = "tree_sitter-0.23.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8caebe65bc358759dac2500d8f8feed3aed939c4ade9a684a1783fe07bc7d5db"}, + {file = "tree_sitter-0.23.2-cp312-cp312-win_amd64.whl", hash = "sha256:fc5a72eb50d43485000dbbb309acb350467b7467e66dc747c6bb82ce63041582"}, + {file = "tree_sitter-0.23.2-cp312-cp312-win_arm64.whl", hash = "sha256:a0320eb6c7993359c5f7b371d22719ccd273f440d41cf1bd65dac5e9587f2046"}, + {file = "tree_sitter-0.23.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:eff630dddee7ba05accb439b17e559e15ce13f057297007c246237ceb6306332"}, + {file = "tree_sitter-0.23.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4780ba8f3894f2dea869fad2995c2aceab3fd5ab9e6a27c45475d2acd7f7e84e"}, + {file = "tree_sitter-0.23.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0b609460b8e3e256361fb12e94fae5b728cb835b16f0f9d590b5aadbf9d109b"}, + {file = "tree_sitter-0.23.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78d070d8eaeaeb36cf535f55e5578fddbfc3bf53c1980f58bf1a99d57466b3b5"}, + {file = "tree_sitter-0.23.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:878580b2ad5054c410ba3418edca4d34c81cc26706114d8f5b5541688bc2d785"}, + {file = "tree_sitter-0.23.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:29224bdc2a3b9af535b7725e249d3ee291b2e90708e82832e73acc175e40dc48"}, + {file = "tree_sitter-0.23.2-cp313-cp313-win_amd64.whl", hash = "sha256:c58d89348162fbc3aea1fe6511a66ee189fc0e4e4bbe937026f29e4ecef17763"}, + {file = "tree_sitter-0.23.2-cp313-cp313-win_arm64.whl", hash = "sha256:0ff2037be5edab7801de3f6a721b9cf010853f612e2008ee454e0e0badb225a6"}, + {file = "tree_sitter-0.23.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a5db8e585205faef8bf219da77d8993e2ef04d08eda2e3c8ad7e4df8297ee344"}, + {file = "tree_sitter-0.23.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9dbd110a30cf28be5da734ae4cd0e9031768228dbf6a79f2973962aa51de4ec7"}, + {file = "tree_sitter-0.23.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569514b9a996a0fd458b3a891c46ca125298be0c03cf82f2b6f0c13d5d8f25dc"}, + {file = "tree_sitter-0.23.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a357ed98a74e47787b812df99a74a2c35c0fe11e55c2095cc01d1cad144ef552"}, + {file = "tree_sitter-0.23.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:c2dfb8e8f760f4cc67888d03ef9e2dbd3353245f67f5efba375c2a14d944ac0e"}, + {file = "tree_sitter-0.23.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:3ead958df87a21d706903987e665e9e0e5df7b2c5021ff69ea349826840adc6a"}, + {file = "tree_sitter-0.23.2-cp39-cp39-win_amd64.whl", hash = "sha256:611cae16be332213c0e6ece72c0bfca202e30ff320a8b309b1526c6cb79ee4ba"}, + {file = "tree_sitter-0.23.2-cp39-cp39-win_arm64.whl", hash = "sha256:b848e0fdd522fbb8888cdb4f4d93f8fad97ae10d70c122fb922e51363c7febcd"}, ] [package.extras] docs = ["sphinx (>=7.3,<8.0)", "sphinx-book-theme"] -tests = ["tree-sitter-html", "tree-sitter-javascript", "tree-sitter-json", "tree-sitter-python", "tree-sitter-rust"] +tests = ["tree-sitter-html (>=0.23.0)", "tree-sitter-javascript (>=0.23.0)", "tree-sitter-json (>=0.23.0)", "tree-sitter-python (>=0.23.0)", "tree-sitter-rust (>=0.23.0)"] [[package]] name = "tree-sitter-c" @@ -1711,4 +1723,4 @@ type = ["pytest-mypy"] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "a874e0f040fd276625809a019ff9871a0676ae46383472ca78886a77cdb36870" +content-hash = "007fcd4327214f0432b47b2d6874fd0b1d14cc028f146e4b9d72e9a7eeffa395" diff --git a/pyproject.toml b/pyproject.toml index 3a9dd01..d3c1658 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ readme = "README.md" [tool.poetry.dependencies] python = "^3.9" graphrag-sdk = { version = "^0.3.0", extras = ["openai"] } -tree-sitter = "^0.22.3" +tree-sitter = "^0.23.2" validators = "^0.34.0" falkordb = "^1.0.5" tree-sitter-c = "^0.21.4" From 5d95e3bd99c8b3da4804e09948e671ab9b1f97b9 Mon Sep 17 00:00:00 2001 From: Guy Korland Date: Wed, 20 Nov 2024 17:19:21 +0200 Subject: [PATCH 2/9] remove .env file and rename projecty in pyproject --- .env | 3 --- pyproject.toml | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) delete mode 100644 .env diff --git a/.env b/.env deleted file mode 100644 index 0ae2de1..0000000 --- a/.env +++ /dev/null @@ -1,3 +0,0 @@ -FALKORDB_HOST=localhost -FALKORDB_PORT=6379 - diff --git a/pyproject.toml b/pyproject.toml index 3a9dd01..298d0c4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [tool.poetry] -name = "code_graph" +name = "code-graph-backend" version = "0.1.0" description = "code_graph is designed to help developers visualize and analyze the structure of their source code. It takes source code as input and generates a graph representation, making it easier to understand relationships and dependencies within the codebase." authors = ["Roi Lipman "] From 545900031e84c6b12b0515018ce76f4bb16b6d5e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Nov 2024 15:24:51 +0000 Subject: [PATCH 3/9] Bump graphrag-sdk from 0.3.0 to 0.3.1 Bumps [graphrag-sdk](https://github.com/FalkorDB/GraphRAG-SDK) from 0.3.0 to 0.3.1. - [Release notes](https://github.com/FalkorDB/GraphRAG-SDK/releases) - [Commits](https://github.com/FalkorDB/GraphRAG-SDK/compare/v0.3.0...v0.3.1) --- updated-dependencies: - dependency-name: graphrag-sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- poetry.lock | 159 ++++++++++++++++++++++++++++++++++++++++++++++++- pyproject.toml | 2 +- 2 files changed, 157 insertions(+), 4 deletions(-) diff --git a/poetry.lock b/poetry.lock index 16c2858..54ba4b5 100644 --- a/poetry.lock +++ b/poetry.lock @@ -220,6 +220,120 @@ files = [ [package.dependencies] pycparser = "*" +[[package]] +name = "charset-normalizer" +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.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]] name = "click" version = "8.1.7" @@ -396,12 +510,12 @@ dotenv = ["python-dotenv"] [[package]] name = "graphrag-sdk" -version = "0.3.0" +version = "0.3.1" description = "" optional = false python-versions = "<4.0.0,>=3.9.0" files = [ - {file = "graphrag_sdk-0.3.0.tar.gz", hash = "sha256:4bd5b8843af48c0e93f2eb4d24b49c592d281ca171c926ad318d12bf4003a45c"}, + {file = "graphrag_sdk-0.3.1.tar.gz", hash = "sha256:af1e60b5e011001730aa60d2fd4c61c4812b7a1816dc26add1268f1e3678e612"}, ] [package.dependencies] @@ -415,6 +529,7 @@ pypdf = ">=4.2.0,<5.0.0" python-abc = ">=0.2.0,<0.3.0" python-dotenv = ">=1.0.1,<2.0.0" ratelimit = ">=2.2.1,<3.0.0" +requests = ">=2.32.3,<3.0.0" typing-extensions = ">=4.12.1,<5.0.0" [package.extras] @@ -1436,6 +1551,27 @@ async-timeout = {version = ">=4.0.3", markers = "python_full_version < \"3.11.3\ hiredis = ["hiredis (>=3.0.0)"] ocsp = ["cryptography (>=36.0.1)", "pyopenssl (==23.2.1)", "requests (>=2.31.0)"] +[[package]] +name = "requests" +version = "2.32.3" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.8" +files = [ + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + [[package]] name = "six" version = "1.16.0" @@ -1659,6 +1795,23 @@ files = [ {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, ] +[[package]] +name = "urllib3" +version = "2.2.3" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.8" +files = [ + {file = "urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac"}, + {file = "urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + [[package]] name = "validators" version = "0.34.0" @@ -1723,4 +1876,4 @@ type = ["pytest-mypy"] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "007fcd4327214f0432b47b2d6874fd0b1d14cc028f146e4b9d72e9a7eeffa395" +content-hash = "4e3860c77c75ab3bcf6e99b87cf0a78398da3b5055d6705376299499342d9a7a" diff --git a/pyproject.toml b/pyproject.toml index 23dcc89..dcfebff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ readme = "README.md" [tool.poetry.dependencies] python = "^3.9" -graphrag-sdk = { version = "^0.3.0", extras = ["openai"] } +graphrag-sdk = { version = "^0.3.1", extras = ["openai"] } tree-sitter = "^0.23.2" validators = "^0.34.0" falkordb = "^1.0.5" From ce8a04c2ffbf6d6993cbfd28b394051f9ec67609 Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Thu, 21 Nov 2024 14:45:04 +0200 Subject: [PATCH 4/9] get_neighbors get list of ids --- api/graph.py | 18 ++++++++-------- api/index.py | 60 ++++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 58 insertions(+), 20 deletions(-) diff --git a/api/graph.py b/api/graph.py index 8aa54e5..d35496c 100644 --- a/api/graph.py +++ b/api/graph.py @@ -1,7 +1,7 @@ import os import time from .entities import * -from typing import Dict, List, Optional, Tuple +from typing import Dict, Optional, List, Tuple from falkordb import FalkorDB, Path, Node, QueryResult # Configure the logger @@ -194,12 +194,12 @@ def get_sub_graph(self, l: int) -> dict: return sub_graph - def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: + def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: """ - Fetch the neighbors of a given node in the graph based on relationship type and/or label. + Fetch the neighbors of a given nodes in the graph based on relationship type and/or label. Args: - node_id (int): The ID of the source node. + node_ids (List[int]): The IDs of the source nodes. rel (str, optional): The type of relationship to filter by. Defaults to None. lbl (str, optional): The label of the destination node to filter by. Defaults to None. @@ -208,8 +208,8 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s """ # Validate inputs - if not isinstance(node_id, int): - raise ValueError("node_id must be an integer") + if not all(isinstance(node_id, int) for node_id in node_ids): + raise ValueError("node_ids must be an integer list") # Build relationship and label query parts rel_query = f":{rel}" if rel else "" @@ -218,7 +218,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s # Parameterized Cypher query to find neighbors query = f""" MATCH (n)-[e{rel_query}]->(dest{lbl_query}) - WHERE ID(n) = $node_id + WHERE ID(n) IN $node_ids RETURN e, dest """ @@ -227,7 +227,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s try: # Execute the graph query with node_id parameter - result_set = self._query(query, {'node_id': node_id}).result_set + result_set = self._query(query, {'node_ids': node_ids}).result_set # Iterate over the result set and process nodes and edges for edge, destination_node in result_set: @@ -237,7 +237,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s return neighbors except Exception as e: - logging.error(f"Error fetching neighbors for node {node_id}: {e}") + logging.error(f"Error fetching neighbors for node {node_ids}: {e}") return {'nodes': [], 'edges': []} diff --git a/api/index.py b/api/index.py index 2153a3e..bbf225f 100644 --- a/api/index.py +++ b/api/index.py @@ -79,20 +79,23 @@ def graph_entities(): return jsonify({"status": "Internal server error"}), 500 -@app.route('/get_neighbors', methods=['GET']) +@app.route('/get_neighbors', methods=['POST']) @token_required # Apply token authentication decorator def get_neighbors(): """ - Endpoint to get neighbors of a specific node in the graph. - Expects 'repo' and 'node_id' as query parameters. + Endpoint to get neighbors of a nodes list in the graph. + Expects 'repo' and 'node_ids' as body parameters. Returns: JSON response containing neighbors or error messages. """ + # Get JSON data from the request + data = request.get_json() + # Get query parameters - repo = request.args.get('repo') - node_id = request.args.get('node_id') + repo = data.get('repo') + node_ids = data.get('node_ids') # Validate 'repo' parameter if not repo: @@ -100,7 +103,7 @@ def get_neighbors(): return jsonify({"status": "Repository name is required."}), 400 # Validate 'node_id' parameter - if not node_id: + if not node_ids: logging.error("Node ID is missing in the request.") return jsonify({"status": "Node ID is required."}), 400 @@ -111,19 +114,19 @@ def get_neighbors(): # Try converting node_id to an integer try: - node_id = int(node_id) + node_ids = [int(node_id) for node_id in node_ids] except ValueError: - logging.error(f"Invalid node ID: {node_id}. It must be an integer.") + logging.error(f"Invalid node ID: {node_ids}. It must be an integer.") return jsonify({"status": "Invalid node ID. It must be an integer."}), 400 # Initialize the graph with the provided repository g = Graph(repo) # Fetch the neighbors of the specified node - neighbors = g.get_neighbors(node_id) + neighbors = g.get_neighbors(node_ids) # Log and return the neighbors - logging.info(f"Successfully retrieved neighbors for node ID {node_id} in repo '{repo}'.") + logging.info(f"Successfully retrieved neighbors for node ID {node_ids} in repo '{repo}'.") response = { 'status': 'success', @@ -170,6 +173,41 @@ def auto_complete(): return jsonify(response), 200 +@app.route('/process_repo', methods=['POST']) +@token_required # Apply token authentication decorator +def process_repo(): + """ + Process a GitHub repository. + + Expected JSON payload: + { + "repo_url": "string", + "ignore": ["string"] # optional + } + + Returns: + JSON response with processing status + """ + + data = request.get_json() + url = data.get('repo_url') + if url is None: + return jsonify({'status': f'Missing mandatory parameter "url"'}), 400 + logger.debug(f'Received repo_url: {url}') + + ignore = data.get('ignore', []) + + proj = Project.from_git_repository(url) + proj.analyze_sources(ignore) + # proj.process_git_history(ignore) + + # Create a response + response = { + 'status': 'success', + } + + return jsonify(response), 200 + @app.route('/list_repos', methods=['GET']) @token_required # Apply token authentication decorator @@ -183,7 +221,7 @@ def list_repos(): # Fetch list of repositories repos = get_repos() - + print(repos) # Create a success response with the list of repositories response = { 'status': 'success', From 4c9da39dca0ccec86a8b71411589858f909023d1 Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Thu, 21 Nov 2024 14:49:20 +0200 Subject: [PATCH 5/9] Revert "get_neighbors get list of ids" This reverts commit 9ae4321cc0d5622ef5917b36f11e5cf1dbc4141b. --- api/graph.py | 18 ++++++++-------- api/index.py | 60 ++++++++++------------------------------------------ 2 files changed, 20 insertions(+), 58 deletions(-) diff --git a/api/graph.py b/api/graph.py index d35496c..8aa54e5 100644 --- a/api/graph.py +++ b/api/graph.py @@ -1,7 +1,7 @@ import os import time from .entities import * -from typing import Dict, Optional, List, Tuple +from typing import Dict, List, Optional, Tuple from falkordb import FalkorDB, Path, Node, QueryResult # Configure the logger @@ -194,12 +194,12 @@ def get_sub_graph(self, l: int) -> dict: return sub_graph - def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: + def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: """ - Fetch the neighbors of a given nodes in the graph based on relationship type and/or label. + Fetch the neighbors of a given node in the graph based on relationship type and/or label. Args: - node_ids (List[int]): The IDs of the source nodes. + node_id (int): The ID of the source node. rel (str, optional): The type of relationship to filter by. Defaults to None. lbl (str, optional): The label of the destination node to filter by. Defaults to None. @@ -208,8 +208,8 @@ def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Opt """ # Validate inputs - if not all(isinstance(node_id, int) for node_id in node_ids): - raise ValueError("node_ids must be an integer list") + if not isinstance(node_id, int): + raise ValueError("node_id must be an integer") # Build relationship and label query parts rel_query = f":{rel}" if rel else "" @@ -218,7 +218,7 @@ def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Opt # Parameterized Cypher query to find neighbors query = f""" MATCH (n)-[e{rel_query}]->(dest{lbl_query}) - WHERE ID(n) IN $node_ids + WHERE ID(n) = $node_id RETURN e, dest """ @@ -227,7 +227,7 @@ def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Opt try: # Execute the graph query with node_id parameter - result_set = self._query(query, {'node_ids': node_ids}).result_set + result_set = self._query(query, {'node_id': node_id}).result_set # Iterate over the result set and process nodes and edges for edge, destination_node in result_set: @@ -237,7 +237,7 @@ def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Opt return neighbors except Exception as e: - logging.error(f"Error fetching neighbors for node {node_ids}: {e}") + logging.error(f"Error fetching neighbors for node {node_id}: {e}") return {'nodes': [], 'edges': []} diff --git a/api/index.py b/api/index.py index bbf225f..2153a3e 100644 --- a/api/index.py +++ b/api/index.py @@ -79,23 +79,20 @@ def graph_entities(): return jsonify({"status": "Internal server error"}), 500 -@app.route('/get_neighbors', methods=['POST']) +@app.route('/get_neighbors', methods=['GET']) @token_required # Apply token authentication decorator def get_neighbors(): """ - Endpoint to get neighbors of a nodes list in the graph. - Expects 'repo' and 'node_ids' as body parameters. + Endpoint to get neighbors of a specific node in the graph. + Expects 'repo' and 'node_id' as query parameters. Returns: JSON response containing neighbors or error messages. """ - # Get JSON data from the request - data = request.get_json() - # Get query parameters - repo = data.get('repo') - node_ids = data.get('node_ids') + repo = request.args.get('repo') + node_id = request.args.get('node_id') # Validate 'repo' parameter if not repo: @@ -103,7 +100,7 @@ def get_neighbors(): return jsonify({"status": "Repository name is required."}), 400 # Validate 'node_id' parameter - if not node_ids: + if not node_id: logging.error("Node ID is missing in the request.") return jsonify({"status": "Node ID is required."}), 400 @@ -114,19 +111,19 @@ def get_neighbors(): # Try converting node_id to an integer try: - node_ids = [int(node_id) for node_id in node_ids] + node_id = int(node_id) except ValueError: - logging.error(f"Invalid node ID: {node_ids}. It must be an integer.") + logging.error(f"Invalid node ID: {node_id}. It must be an integer.") return jsonify({"status": "Invalid node ID. It must be an integer."}), 400 # Initialize the graph with the provided repository g = Graph(repo) # Fetch the neighbors of the specified node - neighbors = g.get_neighbors(node_ids) + neighbors = g.get_neighbors(node_id) # Log and return the neighbors - logging.info(f"Successfully retrieved neighbors for node ID {node_ids} in repo '{repo}'.") + logging.info(f"Successfully retrieved neighbors for node ID {node_id} in repo '{repo}'.") response = { 'status': 'success', @@ -173,41 +170,6 @@ def auto_complete(): return jsonify(response), 200 -@app.route('/process_repo', methods=['POST']) -@token_required # Apply token authentication decorator -def process_repo(): - """ - Process a GitHub repository. - - Expected JSON payload: - { - "repo_url": "string", - "ignore": ["string"] # optional - } - - Returns: - JSON response with processing status - """ - - data = request.get_json() - url = data.get('repo_url') - if url is None: - return jsonify({'status': f'Missing mandatory parameter "url"'}), 400 - logger.debug(f'Received repo_url: {url}') - - ignore = data.get('ignore', []) - - proj = Project.from_git_repository(url) - proj.analyze_sources(ignore) - # proj.process_git_history(ignore) - - # Create a response - response = { - 'status': 'success', - } - - return jsonify(response), 200 - @app.route('/list_repos', methods=['GET']) @token_required # Apply token authentication decorator @@ -221,7 +183,7 @@ def list_repos(): # Fetch list of repositories repos = get_repos() - print(repos) + # Create a success response with the list of repositories response = { 'status': 'success', From 002385a8af5452c74af49b5c9ece517aa0a20e20 Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Thu, 21 Nov 2024 14:45:04 +0200 Subject: [PATCH 6/9] get_neighbors get list of ids --- api/graph.py | 18 ++++++++-------- api/index.py | 60 ++++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 58 insertions(+), 20 deletions(-) diff --git a/api/graph.py b/api/graph.py index 8aa54e5..d35496c 100644 --- a/api/graph.py +++ b/api/graph.py @@ -1,7 +1,7 @@ import os import time from .entities import * -from typing import Dict, List, Optional, Tuple +from typing import Dict, Optional, List, Tuple from falkordb import FalkorDB, Path, Node, QueryResult # Configure the logger @@ -194,12 +194,12 @@ def get_sub_graph(self, l: int) -> dict: return sub_graph - def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: + def get_neighbors(self, node_ids: List[int], rel: Optional[str] = None, lbl: Optional[str] = None) -> Dict[str, List[dict]]: """ - Fetch the neighbors of a given node in the graph based on relationship type and/or label. + Fetch the neighbors of a given nodes in the graph based on relationship type and/or label. Args: - node_id (int): The ID of the source node. + node_ids (List[int]): The IDs of the source nodes. rel (str, optional): The type of relationship to filter by. Defaults to None. lbl (str, optional): The label of the destination node to filter by. Defaults to None. @@ -208,8 +208,8 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s """ # Validate inputs - if not isinstance(node_id, int): - raise ValueError("node_id must be an integer") + if not all(isinstance(node_id, int) for node_id in node_ids): + raise ValueError("node_ids must be an integer list") # Build relationship and label query parts rel_query = f":{rel}" if rel else "" @@ -218,7 +218,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s # Parameterized Cypher query to find neighbors query = f""" MATCH (n)-[e{rel_query}]->(dest{lbl_query}) - WHERE ID(n) = $node_id + WHERE ID(n) IN $node_ids RETURN e, dest """ @@ -227,7 +227,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s try: # Execute the graph query with node_id parameter - result_set = self._query(query, {'node_id': node_id}).result_set + result_set = self._query(query, {'node_ids': node_ids}).result_set # Iterate over the result set and process nodes and edges for edge, destination_node in result_set: @@ -237,7 +237,7 @@ def get_neighbors(self, node_id: int, rel: Optional[str] = None, lbl: Optional[s return neighbors except Exception as e: - logging.error(f"Error fetching neighbors for node {node_id}: {e}") + logging.error(f"Error fetching neighbors for node {node_ids}: {e}") return {'nodes': [], 'edges': []} diff --git a/api/index.py b/api/index.py index 2153a3e..bbf225f 100644 --- a/api/index.py +++ b/api/index.py @@ -79,20 +79,23 @@ def graph_entities(): return jsonify({"status": "Internal server error"}), 500 -@app.route('/get_neighbors', methods=['GET']) +@app.route('/get_neighbors', methods=['POST']) @token_required # Apply token authentication decorator def get_neighbors(): """ - Endpoint to get neighbors of a specific node in the graph. - Expects 'repo' and 'node_id' as query parameters. + Endpoint to get neighbors of a nodes list in the graph. + Expects 'repo' and 'node_ids' as body parameters. Returns: JSON response containing neighbors or error messages. """ + # Get JSON data from the request + data = request.get_json() + # Get query parameters - repo = request.args.get('repo') - node_id = request.args.get('node_id') + repo = data.get('repo') + node_ids = data.get('node_ids') # Validate 'repo' parameter if not repo: @@ -100,7 +103,7 @@ def get_neighbors(): return jsonify({"status": "Repository name is required."}), 400 # Validate 'node_id' parameter - if not node_id: + if not node_ids: logging.error("Node ID is missing in the request.") return jsonify({"status": "Node ID is required."}), 400 @@ -111,19 +114,19 @@ def get_neighbors(): # Try converting node_id to an integer try: - node_id = int(node_id) + node_ids = [int(node_id) for node_id in node_ids] except ValueError: - logging.error(f"Invalid node ID: {node_id}. It must be an integer.") + logging.error(f"Invalid node ID: {node_ids}. It must be an integer.") return jsonify({"status": "Invalid node ID. It must be an integer."}), 400 # Initialize the graph with the provided repository g = Graph(repo) # Fetch the neighbors of the specified node - neighbors = g.get_neighbors(node_id) + neighbors = g.get_neighbors(node_ids) # Log and return the neighbors - logging.info(f"Successfully retrieved neighbors for node ID {node_id} in repo '{repo}'.") + logging.info(f"Successfully retrieved neighbors for node ID {node_ids} in repo '{repo}'.") response = { 'status': 'success', @@ -170,6 +173,41 @@ def auto_complete(): return jsonify(response), 200 +@app.route('/process_repo', methods=['POST']) +@token_required # Apply token authentication decorator +def process_repo(): + """ + Process a GitHub repository. + + Expected JSON payload: + { + "repo_url": "string", + "ignore": ["string"] # optional + } + + Returns: + JSON response with processing status + """ + + data = request.get_json() + url = data.get('repo_url') + if url is None: + return jsonify({'status': f'Missing mandatory parameter "url"'}), 400 + logger.debug(f'Received repo_url: {url}') + + ignore = data.get('ignore', []) + + proj = Project.from_git_repository(url) + proj.analyze_sources(ignore) + # proj.process_git_history(ignore) + + # Create a response + response = { + 'status': 'success', + } + + return jsonify(response), 200 + @app.route('/list_repos', methods=['GET']) @token_required # Apply token authentication decorator @@ -183,7 +221,7 @@ def list_repos(): # Fetch list of repositories repos = get_repos() - + print(repos) # Create a success response with the list of repositories response = { 'status': 'success', From 32a9c941eea5b5930c050ce518c08ea0b7ff3532 Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Thu, 21 Nov 2024 16:02:58 +0200 Subject: [PATCH 7/9] remove process_repo and print --- api/index.py | 38 +------------------------------------- 1 file changed, 1 insertion(+), 37 deletions(-) diff --git a/api/index.py b/api/index.py index bbf225f..1eea6a7 100644 --- a/api/index.py +++ b/api/index.py @@ -173,42 +173,6 @@ def auto_complete(): return jsonify(response), 200 -@app.route('/process_repo', methods=['POST']) -@token_required # Apply token authentication decorator -def process_repo(): - """ - Process a GitHub repository. - - Expected JSON payload: - { - "repo_url": "string", - "ignore": ["string"] # optional - } - - Returns: - JSON response with processing status - """ - - data = request.get_json() - url = data.get('repo_url') - if url is None: - return jsonify({'status': f'Missing mandatory parameter "url"'}), 400 - logger.debug(f'Received repo_url: {url}') - - ignore = data.get('ignore', []) - - proj = Project.from_git_repository(url) - proj.analyze_sources(ignore) - # proj.process_git_history(ignore) - - # Create a response - response = { - 'status': 'success', - } - - return jsonify(response), 200 - - @app.route('/list_repos', methods=['GET']) @token_required # Apply token authentication decorator def list_repos(): @@ -221,7 +185,7 @@ def list_repos(): # Fetch list of repositories repos = get_repos() - print(repos) + # Create a success response with the list of repositories response = { 'status': 'success', From a560c3198f2e065a97af5cf6003a4365c850c04f Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Thu, 21 Nov 2024 16:31:11 +0200 Subject: [PATCH 8/9] update comments and logs --- api/index.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/api/index.py b/api/index.py index 1eea6a7..4363017 100644 --- a/api/index.py +++ b/api/index.py @@ -102,22 +102,22 @@ def get_neighbors(): logging.error("Repository name is missing in the request.") return jsonify({"status": "Repository name is required."}), 400 - # Validate 'node_id' parameter + # Validate 'node_ids' parameter if not node_ids: - logging.error("Node ID is missing in the request.") - return jsonify({"status": "Node ID is required."}), 400 + logging.error("Node IDs is missing in the request.") + return jsonify({"status": "Node IDs is required."}), 400 # Validate repo exists if not graph_exists(repo): logging.error(f"Missing project {repo}") return jsonify({"status": f"Missing project {repo}"}), 400 - # Try converting node_id to an integer + # Try converting node_ids to an integer try: node_ids = [int(node_id) for node_id in node_ids] except ValueError: - logging.error(f"Invalid node ID: {node_ids}. It must be an integer.") - return jsonify({"status": "Invalid node ID. It must be an integer."}), 400 + logging.error(f"Invalid node IDs: {node_ids}. It must be an integer.") + return jsonify({"status": "Invalid node IDs. It must be an integer."}), 400 # Initialize the graph with the provided repository g = Graph(repo) @@ -126,7 +126,7 @@ def get_neighbors(): neighbors = g.get_neighbors(node_ids) # Log and return the neighbors - logging.info(f"Successfully retrieved neighbors for node ID {node_ids} in repo '{repo}'.") + logging.info(f"Successfully retrieved neighbors for node IDs {node_ids} in repo '{repo}'.") response = { 'status': 'success', From dbe2424e584634f25ca91f58d8c731cb27dca48b Mon Sep 17 00:00:00 2001 From: Anchel135 Date: Sun, 24 Nov 2024 12:08:04 +0200 Subject: [PATCH 9/9] get node_ids as number --- api/index.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/api/index.py b/api/index.py index 4363017..2c0398c 100644 --- a/api/index.py +++ b/api/index.py @@ -112,13 +112,6 @@ def get_neighbors(): logging.error(f"Missing project {repo}") return jsonify({"status": f"Missing project {repo}"}), 400 - # Try converting node_ids to an integer - try: - node_ids = [int(node_id) for node_id in node_ids] - except ValueError: - logging.error(f"Invalid node IDs: {node_ids}. It must be an integer.") - return jsonify({"status": "Invalid node IDs. It must be an integer."}), 400 - # Initialize the graph with the provided repository g = Graph(repo)