From cd25b403241e2bab0c8fc41c89d506b9603bd658 Mon Sep 17 00:00:00 2001
From: Joe Wang <106995533+JoeWang1127@users.noreply.github.com>
Date: Thu, 10 Oct 2024 15:20:13 +0000
Subject: [PATCH 01/14] chore: remove release-please in generated README.md
(#3289)
In this PR:
- Remove release-please settings in README.md template because the
version is managed by hermetic build.
---
.../owlbot/templates/java_library/README.md | 2 -
.../test/owlbot/java_unit_tests.py | 18 ++
.../render-readme/.repo-metadata.json | 18 ++
.../test-owlbot/testdata/README-golden.md | 202 ++++++++++++++++++
4 files changed, 238 insertions(+), 2 deletions(-)
create mode 100644 library_generation/test/resources/test-owlbot/fixtures/java_templates/render-readme/.repo-metadata.json
create mode 100644 library_generation/test/resources/test-owlbot/testdata/README-golden.md
diff --git a/library_generation/owlbot/templates/java_library/README.md b/library_generation/owlbot/templates/java_library/README.md
index ef1e8ec7cd..35b1b34492 100644
--- a/library_generation/owlbot/templates/java_library/README.md
+++ b/library_generation/owlbot/templates/java_library/README.md
@@ -64,7 +64,6 @@ If you are using Maven without the BOM, add this to your dependencies:
{% else %}
If you are using Maven, add this to your pom.xml file:
{% endif %}
-
```xml
{% if 'snippets' in metadata and metadata['snippets'][metadata['repo']['api_shortname'] + '_install_without_bom'] -%}
@@ -99,7 +98,6 @@ If you are using SBT, add this to your dependencies:
```Scala
libraryDependencies += "{{ group_id }}" % "{{ artifact_id }}" % "{{ version }}"
```
-
## Authentication
diff --git a/library_generation/test/owlbot/java_unit_tests.py b/library_generation/test/owlbot/java_unit_tests.py
index 3037afd263..9d7cb694c5 100644
--- a/library_generation/test/owlbot/java_unit_tests.py
+++ b/library_generation/test/owlbot/java_unit_tests.py
@@ -278,6 +278,24 @@ def test_release_please_handle_releases(self):
""",
)
+ @mock.patch.dict(
+ os.environ,
+ {
+ "SYNTHTOOL_TEMPLATES": f"{TEMPLATES_PATH}",
+ "SYNTHTOOL_LIBRARY_VERSION": "1.2.3",
+ },
+ )
+ def test_render_readme_success(self):
+ golden_path = os.path.abspath(f"{TEST_OWLBOT}/testdata/README-golden.md")
+ with util.copied_fixtures_dir(FIXTURES / "java_templates" / "render-readme"):
+ # This method needs read .repo-metadata.json to render templates.
+ # The file is located in FIXTURES/java_templates/render-readme.
+ java.common_templates(
+ template_path=TEMPLATES_PATH,
+ )
+ self.assertTrue(os.path.isfile("README.md"))
+ self.assert_matches_golden(golden_path, "README.md")
+
def assert_matches_golden(self, expected, actual):
matching_lines = 0
with open(actual, "rt") as fp:
diff --git a/library_generation/test/resources/test-owlbot/fixtures/java_templates/render-readme/.repo-metadata.json b/library_generation/test/resources/test-owlbot/fixtures/java_templates/render-readme/.repo-metadata.json
new file mode 100644
index 0000000000..840e69ca7a
--- /dev/null
+++ b/library_generation/test/resources/test-owlbot/fixtures/java_templates/render-readme/.repo-metadata.json
@@ -0,0 +1,18 @@
+{
+ "api_shortname": "cloudasset",
+ "name_pretty": "Cloud Asset Inventory",
+ "product_documentation": "https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview",
+ "api_reference": "https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview",
+ "api_description": "provides inventory services based on a time series database. This database keeps a five week history of Google Cloud asset metadata. The Cloud Asset Inventory export service allows you to export all asset metadata at a certain timestamp or export event change history during a timeframe.",
+ "client_documentation": "https://googleapis.dev/java/google-cloud-asset/latest/index.html",
+ "issue_tracker": "https://issuetracker.google.com/issues/new?component=187210&template=0",
+ "release_level": "stable",
+ "transport": "grpc",
+ "requires_billing": true,
+ "language": "java",
+ "repo": "googleapis/java-asset",
+ "repo_short": "java-asset",
+ "distribution_name": "com.google.cloud:google-cloud-asset",
+ "library_type": "GAPIC_AUTO",
+ "api_id": "cloudasset.googleapis.com"
+}
\ No newline at end of file
diff --git a/library_generation/test/resources/test-owlbot/testdata/README-golden.md b/library_generation/test/resources/test-owlbot/testdata/README-golden.md
new file mode 100644
index 0000000000..bb4eb039f5
--- /dev/null
+++ b/library_generation/test/resources/test-owlbot/testdata/README-golden.md
@@ -0,0 +1,202 @@
+# Google Cloud Asset Inventory Client for Java
+
+Java idiomatic client for [Cloud Asset Inventory][product-docs].
+
+[![Maven][maven-version-image]][maven-version-link]
+![Stability][stability-image]
+
+- [Product Documentation][product-docs]
+- [Client Library Documentation][javadocs]
+
+
+:bus: In October 2022, this library has moved to
+[google-cloud-java/java-asset](
+https://github.com/googleapis/google-cloud-java/tree/main/java-asset).
+This repository will be archived in the future.
+Future releases will appear in the new repository (https://github.com/googleapis/google-cloud-java/releases).
+The Maven artifact coordinates (`com.google.cloud:google-cloud-asset`) remain the same.
+
+## Quickstart
+
+
+If you are using Maven, add this to your pom.xml file:
+
+
+```xml
+
+ com.google.cloud
+ google-cloud-asset
+ 1.2.3
+
+```
+
+If you are using Gradle without BOM, add this to your dependencies:
+
+```Groovy
+implementation 'com.google.cloud:google-cloud-asset:1.2.3'
+```
+
+If you are using SBT, add this to your dependencies:
+
+```Scala
+libraryDependencies += "com.google.cloud" % "google-cloud-asset" % "1.2.3"
+```
+
+## Authentication
+
+See the [Authentication][authentication] section in the base directory's README.
+
+## Authorization
+
+The client application making API calls must be granted [authorization scopes][auth-scopes] required for the desired Cloud Asset Inventory APIs, and the authenticated principal must have the [IAM role(s)][predefined-iam-roles] required to access GCP resources using the Cloud Asset Inventory API calls.
+
+## Getting Started
+
+### Prerequisites
+
+You will need a [Google Cloud Platform Console][developer-console] project with the Cloud Asset Inventory [API enabled][enable-api].
+You will need to [enable billing][enable-billing] to use Google Cloud Asset Inventory.
+[Follow these instructions][create-project] to get your project set up. You will also need to set up the local development environment by
+[installing the Google Cloud Command Line Interface][cloud-cli] and running the following commands in command line:
+`gcloud auth login` and `gcloud config set project [YOUR PROJECT ID]`.
+
+### Installation and setup
+
+You'll need to obtain the `google-cloud-asset` library. See the [Quickstart](#quickstart) section
+to add `google-cloud-asset` as a dependency in your code.
+
+## About Cloud Asset Inventory
+
+
+[Cloud Asset Inventory][product-docs] provides inventory services based on a time series database. This database keeps a five week history of Google Cloud asset metadata. The Cloud Asset Inventory export service allows you to export all asset metadata at a certain timestamp or export event change history during a timeframe.
+
+See the [Cloud Asset Inventory client library docs][javadocs] to learn how to
+use this Cloud Asset Inventory Client Library.
+
+
+
+
+
+
+## Troubleshooting
+
+To get help, follow the instructions in the [shared Troubleshooting document][troubleshooting].
+
+## Transport
+
+Cloud Asset Inventory uses gRPC for the transport layer.
+
+## Supported Java Versions
+
+Java 8 or above is required for using this client.
+
+Google's Java client libraries,
+[Google Cloud Client Libraries][cloudlibs]
+and
+[Google Cloud API Libraries][apilibs],
+follow the
+[Oracle Java SE support roadmap][oracle]
+(see the Oracle Java SE Product Releases section).
+
+### For new development
+
+In general, new feature development occurs with support for the lowest Java
+LTS version covered by Oracle's Premier Support (which typically lasts 5 years
+from initial General Availability). If the minimum required JVM for a given
+library is changed, it is accompanied by a [semver][semver] major release.
+
+Java 11 and (in September 2021) Java 17 are the best choices for new
+development.
+
+### Keeping production systems current
+
+Google tests its client libraries with all current LTS versions covered by
+Oracle's Extended Support (which typically lasts 8 years from initial
+General Availability).
+
+#### Legacy support
+
+Google's client libraries support legacy versions of Java runtimes with long
+term stable libraries that don't receive feature updates on a best efforts basis
+as it may not be possible to backport all patches.
+
+Google provides updates on a best efforts basis to apps that continue to use
+Java 7, though apps might need to upgrade to current versions of the library
+that supports their JVM.
+
+#### Where to find specific information
+
+The latest versions and the supported Java versions are identified on
+the individual GitHub repository `github.com/GoogleAPIs/java-SERVICENAME`
+and on [google-cloud-java][g-c-j].
+
+## Versioning
+
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+## Contributing
+
+
+Contributions to this library are always welcome and highly encouraged.
+
+See [CONTRIBUTING][contributing] for more information how to get started.
+
+Please note that this project is released with a Contributor Code of Conduct. By participating in
+this project you agree to abide by its terms. See [Code of Conduct][code-of-conduct] for more
+information.
+
+
+## License
+
+Apache 2.0 - See [LICENSE][license] for more information.
+
+## CI Status
+
+Java Version | Status
+------------ | ------
+Java 8 | [![Kokoro CI][kokoro-badge-image-2]][kokoro-badge-link-2]
+Java 8 OSX | [![Kokoro CI][kokoro-badge-image-3]][kokoro-badge-link-3]
+Java 8 Windows | [![Kokoro CI][kokoro-badge-image-4]][kokoro-badge-link-4]
+Java 11 | [![Kokoro CI][kokoro-badge-image-5]][kokoro-badge-link-5]
+
+Java is a registered trademark of Oracle and/or its affiliates.
+
+[product-docs]: https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview
+[javadocs]: https://googleapis.dev/java/google-cloud-asset/latest/index.html
+[kokoro-badge-image-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java7.svg
+[kokoro-badge-link-1]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java7.html
+[kokoro-badge-image-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8.svg
+[kokoro-badge-link-2]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8.html
+[kokoro-badge-image-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8-osx.svg
+[kokoro-badge-link-3]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8-osx.html
+[kokoro-badge-image-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8-win.svg
+[kokoro-badge-link-4]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java8-win.html
+[kokoro-badge-image-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java11.svg
+[kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-asset/java11.html
+[stability-image]: https://img.shields.io/badge/stability-stable-green
+[maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-asset.svg
+[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-asset/1.2.3
+[authentication]: https://github.com/googleapis/google-cloud-java#authentication
+[auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes
+[predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles
+[iam-policy]: https://cloud.google.com/iam/docs/overview#cloud-iam-policy
+[developer-console]: https://console.developers.google.com/
+[create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects
+[cloud-cli]: https://cloud.google.com/cli
+[troubleshooting]: https://github.com/googleapis/google-cloud-java/blob/main/TROUBLESHOOTING.md
+[contributing]: https://github.com/googleapis/java-asset/blob/main/CONTRIBUTING.md
+[code-of-conduct]: https://github.com/googleapis/java-asset/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct
+[license]: https://github.com/googleapis/java-asset/blob/main/LICENSE
+[enable-billing]: https://cloud.google.com/apis/docs/getting-started#enabling_billing
+[enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=cloudasset.googleapis.com
+[libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM
+[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
+
+[semver]: https://semver.org/
+[cloudlibs]: https://cloud.google.com/apis/docs/client-libraries-explained
+[apilibs]: https://cloud.google.com/apis/docs/client-libraries-explained#google_api_client_libraries
+[oracle]: https://www.oracle.com/java/technologies/java-se-support-roadmap.html
+[g-c-j]: http://github.com/googleapis/google-cloud-java
From 259e9f77bb9c8a51e762dfcb993d0c0b7e7825c1 Mon Sep 17 00:00:00 2001
From: Joe Wang <106995533+JoeWang1127@users.noreply.github.com>
Date: Fri, 11 Oct 2024 16:18:32 +0000
Subject: [PATCH 02/14] chore: bake Java formatter into image (#3271)
In this PR:
- Bake Java formatter into image.
---------
Co-authored-by: cloud-java-bot
---
.../library_generation.Dockerfile | 6 +++
library_generation/DEVELOPMENT.md | 14 +++++--
library_generation/README.md | 1 -
library_generation/owlbot/bin/entrypoint.sh | 10 +----
.../owlbot/bin/format_source.sh | 22 ++++------
.../test/generate_library_unit_tests.sh | 1 +
.../test/utilities_unit_tests.py | 8 ++++
library_generation/utils/utilities.sh | 41 +++++++++++--------
showcase/scripts/generate_showcase.sh | 24 ++++++++---
9 files changed, 79 insertions(+), 48 deletions(-)
diff --git a/.cloudbuild/library_generation/library_generation.Dockerfile b/.cloudbuild/library_generation/library_generation.Dockerfile
index 315dd612c2..69c0fe3003 100644
--- a/.cloudbuild/library_generation/library_generation.Dockerfile
+++ b/.cloudbuild/library_generation/library_generation.Dockerfile
@@ -35,6 +35,7 @@ SHELL [ "/bin/bash", "-c" ]
ARG OWLBOT_CLI_COMMITTISH=38fe6f89a2339ee75c77739b31b371f601b01bb3
ARG PROTOC_VERSION=25.5
ARG GRPC_VERSION=1.67.1
+ARG JAVA_FORMAT_VERSION=1.7
ENV HOME=/home
ENV OS_ARCHITECTURE="linux-x86_64"
@@ -101,6 +102,11 @@ RUN owl-bot copy-code --version
RUN chmod -R o+rx ${NODE_PATH}
RUN ln -sf ${NODE_PATH}/* /usr/local/bin
+# download the Java formatter
+ADD https://maven-central.storage-download.googleapis.com/maven2/com/google/googlejavaformat/google-java-format/${JAVA_FORMAT_VERSION}/google-java-format-${JAVA_FORMAT_VERSION}-all-deps.jar \
+ "${HOME}"/.library_generation/google-java-format.jar
+RUN chmod 755 "${HOME}"/.library_generation/google-java-format.jar
+
# allow users to access the script folders
RUN chmod -R o+rx /src
diff --git a/library_generation/DEVELOPMENT.md b/library_generation/DEVELOPMENT.md
index cc893133ed..f32b544e1e 100644
--- a/library_generation/DEVELOPMENT.md
+++ b/library_generation/DEVELOPMENT.md
@@ -51,9 +51,8 @@ This section explains how to run the entrypoint script
## Assumptions made by the scripts
### The Hermetic Build's well-known folder
Located in `${HOME}/.library_generation`, this folder is assumed by the scripts
-to contain the generator JAR.
-Please note that this is a recent feature and only this jar is expected to be
-there.
+to contain certain tools.
+
Developers must make sure this folder is properly configured before running the
scripts locally.
Note that this relies on the `HOME` en var which is always defined as per
@@ -73,7 +72,16 @@ The generation scripts will assume the jar is there.
mv /path/to/jar "${HOME}/.library_generation/gapic-generator-java.jar"
```
+#### Put the java formatter jar in its well-known location
+
+Download google-java-format-{version}-all-deps.jar from [Maven Central](https://central.sonatype.com/artifact/com.google.googlejavaformat/google-java-format)
+or [GitHub releases](https://github.com/google/google-java-format/releases).
+Then `mv` the jar into the well-known location of the jar.
+The generation scripts will assume the jar is there.
+```shell
+mv /path/to/jar "${HOME}/.library_generation/google-java-format.jar"
+```
## Installing prerequisites
diff --git a/library_generation/README.md b/library_generation/README.md
index 3496568288..20a698a6ab 100644
--- a/library_generation/README.md
+++ b/library_generation/README.md
@@ -8,7 +8,6 @@ google-cloud-java) from a configuration file.
- OS: Linux
- Java runtime environment (8 or above)
-- Apache Maven (used in formatting source code)
- Python (3.11.6 or above)
- Docker
- Git
diff --git a/library_generation/owlbot/bin/entrypoint.sh b/library_generation/owlbot/bin/entrypoint.sh
index b64b12bdb6..3d38677678 100755
--- a/library_generation/owlbot/bin/entrypoint.sh
+++ b/library_generation/owlbot/bin/entrypoint.sh
@@ -65,7 +65,7 @@ echo "...done"
# write or restore clirr-ignored-differences.xml
echo "Generating clirr-ignored-differences.xml..."
-${scripts_root}/owlbot/bin/write_clirr_ignore.sh "${scripts_root}"
+"${scripts_root}"/owlbot/bin/write_clirr_ignore.sh "${scripts_root}"
echo "...done"
# fix license headers
@@ -73,12 +73,6 @@ echo "Fixing missing license headers..."
python3 "${scripts_root}/owlbot/src/fix-license-headers.py"
echo "...done"
-# Ensure formatting on all .java files in the repository.
-# Here we manually set the user.home system variable. Unfortunately, Maven
-# user.home inference involves the /etc/passwd file (confirmed empirically),
-# instead of the presumable $HOME env var, which may not work properly
-# when `docker run`ning with the -u flag because we may incur in users
-# not registered in the container's /etc/passwd file
echo "Reformatting source..."
-mvn fmt:format -Duser.home="${HOME}" -V --batch-mode --no-transfer-progress
+"${scripts_root}"/owlbot/bin/format_source.sh "${scripts_root}"
echo "...done"
diff --git a/library_generation/owlbot/bin/format_source.sh b/library_generation/owlbot/bin/format_source.sh
index 849e27f74f..9402be778b 100755
--- a/library_generation/owlbot/bin/format_source.sh
+++ b/library_generation/owlbot/bin/format_source.sh
@@ -22,9 +22,11 @@ set -e
# Find all the java files relative to the current directory and format them
# using google-java-format
-list="$(find . -name '*.java' -not -path ".*/samples/snippets/generated/**/*" )"
scripts_root=$1
-tmpfile=$(mktemp)
+
+source "${scripts_root}/utils/utilities.sh"
+list="$(find . -name '*.java' -not -path ".*/samples/snippets/generated/**/*" )"
+tmp_file=$(mktemp)
for file in $list;
do
@@ -35,19 +37,11 @@ do
then
echo "File skipped formatting: $file"
else
- echo $file >> $tmpfile
+ echo $file >> $tmp_file
fi
done
-# download the google-java-format tool
-if [ ! -f "${scripts_root}/owlbot/google-java-format.jar" ]; then
- echo 'downloading google-java-format'
- java_format_version=$(cat "${scripts_root}/configuration/java-format-version")
- wget -O "${scripts_root}/owlbot/google-java-format.jar" https://repo1.maven.org/maven2/com/google/googlejavaformat/google-java-format/${java_format_version}/google-java-format-${java_format_version}-all-deps.jar
-
-fi
-
-# format the source
-cat $tmpfile | xargs java -jar "${scripts_root}/owlbot/google-java-format.jar" --replace
+# use formatter downloaded in the Dockerfile.
+cat $tmp_file | xargs java -jar "$(get_java_formatter_location)" --replace
-rm $tmpfile
+rm $tmp_file
diff --git a/library_generation/test/generate_library_unit_tests.sh b/library_generation/test/generate_library_unit_tests.sh
index 2e4912536e..639abd8677 100755
--- a/library_generation/test/generate_library_unit_tests.sh
+++ b/library_generation/test/generate_library_unit_tests.sh
@@ -12,6 +12,7 @@ source "${script_dir}"/test_utilities.sh
readonly SIMULATED_HOME=$(mktemp -d)
mkdir "${SIMULATED_HOME}/.library_generation"
touch "${SIMULATED_HOME}/.library_generation/gapic-generator-java.jar"
+touch "${SIMULATED_HOME}/.library_generation/google-java-format.jar"
HOME="${SIMULATED_HOME}" source "${script_dir}"/../utils/utilities.sh
# Unit tests
diff --git a/library_generation/test/utilities_unit_tests.py b/library_generation/test/utilities_unit_tests.py
index 7d9f09ec2c..3970c5c233 100644
--- a/library_generation/test/utilities_unit_tests.py
+++ b/library_generation/test/utilities_unit_tests.py
@@ -303,6 +303,14 @@ def test_prepare_repo_split_repo_success(self):
self.assertEqual(["misc"], library_path)
shutil.rmtree(repo_config.output_folder)
+ def test_get_java_generator_location_success(self):
+ location = util.sh_util("get_gapic_generator_location")
+ self.assertRegex(location, r"/.library_generation/gapic-generator-java.jar$")
+
+ def test_get_java_formatter_location_success(self):
+ location = util.sh_util("get_java_formatter_location")
+ self.assertRegex(location, r"/.library_generation/google-java-format.jar$")
+
def __setup_postprocessing_prerequisite_files(
self,
combination: int,
diff --git a/library_generation/utils/utilities.sh b/library_generation/utils/utilities.sh
index ae285b1b04..a6112070a3 100755
--- a/library_generation/utils/utilities.sh
+++ b/library_generation/utils/utilities.sh
@@ -4,6 +4,7 @@ set -eo pipefail
utilities_script_dir=$(dirname "$(realpath "${BASH_SOURCE[0]}")")
# The $HOME variable is always set in the OS env as per POSIX specification.
GAPIC_GENERATOR_LOCATION="${HOME}/.library_generation/gapic-generator-java.jar"
+JAVA_FORMATTER_LOCATION="${HOME}/.library_generation/google-java-format.jar"
# Utility functions used in `generate_library.sh` and showcase generation.
extract_folder_name() {
@@ -137,10 +138,11 @@ get_protoc_version() {
# and "grpc_path" to DOCKER_PROTOC_PATH and DOCKER_GRPC_PATH respectively (no
# download), since the docker image will have downloaded these tools beforehand.
#
-# For the case of gapic-generator-java, no env var will be exported for the
-# upstream flow. Instead, the jar must be located in the well-known location
-# (${HOME}/.library_generation/gapic-generator-java.jar). More information in
-# `library_generation/DEVELOPMENT.md`
+# For the case of generator and formatter, no env var will be exported for the
+# upstream flow.
+# Instead, the jar must be located in the well-known location
+# (${HOME}/.library_generation/).
+# More information in `library_generation/DEVELOPMENT.md`.
download_tools() {
local protoc_version=$1
local grpc_version=$2
@@ -166,18 +168,11 @@ download_tools() {
export grpc_path=$(download_grpc_plugin "${grpc_version}" "${os_architecture}")
fi
- # Here we check whether the jar is stored in the expected location.
- # The docker image will prepare the jar in this location. Developers must
- # prepare their environment by creating
- # $HOME/.library_generation/gapic_generator_java.jar
- # This check is meant to ensure integrity of the downstream workflow. (i.e.
- # ensure the generator wrapper succeeds)
- if [[ ! -f "${GAPIC_GENERATOR_LOCATION}" ]]; then
- >&2 echo "File ${GAPIC_GENERATOR_LOCATION} not found in the "
- >&2 echo "filesystem. Please configure your environment and store the "
- >&2 echo "generator jar in this location"
- exit 1
- fi
+ # Here we check whether required tools is stored in the expected location.
+ # The docker image will prepare jar files in this location.
+ # This check is meant to ensure integrity of the downstream workflow.
+ error_if_not_exists "${GAPIC_GENERATOR_LOCATION}"
+ error_if_not_exists "${JAVA_FORMATTER_LOCATION}"
popd
}
@@ -380,3 +375,17 @@ download_googleapis_files_and_folders() {
get_gapic_generator_location() {
echo "${GAPIC_GENERATOR_LOCATION}"
}
+
+get_java_formatter_location() {
+ echo "${JAVA_FORMATTER_LOCATION}"
+}
+
+error_if_not_exists() {
+ local required_tool=$1
+ if [[ ! -f "${required_tool}" ]]; then
+ >&2 echo "File ${required_tool} not found in the filesystem. "
+ >&2 echo "Please configure your environment and store the "
+ >&2 echo "required tools in this location."
+ exit 1
+ fi
+}
diff --git a/showcase/scripts/generate_showcase.sh b/showcase/scripts/generate_showcase.sh
index c1089fd522..82691e371d 100755
--- a/showcase/scripts/generate_showcase.sh
+++ b/showcase/scripts/generate_showcase.sh
@@ -55,10 +55,14 @@ if [ ! -d google ];then
rm -rdf googleapis
fi
-# copy the generator into its well-known location. For more details,
+# copy the generator and formatter into its well-known location.
+# For more details,
# refer to library_generation/DEVELOPMENT.md
+java_formatter_name="google-java-format.jar"
+java_formatter_version="1.7"
well_known_folder="${HOME}/.library_generation"
well_known_generator_jar_location="${well_known_folder}/gapic-generator-java.jar"
+well_known_formatter_jar_location="${well_known_folder}/${java_formatter_name}"
if [[ ! -d "${well_known_folder}" ]]; then
mkdir "${well_known_folder}"
fi
@@ -66,19 +70,27 @@ if [[ -f "${well_known_generator_jar_location}" ]]; then
echo "replacing well-known generator jar with the latest one"
rm "${well_known_generator_jar_location}"
fi
+if [[ -f "${well_known_formatter_jar_location}" ]]; then
+ echo "replacing well-known formatter jar with the latest one"
+ rm "${well_known_formatter_jar_location}"
+fi
maven_repository="$(mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout)"
generator_version=$(get_version_from_versions_txt "gapic-generator-java")
-source_jar_path="${maven_repository}/com/google/api/gapic-generator-java/${generator_version}/gapic-generator-java-${generator_version}.jar"
+generator_jar_path="${maven_repository}/com/google/api/gapic-generator-java/${generator_version}/gapic-generator-java-${generator_version}.jar"
-if [[ ! -f "${source_jar_path}" ]]; then
+if [[ ! -f "${generator_jar_path}" ]]; then
echo "generator jar not found in its assumed location"
- echo "in the local repository: ${source_jar_path}"
+ echo "in the local repository: ${generator_jar_path}"
echo "(did you run mvn install in this repository's root?)"
exit 1
fi
# transfer the snapshot jar into its well-known location
-cp "${source_jar_path}" "${well_known_generator_jar_location}"
-
+cp "${generator_jar_path}" "${well_known_generator_jar_location}"
+# transfer java formatter to its well-known location
+download_from \
+ "https://maven-central.storage-download.googleapis.com/maven2/com/google/googlejavaformat/google-java-format/${java_formatter_version}/google-java-format-${java_formatter_version}-all-deps.jar" \
+ "${java_formatter_name}"
+cp "${java_formatter_name}" "${well_known_formatter_jar_location}"
gapic_additional_protos="google/iam/v1/iam_policy.proto google/cloud/location/locations.proto"
path_to_generator_parent_pom="${SCRIPT_DIR}/../../gapic-generator-java-pom-parent/pom.xml"
From 40c19b1aad71da176aeafbba32a0a4b51b5a4366 Mon Sep 17 00:00:00 2001
From: ldetmer <1771267+ldetmer@users.noreply.github.com>
Date: Tue, 15 Oct 2024 18:03:44 -0400
Subject: [PATCH 03/14] feat(gax): add protobuf version tracking to headers
(#3199)
Update the Java client libraries to report the runtime version of
Protobuf as part of the existing x-goog-api-client request header.
Tested: java-cloud-library api (billing) and hand written api (storage)
---------
Co-authored-by: Blake Li
---
.../gax/httpjson/GaxHttpJsonProperties.java | 2 +-
.../httpjson/GaxHttpJsonPropertiesTest.java | 2 +-
.../google/api/gax/core/GaxProperties.java | 36 ++++++++++++
.../api/gax/rpc/ApiClientHeaderProvider.java | 30 +++++++++-
.../api/gax/core/GaxPropertiesTest.java | 55 +++++++++++++++----
.../gax/rpc/ApiClientHeaderProviderTest.java | 36 +++++++++---
...sionHeaders.java => ITVersionHeaders.java} | 31 ++++++++++-
7 files changed, 168 insertions(+), 24 deletions(-)
rename showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/{ITApiVersionHeaders.java => ITVersionHeaders.java} (87%)
diff --git a/gax-java/gax-httpjson/src/main/java/com/google/api/gax/httpjson/GaxHttpJsonProperties.java b/gax-java/gax-httpjson/src/main/java/com/google/api/gax/httpjson/GaxHttpJsonProperties.java
index fab63c320c..a12f771fdc 100644
--- a/gax-java/gax-httpjson/src/main/java/com/google/api/gax/httpjson/GaxHttpJsonProperties.java
+++ b/gax-java/gax-httpjson/src/main/java/com/google/api/gax/httpjson/GaxHttpJsonProperties.java
@@ -36,7 +36,7 @@
@InternalApi
public class GaxHttpJsonProperties {
private static final Pattern DEFAULT_API_CLIENT_HEADER_PATTERN =
- Pattern.compile("gl-java/.+ gapic/.* gax/.+ rest/.*");
+ Pattern.compile("gl-java/.+ gapic/.*?--protobuf-.+ gax/.+ rest/.*");
/** Returns default api client header pattern (to facilitate testing) */
public static Pattern getDefaultApiClientHeaderPattern() {
diff --git a/gax-java/gax-httpjson/src/test/java/com/google/api/gax/httpjson/GaxHttpJsonPropertiesTest.java b/gax-java/gax-httpjson/src/test/java/com/google/api/gax/httpjson/GaxHttpJsonPropertiesTest.java
index 007b100577..2547ec95bd 100644
--- a/gax-java/gax-httpjson/src/test/java/com/google/api/gax/httpjson/GaxHttpJsonPropertiesTest.java
+++ b/gax-java/gax-httpjson/src/test/java/com/google/api/gax/httpjson/GaxHttpJsonPropertiesTest.java
@@ -41,7 +41,7 @@ class GaxHttpJsonPropertiesTest {
void testDefaultHeaderPattern() {
assertTrue(
GaxHttpJsonProperties.getDefaultApiClientHeaderPattern()
- .matcher("gl-java/1.8_00 gapic/1.2.3-alpha gax/1.5.0 rest/1.7.0")
+ .matcher("gl-java/1.8_00 gapic/1.2.3-alpha--protobuf-1.5.0 gax/1.5.0 rest/1.7.0")
.matches());
}
}
diff --git a/gax-java/gax/src/main/java/com/google/api/gax/core/GaxProperties.java b/gax-java/gax/src/main/java/com/google/api/gax/core/GaxProperties.java
index 66fbaf887a..20d5ecc0dc 100644
--- a/gax-java/gax/src/main/java/com/google/api/gax/core/GaxProperties.java
+++ b/gax-java/gax/src/main/java/com/google/api/gax/core/GaxProperties.java
@@ -32,9 +32,15 @@
import com.google.api.core.InternalApi;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Strings;
+import com.google.protobuf.Any;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.net.URISyntaxException;
+import java.util.Optional;
import java.util.Properties;
+import java.util.jar.Attributes;
+import java.util.jar.JarFile;
/** Provides properties of the GAX library. */
@InternalApi
@@ -43,6 +49,8 @@ public class GaxProperties {
private static final String DEFAULT_VERSION = "";
private static final String GAX_VERSION = getLibraryVersion(GaxProperties.class, "version.gax");
private static final String JAVA_VERSION = getRuntimeVersion();
+ private static final String PROTOBUF_VERSION =
+ getBundleVersion(Any.class).orElse(DEFAULT_VERSION);
private GaxProperties() {}
@@ -91,6 +99,11 @@ public static String getGaxVersion() {
return GAX_VERSION;
}
+ /** Returns the current version of protobuf runtime library. */
+ public static String getProtobufVersion() {
+ return PROTOBUF_VERSION;
+ }
+
/**
* Returns the current runtime version. For GraalVM the values in this method will be fetched at
* build time and the values should not differ from the runtime (executable)
@@ -113,4 +126,27 @@ static String getRuntimeVersion() {
// with hyphens.
return javaRuntimeInformation.replaceAll("[^0-9a-zA-Z_\\\\.]", "-");
}
+
+ /**
+ * Returns the current library version as reported by Bundle-Version attribute in library's
+ * META-INF/MANIFEST for libraries using OSGi bundle manifest specification
+ * https://www.ibm.com/docs/en/wasdtfe?topic=overview-osgi-bundles. This should only be used if
+ * MANIFEST file does not contain a widely recognized version declaration such as Specific-Version
+ * OR Implementation-Version declared in Manifest Specification
+ * https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#Manifest_Specification,
+ * otherwise please use #getLibraryVersion
+ */
+ @VisibleForTesting
+ static Optional getBundleVersion(Class> clazz) {
+ try {
+ File file = new File(clazz.getProtectionDomain().getCodeSource().getLocation().toURI());
+ try (JarFile jar = new JarFile(file.getPath())) {
+ Attributes attributes = jar.getManifest().getMainAttributes();
+ return Optional.ofNullable(attributes.getValue("Bundle-Version"));
+ }
+ } catch (URISyntaxException | IOException e) {
+ // Unable to read Bundle-Version from manifest. Recover gracefully.
+ return Optional.empty();
+ }
+ }
}
diff --git a/gax-java/gax/src/main/java/com/google/api/gax/rpc/ApiClientHeaderProvider.java b/gax-java/gax/src/main/java/com/google/api/gax/rpc/ApiClientHeaderProvider.java
index a5e80e10b1..35307764d2 100644
--- a/gax-java/gax/src/main/java/com/google/api/gax/rpc/ApiClientHeaderProvider.java
+++ b/gax-java/gax/src/main/java/com/google/api/gax/rpc/ApiClientHeaderProvider.java
@@ -33,6 +33,8 @@
import com.google.common.collect.ImmutableMap;
import java.io.Serializable;
import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
/**
* Implementation of HeaderProvider that provides headers describing the API client library making
@@ -41,6 +43,7 @@
public class ApiClientHeaderProvider implements HeaderProvider, Serializable {
private static final long serialVersionUID = -8876627296793342119L;
static final String QUOTA_PROJECT_ID_HEADER_KEY = "x-goog-user-project";
+ static final String PROTOBUF_HEADER_VERSION_KEY = "protobuf";
public static final String API_VERSION_HEADER_KEY = "x-goog-api-version";
@@ -57,8 +60,12 @@ protected ApiClientHeaderProvider(Builder builder) {
appendToken(apiClientHeaderValue, builder.getGeneratedLibToken());
appendToken(apiClientHeaderValue, builder.getGeneratedRuntimeToken());
appendToken(apiClientHeaderValue, builder.getTransportToken());
+ appendToken(apiClientHeaderValue, builder.protobufRuntimeToken);
+
if (apiClientHeaderValue.length() > 0) {
- headersBuilder.put(builder.getApiClientHeaderKey(), apiClientHeaderValue.toString());
+ headersBuilder.put(
+ builder.getApiClientHeaderKey(),
+ checkAndAppendProtobufVersionIfNecessary(apiClientHeaderValue));
}
}
@@ -76,6 +83,22 @@ protected ApiClientHeaderProvider(Builder builder) {
this.headers = headersBuilder.build();
}
+ private static String checkAndAppendProtobufVersionIfNecessary(
+ StringBuilder apiClientHeaderValue) {
+ // TODO(b/366417603): appending protobuf version to existing client library token until resolved
+ Pattern pattern = Pattern.compile("(gccl|gapic)\\S*");
+ Matcher matcher = pattern.matcher(apiClientHeaderValue);
+ if (matcher.find()) {
+ return apiClientHeaderValue.substring(0, matcher.end())
+ + "--"
+ + PROTOBUF_HEADER_VERSION_KEY
+ + "-"
+ + GaxProperties.getProtobufVersion()
+ + apiClientHeaderValue.substring(matcher.end());
+ }
+ return apiClientHeaderValue.toString();
+ }
+
@Override
public Map getHeaders() {
return headers;
@@ -110,6 +133,7 @@ public static class Builder {
private String generatedRuntimeToken;
private String transportToken;
private String quotaProjectIdToken;
+ private final String protobufRuntimeToken;
private String resourceHeaderKey;
private String resourceToken;
@@ -125,11 +149,11 @@ protected Builder() {
setClientRuntimeToken(GaxProperties.getGaxVersion());
transportToken = null;
quotaProjectIdToken = null;
-
resourceHeaderKey = getDefaultResourceHeaderKey();
resourceToken = null;
-
apiVersionToken = null;
+ protobufRuntimeToken =
+ constructToken(PROTOBUF_HEADER_VERSION_KEY, GaxProperties.getProtobufVersion());
}
public String getApiClientHeaderKey() {
diff --git a/gax-java/gax/src/test/java/com/google/api/gax/core/GaxPropertiesTest.java b/gax-java/gax/src/test/java/com/google/api/gax/core/GaxPropertiesTest.java
index c27396c6b6..1369ec35ae 100644
--- a/gax-java/gax/src/test/java/com/google/api/gax/core/GaxPropertiesTest.java
+++ b/gax-java/gax/src/test/java/com/google/api/gax/core/GaxPropertiesTest.java
@@ -29,10 +29,14 @@
*/
package com.google.api.gax.core;
+import static com.google.api.gax.core.GaxProperties.getBundleVersion;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import com.google.common.base.Strings;
+import java.io.IOException;
+import java.util.Optional;
import java.util.regex.Pattern;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
@@ -41,17 +45,11 @@ class GaxPropertiesTest {
@Test
void testGaxVersion() {
- String gaxVersion = GaxProperties.getGaxVersion();
- assertTrue(Pattern.compile("^\\d+\\.\\d+\\.\\d+").matcher(gaxVersion).find());
- String[] versionComponents = gaxVersion.split("\\.");
- // This test was added in version 1.56.0, so check that the major and minor numbers are greater
- // than that.
- int major = Integer.parseInt(versionComponents[0]);
- int minor = Integer.parseInt(versionComponents[1]);
+ Version version = readVersion(GaxProperties.getGaxVersion());
- assertTrue(major >= 1);
- if (major == 1) {
- assertTrue(minor >= 56);
+ assertTrue(version.major >= 1);
+ if (version.major == 1) {
+ assertTrue(version.minor >= 56);
}
}
@@ -159,4 +157,41 @@ void testGetJavaRuntimeInfo_nullJavaVersion() {
String runtimeInfo = GaxProperties.getRuntimeVersion();
assertEquals("null__oracle__20.0.1", runtimeInfo);
}
+
+ @Test
+ public void testGetProtobufVersion() throws IOException {
+ Version version = readVersion(GaxProperties.getProtobufVersion());
+
+ assertTrue(version.major >= 3);
+ if (version.major == 3) {
+ assertTrue(version.minor >= 25);
+ }
+ }
+
+ @Test
+ public void testGetBundleVersion_noManifestFile() throws IOException {
+ Optional version = getBundleVersion(GaxProperties.class);
+
+ assertFalse(version.isPresent());
+ }
+
+ private Version readVersion(String version) {
+ assertTrue(Pattern.compile("^\\d+\\.\\d+\\.\\d+").matcher(version).find());
+ String[] versionComponents = version.split("\\.");
+ // This test was added in version 1.56.0, so check that the major and minor numbers are greater
+ // than that.
+ int major = Integer.parseInt(versionComponents[0]);
+ int minor = Integer.parseInt(versionComponents[1]);
+ return new Version(major, minor);
+ }
+
+ private static class Version {
+ public int major;
+ public int minor;
+
+ public Version(int major, int minor) {
+ this.major = major;
+ this.minor = minor;
+ }
+ }
}
diff --git a/gax-java/gax/src/test/java/com/google/api/gax/rpc/ApiClientHeaderProviderTest.java b/gax-java/gax/src/test/java/com/google/api/gax/rpc/ApiClientHeaderProviderTest.java
index baccb901c2..8dcf74fd8a 100644
--- a/gax-java/gax/src/test/java/com/google/api/gax/rpc/ApiClientHeaderProviderTest.java
+++ b/gax-java/gax/src/test/java/com/google/api/gax/rpc/ApiClientHeaderProviderTest.java
@@ -42,7 +42,8 @@ class ApiClientHeaderProviderTest {
void testServiceHeaderDefault() {
ApiClientHeaderProvider provider = ApiClientHeaderProvider.newBuilder().build();
assertThat(provider.getHeaders().size()).isEqualTo(1);
- assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT)).matches("^gl-java/.* gax/.*$");
+ assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
+ .matches("^gl-java/.* gax/.* protobuf/.*");
}
@Test
@@ -51,7 +52,7 @@ void testServiceHeaderManual() {
ApiClientHeaderProvider.newBuilder().setClientLibToken("gccl", "1.2.3").build();
assertThat(provider.getHeaders().size()).isEqualTo(1);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gccl/1\\.2\\.3 gax/.*$");
+ .matches("^gl-java/.* gccl/1\\.2\\.3--protobuf-.* gax/.* protobuf/.*");
}
@Test
@@ -64,7 +65,8 @@ void testServiceHeaderManualGapic() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(1);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gccl/4\\.5\\.6 gapic/7\\.8\\.9 gax/.* grpc/1\\.2\\.3$");
+ .matches(
+ "^gl-java/.* gccl/4\\.5\\.6--protobuf-.* gapic/7\\.8\\.9 gax/.* grpc/1\\.2\\.3 protobuf/.*");
}
@Test
@@ -76,7 +78,7 @@ void testServiceHeaderManualGrpc() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(1);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gccl/4\\.5\\.6 gax/.* grpc/1\\.2\\.3$");
+ .matches("^gl-java/.* gccl/4\\.5\\.6--protobuf-.* gax/.* grpc/1\\.2\\.3 protobuf/.*");
}
@Test
@@ -88,7 +90,7 @@ void testServiceHeaderGapic() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(1);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gapic/4\\.5\\.6 gax/.* grpc/1\\.2\\.3$");
+ .matches("^gl-java/.* gapic/4\\.5\\.6--protobuf-.* gax/.* grpc/1\\.2\\.3 protobuf/.*");
}
@Test
@@ -101,7 +103,7 @@ void testCloudResourcePrefixHeader() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(2);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gapic/4\\.5\\.6 gax/.* grpc/1\\.2\\.3$");
+ .matches("^gl-java/.* gapic/4\\.5\\.6--protobuf-.* gax/.* grpc/1\\.2\\.3 protobuf/.*");
assertThat(provider.getHeaders().get(CLOUD_RESOURCE_PREFIX)).isEqualTo("test-prefix");
}
@@ -117,7 +119,7 @@ void testCustomHeaderKeys() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(2);
assertThat(provider.getHeaders().get("custom-header1"))
- .matches("^gl-java/.* gapic/4\\.5\\.6 gax/.* grpc/1\\.2\\.3$");
+ .matches("^gl-java/.* gapic/4\\.5\\.6--protobuf-.* gax/.* grpc/1\\.2\\.3 protobuf/.*");
assertThat(provider.getHeaders().get("custom-header2")).isEqualTo("test-prefix");
}
@@ -131,7 +133,7 @@ void testQuotaProjectHeader() {
.build();
assertThat(provider.getHeaders().size()).isEqualTo(2);
assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
- .matches("^gl-java/.* gccl/1\\.2\\.3 gax/.*$");
+ .matches("^gl-java/.* gccl/1\\.2\\.3--protobuf-.* gax/.* protobuf/.*");
assertThat(provider.getHeaders().get(ApiClientHeaderProvider.QUOTA_PROJECT_ID_HEADER_KEY))
.matches(quotaProjectHeaderValue);
}
@@ -149,4 +151,22 @@ void testApiVersionHeader() {
assertThat(
emptyProvider.getHeaders().get(ApiClientHeaderProvider.API_VERSION_HEADER_KEY).isEmpty());
}
+
+ @Test
+ void testNonGapicGeneratedLibToken_doesNotAppendProtobufVersion() {
+ ApiClientHeaderProvider provider =
+ ApiClientHeaderProvider.newBuilder().setGeneratedLibToken("other-token", "1.2.3").build();
+
+ assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
+ .matches("^gl-java/.* other-token/1.2.3 gax/.* protobuf/.*");
+ }
+
+ @Test
+ void testNonGcclGeneratedLibToken_doesNotAppendProtobufVersion() {
+ ApiClientHeaderProvider provider =
+ ApiClientHeaderProvider.newBuilder().setClientLibToken("other-token", "1.2.3").build();
+
+ assertThat(provider.getHeaders().get(X_GOOG_API_CLIENT))
+ .matches("^gl-java/.* other-token/1.2.3 gax/.* protobuf/.*");
+ }
}
diff --git a/showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITApiVersionHeaders.java b/showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITVersionHeaders.java
similarity index 87%
rename from showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITApiVersionHeaders.java
rename to showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITVersionHeaders.java
index cb823db498..09255fe278 100644
--- a/showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITApiVersionHeaders.java
+++ b/showcase/gapic-showcase/src/test/java/com/google/showcase/v1beta1/it/ITVersionHeaders.java
@@ -17,6 +17,7 @@
import static com.google.common.truth.Truth.assertThat;
import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import com.google.api.gax.httpjson.*;
import com.google.api.gax.rpc.ApiClientHeaderProvider;
@@ -33,6 +34,7 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.concurrent.TimeUnit;
+import java.util.regex.Pattern;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -41,13 +43,19 @@
// https://github.com/googleapis/gapic-showcase/pull/1456
// TODO: watch for showcase gRPC trailer changes suggested in
// https://github.com/googleapis/gapic-showcase/pull/1509#issuecomment-2089147103
-class ITApiVersionHeaders {
+class ITVersionHeaders {
private static final String HTTP_RESPONSE_HEADER_STRING =
"x-showcase-request-" + ApiClientHeaderProvider.API_VERSION_HEADER_KEY;
+ private static final String HTTP_CLIENT_API_HEADER_KEY =
+ "x-showcase-request-" + ApiClientHeaderProvider.getDefaultApiClientHeaderKey();
private static final Metadata.Key API_VERSION_HEADER_KEY =
Metadata.Key.of(
ApiClientHeaderProvider.API_VERSION_HEADER_KEY, Metadata.ASCII_STRING_MARSHALLER);
+ private static final Metadata.Key API_CLIENT_HEADER_KEY =
+ Metadata.Key.of(
+ ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), Metadata.ASCII_STRING_MARSHALLER);
+
private static final String EXPECTED_ECHO_API_VERSION = "v1_20240408";
private static final String CUSTOM_API_VERSION = "user-supplied-version";
private static final String EXPECTED_EXCEPTION_MESSAGE =
@@ -229,4 +237,25 @@ void testHttpJsonCompliance_userApiVersionSetSuccess() throws IOException {
assertThat(headerValue).isEqualTo(CUSTOM_API_VERSION);
}
}
+
+ @Test
+ void testGrpcCall_sendsCorrectApiClientHeader() {
+ Pattern defautlGrpcHeaderPattern =
+ Pattern.compile("gl-java/.* gapic/.*?--protobuf-.* gax/.* grpc/.* protobuf/.*");
+ grpcClient.echo(EchoRequest.newBuilder().build());
+ String headerValue = grpcInterceptor.metadata.get(API_CLIENT_HEADER_KEY);
+ assertTrue(defautlGrpcHeaderPattern.matcher(headerValue).matches());
+ }
+
+ @Test
+ void testHttpJson_sendsCorrectApiClientHeader() {
+ Pattern defautlHttpHeaderPattern =
+ Pattern.compile("gl-java/.* gapic/.*?--protobuf-.* gax/.* rest/ protobuf/.*");
+ httpJsonClient.echo(EchoRequest.newBuilder().build());
+ ArrayList headerValues =
+ (ArrayList)
+ httpJsonInterceptor.metadata.getHeaders().get(HTTP_CLIENT_API_HEADER_KEY);
+ String headerValue = headerValues.get(0);
+ assertTrue(defautlHttpHeaderPattern.matcher(headerValue).matches());
+ }
}
From 5a0e25461675ac22cee9869fcfb2d7964651332e Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Wed, 16 Oct 2024 14:48:26 +0000
Subject: [PATCH 04/14] chore(main): release 2.47.1-SNAPSHOT (#3281)
:robot: I have created a release *beep* *boop*
---
2.47.1-SNAPSHOT
### Updating meta-information for bleeding-edge SNAPSHOT release.
---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
---
.cloudbuild/graalvm/cloudbuild-test-a.yaml | 2 +-
.cloudbuild/graalvm/cloudbuild-test-b.yaml | 2 +-
.cloudbuild/graalvm/cloudbuild.yaml | 2 +-
.../cloudbuild-library-generation-push.yaml | 2 +-
.../library_generation.Dockerfile | 2 +-
WORKSPACE | 2 +-
api-common-java/pom.xml | 4 +--
coverage-report/pom.xml | 8 ++---
gapic-generator-java-bom/pom.xml | 26 +++++++--------
gapic-generator-java-pom-parent/pom.xml | 2 +-
gapic-generator-java/pom.xml | 6 ++--
gax-java/dependencies.properties | 8 ++---
gax-java/gax-bom/pom.xml | 20 ++++++------
gax-java/gax-grpc/pom.xml | 4 +--
gax-java/gax-httpjson/pom.xml | 4 +--
gax-java/gax/pom.xml | 4 +--
gax-java/pom.xml | 14 ++++----
.../grpc-google-common-protos/pom.xml | 4 +--
java-common-protos/pom.xml | 10 +++---
.../proto-google-common-protos/pom.xml | 4 +--
java-core/google-cloud-core-bom/pom.xml | 10 +++---
java-core/google-cloud-core-grpc/pom.xml | 4 +--
java-core/google-cloud-core-http/pom.xml | 4 +--
java-core/google-cloud-core/pom.xml | 4 +--
java-core/pom.xml | 6 ++--
java-iam/grpc-google-iam-v1/pom.xml | 4 +--
java-iam/grpc-google-iam-v2/pom.xml | 4 +--
java-iam/grpc-google-iam-v2beta/pom.xml | 4 +--
java-iam/pom.xml | 22 ++++++-------
java-iam/proto-google-iam-v1/pom.xml | 4 +--
java-iam/proto-google-iam-v2/pom.xml | 4 +--
java-iam/proto-google-iam-v2beta/pom.xml | 4 +--
.../dependency-convergence-check/pom.xml | 2 +-
.../first-party-dependencies/pom.xml | 10 +++---
java-shared-dependencies/pom.xml | 8 ++---
.../third-party-dependencies/pom.xml | 4 +--
.../upper-bound-check/pom.xml | 4 +--
sdk-platform-java-config/pom.xml | 4 +--
showcase/pom.xml | 2 +-
versions.txt | 32 +++++++++----------
40 files changed, 135 insertions(+), 135 deletions(-)
diff --git a/.cloudbuild/graalvm/cloudbuild-test-a.yaml b/.cloudbuild/graalvm/cloudbuild-test-a.yaml
index 771d8f8190..25be42d1df 100644
--- a/.cloudbuild/graalvm/cloudbuild-test-a.yaml
+++ b/.cloudbuild/graalvm/cloudbuild-test-a.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.0' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
options:
machineType: 'E2_HIGHCPU_8'
diff --git a/.cloudbuild/graalvm/cloudbuild-test-b.yaml b/.cloudbuild/graalvm/cloudbuild-test-b.yaml
index c44e119cba..4e84ac68b1 100644
--- a/.cloudbuild/graalvm/cloudbuild-test-b.yaml
+++ b/.cloudbuild/graalvm/cloudbuild-test-b.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.0' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
options:
machineType: 'E2_HIGHCPU_8'
diff --git a/.cloudbuild/graalvm/cloudbuild.yaml b/.cloudbuild/graalvm/cloudbuild.yaml
index b97d542b11..a1a13f6925 100644
--- a/.cloudbuild/graalvm/cloudbuild.yaml
+++ b/.cloudbuild/graalvm/cloudbuild.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.0' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
steps:
# GraalVM A build
diff --git a/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml b/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
index 5ecc2cf897..54a8d54030 100644
--- a/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
+++ b/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
@@ -15,7 +15,7 @@
timeout: 7200s # 2 hours
substitutions:
_IMAGE_NAME: "gcr.io/cloud-devrel-public-resources/java-library-generation"
- _GAPIC_GENERATOR_JAVA_VERSION: '2.47.0' # {x-version-update:gapic-generator-java:current}
+ _GAPIC_GENERATOR_JAVA_VERSION: '2.47.1-SNAPSHOT' # {x-version-update:gapic-generator-java:current}
_SHA_IMAGE_ID: "${_IMAGE_NAME}:${COMMIT_SHA}"
_LATEST_IMAGE_ID: "${_IMAGE_NAME}:latest"
_VERSIONED_IMAGE_ID: "${_IMAGE_NAME}:${_GAPIC_GENERATOR_JAVA_VERSION}"
diff --git a/.cloudbuild/library_generation/library_generation.Dockerfile b/.cloudbuild/library_generation/library_generation.Dockerfile
index 69c0fe3003..41eb1c1a33 100644
--- a/.cloudbuild/library_generation/library_generation.Dockerfile
+++ b/.cloudbuild/library_generation/library_generation.Dockerfile
@@ -19,7 +19,7 @@ FROM gcr.io/cloud-devrel-public-resources/java21 AS ggj-build
WORKDIR /sdk-platform-java
COPY . .
# {x-version-update-start:gapic-generator-java:current}
-ENV DOCKER_GAPIC_GENERATOR_VERSION="2.47.0"
+ENV DOCKER_GAPIC_GENERATOR_VERSION="2.47.1-SNAPSHOT"
# {x-version-update-end}
RUN mvn install -B -ntp -DskipTests -Dclirr.skip -Dcheckstyle.skip
diff --git a/WORKSPACE b/WORKSPACE
index dec5a43d6c..75aa38fd55 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -58,7 +58,7 @@ load("@rules_jvm_external//:defs.bzl", "maven_install")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_ARTIFACTS")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS")
-_gapic_generator_java_version = "2.47.0" # {x-version-update:gapic-generator-java:current}
+_gapic_generator_java_version = "2.47.1-SNAPSHOT" # {x-version-update:gapic-generator-java:current}
maven_install(
artifacts = [
diff --git a/api-common-java/pom.xml b/api-common-java/pom.xml
index 2a1c4b8623..984da0a82e 100644
--- a/api-common-java/pom.xml
+++ b/api-common-java/pom.xml
@@ -5,14 +5,14 @@
com.google.api
api-common
jar
- 2.38.0
+ 2.38.1-SNAPSHOT
API Common
Common utilities for Google APIs in Java
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
diff --git a/coverage-report/pom.xml b/coverage-report/pom.xml
index fede32d68f..cea6b23367 100644
--- a/coverage-report/pom.xml
+++ b/coverage-report/pom.xml
@@ -31,22 +31,22 @@
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax-grpc
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax-httpjson
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
api-common
- 2.38.0
+ 2.38.1-SNAPSHOT
diff --git a/gapic-generator-java-bom/pom.xml b/gapic-generator-java-bom/pom.xml
index 58d66a4d6e..c6c638b87c 100644
--- a/gapic-generator-java-bom/pom.xml
+++ b/gapic-generator-java-bom/pom.xml
@@ -4,7 +4,7 @@
com.google.api
gapic-generator-java-bom
pom
- 2.47.0
+ 2.47.1-SNAPSHOT
GAPIC Generator Java BOM
BOM for the libraries in gapic-generator-java repository. Users should not
@@ -15,7 +15,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -75,61 +75,61 @@
com.google.api
api-common
- 2.38.0
+ 2.38.1-SNAPSHOT
com.google.api
gax-bom
- 2.55.0
+ 2.55.1-SNAPSHOT
pom
import
com.google.api
gapic-generator-java
- 2.47.0
+ 2.47.1-SNAPSHOT
com.google.api.grpc
grpc-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
com.google.api.grpc
proto-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
com.google.api.grpc
proto-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
proto-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/gapic-generator-java-pom-parent/pom.xml b/gapic-generator-java-pom-parent/pom.xml
index 264a1690d6..dd19d1bd20 100644
--- a/gapic-generator-java-pom-parent/pom.xml
+++ b/gapic-generator-java-pom-parent/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
pom
GAPIC Generator Java POM Parent
https://github.com/googleapis/sdk-platform-java
diff --git a/gapic-generator-java/pom.xml b/gapic-generator-java/pom.xml
index b1a64f7ff2..3c0c8fbb8a 100644
--- a/gapic-generator-java/pom.xml
+++ b/gapic-generator-java/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.google.api
gapic-generator-java
- 2.47.0
+ 2.47.1-SNAPSHOT
GAPIC Generator Java
GAPIC generator Java
@@ -22,7 +22,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -31,7 +31,7 @@
com.google.api
gapic-generator-java-bom
- 2.47.0
+ 2.47.1-SNAPSHOT
pom
import
diff --git a/gax-java/dependencies.properties b/gax-java/dependencies.properties
index 6943ad61e7..e4c49c5b59 100644
--- a/gax-java/dependencies.properties
+++ b/gax-java/dependencies.properties
@@ -8,16 +8,16 @@
# Versions of oneself
# {x-version-update-start:gax:current}
-version.gax=2.55.0
+version.gax=2.55.1-SNAPSHOT
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_grpc=2.55.0
+version.gax_grpc=2.55.1-SNAPSHOT
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_bom=2.55.0
+version.gax_bom=2.55.1-SNAPSHOT
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_httpjson=2.55.0
+version.gax_httpjson=2.55.1-SNAPSHOT
# {x-version-update-end}
# Versions for dependencies which actual artifacts differ between Bazel and Gradle.
diff --git a/gax-java/gax-bom/pom.xml b/gax-java/gax-bom/pom.xml
index 6357abb36c..588d6a1889 100644
--- a/gax-java/gax-bom/pom.xml
+++ b/gax-java/gax-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.api
gax-bom
- 2.55.0
+ 2.55.1-SNAPSHOT
pom
GAX (Google Api eXtensions) for Java (BOM)
Google Api eXtensions for Java (BOM)
@@ -43,55 +43,55 @@
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
test-jar
testlib
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
testlib
com.google.api
gax-grpc
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax-grpc
- 2.55.0
+ 2.55.1-SNAPSHOT
test-jar
testlib
com.google.api
gax-grpc
- 2.55.0
+ 2.55.1-SNAPSHOT
testlib
com.google.api
gax-httpjson
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax-httpjson
- 2.55.0
+ 2.55.1-SNAPSHOT
test-jar
testlib
com.google.api
gax-httpjson
- 2.55.0
+ 2.55.1-SNAPSHOT
testlib
diff --git a/gax-java/gax-grpc/pom.xml b/gax-java/gax-grpc/pom.xml
index 3caaeec2b2..4804e94a2c 100644
--- a/gax-java/gax-grpc/pom.xml
+++ b/gax-java/gax-grpc/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax-grpc
- 2.55.0
+ 2.55.1-SNAPSHOT
jar
GAX (Google Api eXtensions) for Java (gRPC)
Google Api eXtensions for Java (gRPC)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.0
+ 2.55.1-SNAPSHOT
diff --git a/gax-java/gax-httpjson/pom.xml b/gax-java/gax-httpjson/pom.xml
index f1309e7c18..3ecbe75e6a 100644
--- a/gax-java/gax-httpjson/pom.xml
+++ b/gax-java/gax-httpjson/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax-httpjson
- 2.55.0
+ 2.55.1-SNAPSHOT
jar
GAX (Google Api eXtensions) for Java (HTTP JSON)
Google Api eXtensions for Java (HTTP JSON)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.0
+ 2.55.1-SNAPSHOT
diff --git a/gax-java/gax/pom.xml b/gax-java/gax/pom.xml
index 7b204e8a66..94e7183f16 100644
--- a/gax-java/gax/pom.xml
+++ b/gax-java/gax/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
jar
GAX (Google Api eXtensions) for Java (Core)
Google Api eXtensions for Java (Core)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.0
+ 2.55.1-SNAPSHOT
diff --git a/gax-java/pom.xml b/gax-java/pom.xml
index 2c8dcc34da..fe2aeecefd 100644
--- a/gax-java/pom.xml
+++ b/gax-java/pom.xml
@@ -4,14 +4,14 @@
com.google.api
gax-parent
pom
- 2.55.0
+ 2.55.1-SNAPSHOT
GAX (Google Api eXtensions) for Java (Parent)
Google Api eXtensions for Java (Parent)
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -50,7 +50,7 @@
com.google.api
api-common
- 2.38.0
+ 2.38.1-SNAPSHOT
com.google.auth
@@ -98,24 +98,24 @@
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
com.google.api
gax
- 2.55.0
+ 2.55.1-SNAPSHOT
test-jar
testlib
com.google.api.grpc
proto-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
com.google.api.grpc
grpc-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
io.grpc
diff --git a/java-common-protos/grpc-google-common-protos/pom.xml b/java-common-protos/grpc-google-common-protos/pom.xml
index f14a7791cc..b1d8e575f2 100644
--- a/java-common-protos/grpc-google-common-protos/pom.xml
+++ b/java-common-protos/grpc-google-common-protos/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
grpc-google-common-protos
GRPC library for grpc-google-common-protos
com.google.api.grpc
google-common-protos-parent
- 2.46.0
+ 2.46.1-SNAPSHOT
diff --git a/java-common-protos/pom.xml b/java-common-protos/pom.xml
index e6a27843a8..269c263535 100644
--- a/java-common-protos/pom.xml
+++ b/java-common-protos/pom.xml
@@ -4,7 +4,7 @@
com.google.api.grpc
google-common-protos-parent
pom
- 2.46.0
+ 2.46.1-SNAPSHOT
Google Common Protos Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -61,7 +61,7 @@
com.google.cloud
third-party-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
@@ -75,7 +75,7 @@
com.google.api.grpc
grpc-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
io.grpc
@@ -87,7 +87,7 @@
com.google.api.grpc
proto-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
com.google.guava
diff --git a/java-common-protos/proto-google-common-protos/pom.xml b/java-common-protos/proto-google-common-protos/pom.xml
index d6a8babcae..9644159f54 100644
--- a/java-common-protos/proto-google-common-protos/pom.xml
+++ b/java-common-protos/proto-google-common-protos/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.api.grpc
proto-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
proto-google-common-protos
PROTO library for proto-google-common-protos
com.google.api.grpc
google-common-protos-parent
- 2.46.0
+ 2.46.1-SNAPSHOT
diff --git a/java-core/google-cloud-core-bom/pom.xml b/java-core/google-cloud-core-bom/pom.xml
index f913ca9a4e..8502025fb6 100644
--- a/java-core/google-cloud-core-bom/pom.xml
+++ b/java-core/google-cloud-core-bom/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.cloud
google-cloud-core-bom
- 2.45.0
+ 2.45.1-SNAPSHOT
pom
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../../gapic-generator-java-pom-parent
@@ -23,17 +23,17 @@
com.google.cloud
google-cloud-core
- 2.45.0
+ 2.45.1-SNAPSHOT
com.google.cloud
google-cloud-core-grpc
- 2.45.0
+ 2.45.1-SNAPSHOT
com.google.cloud
google-cloud-core-http
- 2.45.0
+ 2.45.1-SNAPSHOT
diff --git a/java-core/google-cloud-core-grpc/pom.xml b/java-core/google-cloud-core-grpc/pom.xml
index bb6f207460..1d7c64b3a5 100644
--- a/java-core/google-cloud-core-grpc/pom.xml
+++ b/java-core/google-cloud-core-grpc/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core-grpc
- 2.45.0
+ 2.45.1-SNAPSHOT
jar
Google Cloud Core gRPC
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.0
+ 2.45.1-SNAPSHOT
google-cloud-core-grpc
diff --git a/java-core/google-cloud-core-http/pom.xml b/java-core/google-cloud-core-http/pom.xml
index 40e4804403..13a683d8f7 100644
--- a/java-core/google-cloud-core-http/pom.xml
+++ b/java-core/google-cloud-core-http/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core-http
- 2.45.0
+ 2.45.1-SNAPSHOT
jar
Google Cloud Core HTTP
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.0
+ 2.45.1-SNAPSHOT
google-cloud-core-http
diff --git a/java-core/google-cloud-core/pom.xml b/java-core/google-cloud-core/pom.xml
index b15e18e90c..fb84bd6f9f 100644
--- a/java-core/google-cloud-core/pom.xml
+++ b/java-core/google-cloud-core/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core
- 2.45.0
+ 2.45.1-SNAPSHOT
jar
Google Cloud Core
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.0
+ 2.45.1-SNAPSHOT
google-cloud-core
diff --git a/java-core/pom.xml b/java-core/pom.xml
index c45011ee29..9dd395b8ba 100644
--- a/java-core/pom.xml
+++ b/java-core/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-core-parent
pom
- 2.45.0
+ 2.45.1-SNAPSHOT
Google Cloud Core Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -33,7 +33,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
diff --git a/java-iam/grpc-google-iam-v1/pom.xml b/java-iam/grpc-google-iam-v1/pom.xml
index 8d15ee1a5b..01bfdd171f 100644
--- a/java-iam/grpc-google-iam-v1/pom.xml
+++ b/java-iam/grpc-google-iam-v1/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
grpc-google-iam-v1
GRPC library for grpc-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-iam/grpc-google-iam-v2/pom.xml b/java-iam/grpc-google-iam-v2/pom.xml
index 16f4f38b3e..127d90a15a 100644
--- a/java-iam/grpc-google-iam-v2/pom.xml
+++ b/java-iam/grpc-google-iam-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
grpc-google-iam-v2
GRPC library for proto-google-iam-v2
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-iam/grpc-google-iam-v2beta/pom.xml b/java-iam/grpc-google-iam-v2beta/pom.xml
index a69d2b2f9f..c8afc2bf03 100644
--- a/java-iam/grpc-google-iam-v2beta/pom.xml
+++ b/java-iam/grpc-google-iam-v2beta/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
grpc-google-iam-v2beta
GRPC library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-iam/pom.xml b/java-iam/pom.xml
index 6c7301fa02..d4fd950bb1 100644
--- a/java-iam/pom.xml
+++ b/java-iam/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-iam-parent
pom
- 1.41.0
+ 1.41.1-SNAPSHOT
Google IAM Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -60,7 +60,7 @@
com.google.cloud
third-party-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
@@ -88,44 +88,44 @@
com.google.api
gax-bom
- 2.55.0
+ 2.55.1-SNAPSHOT
pom
import
com.google.api.grpc
proto-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
proto-google-common-protos
- 2.46.0
+ 2.46.1-SNAPSHOT
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
com.google.api.grpc
proto-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
javax.annotation
diff --git a/java-iam/proto-google-iam-v1/pom.xml b/java-iam/proto-google-iam-v1/pom.xml
index 82c3236340..03aee647cf 100644
--- a/java-iam/proto-google-iam-v1/pom.xml
+++ b/java-iam/proto-google-iam-v1/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v1
- 1.41.0
+ 1.41.1-SNAPSHOT
proto-google-iam-v1
PROTO library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-iam/proto-google-iam-v2/pom.xml b/java-iam/proto-google-iam-v2/pom.xml
index 89b21be4f2..ed9bb4fbb1 100644
--- a/java-iam/proto-google-iam-v2/pom.xml
+++ b/java-iam/proto-google-iam-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v2
- 1.41.0
+ 1.41.1-SNAPSHOT
proto-google-iam-v2
Proto library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-iam/proto-google-iam-v2beta/pom.xml b/java-iam/proto-google-iam-v2beta/pom.xml
index 826887b14e..2b7af416a6 100644
--- a/java-iam/proto-google-iam-v2beta/pom.xml
+++ b/java-iam/proto-google-iam-v2beta/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.0
+ 1.41.1-SNAPSHOT
proto-google-iam-v2beta
Proto library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.0
+ 1.41.1-SNAPSHOT
diff --git a/java-shared-dependencies/dependency-convergence-check/pom.xml b/java-shared-dependencies/dependency-convergence-check/pom.xml
index ce285dcea5..564a49fe97 100644
--- a/java-shared-dependencies/dependency-convergence-check/pom.xml
+++ b/java-shared-dependencies/dependency-convergence-check/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
shared-dependencies-dependency-convergence-test
- 3.37.0
+ 3.37.1-SNAPSHOT
Dependency convergence test for certain artifacts in Google Cloud Shared Dependencies
An dependency convergence test case for the shared dependencies BOM. A failure of this test case means
diff --git a/java-shared-dependencies/first-party-dependencies/pom.xml b/java-shared-dependencies/first-party-dependencies/pom.xml
index 18f2c1679d..07d56baa4f 100644
--- a/java-shared-dependencies/first-party-dependencies/pom.xml
+++ b/java-shared-dependencies/first-party-dependencies/pom.xml
@@ -6,7 +6,7 @@
com.google.cloud
first-party-dependencies
pom
- 3.37.0
+ 3.37.1-SNAPSHOT
Google Cloud First-party Shared Dependencies
Shared first-party dependencies for Google Cloud Java libraries.
@@ -33,7 +33,7 @@
com.google.api
gapic-generator-java-bom
- 2.47.0
+ 2.47.1-SNAPSHOT
pom
import
@@ -45,7 +45,7 @@
com.google.cloud
google-cloud-core-bom
- 2.45.0
+ 2.45.1-SNAPSHOT
pom
import
@@ -69,13 +69,13 @@
com.google.cloud
google-cloud-core
- 2.45.0
+ 2.45.1-SNAPSHOT
test-jar
com.google.cloud
google-cloud-core
- 2.45.0
+ 2.45.1-SNAPSHOT
tests
diff --git a/java-shared-dependencies/pom.xml b/java-shared-dependencies/pom.xml
index a17c36b278..172ffb7995 100644
--- a/java-shared-dependencies/pom.xml
+++ b/java-shared-dependencies/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-shared-dependencies
pom
- 3.37.0
+ 3.37.1-SNAPSHOT
first-party-dependencies
third-party-dependencies
@@ -17,7 +17,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../gapic-generator-java-pom-parent
@@ -31,14 +31,14 @@
com.google.cloud
first-party-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
com.google.cloud
third-party-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
diff --git a/java-shared-dependencies/third-party-dependencies/pom.xml b/java-shared-dependencies/third-party-dependencies/pom.xml
index 49473690c6..73d0ba4166 100644
--- a/java-shared-dependencies/third-party-dependencies/pom.xml
+++ b/java-shared-dependencies/third-party-dependencies/pom.xml
@@ -6,7 +6,7 @@
com.google.cloud
third-party-dependencies
pom
- 3.37.0
+ 3.37.1-SNAPSHOT
Google Cloud Third-party Shared Dependencies
Shared third-party dependencies for Google Cloud Java libraries.
@@ -15,7 +15,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.0
+ 2.47.1-SNAPSHOT
../../gapic-generator-java-pom-parent
diff --git a/java-shared-dependencies/upper-bound-check/pom.xml b/java-shared-dependencies/upper-bound-check/pom.xml
index 4978d1ea48..6ac3202d16 100644
--- a/java-shared-dependencies/upper-bound-check/pom.xml
+++ b/java-shared-dependencies/upper-bound-check/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
shared-dependencies-upper-bound-test
pom
- 3.37.0
+ 3.37.1-SNAPSHOT
Upper bound test for Google Cloud Shared Dependencies
An upper bound test case for the shared dependencies BOM. A failure of this test case means
@@ -30,7 +30,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
diff --git a/sdk-platform-java-config/pom.xml b/sdk-platform-java-config/pom.xml
index 14ec0603ba..5a9c913a9b 100644
--- a/sdk-platform-java-config/pom.xml
+++ b/sdk-platform-java-config/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
sdk-platform-java-config
pom
- 3.37.0
+ 3.37.1-SNAPSHOT
SDK Platform For Java Configurations
Shared build configuration for Google Cloud Java libraries.
@@ -17,6 +17,6 @@
- 3.37.0
+ 3.37.1-SNAPSHOT
\ No newline at end of file
diff --git a/showcase/pom.xml b/showcase/pom.xml
index 1dc77ab458..58890963ad 100644
--- a/showcase/pom.xml
+++ b/showcase/pom.xml
@@ -34,7 +34,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.0
+ 3.37.1-SNAPSHOT
pom
import
diff --git a/versions.txt b/versions.txt
index 493e46ad23..22bdad4bb2 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,19 +1,19 @@
# Format:
# module:released-version:current-version
-gapic-generator-java:2.47.0:2.47.0
-api-common:2.38.0:2.38.0
-gax:2.55.0:2.55.0
-gax-grpc:2.55.0:2.55.0
-gax-httpjson:0.140.0:0.140.0
-proto-google-common-protos:2.46.0:2.46.0
-grpc-google-common-protos:2.46.0:2.46.0
-proto-google-iam-v1:1.41.0:1.41.0
-grpc-google-iam-v1:1.41.0:1.41.0
-proto-google-iam-v2beta:1.41.0:1.41.0
-grpc-google-iam-v2beta:1.41.0:1.41.0
-google-iam-policy:1.41.0:1.41.0
-proto-google-iam-v2:1.41.0:1.41.0
-grpc-google-iam-v2:1.41.0:1.41.0
-google-cloud-core:2.45.0:2.45.0
-google-cloud-shared-dependencies:3.37.0:3.37.0
+gapic-generator-java:2.47.0:2.47.1-SNAPSHOT
+api-common:2.38.0:2.38.1-SNAPSHOT
+gax:2.55.0:2.55.1-SNAPSHOT
+gax-grpc:2.55.0:2.55.1-SNAPSHOT
+gax-httpjson:0.140.0:0.140.1-SNAPSHOT
+proto-google-common-protos:2.46.0:2.46.1-SNAPSHOT
+grpc-google-common-protos:2.46.0:2.46.1-SNAPSHOT
+proto-google-iam-v1:1.41.0:1.41.1-SNAPSHOT
+grpc-google-iam-v1:1.41.0:1.41.1-SNAPSHOT
+proto-google-iam-v2beta:1.41.0:1.41.1-SNAPSHOT
+grpc-google-iam-v2beta:1.41.0:1.41.1-SNAPSHOT
+google-iam-policy:1.41.0:1.41.1-SNAPSHOT
+proto-google-iam-v2:1.41.0:1.41.1-SNAPSHOT
+grpc-google-iam-v2:1.41.0:1.41.1-SNAPSHOT
+google-cloud-core:2.45.0:2.45.1-SNAPSHOT
+google-cloud-shared-dependencies:3.37.0:3.37.1-SNAPSHOT
From 771bd0e9cb306e430dc15e79a189648830101865 Mon Sep 17 00:00:00 2001
From: Jin Seop Kim
Date: Wed, 16 Oct 2024 10:49:11 -0400
Subject: [PATCH 05/14] fix: generator setting incorrect name/class for sample
due to region tag (2nd attempt) (#3293)
Fixes #1272
Tested by following instructions
https://github.com/googleapis/sdk-platform-java/blob/main/gapic-generator-java/DEVELOPMENT.md#running-the-plugin-under-googleapis-with-local-gapic-generator-java
Ran
```
bazelisk build //google/cloud/tpu/v2:google-cloud-tpu-v2-java
```
Generated samples, included new
google-cloud-tpu-v2-java/samples/snippets/generated/com/google/cloud/tpu/v2/tpu/create/SyncCreateUseHttpJsonTransport.java
```
/*
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.google.cloud.tpu.v2.samples;
// [START tpu_v2_generated_Tpu_Create_UseHttpJsonTransport_sync]
import com.google.cloud.tpu.v2.TpuClient;
import com.google.cloud.tpu.v2.TpuSettings;
public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
syncCreateUseHttpJsonTransport();
}
public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
TpuSettings tpuSettings = TpuSettings.newHttpJsonBuilder().build();
TpuClient tpuClient = TpuClient.create(tpuSettings);
}
}
// [END tpu_v2_generated_Tpu_Create_UseHttpJsonTransport_sync]
```
---
.../samplecode/ServiceClientHeaderSampleComposer.java | 2 +-
...vider1.java => SyncCreateUseHttpJsonTransport.java} | 10 +++++-----
...vider1.java => SyncCreateUseHttpJsonTransport.java} | 10 +++++-----
...vider1.java => SyncCreateUseHttpJsonTransport.java} | 10 +++++-----
...vider1.java => SyncCreateUseHttpJsonTransport.java} | 10 +++++-----
...vider1.java => SyncCreateUseHttpJsonTransport.java} | 10 +++++-----
6 files changed, 26 insertions(+), 26 deletions(-)
rename test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/{SyncCreateSetCredentialsProvider1.java => SyncCreateUseHttpJsonTransport.java} (81%)
rename test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/{SyncCreateSetCredentialsProvider1.java => SyncCreateUseHttpJsonTransport.java} (81%)
rename test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/{SyncCreateSetCredentialsProvider1.java => SyncCreateUseHttpJsonTransport.java} (81%)
rename test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/{SyncCreateSetCredentialsProvider1.java => SyncCreateUseHttpJsonTransport.java} (81%)
rename test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/{SyncCreateSetCredentialsProvider1.java => SyncCreateUseHttpJsonTransport.java} (81%)
diff --git a/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/samplecode/ServiceClientHeaderSampleComposer.java b/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/samplecode/ServiceClientHeaderSampleComposer.java
index 6403890b99..6181a2e9ae 100644
--- a/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/samplecode/ServiceClientHeaderSampleComposer.java
+++ b/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/samplecode/ServiceClientHeaderSampleComposer.java
@@ -338,7 +338,7 @@ public static Sample composeTransportSample(
RegionTag.builder()
.setServiceName(service.name())
.setRpcName(rpcName)
- .setOverloadDisambiguation("setCredentialsProvider")
+ .setOverloadDisambiguation("useHttpJsonTransport")
.build();
return Sample.builder().setBody(sampleBody).setRegionTag(regionTag).build();
}
diff --git a/test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateSetCredentialsProvider1.java b/test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateUseHttpJsonTransport.java
similarity index 81%
rename from test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateSetCredentialsProvider1.java
rename to test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateUseHttpJsonTransport.java
index ac1853a953..dc6cd4edff 100644
--- a/test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateSetCredentialsProvider1.java
+++ b/test/integration/goldens/apigeeconnect/samples/snippets/generated/main/java/com/google/cloud/apigeeconnect/v1/connectionservice/create/SyncCreateUseHttpJsonTransport.java
@@ -16,17 +16,17 @@
package com.google.cloud.apigeeconnect.v1.samples;
-// [START apigeeconnect_v1_generated_ConnectionService_Create_SetCredentialsProvider1_sync]
+// [START apigeeconnect_v1_generated_ConnectionService_Create_UseHttpJsonTransport_sync]
import com.google.cloud.apigeeconnect.v1.ConnectionServiceClient;
import com.google.cloud.apigeeconnect.v1.ConnectionServiceSettings;
-public class SyncCreateSetCredentialsProvider1 {
+public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
- syncCreateSetCredentialsProvider1();
+ syncCreateUseHttpJsonTransport();
}
- public static void syncCreateSetCredentialsProvider1() throws Exception {
+ public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
@@ -38,4 +38,4 @@ public static void syncCreateSetCredentialsProvider1() throws Exception {
ConnectionServiceClient.create(connectionServiceSettings);
}
}
-// [END apigeeconnect_v1_generated_ConnectionService_Create_SetCredentialsProvider1_sync]
+// [END apigeeconnect_v1_generated_ConnectionService_Create_UseHttpJsonTransport_sync]
diff --git a/test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateSetCredentialsProvider1.java b/test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateUseHttpJsonTransport.java
similarity index 81%
rename from test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateSetCredentialsProvider1.java
rename to test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateUseHttpJsonTransport.java
index 5d2931115c..4dccfd6eb5 100644
--- a/test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateSetCredentialsProvider1.java
+++ b/test/integration/goldens/asset/samples/snippets/generated/main/java/com/google/cloud/asset/v1/assetservice/create/SyncCreateUseHttpJsonTransport.java
@@ -16,17 +16,17 @@
package com.google.cloud.asset.v1.samples;
-// [START cloudasset_v1_generated_AssetService_Create_SetCredentialsProvider1_sync]
+// [START cloudasset_v1_generated_AssetService_Create_UseHttpJsonTransport_sync]
import com.google.cloud.asset.v1.AssetServiceClient;
import com.google.cloud.asset.v1.AssetServiceSettings;
-public class SyncCreateSetCredentialsProvider1 {
+public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
- syncCreateSetCredentialsProvider1();
+ syncCreateUseHttpJsonTransport();
}
- public static void syncCreateSetCredentialsProvider1() throws Exception {
+ public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
@@ -36,4 +36,4 @@ public static void syncCreateSetCredentialsProvider1() throws Exception {
AssetServiceClient assetServiceClient = AssetServiceClient.create(assetServiceSettings);
}
}
-// [END cloudasset_v1_generated_AssetService_Create_SetCredentialsProvider1_sync]
+// [END cloudasset_v1_generated_AssetService_Create_UseHttpJsonTransport_sync]
diff --git a/test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateSetCredentialsProvider1.java b/test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateUseHttpJsonTransport.java
similarity index 81%
rename from test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateSetCredentialsProvider1.java
rename to test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateUseHttpJsonTransport.java
index 3d84450f03..6157086fce 100644
--- a/test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateSetCredentialsProvider1.java
+++ b/test/integration/goldens/credentials/samples/snippets/generated/main/java/com/google/cloud/iam/credentials/v1/iamcredentials/create/SyncCreateUseHttpJsonTransport.java
@@ -16,17 +16,17 @@
package com.google.cloud.iam.credentials.v1.samples;
-// [START iamcredentials_v1_generated_IAMCredentials_Create_SetCredentialsProvider1_sync]
+// [START iamcredentials_v1_generated_IAMCredentials_Create_UseHttpJsonTransport_sync]
import com.google.cloud.iam.credentials.v1.IamCredentialsClient;
import com.google.cloud.iam.credentials.v1.IamCredentialsSettings;
-public class SyncCreateSetCredentialsProvider1 {
+public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
- syncCreateSetCredentialsProvider1();
+ syncCreateUseHttpJsonTransport();
}
- public static void syncCreateSetCredentialsProvider1() throws Exception {
+ public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
@@ -37,4 +37,4 @@ public static void syncCreateSetCredentialsProvider1() throws Exception {
IamCredentialsClient iamCredentialsClient = IamCredentialsClient.create(iamCredentialsSettings);
}
}
-// [END iamcredentials_v1_generated_IAMCredentials_Create_SetCredentialsProvider1_sync]
+// [END iamcredentials_v1_generated_IAMCredentials_Create_UseHttpJsonTransport_sync]
diff --git a/test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateSetCredentialsProvider1.java b/test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateUseHttpJsonTransport.java
similarity index 81%
rename from test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateSetCredentialsProvider1.java
rename to test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateUseHttpJsonTransport.java
index ed6461cb0e..66becb0375 100644
--- a/test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateSetCredentialsProvider1.java
+++ b/test/integration/goldens/library/samples/snippets/generated/main/java/com/google/cloud/example/library/v1/libraryservice/create/SyncCreateUseHttpJsonTransport.java
@@ -16,17 +16,17 @@
package com.google.cloud.example.library.v1.samples;
-// [START example_v1_generated_LibraryService_Create_SetCredentialsProvider1_sync]
+// [START example_v1_generated_LibraryService_Create_UseHttpJsonTransport_sync]
import com.google.cloud.example.library.v1.LibraryServiceClient;
import com.google.cloud.example.library.v1.LibraryServiceSettings;
-public class SyncCreateSetCredentialsProvider1 {
+public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
- syncCreateSetCredentialsProvider1();
+ syncCreateUseHttpJsonTransport();
}
- public static void syncCreateSetCredentialsProvider1() throws Exception {
+ public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
@@ -37,4 +37,4 @@ public static void syncCreateSetCredentialsProvider1() throws Exception {
LibraryServiceClient libraryServiceClient = LibraryServiceClient.create(libraryServiceSettings);
}
}
-// [END example_v1_generated_LibraryService_Create_SetCredentialsProvider1_sync]
+// [END example_v1_generated_LibraryService_Create_UseHttpJsonTransport_sync]
diff --git a/test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateSetCredentialsProvider1.java b/test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateUseHttpJsonTransport.java
similarity index 81%
rename from test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateSetCredentialsProvider1.java
rename to test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateUseHttpJsonTransport.java
index 804389bf67..13d6330aef 100644
--- a/test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateSetCredentialsProvider1.java
+++ b/test/integration/goldens/redis/samples/snippets/generated/main/java/com/google/cloud/redis/v1beta1/cloudredis/create/SyncCreateUseHttpJsonTransport.java
@@ -16,17 +16,17 @@
package com.google.cloud.redis.v1beta1.samples;
-// [START redis_v1beta1_generated_CloudRedis_Create_SetCredentialsProvider1_sync]
+// [START redis_v1beta1_generated_CloudRedis_Create_UseHttpJsonTransport_sync]
import com.google.cloud.redis.v1beta1.CloudRedisClient;
import com.google.cloud.redis.v1beta1.CloudRedisSettings;
-public class SyncCreateSetCredentialsProvider1 {
+public class SyncCreateUseHttpJsonTransport {
public static void main(String[] args) throws Exception {
- syncCreateSetCredentialsProvider1();
+ syncCreateUseHttpJsonTransport();
}
- public static void syncCreateSetCredentialsProvider1() throws Exception {
+ public static void syncCreateUseHttpJsonTransport() throws Exception {
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
@@ -36,4 +36,4 @@ public static void syncCreateSetCredentialsProvider1() throws Exception {
CloudRedisClient cloudRedisClient = CloudRedisClient.create(cloudRedisSettings);
}
}
-// [END redis_v1beta1_generated_CloudRedis_Create_SetCredentialsProvider1_sync]
+// [END redis_v1beta1_generated_CloudRedis_Create_UseHttpJsonTransport_sync]
From dfe1a50ec857cc2998bcbfbc2d8af6801f0ae260 Mon Sep 17 00:00:00 2001
From: Joe Wang <106995533+JoeWang1127@users.noreply.github.com>
Date: Wed, 16 Oct 2024 21:22:35 +0000
Subject: [PATCH 06/14] feat: selectively generate libraries (#3290)
In this PR:
- Allow selectively generate libraries by adding `--library-names` to
CLI.
We have a request of partially releasing google-cloud-java
(b/331628538), which requires only generating a selective list of
libraries.
This change allows a user-defined list of libraries to be generated even
if the corresponding library configs are the same.
---
library_generation/cli/entry_point.py | 54 +++-
library_generation/generate_repo.py | 5 +-
.../test/cli/entry_point_unit_tests.py | 231 +++++++++++++++++-
.../test/generate_repo_unit_tests.py | 14 ++
.../test-config/monorepo_baseline.yaml | 30 +++
.../test-config/monorepo_current.yaml | 30 +++
6 files changed, 351 insertions(+), 13 deletions(-)
create mode 100644 library_generation/test/resources/test-config/monorepo_baseline.yaml
create mode 100644 library_generation/test/resources/test-config/monorepo_current.yaml
diff --git a/library_generation/cli/entry_point.py b/library_generation/cli/entry_point.py
index e5055d8030..5ca6d93219 100644
--- a/library_generation/cli/entry_point.py
+++ b/library_generation/cli/entry_point.py
@@ -13,7 +13,7 @@
# limitations under the License.
import os
import sys
-
+from typing import Optional
import click as click
from library_generation.generate_pr_description import generate_pr_descriptions
from library_generation.generate_repo import generate_from_yaml
@@ -51,6 +51,17 @@ def main(ctx):
metadata about library generation.
""",
)
+@click.option(
+ "--library-names",
+ type=str,
+ default=None,
+ show_default=True,
+ help="""
+ A list of library names that will be generated, separated by comma.
+ The library name of a library is the value of library_name or api_shortname,
+ if library_name is not specified, in the generation configuration.
+ """,
+)
@click.option(
"--repository-path",
type=str,
@@ -77,6 +88,7 @@ def main(ctx):
def generate(
baseline_generation_config_path: str,
current_generation_config_path: str,
+ library_names: Optional[str],
repository_path: str,
api_definitions_path: str,
):
@@ -86,8 +98,8 @@ def generate(
history.
If baseline generation config is not specified but current generation
- config is specified, generate all libraries based on current generation
- config without commit history.
+ config is specified, generate all libraries if `library_names` is not
+ specified, based on current generation config without commit history.
If current generation config is not specified but baseline generation
config is specified, raise FileNotFoundError because current generation
@@ -95,8 +107,15 @@ def generate(
If both baseline generation config and current generation config are not
specified, generate all libraries based on the default generation config,
- which is generation_config.yaml in the current working directory. Raise
- FileNotFoundError if the default config does not exist.
+ which is generation_config.yaml in the current working directory.
+
+ If `library_names` is specified, only libraries whose name can be found in
+ the current generation config or default generation config, if current
+ generation config is not specified, will be generated. Changed libraries
+ will be ignored even if baseline and current generation config are
+ specified.
+
+ Raise FileNotFoundError if the default config does not exist.
The commit history, if generated, will be available in
repository_path/pr_description.txt.
@@ -104,6 +123,7 @@ def generate(
__generate_repo_and_pr_description_impl(
baseline_generation_config_path=baseline_generation_config_path,
current_generation_config_path=current_generation_config_path,
+ library_names=library_names,
repository_path=repository_path,
api_definitions_path=api_definitions_path,
)
@@ -112,6 +132,7 @@ def generate(
def __generate_repo_and_pr_description_impl(
baseline_generation_config_path: str,
current_generation_config_path: str,
+ library_names: Optional[str],
repository_path: str,
api_definitions_path: str,
):
@@ -146,30 +167,39 @@ def __generate_repo_and_pr_description_impl(
current_generation_config_path = os.path.abspath(current_generation_config_path)
repository_path = os.path.abspath(repository_path)
api_definitions_path = os.path.abspath(api_definitions_path)
+ include_library_names = _parse_library_name_from(library_names)
+
if not baseline_generation_config_path:
- # Execute full generation based on current_generation_config if
+ # Execute selective generation based on current_generation_config if
# baseline_generation_config is not specified.
# Do not generate pull request description.
generate_from_yaml(
config=from_yaml(current_generation_config_path),
repository_path=repository_path,
api_definitions_path=api_definitions_path,
+ target_library_names=include_library_names,
)
return
- # Compare two generation configs and only generate changed libraries.
+ # Compare two generation configs to get changed libraries.
# Generate pull request description.
baseline_generation_config_path = os.path.abspath(baseline_generation_config_path)
config_change = compare_config(
baseline_config=from_yaml(baseline_generation_config_path),
current_config=from_yaml(current_generation_config_path),
)
- # pass None if we want to fully generate the repository.
- target_library_names = (
+ # Pass None if we want to fully generate the repository.
+ changed_library_names = (
config_change.get_changed_libraries()
if not _needs_full_repo_generation(config_change=config_change)
else None
)
+ # Include library names takes preference if specified.
+ target_library_names = (
+ include_library_names
+ if include_library_names is not None
+ else changed_library_names
+ )
generate_from_yaml(
config=config_change.current_config,
repository_path=repository_path,
@@ -191,6 +221,12 @@ def _needs_full_repo_generation(config_change: ConfigChange) -> bool:
return not current_config.is_monorepo() or current_config.contains_common_protos()
+def _parse_library_name_from(includes: str) -> Optional[list[str]]:
+ if includes is None:
+ return None
+ return [library_name.strip() for library_name in includes.split(",")]
+
+
@main.command()
@click.option(
"--generation-config-path",
diff --git a/library_generation/generate_repo.py b/library_generation/generate_repo.py
index cb44fadcbe..fa3062f091 100755
--- a/library_generation/generate_repo.py
+++ b/library_generation/generate_repo.py
@@ -12,9 +12,8 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-import os
import shutil
-
+from typing import Optional
import library_generation.utils.utilities as util
from library_generation.generate_composed_library import generate_composed_library
from library_generation.model.generation_config import GenerationConfig
@@ -26,7 +25,7 @@ def generate_from_yaml(
config: GenerationConfig,
repository_path: str,
api_definitions_path: str,
- target_library_names: list[str] = None,
+ target_library_names: Optional[list[str]],
) -> None:
"""
Based on the generation config, generates libraries via
diff --git a/library_generation/test/cli/entry_point_unit_tests.py b/library_generation/test/cli/entry_point_unit_tests.py
index 171be31236..ca70bdd647 100644
--- a/library_generation/test/cli/entry_point_unit_tests.py
+++ b/library_generation/test/cli/entry_point_unit_tests.py
@@ -104,6 +104,7 @@ def test_generate_non_monorepo_without_changes_triggers_full_generation(
generate_impl(
baseline_generation_config_path=config_path,
current_generation_config_path=config_path,
+ library_names=None,
repository_path=".",
api_definitions_path=".",
)
@@ -114,6 +115,37 @@ def test_generate_non_monorepo_without_changes_triggers_full_generation(
target_library_names=None,
)
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_non_monorepo_without_changes_with_includes_triggers_selective_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of non monorepos
+ (HW libraries).
+ generate() should call generate_from_yaml() with
+ target_library_names equals includes.
+ """
+ config_path = f"{test_resource_dir}/generation_config.yaml"
+ self.assertFalse(from_yaml(config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=config_path,
+ current_generation_config_path=config_path,
+ library_names="cloudasset,non-existent-library",
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["cloudasset", "non-existent-library"],
+ )
+
@patch("library_generation.cli.entry_point.generate_from_yaml")
@patch("library_generation.cli.entry_point.generate_pr_descriptions")
def test_generate_non_monorepo_with_changes_triggers_full_generation(
@@ -137,6 +169,7 @@ def test_generate_non_monorepo_with_changes_triggers_full_generation(
generate_impl(
baseline_generation_config_path=baseline_config_path,
current_generation_config_path=current_config_path,
+ library_names=None,
repository_path=".",
api_definitions_path=".",
)
@@ -147,6 +180,41 @@ def test_generate_non_monorepo_with_changes_triggers_full_generation(
target_library_names=None,
)
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_non_monorepo_with_changes_with_includes_triggers_selective_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of non monorepos
+ (HW libraries).
+ generate() should call generate_from_yaml() with
+ target_library_names equals includes
+ """
+ baseline_config_path = f"{test_resource_dir}/generation_config.yaml"
+ current_config_path = (
+ f"{test_resource_dir}/generation_config_library_modified.yaml"
+ )
+ self.assertFalse(from_yaml(current_config_path).is_monorepo())
+ self.assertFalse(from_yaml(baseline_config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=baseline_config_path,
+ current_generation_config_path=current_config_path,
+ library_names="cloudasset,non-existent-library",
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["cloudasset", "non-existent-library"],
+ )
+
@patch("library_generation.cli.entry_point.generate_from_yaml")
@patch("library_generation.cli.entry_point.generate_pr_descriptions")
def test_generate_monorepo_with_common_protos_triggers_full_generation(
@@ -167,6 +235,7 @@ def test_generate_monorepo_with_common_protos_triggers_full_generation(
generate_impl(
baseline_generation_config_path=config_path,
current_generation_config_path=config_path,
+ library_names=None,
repository_path=".",
api_definitions_path=".",
)
@@ -179,7 +248,69 @@ def test_generate_monorepo_with_common_protos_triggers_full_generation(
@patch("library_generation.cli.entry_point.generate_from_yaml")
@patch("library_generation.cli.entry_point.generate_pr_descriptions")
- def test_generate_monorepo_without_common_protos_does_not_trigger_full_generation(
+ def test_generate_monorepo_with_common_protos_with_includes_triggers_selective_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of a monorepo with
+ common protos.
+ target_library_names is the same as includes.
+ """
+ config_path = f"{test_resource_dir}/monorepo_with_common_protos.yaml"
+ self.assertTrue(from_yaml(config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=config_path,
+ current_generation_config_path=config_path,
+ library_names="iam,non-existent-library",
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["iam", "non-existent-library"],
+ )
+
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_monorepo_without_change_does_not_trigger_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of a monorepo without
+ common protos.
+ generate() should call generate_from_yaml() with
+ target_library_names=changed libraries which does not trigger the full
+ generation.
+ """
+ config_path = f"{test_resource_dir}/monorepo_without_common_protos.yaml"
+ self.assertTrue(from_yaml(config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=config_path,
+ current_generation_config_path=config_path,
+ library_names=None,
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=[],
+ )
+
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_monorepo_without_change_with_includes_trigger_selective_generation(
self,
generate_pr_descriptions,
generate_from_yaml,
@@ -198,6 +329,104 @@ def test_generate_monorepo_without_common_protos_does_not_trigger_full_generatio
generate_impl(
baseline_generation_config_path=config_path,
current_generation_config_path=config_path,
+ library_names="asset",
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["asset"],
+ )
+
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_monorepo_with_changed_config_without_includes_trigger_changed_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of a monorepo without
+ common protos.
+ target_library_names should be the changed libraries if includes
+ is not specified.
+ """
+ current_config_path = f"{test_resource_dir}/monorepo_current.yaml"
+ baseline_config_path = f"{test_resource_dir}/monorepo_baseline.yaml"
+ self.assertTrue(from_yaml(current_config_path).is_monorepo())
+ self.assertTrue(from_yaml(baseline_config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=baseline_config_path,
+ current_generation_config_path=current_config_path,
+ library_names=None,
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["asset"],
+ )
+
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_monorepo_with_changed_config_and_includes_trigger_selective_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of a monorepo without
+ common protos.
+ target_library_names should be the same as include libraries, regardless
+ the library exists or not.
+ """
+ current_config_path = f"{test_resource_dir}/monorepo_current.yaml"
+ baseline_config_path = f"{test_resource_dir}/monorepo_baseline.yaml"
+ self.assertTrue(from_yaml(current_config_path).is_monorepo())
+ self.assertTrue(from_yaml(baseline_config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=baseline_config_path,
+ current_generation_config_path=current_config_path,
+ library_names="cloudbuild,non-existent-library",
+ repository_path=".",
+ api_definitions_path=".",
+ )
+ generate_from_yaml.assert_called_with(
+ config=ANY,
+ repository_path=ANY,
+ api_definitions_path=ANY,
+ target_library_names=["cloudbuild", "non-existent-library"],
+ )
+
+ @patch("library_generation.cli.entry_point.generate_from_yaml")
+ @patch("library_generation.cli.entry_point.generate_pr_descriptions")
+ def test_generate_monorepo_without_changed_config_without_includes_does_not_trigger_generation(
+ self,
+ generate_pr_descriptions,
+ generate_from_yaml,
+ ):
+ """
+ this tests confirms the behavior of generation of a monorepo without
+ common protos.
+ target_library_names should be the changed libraries if includes
+ is not specified.
+ """
+ config_path = f"{test_resource_dir}/monorepo_without_common_protos.yaml"
+ self.assertTrue(from_yaml(config_path).is_monorepo())
+ # we call the implementation method directly since click
+ # does special handling when a method is annotated with @main.command()
+ generate_impl(
+ baseline_generation_config_path=config_path,
+ current_generation_config_path=config_path,
+ library_names=None,
repository_path=".",
api_definitions_path=".",
)
diff --git a/library_generation/test/generate_repo_unit_tests.py b/library_generation/test/generate_repo_unit_tests.py
index 6085c237a6..470f0a4b18 100644
--- a/library_generation/test/generate_repo_unit_tests.py
+++ b/library_generation/test/generate_repo_unit_tests.py
@@ -40,6 +40,20 @@ def test_get_target_library_given_null_returns_all_libraries(self):
target_libraries = get_target_libraries(config)
self.assertEqual([one_library, another_library], target_libraries)
+ def test_get_target_library_given_an_non_existent_library_returns_only_existing_libraries(
+ self,
+ ):
+ one_library = GenerateRepoTest.__get_an_empty_library_config()
+ one_library.api_shortname = "one_library"
+ another_library = GenerateRepoTest.__get_an_empty_library_config()
+ another_library.api_shortname = "another_library"
+ config = GenerateRepoTest.__get_an_empty_generation_config()
+ config.libraries.extend([one_library, another_library])
+ target_libraries = get_target_libraries(
+ config, ["one_library", "another_library", "non_existent_library"]
+ )
+ self.assertEqual([one_library, another_library], target_libraries)
+
@staticmethod
def __get_an_empty_generation_config() -> GenerationConfig:
return GenerationConfig(
diff --git a/library_generation/test/resources/test-config/monorepo_baseline.yaml b/library_generation/test/resources/test-config/monorepo_baseline.yaml
new file mode 100644
index 0000000000..c2c4fd4a3b
--- /dev/null
+++ b/library_generation/test/resources/test-config/monorepo_baseline.yaml
@@ -0,0 +1,30 @@
+gapic_generator_version: 2.34.0
+googleapis_commitish: 1a45bf7393b52407188c82e63101db7dc9c72026
+libraries_bom_version: 26.37.0
+libraries:
+ - api_shortname: cloudasset
+ name_pretty: Cloud Asset Inventory
+ product_documentation: "https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview"
+ api_description: "provides inventory services based on a time series database."
+ library_name: "asset"
+ client_documentation: "https://cloud.google.com/java/docs/reference/google-cloud-asset/latest/overview"
+ distribution_name: "com.google.cloud:google-cloud-asset"
+ release_level: preview
+ GAPICs:
+ - proto_path: google/cloud/asset/v1
+ - proto_path: google/cloud/asset/v1p1beta1
+ - proto_path: google/cloud/asset/v1p2beta1
+ - proto_path: google/cloud/asset/v1p5beta1
+ - proto_path: google/cloud/asset/v1p7beta1
+ - api_shortname: cloudbuild
+ name_pretty: Cloud Build
+ product_documentation: https://cloud.google.com/cloud-build/
+ api_description: lets you build software quickly across all languages. Get complete
+ control over defining custom workflows for building, testing, and deploying across
+ multiple environments such as VMs, serverless, Kubernetes, or Firebase.
+ release_level: stable
+ distribution_name: com.google.cloud:google-cloud-build
+ issue_tracker: https://issuetracker.google.com/savedsearches/5226584
+ GAPICs:
+ - proto_path: google/devtools/cloudbuild/v1
+ - proto_path: google/devtools/cloudbuild/v2
diff --git a/library_generation/test/resources/test-config/monorepo_current.yaml b/library_generation/test/resources/test-config/monorepo_current.yaml
new file mode 100644
index 0000000000..3ee2c8be2c
--- /dev/null
+++ b/library_generation/test/resources/test-config/monorepo_current.yaml
@@ -0,0 +1,30 @@
+gapic_generator_version: 2.34.0
+googleapis_commitish: 1a45bf7393b52407188c82e63101db7dc9c72026
+libraries_bom_version: 26.37.0
+libraries:
+ - api_shortname: cloudasset
+ name_pretty: Cloud Asset Inventory
+ product_documentation: "https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview"
+ api_description: "provides inventory services based on a time series database."
+ library_name: "asset"
+ client_documentation: "https://cloud.google.com/java/docs/reference/google-cloud-asset/latest/overview"
+ distribution_name: "com.google.cloud:google-cloud-asset"
+ release_level: stable
+ GAPICs:
+ - proto_path: google/cloud/asset/v1
+ - proto_path: google/cloud/asset/v1p1beta1
+ - proto_path: google/cloud/asset/v1p2beta1
+ - proto_path: google/cloud/asset/v1p5beta1
+ - proto_path: google/cloud/asset/v1p7beta1
+ - api_shortname: cloudbuild
+ name_pretty: Cloud Build
+ product_documentation: https://cloud.google.com/cloud-build/
+ api_description: lets you build software quickly across all languages. Get complete
+ control over defining custom workflows for building, testing, and deploying across
+ multiple environments such as VMs, serverless, Kubernetes, or Firebase.
+ release_level: stable
+ distribution_name: com.google.cloud:google-cloud-build
+ issue_tracker: https://issuetracker.google.com/savedsearches/5226584
+ GAPICs:
+ - proto_path: google/devtools/cloudbuild/v1
+ - proto_path: google/devtools/cloudbuild/v2
From a9eac851c57989ab45c4e1b28171ea043506bcd9 Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Thu, 17 Oct 2024 01:14:35 +0200
Subject: [PATCH 07/14] deps: update google api dependencies (#3282)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.google.api.grpc:grpc-google-common-protos](https://redirect.github.com/googleapis/sdk-platform-java)
| `2.45.1` -> `2.46.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.api.grpc:grpc-google-iam-v1](https://redirect.github.com/googleapis/sdk-platform-java)
| `1.40.1` -> `1.41.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.api.grpc:proto-google-common-protos](https://redirect.github.com/googleapis/sdk-platform-java)
| `2.45.1` -> `2.46.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.api.grpc:proto-google-iam-v1](https://redirect.github.com/googleapis/sdk-platform-java)
| `1.40.1` -> `1.41.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.api:api-common](https://redirect.github.com/googleapis/sdk-platform-java)
| `2.37.1` -> `2.38.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
googleapis/sdk-platform-java
(com.google.api.grpc:grpc-google-common-protos)
###
[`v2.46.0`](https://redirect.github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2460-2024-09-23)
##### Features
- expose property in GrpcTransportChannel if it uses direct path.
([#3170](https://redirect.github.com/googleapis/sdk-platform-java/issues/3170))
([9a432f7](https://redirect.github.com/googleapis/sdk-platform-java/commit/9a432f7ce042fb2470ca99817200e0ff82a83c39))
- generate a GAPIC library from api definition
([#3208](https://redirect.github.com/googleapis/sdk-platform-java/issues/3208))
([b6b5d7b](https://redirect.github.com/googleapis/sdk-platform-java/commit/b6b5d7bbe2743034def0859105da146134d9b1b0))
- Metrics tracer addAttribute map overload
([#3202](https://redirect.github.com/googleapis/sdk-platform-java/issues/3202))
([1a988df](https://redirect.github.com/googleapis/sdk-platform-java/commit/1a988df22f7e3d15ce6b121bf26897c59ab468e4))
##### Bug Fixes
- generate pr description with repo level change
([#3182](https://redirect.github.com/googleapis/sdk-platform-java/issues/3182))
([edd2168](https://redirect.github.com/googleapis/sdk-platform-java/commit/edd2168fdc7ba7ea9ae328736cb5d39adf950929))
##### Dependencies
- update dependency com.google.errorprone:error_prone_annotations to
v2.32.0
([#3192](https://redirect.github.com/googleapis/sdk-platform-java/issues/3192))
([b280706](https://redirect.github.com/googleapis/sdk-platform-java/commit/b28070686ed1360084cd95beb622b78966f4960c))
- update dependency com.google.errorprone:error_prone_annotations to
v2.32.0
([#3193](https://redirect.github.com/googleapis/sdk-platform-java/issues/3193))
([ed0cd17](https://redirect.github.com/googleapis/sdk-platform-java/commit/ed0cd1729b6b964d730a8c5f38589939aab3fd8a))
- update dependency filelock to v3.16.1
([#3210](https://redirect.github.com/googleapis/sdk-platform-java/issues/3210))
([703ac3d](https://redirect.github.com/googleapis/sdk-platform-java/commit/703ac3d0b73d5388d60b910bcd26bcde6327a0a3))
- update dependency idna to v3.10
([#3201](https://redirect.github.com/googleapis/sdk-platform-java/issues/3201))
([211c3ec](https://redirect.github.com/googleapis/sdk-platform-java/commit/211c3ecdec1a088267dc3c2765f5eb3835496c9b))
- update dependency org.threeten:threetenbp to v1.7.0
([#3205](https://redirect.github.com/googleapis/sdk-platform-java/issues/3205))
([c88a722](https://redirect.github.com/googleapis/sdk-platform-java/commit/c88a722c09080b18ecbb9ba94dec56f152de5eb9))
- update dependency org.threeten:threetenbp to v1.7.0
([#3206](https://redirect.github.com/googleapis/sdk-platform-java/issues/3206))
([3e9fbac](https://redirect.github.com/googleapis/sdk-platform-java/commit/3e9fbacf65411521c87e67f3dd33f392276e8200))
- update dependency platformdirs to v4.3.3
([#3200](https://redirect.github.com/googleapis/sdk-platform-java/issues/3200))
([b62b05d](https://redirect.github.com/googleapis/sdk-platform-java/commit/b62b05de5295484b48b36fcbf9b94887184d05d4))
- update dependency platformdirs to v4.3.6
([#3209](https://redirect.github.com/googleapis/sdk-platform-java/issues/3209))
([227ffa5](https://redirect.github.com/googleapis/sdk-platform-java/commit/227ffa5a841c29b91f848453e8be2accf44041f3))
- update dependency urllib3 to v2.2.3
([#3194](https://redirect.github.com/googleapis/sdk-platform-java/issues/3194))
([f69d511](https://redirect.github.com/googleapis/sdk-platform-java/commit/f69d511d89a50d88bb45fd113611e4f94886696b))
- update dependency virtualenv to v20.26.5
([#3212](https://redirect.github.com/googleapis/sdk-platform-java/issues/3212))
([d3ef97a](https://redirect.github.com/googleapis/sdk-platform-java/commit/d3ef97a5b9f5252a1e503b638261746a7cf4dc77))
- update google api dependencies
([#3183](https://redirect.github.com/googleapis/sdk-platform-java/issues/3183))
([02eea8d](https://redirect.github.com/googleapis/sdk-platform-java/commit/02eea8d62e5e2d019a97545429346810e00bcaa6))
- update google auth library dependencies to v1.26.0
([#3216](https://redirect.github.com/googleapis/sdk-platform-java/issues/3216))
([0b369e9](https://redirect.github.com/googleapis/sdk-platform-java/commit/0b369e9ba6551eae6d2041ce430912b56ae9b394))
- update google auth library dependencies to v1.27.0
([#3221](https://redirect.github.com/googleapis/sdk-platform-java/issues/3221))
([a3cb9e7](https://redirect.github.com/googleapis/sdk-platform-java/commit/a3cb9e75839ceb811f9e264073758691068e4a95))
- update googleapis/java-cloud-bom digest to
[`06f632d`](https://redirect.github.com/googleapis/sdk-platform-java/commit/06f632d)
([#3198](https://redirect.github.com/googleapis/sdk-platform-java/issues/3198))
([49dcd35](https://redirect.github.com/googleapis/sdk-platform-java/commit/49dcd3535fc2836df3a5d7b1665051cd54d09f29))
- update googleapis/java-cloud-bom digest to
[`e7d8909`](https://redirect.github.com/googleapis/sdk-platform-java/commit/e7d8909)
([#3207](https://redirect.github.com/googleapis/sdk-platform-java/issues/3207))
([de497ee](https://redirect.github.com/googleapis/sdk-platform-java/commit/de497ee716a4fd0ab3bc64d66c1dc24af11c0368))
- update opentelemetry-java monorepo to v1.42.1
([#3189](https://redirect.github.com/googleapis/sdk-platform-java/issues/3189))
([38117d8](https://redirect.github.com/googleapis/sdk-platform-java/commit/38117d8b92930abc6e6922a4c46654d02e823f67))
- Upgrade Protobuf-Java to v3.25.5
([#3217](https://redirect.github.com/googleapis/sdk-platform-java/issues/3217))
([860c1bc](https://redirect.github.com/googleapis/sdk-platform-java/commit/860c1bcfc213fe7b21969c80282c8c08637cd3ba))
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/sdk-platform-java).
---
gax-java/dependencies.properties | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/gax-java/dependencies.properties b/gax-java/dependencies.properties
index e4c49c5b59..f7eb43f0f9 100644
--- a/gax-java/dependencies.properties
+++ b/gax-java/dependencies.properties
@@ -35,8 +35,8 @@ version.io_grpc=1.67.1
# It should be constructed the following way:
# 1) Take full artifact id (including the group and classifier (if any) portions) and remove version portion.
# 2) Replace all characters which are neither alphabetic nor digits with the underscore ('_') character
-maven.com_google_api_grpc_proto_google_common_protos=com.google.api.grpc:proto-google-common-protos:2.45.1
-maven.com_google_api_grpc_grpc_google_common_protos=com.google.api.grpc:grpc-google-common-protos:2.45.1
+maven.com_google_api_grpc_proto_google_common_protos=com.google.api.grpc:proto-google-common-protos:2.46.0
+maven.com_google_api_grpc_grpc_google_common_protos=com.google.api.grpc:grpc-google-common-protos:2.46.0
maven.com_google_auth_google_auth_library_oauth2_http=com.google.auth:google-auth-library-oauth2-http:1.28.0
maven.com_google_auth_google_auth_library_credentials=com.google.auth:google-auth-library-credentials:1.28.0
maven.io_opentelemetry_opentelemetry_api=io.opentelemetry:opentelemetry-api:1.42.1
@@ -67,10 +67,10 @@ maven.com_google_errorprone_error_prone_annotations=com.google.errorprone:error_
maven.com_google_j2objc_j2objc_annotations=com.google.j2objc:j2objc-annotations:2.8
maven.com_google_auto_value_auto_value=com.google.auto.value:auto-value:1.11.0
maven.com_google_auto_value_auto_value_annotations=com.google.auto.value:auto-value-annotations:1.11.0
-maven.com_google_api_api_common=com.google.api:api-common:2.37.1
+maven.com_google_api_api_common=com.google.api:api-common:2.38.0
maven.org_threeten_threetenbp=org.threeten:threetenbp:1.7.0
-maven.com_google_api_grpc_grpc_google_iam_v1=com.google.api.grpc:grpc-google-iam-v1:1.40.1
-maven.com_google_api_grpc_proto_google_iam_v1=com.google.api.grpc:proto-google-iam-v1:1.40.1
+maven.com_google_api_grpc_grpc_google_iam_v1=com.google.api.grpc:grpc-google-iam-v1:1.41.0
+maven.com_google_api_grpc_proto_google_iam_v1=com.google.api.grpc:proto-google-iam-v1:1.41.0
maven.com_google_http_client_google_http_client=com.google.http-client:google-http-client:1.45.0
maven.com_google_http_client_google_http_client_gson=com.google.http-client:google-http-client-gson:1.45.0
maven.org_codehaus_mojo_animal_sniffer_annotations=org.codehaus.mojo:animal-sniffer-annotations:1.24
From 16365db1d09399dbc003274decb96cb0f9434931 Mon Sep 17 00:00:00 2001
From: Joe Wang <106995533+JoeWang1127@users.noreply.github.com>
Date: Fri, 18 Oct 2024 19:43:13 +0000
Subject: [PATCH 08/14] chore: suppress pull progress (#3296)
In this PR:
- Add `--quiet` option to `docker run` to suppress pulling progress,
according to [docker run
doc](https://docs.docker.com/reference/cli/docker/container/run/)
---
.github/scripts/hermetic_library_generation.sh | 1 +
library_generation/test/integration_tests.py | 1 +
2 files changed, 2 insertions(+)
diff --git a/.github/scripts/hermetic_library_generation.sh b/.github/scripts/hermetic_library_generation.sh
index 2c5552f77d..97242aae0e 100755
--- a/.github/scripts/hermetic_library_generation.sh
+++ b/.github/scripts/hermetic_library_generation.sh
@@ -95,6 +95,7 @@ popd
# run hermetic code generation docker image.
docker run \
--rm \
+ --quiet \
-u "$(id -u):$(id -g)" \
-v "$(pwd):${workspace_name}" \
-v "${m2_folder}":/home/.m2 \
diff --git a/library_generation/test/integration_tests.py b/library_generation/test/integration_tests.py
index c5f8221cc9..afe2cdd858 100644
--- a/library_generation/test/integration_tests.py
+++ b/library_generation/test/integration_tests.py
@@ -311,6 +311,7 @@ def __run_entry_point_in_docker_container(
"-u",
f"{user_id}:{group_id}",
"--rm",
+ "--quiet",
"-v",
f"{repo_location}:/workspace/repo",
"-v",
From fd0b2916906d57c06ce9177813133b86be4ee6c2 Mon Sep 17 00:00:00 2001
From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com>
Date: Tue, 22 Oct 2024 10:54:58 -0400
Subject: [PATCH 09/14] chore: update googleapis commit at Sat Oct 5 02:25:08
UTC 2024 (#3283)
This pull request is generated with proto changes between
[googleapis/googleapis@b6a27d1](https://github.com/googleapis/googleapis/commit/b6a27d13a2f0223051ef720e4e9d0d52323560e6)
(exclusive) and
[googleapis/googleapis@beea48a](https://github.com/googleapis/googleapis/commit/beea48a164c2a8cc8485185c3a4f56c587090e1a)
(inclusive).
BEGIN_COMMIT_OVERRIDE
BEGIN_NESTED_COMMIT
Synchronize new proto/yaml changes.
PiperOrigin-RevId: 683894613
Source Link:
[googleapis/googleapis@e848c76](https://github.com/googleapis/googleapis/commit/e848c761f31ace539f117a192ddbae2f533d7a23)
END_NESTED_COMMIT
END_COMMIT_OVERRIDE
---
generation_config.yaml | 2 +-
.../java/com/google/iam/v1/IamPolicyProto.java | 8 ++++----
.../main/proto/google/iam/v1/iam_policy.proto | 16 +++++++++-------
3 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/generation_config.yaml b/generation_config.yaml
index 55bd2c6314..62e47dcbe5 100644
--- a/generation_config.yaml
+++ b/generation_config.yaml
@@ -1,4 +1,4 @@
-googleapis_commitish: b6a27d13a2f0223051ef720e4e9d0d52323560e6
+googleapis_commitish: beea48a164c2a8cc8485185c3a4f56c587090e1a
# the libraries are ordered with respect to library name, which is
# java-{library.library_name} or java-{library.api-shortname} when
# library.library_name is not defined.
diff --git a/java-iam/proto-google-iam-v1/src/main/java/com/google/iam/v1/IamPolicyProto.java b/java-iam/proto-google-iam-v1/src/main/java/com/google/iam/v1/IamPolicyProto.java
index 24f783a9f1..b595fb77aa 100644
--- a/java-iam/proto-google-iam-v1/src/main/java/com/google/iam/v1/IamPolicyProto.java
+++ b/java-iam/proto-google-iam-v1/src/main/java/com/google/iam/v1/IamPolicyProto.java
@@ -79,11 +79,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "am.v1.TestIamPermissionsRequest\032).google"
+ ".iam.v1.TestIamPermissionsResponse\"/\202\323\344\223"
+ "\002)\"$/v1/{resource=**}:testIamPermissions"
- + ":\001*\032\036\312A\033iam-meta-api.googleapis.comB\177\n\021c"
+ + ":\001*\032\036\312A\033iam-meta-api.googleapis.comB|\n\021c"
+ "om.google.iam.v1B\016IamPolicyProtoP\001Z)clou"
- + "d.google.com/go/iam/apiv1/iampb;iampb\370\001\001"
- + "\252\002\023Google.Cloud.Iam.V1\312\002\023Google\\Cloud\\Ia"
- + "m\\V1b\006proto3"
+ + "d.google.com/go/iam/apiv1/iampb;iampb\252\002\023"
+ + "Google.Cloud.Iam.V1\312\002\023Google\\Cloud\\Iam\\V"
+ + "1b\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
diff --git a/java-iam/proto-google-iam-v1/src/main/proto/google/iam/v1/iam_policy.proto b/java-iam/proto-google-iam-v1/src/main/proto/google/iam/v1/iam_policy.proto
index 12580e9cd7..0841d99596 100644
--- a/java-iam/proto-google-iam-v1/src/main/proto/google/iam/v1/iam_policy.proto
+++ b/java-iam/proto-google-iam-v1/src/main/proto/google/iam/v1/iam_policy.proto
@@ -24,7 +24,6 @@ import "google/iam/v1/options.proto";
import "google/iam/v1/policy.proto";
import "google/protobuf/field_mask.proto";
-option cc_enable_arenas = true;
option csharp_namespace = "Google.Cloud.Iam.V1";
option go_package = "cloud.google.com/go/iam/apiv1/iampb;iampb";
option java_multiple_files = true;
@@ -34,7 +33,6 @@ option php_namespace = "Google\\Cloud\\Iam\\V1";
// API Overview
//
-//
// Manages Identity and Access Management (IAM) policies.
//
// Any implementation of an API that offers access control features
@@ -89,7 +87,8 @@ service IAMPolicy {
// Note: This operation is designed to be used for building permission-aware
// UIs and command-line tools, not for authorization checking. This operation
// may "fail open" without warning.
- rpc TestIamPermissions(TestIamPermissionsRequest) returns (TestIamPermissionsResponse) {
+ rpc TestIamPermissions(TestIamPermissionsRequest)
+ returns (TestIamPermissionsResponse) {
option (google.api.http) = {
post: "/v1/{resource=**}:testIamPermissions"
body: "*"
@@ -103,7 +102,8 @@ message SetIamPolicyRequest {
// See the operation documentation for the appropriate value for this field.
string resource = 1 [
(google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference).type = "*"];
+ (google.api.resource_reference).type = "*"
+ ];
// REQUIRED: The complete policy to be applied to the `resource`. The size of
// the policy is limited to a few 10s of KB. An empty policy is a
@@ -125,7 +125,8 @@ message GetIamPolicyRequest {
// See the operation documentation for the appropriate value for this field.
string resource = 1 [
(google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference).type = "*"];
+ (google.api.resource_reference).type = "*"
+ ];
// OPTIONAL: A `GetPolicyOptions` object for specifying options to
// `GetIamPolicy`.
@@ -136,9 +137,10 @@ message GetIamPolicyRequest {
message TestIamPermissionsRequest {
// REQUIRED: The resource for which the policy detail is being requested.
// See the operation documentation for the appropriate value for this field.
- string resource = 1[
+ string resource = 1 [
(google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference).type = "*"];
+ (google.api.resource_reference).type = "*"
+ ];
// The set of permissions to check for the `resource`. Permissions with
// wildcards (such as '*' or 'storage.*') are not allowed. For more
From 7512cfa21cd0dd47c976be6b654fde656b1f0359 Mon Sep 17 00:00:00 2001
From: Joe Wang <106995533+JoeWang1127@users.noreply.github.com>
Date: Tue, 22 Oct 2024 17:30:18 +0000
Subject: [PATCH 10/14] chore: update base image to latest (#3301)
---
.cloudbuild/library_generation/library_generation.Dockerfile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.cloudbuild/library_generation/library_generation.Dockerfile b/.cloudbuild/library_generation/library_generation.Dockerfile
index 41eb1c1a33..f2b47969dc 100644
--- a/.cloudbuild/library_generation/library_generation.Dockerfile
+++ b/.cloudbuild/library_generation/library_generation.Dockerfile
@@ -14,7 +14,7 @@
# install gapic-generator-java in a separate layer so we don't overload the image
# with the transferred source code and jars
-FROM gcr.io/cloud-devrel-public-resources/java21 AS ggj-build
+FROM gcr.io/cloud-devrel-public-resources/java21@sha256:2ceff5eeea72260258df56d42e44ed413e52ee421c1b77393c5f2c9c4d7c41da AS ggj-build
WORKDIR /sdk-platform-java
COPY . .
@@ -27,7 +27,7 @@ RUN cp "/root/.m2/repository/com/google/api/gapic-generator-java/${DOCKER_GAPIC_
"./gapic-generator-java.jar"
# build from the root of this repo:
-FROM gcr.io/cloud-devrel-public-resources/python
+FROM gcr.io/cloud-devrel-public-resources/python@sha256:9c5ea427632f195ad164054831968389d86fdde4a15abca651f3fcb2a71268cb
SHELL [ "/bin/bash", "-c" ]
From 5bd6c9ceaab11f96c6e50ca8ce9c66c1c1369d5c Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 22 Oct 2024 21:02:38 +0200
Subject: [PATCH 11/14] deps: update dependency
com.google.errorprone:error_prone_annotations to v2.34.0 (#3304)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.google.errorprone:error_prone_annotations](https://errorprone.info)
([source](https://redirect.github.com/google/error-prone)) | `2.33.0` ->
`2.34.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
google/error-prone
(com.google.errorprone:error_prone_annotations)
###
[`v2.34.0`](https://redirect.github.com/google/error-prone/releases/tag/v2.34.0):
Error Prone 2.34.0
Changes:
- Passing the javac flag `--should-stop=ifError=FLOW` is now required
when running Error Prone
([#4595](https://redirect.github.com/google/error-prone/issues/4595))
- The `MemberName` check was renamed to
[`IdentifierName`](https://errorprone.info/bugpattern/IdentifierName)
New checks:
-
[`FutureTransformAsync`](https://errorprone.info/bugpattern/FutureTransformAsync):
The usage of transformAsync is not necessary when all the return values
of the transformation function are immediate futures.
-
[`MisformattedTestData`](https://errorprone.info/bugpattern/MisformattedTestData):
Reformats Java source code inside Error Prone test cases.
-
[`MisleadingEscapedSpace`](https://errorprone.info/bugpattern/MisleadingEscapedSpace):
Using `\s` anywhere except at the end of a line in a text block is
potentially misleading.
-
[`ThrowIfUncheckedKnownUnchecked`](https://errorprone.info/bugpattern/ThrowIfUncheckedKnownUnchecked):
`throwIfUnchecked(knownUnchecked)` is equivalent to `throw
knownUnchecked`.
Closed issues:
[#4595](https://redirect.github.com/google/error-prone/issues/4595),
[#4598](https://redirect.github.com/google/error-prone/issues/4598),
[#4620](https://redirect.github.com/google/error-prone/issues/4620)
Full changelog:
https://github.com/google/error-prone/compare/v2.33.0...v2.34.0
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/sdk-platform-java).
---
gapic-generator-java-pom-parent/pom.xml | 2 +-
java-shared-dependencies/third-party-dependencies/pom.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gapic-generator-java-pom-parent/pom.xml b/gapic-generator-java-pom-parent/pom.xml
index dd19d1bd20..8f48b06728 100644
--- a/gapic-generator-java-pom-parent/pom.xml
+++ b/gapic-generator-java-pom-parent/pom.xml
@@ -34,7 +34,7 @@
3.25.5
1.42.1
8
- 2.33.0
+ 2.34.0
3.0.0
1.7.0
5.11.2
diff --git a/java-shared-dependencies/third-party-dependencies/pom.xml b/java-shared-dependencies/third-party-dependencies/pom.xml
index 73d0ba4166..15c017a9da 100644
--- a/java-shared-dependencies/third-party-dependencies/pom.xml
+++ b/java-shared-dependencies/third-party-dependencies/pom.xml
@@ -28,7 +28,7 @@
0.31.1
3.0.2
2.18.0
- 2.33.0
+ 2.34.0
1.17.1
4.4.16
4.5.14
From 5b0127480ac1358b183d971e432939779f1238ad Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 22 Oct 2024 21:03:02 +0200
Subject: [PATCH 12/14] deps: update dependency
com.google.errorprone:error_prone_annotations to v2.34.0 (#3303)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.google.errorprone:error_prone_annotations](https://errorprone.info)
([source](https://redirect.github.com/google/error-prone)) | `2.33.0` ->
`2.34.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
google/error-prone
(com.google.errorprone:error_prone_annotations)
###
[`v2.34.0`](https://redirect.github.com/google/error-prone/releases/tag/v2.34.0):
Error Prone 2.34.0
Changes:
- Passing the javac flag `--should-stop=ifError=FLOW` is now required
when running Error Prone
([#4595](https://redirect.github.com/google/error-prone/issues/4595))
- The `MemberName` check was renamed to
[`IdentifierName`](https://errorprone.info/bugpattern/IdentifierName)
New checks:
-
[`FutureTransformAsync`](https://errorprone.info/bugpattern/FutureTransformAsync):
The usage of transformAsync is not necessary when all the return values
of the transformation function are immediate futures.
-
[`MisformattedTestData`](https://errorprone.info/bugpattern/MisformattedTestData):
Reformats Java source code inside Error Prone test cases.
-
[`MisleadingEscapedSpace`](https://errorprone.info/bugpattern/MisleadingEscapedSpace):
Using `\s` anywhere except at the end of a line in a text block is
potentially misleading.
-
[`ThrowIfUncheckedKnownUnchecked`](https://errorprone.info/bugpattern/ThrowIfUncheckedKnownUnchecked):
`throwIfUnchecked(knownUnchecked)` is equivalent to `throw
knownUnchecked`.
Closed issues:
[#4595](https://redirect.github.com/google/error-prone/issues/4595),
[#4598](https://redirect.github.com/google/error-prone/issues/4598),
[#4620](https://redirect.github.com/google/error-prone/issues/4620)
Full changelog:
https://github.com/google/error-prone/compare/v2.33.0...v2.34.0
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/sdk-platform-java).
---
gax-java/dependencies.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gax-java/dependencies.properties b/gax-java/dependencies.properties
index f7eb43f0f9..2de1ab0dea 100644
--- a/gax-java/dependencies.properties
+++ b/gax-java/dependencies.properties
@@ -63,7 +63,7 @@ maven.com_google_guava_failureaccess=com.google.guava:failureaccess:1.0.2
maven.org_apache_commons_commons_lang3=org.apache.commons:commons-lang3:3.17.0
maven.com_google_android_annotations=com.google.android:annotations:4.1.1.4
maven.com_google_code_findbugs_jsr305=com.google.code.findbugs:jsr305:3.0.2
-maven.com_google_errorprone_error_prone_annotations=com.google.errorprone:error_prone_annotations:2.33.0
+maven.com_google_errorprone_error_prone_annotations=com.google.errorprone:error_prone_annotations:2.34.0
maven.com_google_j2objc_j2objc_annotations=com.google.j2objc:j2objc-annotations:2.8
maven.com_google_auto_value_auto_value=com.google.auto.value:auto-value:1.11.0
maven.com_google_auto_value_auto_value_annotations=com.google.auto.value:auto-value-annotations:1.11.0
From e64eda231bc3a1a32d56eb5269ae8d3c53ed26de Mon Sep 17 00:00:00 2001
From: Mend Renovate
Date: Tue, 22 Oct 2024 21:24:20 +0200
Subject: [PATCH 13/14] deps: update google auth library dependencies to
v1.29.0 (#3302)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[com.google.auth:google-auth-library-credentials](https://redirect.github.com/googleapis/google-auth-library-java)
| `1.28.0` -> `1.29.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.auth:google-auth-library-oauth2-http](https://redirect.github.com/googleapis/google-auth-library-java)
| `1.28.0` -> `1.29.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[com.google.auth:google-auth-library-bom](https://redirect.github.com/googleapis/google-auth-library-java)
| `1.28.0` -> `1.29.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.
---
### Release Notes
googleapis/google-auth-library-java
(com.google.auth:google-auth-library-credentials)
###
[`v1.29.0`](https://redirect.github.com/googleapis/google-auth-library-java/blob/HEAD/CHANGELOG.md#1290-2024-10-22)
[Compare
Source](https://redirect.github.com/googleapis/google-auth-library-java/compare/v1.28.0...v1.29.0)
##### Features
- Service sccount to service account impersonation to support universe
domain
([#1528](https://redirect.github.com/googleapis/google-auth-library-java/issues/1528))
([c498ccf](https://redirect.github.com/googleapis/google-auth-library-java/commit/c498ccf67755c6ec619cb37962c2c86ae3ec9d4c))
##### Bug Fixes
- Make some enum fields final
([#1526](https://redirect.github.com/googleapis/google-auth-library-java/issues/1526))
([8920155](https://redirect.github.com/googleapis/google-auth-library-java/commit/89201558db913d9a71b3acccbab8eb0045ada6de))
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/sdk-platform-java).
---
gapic-generator-java-pom-parent/pom.xml | 2 +-
gax-java/dependencies.properties | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/gapic-generator-java-pom-parent/pom.xml b/gapic-generator-java-pom-parent/pom.xml
index 8f48b06728..f1ab8d05bb 100644
--- a/gapic-generator-java-pom-parent/pom.xml
+++ b/gapic-generator-java-pom-parent/pom.xml
@@ -27,7 +27,7 @@
consistent across modules in this repository -->
1.3.2
1.67.1
- 1.28.0
+ 1.29.0
1.45.0
2.11.0
33.3.1-jre
diff --git a/gax-java/dependencies.properties b/gax-java/dependencies.properties
index 2de1ab0dea..caf00c7360 100644
--- a/gax-java/dependencies.properties
+++ b/gax-java/dependencies.properties
@@ -37,8 +37,8 @@ version.io_grpc=1.67.1
# 2) Replace all characters which are neither alphabetic nor digits with the underscore ('_') character
maven.com_google_api_grpc_proto_google_common_protos=com.google.api.grpc:proto-google-common-protos:2.46.0
maven.com_google_api_grpc_grpc_google_common_protos=com.google.api.grpc:grpc-google-common-protos:2.46.0
-maven.com_google_auth_google_auth_library_oauth2_http=com.google.auth:google-auth-library-oauth2-http:1.28.0
-maven.com_google_auth_google_auth_library_credentials=com.google.auth:google-auth-library-credentials:1.28.0
+maven.com_google_auth_google_auth_library_oauth2_http=com.google.auth:google-auth-library-oauth2-http:1.29.0
+maven.com_google_auth_google_auth_library_credentials=com.google.auth:google-auth-library-credentials:1.29.0
maven.io_opentelemetry_opentelemetry_api=io.opentelemetry:opentelemetry-api:1.42.1
maven.io_opencensus_opencensus_api=io.opencensus:opencensus-api:0.31.1
maven.io_opencensus_opencensus_contrib_grpc_metrics=io.opencensus:opencensus-contrib-grpc-metrics:0.31.1
From d5e74d9b3cf38f8aef78f1990d94778a255a5d59 Mon Sep 17 00:00:00 2001
From: "release-please[bot]"
<55107282+release-please[bot]@users.noreply.github.com>
Date: Tue, 22 Oct 2024 16:07:36 -0400
Subject: [PATCH 14/14] chore(main): release 2.48.0 (#3295)
:robot: I have created a release *beep* *boop*
---
2.48.0
##
[2.48.0](https://github.com/googleapis/sdk-platform-java/compare/v2.47.0...v2.48.0)
(2024-10-22)
### Features
* **gax:** add protobuf version tracking to headers
([#3199](https://github.com/googleapis/sdk-platform-java/issues/3199))
([40c19b1](https://github.com/googleapis/sdk-platform-java/commit/40c19b1aad71da176aeafbba32a0a4b51b5a4366))
* selectively generate libraries
([#3290](https://github.com/googleapis/sdk-platform-java/issues/3290))
([dfe1a50](https://github.com/googleapis/sdk-platform-java/commit/dfe1a50ec857cc2998bcbfbc2d8af6801f0ae260))
### Bug Fixes
* generator setting incorrect name/class for sample due to region tag
(2nd attempt)
([#3293](https://github.com/googleapis/sdk-platform-java/issues/3293))
([771bd0e](https://github.com/googleapis/sdk-platform-java/commit/771bd0e9cb306e430dc15e79a189648830101865))
### Dependencies
* update dependency com.google.errorprone:error_prone_annotations to
v2.34.0
([#3303](https://github.com/googleapis/sdk-platform-java/issues/3303))
([5b01274](https://github.com/googleapis/sdk-platform-java/commit/5b0127480ac1358b183d971e432939779f1238ad))
* update dependency com.google.errorprone:error_prone_annotations to
v2.34.0
([#3304](https://github.com/googleapis/sdk-platform-java/issues/3304))
([5bd6c9c](https://github.com/googleapis/sdk-platform-java/commit/5bd6c9ceaab11f96c6e50ca8ce9c66c1c1369d5c))
* update google api dependencies
([#3282](https://github.com/googleapis/sdk-platform-java/issues/3282))
([a9eac85](https://github.com/googleapis/sdk-platform-java/commit/a9eac851c57989ab45c4e1b28171ea043506bcd9))
* update google auth library dependencies to v1.29.0
([#3302](https://github.com/googleapis/sdk-platform-java/issues/3302))
([e64eda2](https://github.com/googleapis/sdk-platform-java/commit/e64eda231bc3a1a32d56eb5269ae8d3c53ed26de))
---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
---
.cloudbuild/graalvm/cloudbuild-test-a.yaml | 2 +-
.cloudbuild/graalvm/cloudbuild-test-b.yaml | 2 +-
.cloudbuild/graalvm/cloudbuild.yaml | 2 +-
.../cloudbuild-library-generation-push.yaml | 2 +-
.../library_generation.Dockerfile | 2 +-
.release-please-manifest.json | 2 +-
CHANGELOG.md | 21 ++++++++++++
WORKSPACE | 2 +-
api-common-java/pom.xml | 4 +--
coverage-report/pom.xml | 8 ++---
gapic-generator-java-bom/pom.xml | 26 +++++++--------
gapic-generator-java-pom-parent/pom.xml | 2 +-
gapic-generator-java/pom.xml | 6 ++--
gax-java/README.md | 12 +++----
gax-java/dependencies.properties | 8 ++---
gax-java/gax-bom/pom.xml | 20 ++++++------
gax-java/gax-grpc/pom.xml | 4 +--
gax-java/gax-httpjson/pom.xml | 4 +--
gax-java/gax/pom.xml | 4 +--
gax-java/pom.xml | 14 ++++----
.../grpc-google-common-protos/pom.xml | 4 +--
java-common-protos/pom.xml | 10 +++---
.../proto-google-common-protos/pom.xml | 4 +--
java-core/google-cloud-core-bom/pom.xml | 10 +++---
java-core/google-cloud-core-grpc/pom.xml | 4 +--
java-core/google-cloud-core-http/pom.xml | 4 +--
java-core/google-cloud-core/pom.xml | 4 +--
java-core/pom.xml | 6 ++--
java-iam/grpc-google-iam-v1/pom.xml | 4 +--
java-iam/grpc-google-iam-v2/pom.xml | 4 +--
java-iam/grpc-google-iam-v2beta/pom.xml | 4 +--
java-iam/pom.xml | 22 ++++++-------
java-iam/proto-google-iam-v1/pom.xml | 4 +--
java-iam/proto-google-iam-v2/pom.xml | 4 +--
java-iam/proto-google-iam-v2beta/pom.xml | 4 +--
java-shared-dependencies/README.md | 2 +-
.../dependency-convergence-check/pom.xml | 2 +-
.../first-party-dependencies/pom.xml | 10 +++---
java-shared-dependencies/pom.xml | 8 ++---
.../third-party-dependencies/pom.xml | 4 +--
.../upper-bound-check/pom.xml | 4 +--
sdk-platform-java-config/pom.xml | 4 +--
showcase/pom.xml | 2 +-
versions.txt | 32 +++++++++----------
44 files changed, 164 insertions(+), 143 deletions(-)
diff --git a/.cloudbuild/graalvm/cloudbuild-test-a.yaml b/.cloudbuild/graalvm/cloudbuild-test-a.yaml
index 25be42d1df..77a1b49c1c 100644
--- a/.cloudbuild/graalvm/cloudbuild-test-a.yaml
+++ b/.cloudbuild/graalvm/cloudbuild-test-a.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.38.0' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
options:
machineType: 'E2_HIGHCPU_8'
diff --git a/.cloudbuild/graalvm/cloudbuild-test-b.yaml b/.cloudbuild/graalvm/cloudbuild-test-b.yaml
index 4e84ac68b1..d4d633b4ef 100644
--- a/.cloudbuild/graalvm/cloudbuild-test-b.yaml
+++ b/.cloudbuild/graalvm/cloudbuild-test-b.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.38.0' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
options:
machineType: 'E2_HIGHCPU_8'
diff --git a/.cloudbuild/graalvm/cloudbuild.yaml b/.cloudbuild/graalvm/cloudbuild.yaml
index a1a13f6925..2d2af35524 100644
--- a/.cloudbuild/graalvm/cloudbuild.yaml
+++ b/.cloudbuild/graalvm/cloudbuild.yaml
@@ -14,7 +14,7 @@
timeout: 7200s # 2 hours
substitutions:
- _SHARED_DEPENDENCIES_VERSION: '3.37.1-SNAPSHOT' # {x-version-update:google-cloud-shared-dependencies:current}
+ _SHARED_DEPENDENCIES_VERSION: '3.38.0' # {x-version-update:google-cloud-shared-dependencies:current}
_JAVA_SHARED_CONFIG_VERSION: '1.11.3'
steps:
# GraalVM A build
diff --git a/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml b/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
index 54a8d54030..0be1627614 100644
--- a/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
+++ b/.cloudbuild/library_generation/cloudbuild-library-generation-push.yaml
@@ -15,7 +15,7 @@
timeout: 7200s # 2 hours
substitutions:
_IMAGE_NAME: "gcr.io/cloud-devrel-public-resources/java-library-generation"
- _GAPIC_GENERATOR_JAVA_VERSION: '2.47.1-SNAPSHOT' # {x-version-update:gapic-generator-java:current}
+ _GAPIC_GENERATOR_JAVA_VERSION: '2.48.0' # {x-version-update:gapic-generator-java:current}
_SHA_IMAGE_ID: "${_IMAGE_NAME}:${COMMIT_SHA}"
_LATEST_IMAGE_ID: "${_IMAGE_NAME}:latest"
_VERSIONED_IMAGE_ID: "${_IMAGE_NAME}:${_GAPIC_GENERATOR_JAVA_VERSION}"
diff --git a/.cloudbuild/library_generation/library_generation.Dockerfile b/.cloudbuild/library_generation/library_generation.Dockerfile
index f2b47969dc..268658fddd 100644
--- a/.cloudbuild/library_generation/library_generation.Dockerfile
+++ b/.cloudbuild/library_generation/library_generation.Dockerfile
@@ -19,7 +19,7 @@ FROM gcr.io/cloud-devrel-public-resources/java21@sha256:2ceff5eeea72260258df56d4
WORKDIR /sdk-platform-java
COPY . .
# {x-version-update-start:gapic-generator-java:current}
-ENV DOCKER_GAPIC_GENERATOR_VERSION="2.47.1-SNAPSHOT"
+ENV DOCKER_GAPIC_GENERATOR_VERSION="2.48.0"
# {x-version-update-end}
RUN mvn install -B -ntp -DskipTests -Dclirr.skip -Dcheckstyle.skip
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 3ab3b9e3de..d0e1cca504 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "2.47.0"
+ ".": "2.48.0"
}
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 25ee0b0b41..1d2c515802 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,26 @@
# Changelog
+## [2.48.0](https://github.com/googleapis/sdk-platform-java/compare/v2.47.0...v2.48.0) (2024-10-22)
+
+
+### Features
+
+* **gax:** add protobuf version tracking to headers ([#3199](https://github.com/googleapis/sdk-platform-java/issues/3199)) ([40c19b1](https://github.com/googleapis/sdk-platform-java/commit/40c19b1aad71da176aeafbba32a0a4b51b5a4366))
+* selectively generate libraries ([#3290](https://github.com/googleapis/sdk-platform-java/issues/3290)) ([dfe1a50](https://github.com/googleapis/sdk-platform-java/commit/dfe1a50ec857cc2998bcbfbc2d8af6801f0ae260))
+
+
+### Bug Fixes
+
+* generator setting incorrect name/class for sample due to region tag (2nd attempt) ([#3293](https://github.com/googleapis/sdk-platform-java/issues/3293)) ([771bd0e](https://github.com/googleapis/sdk-platform-java/commit/771bd0e9cb306e430dc15e79a189648830101865))
+
+
+### Dependencies
+
+* update dependency com.google.errorprone:error_prone_annotations to v2.34.0 ([#3303](https://github.com/googleapis/sdk-platform-java/issues/3303)) ([5b01274](https://github.com/googleapis/sdk-platform-java/commit/5b0127480ac1358b183d971e432939779f1238ad))
+* update dependency com.google.errorprone:error_prone_annotations to v2.34.0 ([#3304](https://github.com/googleapis/sdk-platform-java/issues/3304)) ([5bd6c9c](https://github.com/googleapis/sdk-platform-java/commit/5bd6c9ceaab11f96c6e50ca8ce9c66c1c1369d5c))
+* update google api dependencies ([#3282](https://github.com/googleapis/sdk-platform-java/issues/3282)) ([a9eac85](https://github.com/googleapis/sdk-platform-java/commit/a9eac851c57989ab45c4e1b28171ea043506bcd9))
+* update google auth library dependencies to v1.29.0 ([#3302](https://github.com/googleapis/sdk-platform-java/issues/3302)) ([e64eda2](https://github.com/googleapis/sdk-platform-java/commit/e64eda231bc3a1a32d56eb5269ae8d3c53ed26de))
+
## [2.47.0](https://github.com/googleapis/sdk-platform-java/compare/v2.46.1...v2.47.0) (2024-10-04)
diff --git a/WORKSPACE b/WORKSPACE
index 75aa38fd55..3d30fbe342 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -58,7 +58,7 @@ load("@rules_jvm_external//:defs.bzl", "maven_install")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_ARTIFACTS")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS")
-_gapic_generator_java_version = "2.47.1-SNAPSHOT" # {x-version-update:gapic-generator-java:current}
+_gapic_generator_java_version = "2.48.0" # {x-version-update:gapic-generator-java:current}
maven_install(
artifacts = [
diff --git a/api-common-java/pom.xml b/api-common-java/pom.xml
index 984da0a82e..d6ca1d22cf 100644
--- a/api-common-java/pom.xml
+++ b/api-common-java/pom.xml
@@ -5,14 +5,14 @@
com.google.api
api-common
jar
- 2.38.1-SNAPSHOT
+ 2.39.0
API Common
Common utilities for Google APIs in Java
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
diff --git a/coverage-report/pom.xml b/coverage-report/pom.xml
index cea6b23367..b071b61c04 100644
--- a/coverage-report/pom.xml
+++ b/coverage-report/pom.xml
@@ -31,22 +31,22 @@
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax-grpc
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax-httpjson
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
api-common
- 2.38.1-SNAPSHOT
+ 2.39.0
diff --git a/gapic-generator-java-bom/pom.xml b/gapic-generator-java-bom/pom.xml
index c6c638b87c..304507aac6 100644
--- a/gapic-generator-java-bom/pom.xml
+++ b/gapic-generator-java-bom/pom.xml
@@ -4,7 +4,7 @@
com.google.api
gapic-generator-java-bom
pom
- 2.47.1-SNAPSHOT
+ 2.48.0
GAPIC Generator Java BOM
BOM for the libraries in gapic-generator-java repository. Users should not
@@ -15,7 +15,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -75,61 +75,61 @@
com.google.api
api-common
- 2.38.1-SNAPSHOT
+ 2.39.0
com.google.api
gax-bom
- 2.55.1-SNAPSHOT
+ 2.56.0
pom
import
com.google.api
gapic-generator-java
- 2.47.1-SNAPSHOT
+ 2.48.0
com.google.api.grpc
grpc-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
com.google.api.grpc
proto-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
com.google.api.grpc
proto-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
proto-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/gapic-generator-java-pom-parent/pom.xml b/gapic-generator-java-pom-parent/pom.xml
index f1ab8d05bb..18a7c16e5e 100644
--- a/gapic-generator-java-pom-parent/pom.xml
+++ b/gapic-generator-java-pom-parent/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
pom
GAPIC Generator Java POM Parent
https://github.com/googleapis/sdk-platform-java
diff --git a/gapic-generator-java/pom.xml b/gapic-generator-java/pom.xml
index 3c0c8fbb8a..d1d869088a 100644
--- a/gapic-generator-java/pom.xml
+++ b/gapic-generator-java/pom.xml
@@ -4,7 +4,7 @@
4.0.0
com.google.api
gapic-generator-java
- 2.47.1-SNAPSHOT
+ 2.48.0
GAPIC Generator Java
GAPIC generator Java
@@ -22,7 +22,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -31,7 +31,7 @@
com.google.api
gapic-generator-java-bom
- 2.47.1-SNAPSHOT
+ 2.48.0
pom
import
diff --git a/gax-java/README.md b/gax-java/README.md
index d62dc0b32c..c1623c0bde 100644
--- a/gax-java/README.md
+++ b/gax-java/README.md
@@ -34,27 +34,27 @@ If you are using Maven, add this to your pom.xml file
com.google.api
gax
- 2.55.0
+ 2.56.0
com.google.api
gax-grpc
- 2.55.0
+ 2.56.0
```
If you are using Gradle, add this to your dependencies
```Groovy
-compile 'com.google.api:gax:2.55.0',
- 'com.google.api:gax-grpc:2.55.0'
+compile 'com.google.api:gax:2.56.0',
+ 'com.google.api:gax-grpc:2.56.0'
```
If you are using SBT, add this to your dependencies
```Scala
-libraryDependencies += "com.google.api" % "gax" % "2.55.0"
-libraryDependencies += "com.google.api" % "gax-grpc" % "2.55.0"
+libraryDependencies += "com.google.api" % "gax" % "2.56.0"
+libraryDependencies += "com.google.api" % "gax-grpc" % "2.56.0"
```
[//]: # ({x-version-update-end})
diff --git a/gax-java/dependencies.properties b/gax-java/dependencies.properties
index caf00c7360..b1ec378cd0 100644
--- a/gax-java/dependencies.properties
+++ b/gax-java/dependencies.properties
@@ -8,16 +8,16 @@
# Versions of oneself
# {x-version-update-start:gax:current}
-version.gax=2.55.1-SNAPSHOT
+version.gax=2.56.0
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_grpc=2.55.1-SNAPSHOT
+version.gax_grpc=2.56.0
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_bom=2.55.1-SNAPSHOT
+version.gax_bom=2.56.0
# {x-version-update-end}
# {x-version-update-start:gax:current}
-version.gax_httpjson=2.55.1-SNAPSHOT
+version.gax_httpjson=2.56.0
# {x-version-update-end}
# Versions for dependencies which actual artifacts differ between Bazel and Gradle.
diff --git a/gax-java/gax-bom/pom.xml b/gax-java/gax-bom/pom.xml
index 588d6a1889..5db9204b64 100644
--- a/gax-java/gax-bom/pom.xml
+++ b/gax-java/gax-bom/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.api
gax-bom
- 2.55.1-SNAPSHOT
+ 2.56.0
pom
GAX (Google Api eXtensions) for Java (BOM)
Google Api eXtensions for Java (BOM)
@@ -43,55 +43,55 @@
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
test-jar
testlib
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
testlib
com.google.api
gax-grpc
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax-grpc
- 2.55.1-SNAPSHOT
+ 2.56.0
test-jar
testlib
com.google.api
gax-grpc
- 2.55.1-SNAPSHOT
+ 2.56.0
testlib
com.google.api
gax-httpjson
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax-httpjson
- 2.55.1-SNAPSHOT
+ 2.56.0
test-jar
testlib
com.google.api
gax-httpjson
- 2.55.1-SNAPSHOT
+ 2.56.0
testlib
diff --git a/gax-java/gax-grpc/pom.xml b/gax-java/gax-grpc/pom.xml
index 4804e94a2c..ed1b921fab 100644
--- a/gax-java/gax-grpc/pom.xml
+++ b/gax-java/gax-grpc/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax-grpc
- 2.55.1-SNAPSHOT
+ 2.56.0
jar
GAX (Google Api eXtensions) for Java (gRPC)
Google Api eXtensions for Java (gRPC)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.1-SNAPSHOT
+ 2.56.0
diff --git a/gax-java/gax-httpjson/pom.xml b/gax-java/gax-httpjson/pom.xml
index 3ecbe75e6a..487d80cbb7 100644
--- a/gax-java/gax-httpjson/pom.xml
+++ b/gax-java/gax-httpjson/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax-httpjson
- 2.55.1-SNAPSHOT
+ 2.56.0
jar
GAX (Google Api eXtensions) for Java (HTTP JSON)
Google Api eXtensions for Java (HTTP JSON)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.1-SNAPSHOT
+ 2.56.0
diff --git a/gax-java/gax/pom.xml b/gax-java/gax/pom.xml
index 94e7183f16..027740f52e 100644
--- a/gax-java/gax/pom.xml
+++ b/gax-java/gax/pom.xml
@@ -3,7 +3,7 @@
4.0.0
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
jar
GAX (Google Api eXtensions) for Java (Core)
Google Api eXtensions for Java (Core)
@@ -11,7 +11,7 @@
com.google.api
gax-parent
- 2.55.1-SNAPSHOT
+ 2.56.0
diff --git a/gax-java/pom.xml b/gax-java/pom.xml
index fe2aeecefd..8d6703695a 100644
--- a/gax-java/pom.xml
+++ b/gax-java/pom.xml
@@ -4,14 +4,14 @@
com.google.api
gax-parent
pom
- 2.55.1-SNAPSHOT
+ 2.56.0
GAX (Google Api eXtensions) for Java (Parent)
Google Api eXtensions for Java (Parent)
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -50,7 +50,7 @@
com.google.api
api-common
- 2.38.1-SNAPSHOT
+ 2.39.0
com.google.auth
@@ -98,24 +98,24 @@
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
com.google.api
gax
- 2.55.1-SNAPSHOT
+ 2.56.0
test-jar
testlib
com.google.api.grpc
proto-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
com.google.api.grpc
grpc-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
io.grpc
diff --git a/java-common-protos/grpc-google-common-protos/pom.xml b/java-common-protos/grpc-google-common-protos/pom.xml
index b1d8e575f2..6ac2823dba 100644
--- a/java-common-protos/grpc-google-common-protos/pom.xml
+++ b/java-common-protos/grpc-google-common-protos/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
grpc-google-common-protos
GRPC library for grpc-google-common-protos
com.google.api.grpc
google-common-protos-parent
- 2.46.1-SNAPSHOT
+ 2.47.0
diff --git a/java-common-protos/pom.xml b/java-common-protos/pom.xml
index 269c263535..2a40beea4e 100644
--- a/java-common-protos/pom.xml
+++ b/java-common-protos/pom.xml
@@ -4,7 +4,7 @@
com.google.api.grpc
google-common-protos-parent
pom
- 2.46.1-SNAPSHOT
+ 2.47.0
Google Common Protos Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -61,7 +61,7 @@
com.google.cloud
third-party-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
@@ -75,7 +75,7 @@
com.google.api.grpc
grpc-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
io.grpc
@@ -87,7 +87,7 @@
com.google.api.grpc
proto-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
com.google.guava
diff --git a/java-common-protos/proto-google-common-protos/pom.xml b/java-common-protos/proto-google-common-protos/pom.xml
index 9644159f54..352601dcd8 100644
--- a/java-common-protos/proto-google-common-protos/pom.xml
+++ b/java-common-protos/proto-google-common-protos/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.api.grpc
proto-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
proto-google-common-protos
PROTO library for proto-google-common-protos
com.google.api.grpc
google-common-protos-parent
- 2.46.1-SNAPSHOT
+ 2.47.0
diff --git a/java-core/google-cloud-core-bom/pom.xml b/java-core/google-cloud-core-bom/pom.xml
index 8502025fb6..5ae16204af 100644
--- a/java-core/google-cloud-core-bom/pom.xml
+++ b/java-core/google-cloud-core-bom/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.cloud
google-cloud-core-bom
- 2.45.1-SNAPSHOT
+ 2.46.0
pom
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../../gapic-generator-java-pom-parent
@@ -23,17 +23,17 @@
com.google.cloud
google-cloud-core
- 2.45.1-SNAPSHOT
+ 2.46.0
com.google.cloud
google-cloud-core-grpc
- 2.45.1-SNAPSHOT
+ 2.46.0
com.google.cloud
google-cloud-core-http
- 2.45.1-SNAPSHOT
+ 2.46.0
diff --git a/java-core/google-cloud-core-grpc/pom.xml b/java-core/google-cloud-core-grpc/pom.xml
index 1d7c64b3a5..52c8586bba 100644
--- a/java-core/google-cloud-core-grpc/pom.xml
+++ b/java-core/google-cloud-core-grpc/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core-grpc
- 2.45.1-SNAPSHOT
+ 2.46.0
jar
Google Cloud Core gRPC
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.1-SNAPSHOT
+ 2.46.0
google-cloud-core-grpc
diff --git a/java-core/google-cloud-core-http/pom.xml b/java-core/google-cloud-core-http/pom.xml
index 13a683d8f7..7912f90649 100644
--- a/java-core/google-cloud-core-http/pom.xml
+++ b/java-core/google-cloud-core-http/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core-http
- 2.45.1-SNAPSHOT
+ 2.46.0
jar
Google Cloud Core HTTP
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.1-SNAPSHOT
+ 2.46.0
google-cloud-core-http
diff --git a/java-core/google-cloud-core/pom.xml b/java-core/google-cloud-core/pom.xml
index fb84bd6f9f..b31e3c9fa8 100644
--- a/java-core/google-cloud-core/pom.xml
+++ b/java-core/google-cloud-core/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
google-cloud-core
- 2.45.1-SNAPSHOT
+ 2.46.0
jar
Google Cloud Core
@@ -12,7 +12,7 @@
com.google.cloud
google-cloud-core-parent
- 2.45.1-SNAPSHOT
+ 2.46.0
google-cloud-core
diff --git a/java-core/pom.xml b/java-core/pom.xml
index 9dd395b8ba..f004579b62 100644
--- a/java-core/pom.xml
+++ b/java-core/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-core-parent
pom
- 2.45.1-SNAPSHOT
+ 2.46.0
Google Cloud Core Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -33,7 +33,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
diff --git a/java-iam/grpc-google-iam-v1/pom.xml b/java-iam/grpc-google-iam-v1/pom.xml
index 01bfdd171f..f9b8d814e4 100644
--- a/java-iam/grpc-google-iam-v1/pom.xml
+++ b/java-iam/grpc-google-iam-v1/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
grpc-google-iam-v1
GRPC library for grpc-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-iam/grpc-google-iam-v2/pom.xml b/java-iam/grpc-google-iam-v2/pom.xml
index 127d90a15a..9749cc9d96 100644
--- a/java-iam/grpc-google-iam-v2/pom.xml
+++ b/java-iam/grpc-google-iam-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
grpc-google-iam-v2
GRPC library for proto-google-iam-v2
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-iam/grpc-google-iam-v2beta/pom.xml b/java-iam/grpc-google-iam-v2beta/pom.xml
index c8afc2bf03..aba81a02c8 100644
--- a/java-iam/grpc-google-iam-v2beta/pom.xml
+++ b/java-iam/grpc-google-iam-v2beta/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
grpc-google-iam-v2beta
GRPC library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-iam/pom.xml b/java-iam/pom.xml
index d4fd950bb1..0adb98d500 100644
--- a/java-iam/pom.xml
+++ b/java-iam/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-iam-parent
pom
- 1.41.1-SNAPSHOT
+ 1.42.0
Google IAM Parent
Java idiomatic client for Google Cloud Platform services.
@@ -13,7 +13,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -60,7 +60,7 @@
com.google.cloud
third-party-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
@@ -88,44 +88,44 @@
com.google.api
gax-bom
- 2.55.1-SNAPSHOT
+ 2.56.0
pom
import
com.google.api.grpc
proto-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
proto-google-common-protos
- 2.46.1-SNAPSHOT
+ 2.47.0
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
grpc-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
com.google.api.grpc
proto-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
javax.annotation
diff --git a/java-iam/proto-google-iam-v1/pom.xml b/java-iam/proto-google-iam-v1/pom.xml
index 03aee647cf..3b03cf2f2f 100644
--- a/java-iam/proto-google-iam-v1/pom.xml
+++ b/java-iam/proto-google-iam-v1/pom.xml
@@ -3,13 +3,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v1
- 1.41.1-SNAPSHOT
+ 1.42.0
proto-google-iam-v1
PROTO library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-iam/proto-google-iam-v2/pom.xml b/java-iam/proto-google-iam-v2/pom.xml
index ed9bb4fbb1..2afbd5330f 100644
--- a/java-iam/proto-google-iam-v2/pom.xml
+++ b/java-iam/proto-google-iam-v2/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v2
- 1.41.1-SNAPSHOT
+ 1.42.0
proto-google-iam-v2
Proto library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-iam/proto-google-iam-v2beta/pom.xml b/java-iam/proto-google-iam-v2beta/pom.xml
index 2b7af416a6..06e3acc930 100644
--- a/java-iam/proto-google-iam-v2beta/pom.xml
+++ b/java-iam/proto-google-iam-v2beta/pom.xml
@@ -4,13 +4,13 @@
4.0.0
com.google.api.grpc
proto-google-iam-v2beta
- 1.41.1-SNAPSHOT
+ 1.42.0
proto-google-iam-v2beta
Proto library for proto-google-iam-v1
com.google.cloud
google-iam-parent
- 1.41.1-SNAPSHOT
+ 1.42.0
diff --git a/java-shared-dependencies/README.md b/java-shared-dependencies/README.md
index 64dff9f91c..d28555619c 100644
--- a/java-shared-dependencies/README.md
+++ b/java-shared-dependencies/README.md
@@ -14,7 +14,7 @@ If you are using Maven, add this to the `dependencyManagement` section.
com.google.cloud
google-cloud-shared-dependencies
- 3.37.0
+ 3.38.0
pom
import
diff --git a/java-shared-dependencies/dependency-convergence-check/pom.xml b/java-shared-dependencies/dependency-convergence-check/pom.xml
index 564a49fe97..15d604e907 100644
--- a/java-shared-dependencies/dependency-convergence-check/pom.xml
+++ b/java-shared-dependencies/dependency-convergence-check/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.google.cloud
shared-dependencies-dependency-convergence-test
- 3.37.1-SNAPSHOT
+ 3.38.0
Dependency convergence test for certain artifacts in Google Cloud Shared Dependencies
An dependency convergence test case for the shared dependencies BOM. A failure of this test case means
diff --git a/java-shared-dependencies/first-party-dependencies/pom.xml b/java-shared-dependencies/first-party-dependencies/pom.xml
index 07d56baa4f..eebebd13a5 100644
--- a/java-shared-dependencies/first-party-dependencies/pom.xml
+++ b/java-shared-dependencies/first-party-dependencies/pom.xml
@@ -6,7 +6,7 @@
com.google.cloud
first-party-dependencies
pom
- 3.37.1-SNAPSHOT
+ 3.38.0
Google Cloud First-party Shared Dependencies
Shared first-party dependencies for Google Cloud Java libraries.
@@ -33,7 +33,7 @@
com.google.api
gapic-generator-java-bom
- 2.47.1-SNAPSHOT
+ 2.48.0
pom
import
@@ -45,7 +45,7 @@
com.google.cloud
google-cloud-core-bom
- 2.45.1-SNAPSHOT
+ 2.46.0
pom
import
@@ -69,13 +69,13 @@
com.google.cloud
google-cloud-core
- 2.45.1-SNAPSHOT
+ 2.46.0
test-jar
com.google.cloud
google-cloud-core
- 2.45.1-SNAPSHOT
+ 2.46.0
tests
diff --git a/java-shared-dependencies/pom.xml b/java-shared-dependencies/pom.xml
index 172ffb7995..39d0405c3a 100644
--- a/java-shared-dependencies/pom.xml
+++ b/java-shared-dependencies/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
google-cloud-shared-dependencies
pom
- 3.37.1-SNAPSHOT
+ 3.38.0
first-party-dependencies
third-party-dependencies
@@ -17,7 +17,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../gapic-generator-java-pom-parent
@@ -31,14 +31,14 @@
com.google.cloud
first-party-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
com.google.cloud
third-party-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
diff --git a/java-shared-dependencies/third-party-dependencies/pom.xml b/java-shared-dependencies/third-party-dependencies/pom.xml
index 15c017a9da..11bfa93023 100644
--- a/java-shared-dependencies/third-party-dependencies/pom.xml
+++ b/java-shared-dependencies/third-party-dependencies/pom.xml
@@ -6,7 +6,7 @@
com.google.cloud
third-party-dependencies
pom
- 3.37.1-SNAPSHOT
+ 3.38.0
Google Cloud Third-party Shared Dependencies
Shared third-party dependencies for Google Cloud Java libraries.
@@ -15,7 +15,7 @@
com.google.api
gapic-generator-java-pom-parent
- 2.47.1-SNAPSHOT
+ 2.48.0
../../gapic-generator-java-pom-parent
diff --git a/java-shared-dependencies/upper-bound-check/pom.xml b/java-shared-dependencies/upper-bound-check/pom.xml
index 6ac3202d16..c5e9ee9ec7 100644
--- a/java-shared-dependencies/upper-bound-check/pom.xml
+++ b/java-shared-dependencies/upper-bound-check/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
shared-dependencies-upper-bound-test
pom
- 3.37.1-SNAPSHOT
+ 3.38.0
Upper bound test for Google Cloud Shared Dependencies
An upper bound test case for the shared dependencies BOM. A failure of this test case means
@@ -30,7 +30,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
diff --git a/sdk-platform-java-config/pom.xml b/sdk-platform-java-config/pom.xml
index 5a9c913a9b..279b7d5688 100644
--- a/sdk-platform-java-config/pom.xml
+++ b/sdk-platform-java-config/pom.xml
@@ -4,7 +4,7 @@
com.google.cloud
sdk-platform-java-config
pom
- 3.37.1-SNAPSHOT
+ 3.38.0
SDK Platform For Java Configurations
Shared build configuration for Google Cloud Java libraries.
@@ -17,6 +17,6 @@
- 3.37.1-SNAPSHOT
+ 3.38.0
\ No newline at end of file
diff --git a/showcase/pom.xml b/showcase/pom.xml
index 58890963ad..600c24efeb 100644
--- a/showcase/pom.xml
+++ b/showcase/pom.xml
@@ -34,7 +34,7 @@
com.google.cloud
google-cloud-shared-dependencies
- 3.37.1-SNAPSHOT
+ 3.38.0
pom
import
diff --git a/versions.txt b/versions.txt
index 22bdad4bb2..2805143879 100644
--- a/versions.txt
+++ b/versions.txt
@@ -1,19 +1,19 @@
# Format:
# module:released-version:current-version
-gapic-generator-java:2.47.0:2.47.1-SNAPSHOT
-api-common:2.38.0:2.38.1-SNAPSHOT
-gax:2.55.0:2.55.1-SNAPSHOT
-gax-grpc:2.55.0:2.55.1-SNAPSHOT
-gax-httpjson:0.140.0:0.140.1-SNAPSHOT
-proto-google-common-protos:2.46.0:2.46.1-SNAPSHOT
-grpc-google-common-protos:2.46.0:2.46.1-SNAPSHOT
-proto-google-iam-v1:1.41.0:1.41.1-SNAPSHOT
-grpc-google-iam-v1:1.41.0:1.41.1-SNAPSHOT
-proto-google-iam-v2beta:1.41.0:1.41.1-SNAPSHOT
-grpc-google-iam-v2beta:1.41.0:1.41.1-SNAPSHOT
-google-iam-policy:1.41.0:1.41.1-SNAPSHOT
-proto-google-iam-v2:1.41.0:1.41.1-SNAPSHOT
-grpc-google-iam-v2:1.41.0:1.41.1-SNAPSHOT
-google-cloud-core:2.45.0:2.45.1-SNAPSHOT
-google-cloud-shared-dependencies:3.37.0:3.37.1-SNAPSHOT
+gapic-generator-java:2.48.0:2.48.0
+api-common:2.39.0:2.39.0
+gax:2.56.0:2.56.0
+gax-grpc:2.56.0:2.56.0
+gax-httpjson:0.141.0:0.141.0
+proto-google-common-protos:2.47.0:2.47.0
+grpc-google-common-protos:2.47.0:2.47.0
+proto-google-iam-v1:1.42.0:1.42.0
+grpc-google-iam-v1:1.42.0:1.42.0
+proto-google-iam-v2beta:1.42.0:1.42.0
+grpc-google-iam-v2beta:1.42.0:1.42.0
+google-iam-policy:1.42.0:1.42.0
+proto-google-iam-v2:1.42.0:1.42.0
+grpc-google-iam-v2:1.42.0:1.42.0
+google-cloud-core:2.46.0:2.46.0
+google-cloud-shared-dependencies:3.38.0:3.38.0