-
Notifications
You must be signed in to change notification settings - Fork 1k
V3.0.2 upgrade deps #4991
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
base: v3.0
Are you sure you want to change the base?
V3.0.2 upgrade deps #4991
Conversation
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.
Summary of Changes
Hello @mirostauder, 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!
This pull request focuses on upgrading several core dependencies to their latest versions as part of preparations for the v3.0.2 release. The changes involve updating version references, adjusting the build process in the Makefile to accommodate the new versions, and modifying existing patches to apply correctly against the updated dependency source code.
Highlights
- Dependency Upgrades: Upgraded several key dependencies including curl (8.4.0 -> 8.14.0), libmicrohttpd (0.9.77 -> 1.0.1), nlohmann/json (3.11.2 -> 3.12.0), and sqlite3 (3.43.2 -> 3.50.0).
- Build System Updates: Modified the
deps/Makefile
to correctly handle the new dependency versions, including adjusting symlink creation commands (ln -fs
toln -fsT
) and updating patch application commands for sqlite3. - Patch File Adjustments: Updated existing patch files for sqlite3 (
from_unixtime.patch
,sqlite3_pass_exts.patch
,throw.patch
) to align with the source code structure of the new sqlite3 version (3.50.0). - JSON Library ABI Changes: Updated the nlohmann/json header to reflect the new version and include ABI tag changes related to diagnostic positions.
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.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configureGemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
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 focuses on upgrading several key dependencies, including curl, libmicrohttpd, nlohmann/json, and SQLite. The Makefile changes to use symbolic links for dependency directories are a good step towards a more robust build process.
My primary concern revolves around the removal of a patch (sqlite3.c-multiplication-overflow.patch
) that was previously applied to SQLite. It's crucial to confirm that the underlying issue is addressed in the newer SQLite version to prevent potential regressions.
There's also a modification in another SQLite patch (throw.patch
) related to the toupper
declaration, which might warrant a quick review to ensure it achieves the intended cross-compiler compatibility without side effects.
The updates to nlohmann/json and other libraries appear to be standard version bumps and are generally positive, assuming they've been tested for compatibility with the project.
//////////////////////////////////////////////////////////////////////////////// | ||
|
||
// ctype.h | ||
-extern int toupper (int __c) __THROW; | ||
+extern int toupper (int __c); | ||
+//extern int toupper (int __c) __THROW; |
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 modification to the toupper
declaration has changed. Previously, the patch seemed to remove __THROW
. Now, it comments out a line that includes __THROW
.
Original (presumably in sqlite3.c): extern int toupper (int __c) __THROW;
Old patch effect: extern int toupper (int __c);
New patch effect: //extern int toupper (int __c) __THROW;
(if the original line is still present)
This change effectively comments out the __THROW
declaration if it exists, which might be intended for broader compiler compatibility by relying on system headers or a less strict declaration. Please ensure this aligns with the intended behavior for toupper
across all supported compilers and that it doesn't inadvertently hide a necessary declaration or introduce other issues. If the goal is simply to remove __THROW
, ensuring the line is fully removed or conditionally compiled might be cleaner than commenting it out via a patch.
This reverts commit b66df68.
Signed-off-by: Wazir Ahmed <[email protected]>
Signed-off-by: Wazir Ahmed <[email protected]>
Signed-off-by: Wazir Ahmed <[email protected]>
Signed-off-by: Wazir Ahmed <[email protected]>
merge of proposed deps upgrades for v3.0.2
v3.0 upgrade libmicrohttpd to v1.0.1 #4971
v3.0 upgrade sqlite3 to v3.50.0 #4972
v3.0 upgrade curl to v8.14.0 #4973 + cherry-pick 1b19bd2 from #4990
v3.0 upgrade nlohmann json to v3.12.0 #4974v3.0 upgrade nlohmann json to v3.12.0 cherry-pick 1797faf 992e2c2 from #4990
v3.0 add abseil 20250512 cherry-pick dc6beb7 4271b02 from #4990