Skip to content

Conversation

@brettchabot
Copy link
Collaborator

Overview

Proposed Changes

It is currently planned to release a new standlone androidx.test.monitor artifact.
This change explictly adds monitor to the gradle deps, so this new version
can be tested while using the stable released versions of other artifacts.

PiperOrigin-RevId: 856301565
@gemini-code-assist
Copy link

Summary of Changes

Hello @brettchabot, 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 focuses on preparing the AndroidX Test project for a release branch, as indicated by the title 'Axt 2026 01 14 release branch'. The primary changes involve a strategic rollback of several core AndroidX Test component versions from alpha to more stable or older releases, ensuring a robust foundation for the upcoming release. Additionally, the 'monitor' library has been consistently integrated across various test modules and build configurations, and the internal Maven repository definition has been streamlined.

Highlights

  • Version Rollback for AXT Components: Many AndroidX Test (AXT) component versions, including Runner, Rules, Espresso, and Core, have been reverted from alpha releases to older, stable versions, aligning with a release branch strategy.
  • Monitor Library Integration: The 'monitor' library has been explicitly added as a dependency in the 'espresso', 'orchestrator', and 'runner' Gradle test modules, and its version defined in the 'axt_versions.bzl' and 'settings.gradle' files, ensuring consistent usage.
  • Maven Repository Streamlining: The 'axt_m2repository' definition in the 'BUILD' file has been simplified to only include the 'monitor_maven_artifact', potentially optimizing the build process for specific release artifacts.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

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

@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 appears to be preparing for a release by updating dependency versions. However, there are a few concerns.
Most critically, the BUILD file change removes almost all artifacts from the axt_m2repository, which is likely an error from an automation script and could break Bazel builds.
Additionally, there's an inconsistency in the version updates in build_extensions/axt_versions.bzl, where most versions are downgraded, but one remains an alpha version.
Finally, for better maintainability, I've made a suggestion to sort the libraries in the Gradle version catalog template alphabetically.

Please review these points, especially the critical issue in the BUILD file.

"//services:test_services_maven_artifact",
"//services/storage/java/androidx/test/services/storage:test_storage_maven_artifact",
],
srcs = ["//runner/monitor/java/androidx/test:monitor_maven_artifact"],

Choose a reason for hiding this comment

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

critical

The srcs list for the axt_m2repository has been reduced to a single artifact. This repository is intended to contain all AndroidX Test artifacts for Bazel-based testing. Removing almost all artifacts will likely break builds that depend on this. This change seems to be a result of an error in the release automation script (tools/release/validate_and_propagate_versions.sh). Please verify that this change is intentional. If not, the list of artifacts should be restored.

Comment on lines +7 to +16
RUNNER_VERSION = "1.7.0"
RULES_VERSION = "1.7.0"
MONITOR_VERSION = "1.9.0-alpha01"
ESPRESSO_VERSION = "3.8.0-alpha01"
CORE_VERSION = "1.8.0-alpha01"
ESPRESSO_DEVICE_VERSION = "1.2.0-alpha01"
ANDROIDX_JUNIT_VERSION = "1.4.0-alpha01"
ANDROIDX_TRUTH_VERSION = "1.8.0-alpha01"
ORCHESTRATOR_VERSION = "1.7.0-alpha01"
SERVICES_VERSION = "1.7.0-alpha01"
ESPRESSO_VERSION = "3.7.0"
CORE_VERSION = "1.7.0"
ESPRESSO_DEVICE_VERSION = "1.1.0"
ANDROIDX_JUNIT_VERSION = "1.3.0"
ANDROIDX_TRUTH_VERSION = "1.7.0"
ORCHESTRATOR_VERSION = "1.6.1"
SERVICES_VERSION = "1.6.0"

Choose a reason for hiding this comment

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

medium

There's an inconsistency in the version updates. Most versions are being reverted to older, stable releases (e.g., RUNNER_VERSION from 1.8.0-alpha01 to 1.7.0), but MONITOR_VERSION remains at 1.9.0-alpha01. Could you clarify if this is intentional? If all versions are meant to be for a specific release, they should probably be consistent.

versionCatalogs {
libs {
library('core', 'androidx.test:core:{CORE_VERSION}')
library('monitor', 'androidx.test:monitor:{MONITOR_VERSION}')

Choose a reason for hiding this comment

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

medium

For better maintainability and readability, it's a good practice to keep the library definitions in the version catalog sorted alphabetically by their alias. Please consider reordering all library definitions within the libs block alphabetically. Since settings.gradle is auto-generated from this template, this is the correct place to apply the change.

@brettchabot brettchabot merged commit fd4723c into axt_2026_01_14_release_branch Jan 14, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants