-
Notifications
You must be signed in to change notification settings - Fork 146
Release v39.5.0 #1562
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
Release v39.5.0 #1562
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.
Summary of Changes
Hello @AdyenAutomationBot, 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 performs a routine version bump for the adyen-java-api-library to v39.5.0. The changes primarily involve updating version numbers in the project's configuration files and the main client class, signifying a new release that incorporates previously merged features or fixes, specifically referencing pull request #1561.
Highlights
- Version Update: The library version has been updated from
39.4.0to39.5.0across all relevant project files. - Dependency Update: The Maven dependency version in
README.mdandpom.xmlhas been incremented to39.5.0. - Internal Version Constant: The
LIB_VERSIONconstant within theClient.javafile has been updated to reflect the new39.5.0release.
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
-
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 updates the library version to 39.5.0. The changes are consistent across all modified files. However, I've noticed that the version number is hardcoded in multiple places (pom.xml, src/main/java/com/adyen/Client.java, README.md, and VERSION). This manual process is error-prone and can lead to inconsistencies. I've added comments with suggestions to automate this process by using Maven features to have a single source of truth for the version number, which would improve maintainability and simplify future releases.
| <groupId>com.adyen</groupId> | ||
| <artifactId>adyen-java-api-library</artifactId> | ||
| <version>39.4.0</version> | ||
| <version>39.5.0</version> |
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.
The version number is hardcoded in this example. This requires manual updates for each release and can be missed, leading to outdated documentation. Consider using a placeholder for the version, like ${project.version}, and using a Maven plugin such as maven-replacer-plugin to substitute it with the current project version during the build process. This would ensure the documentation always reflects the correct version from pom.xml.
| @@ -1 +1 @@ | |||
| 39.4.0 | |||
| 39.5.0 | |||
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.
This file contains a hardcoded version number, which is also defined in pom.xml. To maintain a single source of truth and simplify releases, consider generating this file automatically from the pom.xml version during your build or release process. A Maven plugin like maven-antrun-plugin could be used to write the project version into this file.
| private Config config; | ||
| public static final String LIB_NAME = "adyen-java-api-library"; | ||
| public static final String LIB_VERSION = "39.4.0"; | ||
| public static final String LIB_VERSION = "39.5.0"; |
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.
The library version is hardcoded here, duplicating the version defined in pom.xml. This can lead to inconsistencies. A better approach is to read the version from the JAR's manifest file at runtime.
You can configure the maven-bundle-plugin in your pom.xml to add the version to the manifest:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
...
<configuration>
<instructions>
<Export-Package>com.adyen</Export-Package>
<Implementation-Title>${project.name}</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
</instructions>
</configuration>
</plugin>Then, you can retrieve it in the code like this. This will make your release process more robust.
| public static final String LIB_VERSION = "39.5.0"; | |
| public static final String LIB_VERSION = Client.class.getPackage().getImplementationVersion(); |
d291267 to
1253e72
Compare
1253e72 to
21b919b
Compare
Merged pull requests to be released:
Full Changelog: v39.4.0...main