Skip to content

Conversation

vorburger
Copy link
Member

This restores #366 which was reverted in #471.

It documents why.

Copy link
Contributor

Summary of Changes

Hello @vorburger, 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 reintroduces the project's required Visual Studio Code settings by renaming the recommended settings file and removing it from .gitignore. The primary goal is to enforce consistent code formatting across the project, aligning with Maven build expectations, and to clearly document these requirements for contributors in CONTRIBUTING.md.

Highlights

  • VS Code Settings Restoration: The .vscode/settings.json file has been restored by renaming .vscode/settings.recommended.json and removing it from .gitignore, reintroducing essential VS Code configurations for the project.
  • Documentation Update: The CONTRIBUTING.md file now includes a new section detailing the purpose and necessity of the project's VS Code settings, emphasizing their role in maintaining consistent code formatting that aligns with Maven build expectations.
  • Git Tracking: The .vscode/settings.json file is no longer ignored by Git, ensuring it is tracked and distributed with the repository to enforce consistent development environments.
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 restores the .vscode/settings.json file to the repository, removes it from .gitignore, and adds documentation to CONTRIBUTING.md explaining the rationale. The goal is to ensure a consistent development environment that aligns with the project's formatting standards. The changes are logical and well-explained. I have one suggestion to improve the clarity and platform-agnosticism of the new documentation.

@Jacksunwei
Copy link
Collaborator

Each developer has their own setup, checking in this would cause headache. It's also not a good practice to checkin settings.json. We can have a recommended settings on the side as newcomers' starting point.

@vorburger
Copy link
Member Author

Each developer has their own setup, checking in this would cause headache. It's also not a good practice to checkin settings.json. We can have a recommended settings on the side as newcomers' starting point.

@Jacksunwei may I respectfully but fundamentally disagree with you about this? Check out the addition to the CONTRIBUTING.md in this PR for why... The current settings.json, originally proposed in #366 and reverted in #471, are (quite intentionally), very minimal. They are "required", and not just a "recommendation" or "preference". More specifically, they make sure that working with this code in VS Code matches the code format expectations of the Maven build. It is absolutely a good best practice to checkin such basic settings, so that any contributor can be "up and running" immediately with a correctly configured development. Could I cordially invite you to do please elaborate on how they could ever cause any headache to anyone?

What you mean is that one may also have OTHER (!) VS Code settings which are your "personal preferences" instead of "project requirements". And I totally agree with you about that! But that's something else. Those belong into personal settings in your VS Code User Settings instead. The location of this file varies by platform (e.g., ~/.config/Code/User/settings.json on Linux). That is precisely why VSC has 2 separate configurations - a workspace (for a project, like this; which we need to have, but keep minimal), and a separate individual personal one.

I hope that this additional context that I've hereby provided helps you to see why this makes sense and is required?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants