-
Notifications
You must be signed in to change notification settings - Fork 71
internal: Migrate AirSpec to Sonatype Central Portal #3961
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
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 @xerial, 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 authored by xerial.
This PR focuses on migrating the publishing configuration for the AirSpec project to align with the Sonatype Central Portal requirements. This involves updating the publishTo
settings in the build files to correctly route snapshot and release artifacts and removing the dependency on the older sbt-sonatype
plugin, which is often superseded by newer workflows for Central Portal.
Highlights
- Updated Publish Logic: The
publishTo
setting has been modified to conditionally publish snapshot versions to the Sonatype Central snapshots repository (https://central.sonatype.com/repository/maven-snapshots/
) and release versions to the local staging directory. - Removed sbt-sonatype Plugin: The explicit dependency on the
sbt-sonatype
plugin has been removed from the project plugins.
Changelog
- airspec/build.sbt
- Updated the
publishTo
setting (lines 38-42) to implement conditional publishing based on whether the build is a snapshot. - Removed the explicit
sonatypeProfileName
andsonatypeSessionName
settings (lines 40-41, original). - Made a minor formatting adjustment to a comment block (lines 134-135).
- Updated the
- airspec/project/plugin.sbt
- Removed the
addSbtPlugin
entry forsbt-sonatype
(line 3). - Added a space in the assignment for
SCALAJS_VERSION
(line 12).
- Removed the
- build.sbt
- Removed a comment (line 156) referencing a workaround for an sbt issue related to the old
publishTo
setting.
- Removed a comment (line 156) referencing a workaround for an sbt issue related to the old
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 configure Gemini 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 effectively migrates AirSpec publishing to the Sonatype Central Portal. The changes are clear, well-targeted, and correctly implement the necessary adjustments to the build configuration.
Key changes include:
- Updating the
publishTo
settings inairspec/build.sbt
to use the new Sonatype Central snapshot repository URL andlocalStaging.value
for releases. - Removing the
sbt-sonatype
plugin fromairspec/project/plugin.sbt
, which is appropriate as it's designed for the older OSSRH workflow. - Removing related old Sonatype configuration keys like
sonatypeProfileName
andsonatypeSessionName
.
The modifications appear robust for their intended purpose. Well done on this migration!
Summary of Findings
- Stylistic Code Formatting: Minor stylistic changes were observed, such as Scaladoc formatting in
airspec/build.sbt
(lines 134-135) and variable alignment inairspec/project/plugin.sbt
(line 12). These are considered low severity and have not been commented on directly due to the current review settings, which prioritize medium, high, and critical issues. - Obsolete Comment Removal: An obsolete comment regarding an sbt workaround (sbt/sbt#3760) was removed from the root
build.sbt
(line 156 on the left side of the diff). Given that the sbt issue was resolved in sbt 1.1.0, this cleanup is appropriate. This is a low severity change and has not been commented on directly due to review settings.
Merge Readiness
The changes in this pull request are well-implemented and align with the goal of migrating to Sonatype Central Portal. No critical or high-severity issues were found in the provided diffs. Based on this review of the code changes, the PR appears to be in good shape for merging. As an AI, I am not authorized to approve pull requests; please ensure it undergoes any further necessary reviews by team members before merging.
Description
Related Issue/Task
Checklist