Skip to content

Improve vcpkg#7396

Merged
waruqi merged 8 commits intodevfrom
vcpkg
Mar 13, 2026
Merged

Improve vcpkg#7396
waruqi merged 8 commits intodevfrom
vcpkg

Conversation

@waruqi
Copy link
Member

@waruqi waruqi commented Mar 13, 2026

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, 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 significantly improves Xmake's integration with Vcpkg by refining how package features are detected and how packages are installed. It introduces a new utility module to streamline Vcpkg interactions and adds a crucial user confirmation step during installation to prevent accidental rebuilds of packages when feature sets change, addressing the issue of managing Vcpkg features more robustly.

Highlights

  • Refactored Vcpkg feature detection: The logic for checking if required Vcpkg features are installed has been centralized and improved by using a new utility function.
  • Enhanced Vcpkg package installation: Users are now prompted before rebuilding a Vcpkg package if it's already installed with different features, preventing unintended rebuilds.
  • Introduced Vcpkg utility module: A new module vcpkg/utils.lua was added to encapsulate common Vcpkg-related helper functions, improving code organization and reusability.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • xmake/modules/package/manager/vcpkg/find_package.lua
    • Updated feature installation checks to use the new vcpkg_utils.is_installed function.
  • xmake/modules/package/manager/vcpkg/install_package.lua
    • Modified package installation logic to prompt the user for confirmation before rebuilding a package that is already installed with different features.
  • xmake/modules/package/manager/vcpkg/utils.lua
    • Added a new module containing helper functions for Vcpkg, including is_installed to check if a package or feature is present.
Activity
  • No human activity has been recorded on this pull request yet.
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 by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

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 pull request 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 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. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

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

  1. 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.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a 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 improves vcpkg integration by refactoring shared logic into a new utility module and adding a confirmation prompt before rebuilding a package with different features. The changes are well-structured and enhance user experience. I have one suggestion to improve the logic for the confirmation prompt to avoid unnecessary prompts when a package with the exact same features is already installed.

@waruqi waruqi added this to the v3.0.8 milestone Mar 13, 2026
@waruqi waruqi merged commit 78d9621 into dev Mar 13, 2026
77 checks passed
@waruqi waruqi deleted the vcpkg branch March 13, 2026 14:42
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.

1 participant