Skip to content

Conversation

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.

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 version bump for the adyen-java-api-library from 39.2.0 to 39.2.1. This is part of an automated release process, incorporating changes from a previously merged pull request.

Highlights

  • Library Version Update: The core library version has been incremented from 39.2.0 to 39.2.1.
  • Configuration File Updates: The pom.xml file, which manages project dependencies and build information, has been updated to reflect the new version.
  • Documentation and Metadata Updates: The README.md file, providing usage instructions, and the VERSION file, which explicitly states the current library version, have both been updated.
  • Internal Client Version Constant: The LIB_VERSION constant within the Client.java source file has been updated to match the new library version.
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 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 or fill out our survey 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

  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 updates the library version to 39.2.1 across several files. The changes are consistent for a release. My review focuses on improving maintainability by suggesting ways to avoid hardcoding the version number in multiple places. By using the pom.xml as a single source of truth, you can automate version updates in the Java code, README.md, and the VERSION file, which will reduce the risk of inconsistencies in future releases.

README.md Outdated
<groupId>com.adyen</groupId>
<artifactId>adyen-java-api-library</artifactId>
<version>39.2.0</version>
<version>39.2.1</version>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Hardcoding the version in the README makes it another place to update for every release. Consider using a placeholder like ${project.version} and using a Maven plugin (like maven-resources-plugin with filtering on a README.md.template or a dedicated readme-updater plugin) to substitute it with the current version from pom.xml during the build/release process. This helps keep documentation in sync with the code automatically.

VERSION Outdated
@@ -1 +1 @@
39.2.0
39.2.1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This file also contains a hardcoded version, which is a duplication of the version in pom.xml. To avoid potential inconsistencies, consider generating this file during the build process using a Maven plugin (e.g., maven-antrun-plugin or exec-maven-plugin) to write the project version from pom.xml into this file.

private Config config;
public static final String LIB_NAME = "adyen-java-api-library";
public static final String LIB_VERSION = "39.2.0";
public static final String LIB_VERSION = "39.2.1";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Hardcoding the library version here duplicates the version from pom.xml. This can lead to inconsistencies during releases.

Since you are using maven-bundle-plugin, the version is already available in the META-INF/MANIFEST.MF file inside the JAR. You can read it dynamically to avoid this hardcoded value. This would make pom.xml the single source of truth for the version.

Here's an example of how you could load it dynamically:

import java.util.jar.Manifest;
import java.io.InputStream;
import java.io.IOException;
import java.util.jar.Attributes;

// ... inside Client class

private static String getVersion() {
    try {
        InputStream is = Client.class.getClassLoader().getResourceAsStream("META-INF/MANIFEST.MF");
        if (is != null) {
            Manifest manifest = new Manifest(is);
            Attributes mainAttribs = manifest.getMainAttributes();
            String version = mainAttribs.getValue("Bundle-Version");
            if (version != null) {
                return version;
            }
        }
    } catch (IOException e) {
        // Log error or ignore
    }
    // Fallback for tests or when running outside a JAR
    return "DEV_VERSION";
}

public static final String LIB_VERSION = getVersion();

This approach would require changing this line to call the new method.

@AdyenAutomationBot AdyenAutomationBot changed the title Release v39.2.1 Release v39.3.0 Aug 8, 2025
@AdyenAutomationBot AdyenAutomationBot force-pushed the promote/main branch 4 times, most recently from 13d6d0a to 61fde3f Compare August 11, 2025 13:21
@AdyenAutomationBot AdyenAutomationBot force-pushed the promote/main branch 6 times, most recently from 8eb4a56 to 61d74ad Compare August 20, 2025 08:29
@AdyenAutomationBot AdyenAutomationBot force-pushed the promote/main branch 2 times, most recently from 3ffc3f5 to c0133f5 Compare August 27, 2025 13:56
@AdyenAutomationBot AdyenAutomationBot merged commit b91ea7d into main Aug 27, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants