feat!: New permanent groupId: org.a2aproject.sdk#750
Conversation
The old io.github.a2asdk was temporary
Summary of ChangesHello, 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 introduces a significant, yet straightforward, update to the project's Maven Highlights
Changelog
Ignored Files
Activity
Using Gemini Code AssistThe 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
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 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
|
There was a problem hiding this comment.
Code Review
This pull request correctly updates the project's Maven groupId from the temporary io.github.a2asdk to the permanent org.a2aproject.sdk. The changes are extensive and appear to cover all necessary files, including POMs, documentation, and scripts. I've added a few suggestions to improve maintainability by replacing hardcoded groupId values with the ${project.groupId} property in several pom.xml files and using a variable in a shell script. This will make future refactoring easier.
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> |
| <dependencies> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> |
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> |
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry-spring</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry-common</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry-client</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry-server</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-opentelemetry-client-propagation</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-test-utils-docker</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> |
There was a problem hiding this comment.
For consistency with other dependencies in this file, it would be better to use ${project.groupId} instead of hardcoding org.a2aproject.sdk. This will make future changes to the groupId easier to manage.
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry-spring</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-sdk-opentelemetry-client-propagation</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>a2a-java-test-utils-docker</artifactId>
<version>${project.version}</version>
</dependency>
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-reference-grpc</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-reference-rest</artifactId> |
There was a problem hiding this comment.
For consistency with other dependencies in this file, it would be better to use ${project.groupId} instead of hardcoding org.a2aproject.sdk.
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-reference-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-reference-rest</artifactId> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-reference-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-reference-rest</artifactId> |
| <dependencies> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> |
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-server-common</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-spec</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> |
There was a problem hiding this comment.
For consistency with other dependencies in this file, it would be better to use ${project.groupId} instead of hardcoding org.a2aproject.sdk.
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-server-common</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-spec</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | |
| <version>${project.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-server-common</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-spec</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | |
| <version>${project.version}</version> | |
| </dependency> |
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-server-common</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-spec</artifactId> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>io.github.a2asdk</groupId> | ||
| <groupId>org.a2aproject.sdk</groupId> | ||
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | ||
| <version>${project.version}</version> | ||
| </dependency> |
There was a problem hiding this comment.
For consistency with other dependencies in this file, it would be better to use ${project.groupId} instead of hardcoding org.a2aproject.sdk.
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-server-common</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-spec</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>io.github.a2asdk</groupId> | |
| <groupId>org.a2aproject.sdk</groupId> | |
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | |
| <version>${project.version}</version> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-server-common</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-spec-grpc</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-spec</artifactId> | |
| </dependency> | |
| <dependency> | |
| <groupId>${project.groupId}</groupId> | |
| <artifactId>a2a-java-sdk-jsonrpc-common</artifactId> | |
| <version>${project.version}</version> | |
| </dependency> |
| # Find all files to update | ||
| POM_FILES=$(find . -type f -name "pom.xml" | sort) | ||
| JBANG_FILES=$(find . -type f -name "*.java" -path "*/examples/*" -exec grep -l "//DEPS io.github.a2asdk:" {} \; | sort) | ||
| JBANG_FILES=$(find . -type f -name "*.java" -path "*/examples/*" -exec grep -l "//DEPS org.a2aproject.sdk:" {} \; | sort) |
There was a problem hiding this comment.
The groupId org.a2aproject.sdk is hardcoded in multiple places in this script (lines 47, 72, 74, 110, 113, 116). It would be better to define it as a variable at the top of the script to improve maintainability. For example:
GROUP_ID="org.a2aproject.sdk"
...
JBANG_FILES=$(find . -type f -name "*.java" -path "*/examples/*" -exec grep -l "//DEPS $GROUP_ID:" {} \; | sort)There was a problem hiding this comment.
We're not going to change it again
Reflects the groupId change in a2aproject/a2a-java#750. Updates the codegen template, emitter, generated SUT sources, and test paths to use org.a2aproject.sdk consistently. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The old io.github.a2asdk was temporary. It was decided to not change the package names.
Breaking Change:
Going forward
org.a2aproject.sdkwill be used as the groupId instead ofio.github.a2asdk