-
-
Notifications
You must be signed in to change notification settings - Fork 744
Update PraisonAI version to 2.2.26 across Dockerfiles and related con… #595
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
❌ Deploy Preview for praisonai failed.
|
|
Caution Review failedThe pull request is closed. """ WalkthroughThis change updates the minimum required version of the Changes
Possibly related PRs
Suggested labels
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (9)
✨ Finishing Touches
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @MervinPraison, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
Summary of Changes
Hello team, Gemini here with a summary of this pull request. This PR primarily focuses on updating the project's dependencies to newer versions of PraisonAI and praisonaiagents. The core change involves bumping the required versions across various configuration files and Docker images to ensure the project is using the latest releases of these key libraries. This update also brings in several new and updated transitive dependencies, as reflected in the lock file.
Highlights
- PraisonAI Version Update: The main
PraisonAIpackage version has been updated from2.2.25to2.2.26. - PraisonAI Agents Version Update: The
praisonaiagentspackage version has been updated from0.0.96to0.0.97. - Dependency Updates and Additions: The
uv.lockfile has been updated to reflect the new dependency tree. This includes downgradingasync-timeoutand adding several new packages such asdataclasses-json,jsonpatch,jsonpointer,langchain,langchain-community,langchain-core,langchain-text-splitters,langsmith,marshmallow,mypy-extensions,neo4j,rank-bm25,requests-toolbelt,typing-inspect, andzstandard. A new optional dependency groupgraphhas been added tomem0ai. - Configuration File Updates: Various Dockerfiles (
docker/Dockerfile,docker/Dockerfile.chat,docker/Dockerfile.dev,docker/Dockerfile.ui), the Docker README (docker/README.md), the Homebrew formula (src/praisonai/praisonai.rb), and the deploy script (src/praisonai/praisonai/deploy.py) have been updated to reference the newPraisonAIandpraisonaiagentsversions.
Changelog
Click here to see the changelog
- docker/Dockerfile
- Updated praisonai version requirement from
>=2.2.25to>=2.2.26(L19).
- Updated praisonai version requirement from
- docker/Dockerfile.chat
- Updated praisonai version requirement from
>=2.2.25to>=2.2.26(L19).
- Updated praisonai version requirement from
- docker/Dockerfile.dev
- Updated praisonai version requirement from
>=2.2.25to>=2.2.26(L23).
- Updated praisonai version requirement from
- docker/Dockerfile.ui
- Updated praisonai version requirement from
>=2.2.25to>=2.2.26(L19).
- Updated praisonai version requirement from
- docker/README.md
- Updated listed PraisonAI version from
>=2.2.25to>=2.2.26(L124). - Updated listed PraisonAI Agents version from
>=0.0.92to>=0.0.97(L125). - Updated version pinning example for PraisonAI from
==2.2.25to==2.2.26(L221).
- Updated listed PraisonAI version from
- src/praisonai-agents/pyproject.toml
- Updated project version from
0.0.96to0.0.97(L7).
- Updated project version from
- src/praisonai-agents/uv.lock
- Adjusted Python 3.12 resolution markers (L5-6).
- Downgraded
async-timeoutfrom 5.0.1 to 4.0.3 (L147). - Added
dataclasses-jsonversion 0.6.7 (L589). - Added
jsonpatchversion 1.33 andjsonpointerversion 3.0.0 (L1201, L1213). - Added
langchain(0.3.25),langchain-community(0.3.24),langchain-core(0.3.63),langchain-text-splitters(0.3.8), andlangsmith(0.3.44) (L1271, L1290, L1313, L1332, L1343). - Added
marshmallowversion 3.26.1 (L1612). - Added
graphoptional dependency group tomem0ai(L1668). - Added
mypy-extensionsversion 1.1.0 (L1864). - Added
neo4jversion 5.28.1 (L1873). - Added
rank-bm25version 0.2.2 (L2879). - Added
requests-toolbeltversion 1.0.0 (L3002). - Updated
praisonaiagentsversion from0.0.96to0.0.97(L2401). - Added
chromadbdependency for thegraphextra (L2452). - Added
mem0aiwithgraphextra dependency for thegraphextra (L2462). - Added
praisonaiagentswithgraphextra dependency for theallextra (L2465). - Added
typing-inspectversion 0.9.0 (L3474). - Added
zstandardversion 0.23.0 (L3867).
- src/praisonai/praisonai.rb
- Updated Homebrew formula URL and SHA256 hash to v2.2.26 (L6-7).
- src/praisonai/praisonai/deploy.py
- Updated hardcoded praisonai version in generated Dockerfile from
==2.2.25to==2.2.26(L59).
- Updated hardcoded praisonai version in generated Dockerfile from
- src/praisonai/pyproject.toml
- Updated project version from
2.2.25to2.2.26(L3). - Updated praisonaiagents dependency requirement from
>=0.0.96to>=0.0.97(L15). - Updated poetry project version from
2.2.25to2.2.26(L98). - Updated poetry praisonaiagents dependency requirement from
>=0.0.96to>=0.0.97(L116).
- Updated project version from
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Versions bump and climb,
Dependencies fall in line,
Code refreshed, sublime.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
|||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request effectively updates the PraisonAI version to 2.2.26 and its core dependency praisonaiagents to 0.0.97 across Dockerfiles, Python package configurations, the Homebrew formula, and documentation. The changes are largely straightforward and align with the stated objectives. I've identified a couple of areas for minor improvement, primarily concerning documentation consistency and a dependency version change in the uv.lock file.
Summary of Findings
- Documentation Inconsistency (
docker/README.md): Thepraisonaiagentsversion indocker/README.md(both in the package versions list and the version pinning example) should be updated from0.0.92to0.0.97to match the actual version bump in this PR. - Dependency Version Downgrade (
src/praisonai-agents/uv.lock): Theasync-timeoutpackage was downgraded from5.0.1(Aug 2024) to4.0.3(Nov 2022). This might be due to newlangchaindependency constraints for older Python versions, but confirmation is advised to ensure no desired functionality fromasync-timeout 5.xis lost, especially if it was previously used directly or via another dependency in Python >= 3.11 environments. - Homebrew Formula SHA256 Calculation (Low Severity - Not Commented): The
praisonai.rbHomebrew formula uses a dynamic command (curl ... | shasum) to calculate the SHA256 hash. While a common pattern in Homebrew, this can be less robust if the download URL content changes unexpectedly. For future releases, consider pre-calculating and hardcoding the SHA256 hash after verifying the tarball. However, the current method is acceptable within Homebrew practices. This was not added as a direct comment due to review settings.
Merge Readiness
The pull request is generally in good shape for updating the PraisonAI versions. However, there are a couple of medium-severity items that should be addressed for consistency and clarity:
- The
docker/README.mdneeds to be updated to reflect the correctpraisonaiagentsversion (0.0.97). - The downgrade of the
async-timeoutpackage insrc/praisonai-agents/uv.lockshould be confirmed as intentional and well-understood in its implications.
Once these points are clarified and/or addressed, the PR should be ready for merging. As an AI, I am not authorized to approve pull requests; please ensure further review and approval by project maintainers.
| All Docker images use consistent, up-to-date versions: | ||
| - PraisonAI: `>=2.2.25` | ||
| - PraisonAI: `>=2.2.26` | ||
| - PraisonAI Agents: `>=0.0.92` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PraisonAI Agents version is listed as >=0.0.92 here. However, this PR updates praisonaiagents to version 0.0.97 (as seen in src/praisonai-agents/pyproject.toml) and the main PraisonAI package now depends on praisonaiagents>=0.0.97 (in src/praisonai/pyproject.toml).
To maintain consistency and provide accurate information, should this line be updated to reflect version 0.0.97?
| - PraisonAI Agents: `>=0.0.92` | |
| - PraisonAI Agents: >=0.0.97 |
| To use specific versions, update the Dockerfile: | ||
| ```dockerfile | ||
| RUN pip install "praisonai==2.2.25" "praisonaiagents==0.0.92" | ||
| RUN pip install "praisonai==2.2.26" "praisonaiagents==0.0.92" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The example for version pinning uses praisonaiagents==0.0.92. Given that praisonaiagents is updated to 0.0.97 in this PR, would it be clearer for users if this example also used the latest version, 0.0.97, for praisonaiagents?
| RUN pip install "praisonai==2.2.26" "praisonaiagents==0.0.92" | |
| RUN pip install "praisonai==2.2.26" "praisonaiagents==0.0.97" |
| [[package]] | ||
| name = "async-timeout" | ||
| version = "5.0.1" | ||
| version = "4.0.3" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The async-timeout package version has changed from 5.0.1 to 4.0.3. Version 5.0.1 is quite recent (August 2024), while 4.0.3 is from November 2022. This is a notable downgrade.
I notice that langchain (a newly added dependency in this lock file) has a conditional dependency: async-timeout; python_full_version < "3.11" which itself specifies async-timeout>=4.0.0,<5.0.0.
Could you clarify if this downgrade is primarily driven by this langchain constraint for Python 3.10 (which praisonaiagents supports via requires-python = ">=3.10") and if version 5.0.1 was perhaps a direct or different transitive dependency before? It would be good to ensure this change is intentional and doesn't inadvertently affect environments running Python >= 3.11 where async-timeout 5.x might have been used previously.
User description
…figurations
PR Type
enhancement
Description
Bump PraisonAI version to 2.2.26 in all Dockerfiles and configs
Update Homebrew formula to use v2.2.26 tarball
Update PraisonAI Agents dependency to >=0.0.97
Bump praisonaiagents package version to 0.0.97
Changes walkthrough 📝
8 files
Update PraisonAI version to 2.2.26 in base DockerfileUpdate PraisonAI version to 2.2.26 in chat DockerfileUpdate PraisonAI version to 2.2.26 in dev DockerfileUpdate PraisonAI version to 2.2.26 in UI DockerfileBump PraisonAI and praisonaiagents versions in pyproject.tomlUpdate Dockerfile generator to use PraisonAI 2.2.26Update Homebrew formula to PraisonAI 2.2.26Bump praisonaiagents package version to 0.0.971 files
Document PraisonAI version 2.2.26 in Docker READMESummary by CodeRabbit