Skip to content

fix: improve Makefile process and output#23

Open
DrKJeff16 wants to merge 4 commits into
stephansama:mainfrom
DrKJeff16:ci/makefile-fix
Open

fix: improve Makefile process and output#23
DrKJeff16 wants to merge 4 commits into
stephansama:mainfrom
DrKJeff16:ci/makefile-fix

Conversation

@DrKJeff16

Copy link
Copy Markdown
Collaborator

📃 Summary

I've reworked and streamlined most of the Makefile structure (and the deps.sh file to a lesser extent).

📸 Preview

NONE.

Signed-off-by: Guennadi Maximov C <g.maxc.fox@protonmail.com>
@changeset-bot

changeset-bot Bot commented Jan 13, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 25886ba

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @DrKJeff16, 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 enhancing the project's build and dependency management processes by extensively refactoring the Makefile and streamlining the deps.sh script. The changes aim to improve the clarity, modularity, and maintainability of build commands, while also providing a cleaner execution output for users and CI systems.

Highlights

  • Makefile Refactoring: The Makefile has been significantly refactored to improve readability and maintainability by introducing variables for common commands (e.g., NVIM_CMD, MINI_TEST_CMD, MINI_DOC_CMD).
  • Dependency Management: New phony targets (ensure-deps/mini, ensure-deps/luals) have been added to the Makefile to explicitly manage and install dependencies for mini.nvim and lua-language-server, making dependency resolution clearer and more modular.
  • Cleaner Output: Most Makefile commands now use the @ prefix to suppress command echoing, resulting in a cleaner and less verbose console output during execution. Similarly, verbose printf statements have been removed from scripts/deps.sh.
  • Streamlined Script Execution: Existing Makefile targets like test, documentation, and luals have been updated to leverage the newly defined variables and dependency targets, simplifying their command definitions.

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

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.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

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 does a great job of refactoring the Makefile to improve its structure and readability. The introduction of variables for common commands and dedicated targets for dependency management are excellent changes that reduce duplication and make the build process clearer. The corresponding cleanup in deps.sh to remove verbose output is also a welcome improvement.

I've added a few suggestions:

  • A high-severity suggestion in scripts/deps.sh to fix a potential bug where a download failure could go unnoticed.
  • A couple of medium-severity suggestions in the Makefile to improve consistency in command output silencing.

Overall, these are solid improvements to the project's tooling.

Comment thread scripts/deps.sh
Comment thread Makefile Outdated
Comment thread Makefile Outdated
DrKJeff16 and others added 2 commits January 12, 2026 19:57
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Guennadi Maximov C <g.maxc.fox@protonmail.com>
Signed-off-by: Guennadi Maximov C <g.maxc.fox@protonmail.com>
@DrKJeff16

Copy link
Copy Markdown
Collaborator Author

@stephansama I'm completely clueless as to what should that failed test mean...

@stephansama

stephansama commented Jan 13, 2026

Copy link
Copy Markdown
Owner

@stephansama I'm completely clueless as to what should that failed test mean...

It's all good @DrKJeff16 I'm not too sure either. I'm at work now. But when I get home I will look at it more thoroughly. And move your maintainer status to over the whole project. As you have made a lot of valuable contributions and I trust your judgment.

@DrKJeff16

DrKJeff16 commented Jan 13, 2026

Copy link
Copy Markdown
Collaborator Author

@stephansama I am honored

Signed-off-by: Guennadi Maximov C <g.maxc.fox@protonmail.com>

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

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 significantly improves the Makefile by introducing variables to reduce duplication, creating dedicated targets for dependency management, and cleaning up the output by silencing commands. The changes make the build process more modular and easier to understand. The accompanying changes in scripts/deps.sh also improve script robustness and align with the goal of cleaner output. I have a couple of suggestions for the Makefile to further improve code consistency and readability.

Comment thread Makefile
Comment thread Makefile
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

This pull request significantly refactors the project's Makefile and streamlines the deps.sh script to improve build process clarity, output, and dependency management. The changes introduce command variables for common commands, establish explicit dependency targets, and ensure cleaner command execution, ultimately enhancing maintainability and user experience.

Highlights

  • Makefile Command Variables: Introduced DEPS_CMD, NVIM_CMD, MINI_TEST_CMD, and MINI_DOC_CMD variables in the Makefile for common commands, enhancing reusability and clarity.
  • Explicit Dependency Targets: Added new phony targets, ensure-deps/luals and ensure-deps/mini, to explicitly manage and install dependencies for LuaLS and mini.nvim, making dependency resolution clearer and more modular.
  • Cleaned Output: Most Makefile commands now utilize the @ prefix to suppress command echoing, resulting in a cleaner and less verbose console output. Additionally, verbose printf statements were removed from scripts/deps.sh.
  • Improved Shell Script Robustness: Added set -o pipefail to scripts/deps.sh to ensure that errors in command pipelines are properly propagated, preventing silent failures and improving script reliability.
  • Streamlined Target Definitions: Existing Makefile targets such as test, test-nightly, test-0.8.3, documentation, and luals have been updated to leverage the newly defined command variables and dependency targets, simplifying their command definitions.

🧠 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
  • Makefile
    • Defined DEPS_CMD, NVIM_CMD, MINI_TEST_CMD, and MINI_DOC_CMD variables for common command sequences.
    • Introduced ensure-deps/luals and ensure-deps/mini phony targets to manage specific dependency installations.
    • Updated test, test-nightly, test-0.8.3, documentation, and luals targets to depend on the new ensure-deps targets and utilize the newly defined command variables.
    • Applied the @ prefix to most command lines to suppress echoing, resulting in cleaner output.
    • Added ensure-deps/mini and ensure-deps/luals to the .PHONY declaration.
  • scripts/deps.sh
    • Added set -o pipefail to the script for improved error handling in command pipelines.
    • Removed printf statements that previously echoed commands before execution, reducing verbosity.
    • Adjusted indentation within the case statement for DEP argument handling.
Activity
  • changeset-bot[bot] noted that no changeset was found for this pull request.
  • gemini-code-assist[bot] provided an initial summary of the changes in the pull request.
  • gemini-code-assist[bot] suggested adding set -o pipefail to scripts/deps.sh to ensure proper error propagation in command pipelines (high priority).
  • gemini-code-assist[bot] recommended silencing recursive make calls in the test-nightly target with @ for cleaner output (medium priority).
  • gemini-code-assist[bot] recommended silencing recursive make calls in the test-0.8.3 target with @ for cleaner output (medium priority).
  • DrKJeff16 inquired about the meaning of a failed test.
  • stephansama responded to DrKJeff16 regarding the failed test and offered to grant maintainer status.
  • DrKJeff16 expressed honor regarding the offer of maintainer status.
  • DrKJeff16 explicitly requested a /gemini review.
  • DrKJeff16 explicitly requested a /gemini summary.
  • gemini-code-assist[bot] pointed out inconsistent indentation for the MINI_DOC_CMD variable definition in the Makefile (medium priority).
  • gemini-code-assist[bot] suggested refactoring a one-liner shell command in the luals target of the Makefile for improved readability (medium priority).

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.

2 participants