Skip to content

Conversation

@gkorland
Copy link
Contributor

@gkorland gkorland commented Jan 6, 2026

Summary by CodeRabbit

  • Chores
    • Updated Python runtime from 3.10 to 3.12
    • Extended CI/CD pipeline to build and test on both main and staging branches
    • Migrated project configuration management system
    • Removed redundant code declarations for cleaner codebase

Switch to uv from pip for Vercel support

✏️ Tip: You can customize this high-level summary in your review settings.

@vercel
Copy link

vercel bot commented Jan 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
code-graph-backend Ready Ready Preview, Comment Jan 6, 2026 10:50am

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 6, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

📝 Walkthrough

Walkthrough

This PR transitions the project from Poetry to setuptools-based package management, updates Python from 3.10 to 3.12, adopts uv for dependency installation in CI workflows, and broadens branch targets to include staging alongside main.

Changes

Cohort / File(s) Summary
CI Configuration
\.github/dependabot\.yml, \.github/workflows/python-app\.yml
Removed trailing whitespace in dependabot config. Updated Python app workflow: switched from Python 3.10 + setup-python v3 to Python 3.12 + setup-python v5; added uv installation and replaced direct pip with uv pip for flake8/pytest; broadened trigger branches from main to include staging.
Package Management Migration
pyproject\.toml, requirements\.txt
Migrated from Poetry to standard Python project structure: replaced [tool.poetry] with [project], restructured authors as objects with name/email, added requires-python and dependencies fields, converted [tool.poetry.dependencies] to [project.optional-dependencies] with new test entry, removed Poetry test group section, replaced [build-system] with [tool.setuptools] config. Emptied requirements.txt entirely.
Code Refactoring
api/llm\.py
Removed redundant global declaration in _create_kg_agent function; module-level ontology variable now referenced directly without explicit global statement.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 From Poetry's pen to setuptools' embrace,
Python 3.12 now sets the pace,
With uv's speed and staging in sight,
Our config takes flight—what a delight!
No global ghosts in llm's way,
A cleaner, faster project today! ✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title 'Update deps and move to uv (vercel)' accurately reflects the main changes in the pull request: updating dependencies and migrating to the uv package manager, with multiple files modified to support this transition.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gkorland gkorland requested a review from galshubeli January 6, 2026 09:25
- name: Set up Python 3.10
uses: actions/setup-python@v3
- name: Install uv
uses: astral-sh/setup-uv@v4

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Python application' step
Uses Step
uses 'astral-sh/setup-uv' with ref 'v4', not a pinned commit hash
galshubeli
galshubeli previously approved these changes Jan 6, 2026
@gkorland
Copy link
Contributor Author

gkorland commented Jan 6, 2026

@coderabbitai review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 6, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the project's dependency management from Poetry to standard Python packaging tools (pyproject.toml with setuptools) and updates the CI/CD workflow accordingly. The changes also include minor code cleanup and Python version updates.

  • Converted from Poetry-based dependency management to PEP 621 standard pyproject.toml format
  • Updated Python version requirement from 3.10 to 3.12 and added support for 3.13
  • Migrated CI/CD workflow to use uv package installer and updated GitHub Actions versions

Reviewed changes

Copilot reviewed 3 out of 7 changed files in this pull request and generated 2 comments.

File Description
pyproject.toml Converted from Poetry format to PEP 621 standard format with updated dependencies and Python version constraints
api/llm.py Removed redundant global declaration for ontology variable
.github/workflows/python-app.yml Updated workflow to use uv installer, Python 3.12, staging branch, and newer action versions

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

readme = "README.md"
requires-python = ">=3.12,<3.14"
dependencies = [
"graphrag-sdk>=0.8.1,<0.9.0",
Copy link

Copilot AI Jan 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The graphrag-sdk dependency no longer includes the 'litellm' extra that was specified in the original Poetry configuration. If the LiteModel functionality in api/llm.py depends on litellm extras, this may cause runtime issues. Verify whether the litellm extra is still needed and update the dependency accordingly.

Suggested change
"graphrag-sdk>=0.8.1,<0.9.0",
"graphrag-sdk>=0.8.1,<0.9.0",
"litellm>=1.0.0,<2.0.0",

Copilot uses AI. Check for mistakes.
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI Agents
In @pyproject.toml:
- Around line 29-30: The pyproject.toml currently sets packages = [] which
prevents discovery/install of the api and tests packages; update the
[tool.setuptools] configuration so setuptools can find and install packages by
either removing the empty packages entry and adding a
[tool.setuptools.packages.find] section with where = ["."], or replace packages
= [] with an explicit list of package names (e.g., "api", "api.analyzers",
"api.code_coverage", "api.code_coverage.lcov", "api.entities", "api.git_utils",
"tests", "tests.endpoints") so imports like api.* succeed.
🧹 Nitpick comments (1)
pyproject.toml (1)

18-18: Git branch dependency may cause reproducibility issues.

The multilspy dependency references a git branch (@python-init-params), which could lead to non-reproducible builds if the branch is updated, force-pushed, or deleted. Consider pinning to a specific commit hash for stability, or document why tracking the branch is intentional.

🔎 Example fix: Pin to a commit hash
-    "multilspy @ git+https://github.com/AviAvni/multilspy.git@python-init-params",
+    "multilspy @ git+https://github.com/AviAvni/multilspy.git@<commit-sha>",
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1501945 and 5518d6a.

⛔ Files ignored due to path filters (2)
  • poetry.lock is excluded by !**/*.lock
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (5)
  • .github/dependabot.yml
  • .github/workflows/python-app.yml
  • api/llm.py
  • pyproject.toml
  • requirements.txt
💤 Files with no reviewable changes (2)
  • api/llm.py
  • requirements.txt
🧰 Additional context used
🪛 GitHub Check: CodeQL
.github/workflows/python-app.yml

[warning] 23-23: Unpinned tag for a non-immutable Action in workflow
Unpinned 3rd party Action 'Python application' step Uses Step uses 'astral-sh/setup-uv' with ref 'v4', not a pinned commit hash

🔇 Additional comments (4)
.github/dependabot.yml (1)

7-7: LGTM!

The target branch update to staging aligns with the broader CI changes in this PR.

.github/workflows/python-app.yml (2)

8-10: LGTM!

Branch targets now include both main and staging, consistent with the Dependabot configuration update.


24-31: LGTM!

The Python 3.12 setup aligns with pyproject.toml's requires-python constraint. Using uv pip install --system with editable install (-e .) is a clean approach that leverages the project's dependencies from pyproject.toml.

pyproject.toml (1)

1-7: LGTM!

The migration to PEP 621 project metadata format is clean. The Python version constraint (>=3.12,<3.14) is well-defined and aligns with the CI workflow configuration.

@gkorland gkorland changed the title Update deps Update deps and move to uv (vercel) Jan 6, 2026
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 8 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

readme = "README.md"
requires-python = ">=3.12,<3.14"
dependencies = [
"graphrag-sdk>=0.8.1,<0.9.0",
Copy link

Copilot AI Jan 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The graphrag-sdk version has been significantly updated from ^0.5.0 to >=0.8.1,<0.9.0, and the 'litellm' extra was removed. This is a notable version jump that could introduce breaking changes or behavioral differences.

Suggested change
"graphrag-sdk>=0.8.1,<0.9.0",
"graphrag-sdk[litellm]>=0.5.0,<0.6.0",

Copilot uses AI. Check for mistakes.
@gkorland gkorland merged commit 9d21bb8 into staging Jan 6, 2026
8 checks passed
@gkorland gkorland deleted the update-deps branch January 6, 2026 11:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants