Draft
Conversation
In this PR: - Remove the logging module per go/debug-logging-proposal.
…nfig update (#3726) [Context Doc](https://docs.google.com/document/d/1Fqb4lXZ0FEpkJoSUvUp7Ow-z0fdcLyLE30lDDsGaRY0/edit?resourcekey=0-IueNnA7qMxmyWH6bGE9bsw&tab=t.0#heading=h.pi1uh78box27) This replaces googleapis/sdk-platform-java#3724 in order to manually prepare the repo for this update. The preparation includes: - Update google-cloud-shared-config to `1.15.1`. - Configure pom.xml files to reference the `fmt` plugin using the `com.spotify.fmt` groupId instead of `com.coveo`. The group ID in [since 2022](https://github.com/spotify/fmt-maven-plugin/blame/main/README.md#L7). Some pom.xml explicitly referenced the `2.9.1` version, but I removed it so it's [controlled by google-cloud-shared-config](https://github.com/googleapis/java-shared-config/blob/bc8f22d02511c0467271698acf340874ed987160/java-shared-config/pom.xml#L172-L174). - Update our `ci.yaml` to either run the `mvn` tasks using java 17 or running the task with the `-Dfmt.skip` flag. - Update `java_compatibility_check.yaml` from java 11 to java 17. - Update our docker image to use java 17 instead of 11. - Format the codebase using `mvn fmt:format` (see googleapis/sdk-platform-java@36d9ee4 for format changes). ### Review instructions You will see that the checks are failing because I did not include file formatting in the latest commit of this PR for the sake of browser performance. However, I ran the checks in googleapis/sdk-platform-java@36d9ee4 with formatted files and they were all green except for the integration test, which is failing because I haven't updated the golden branch (see [this branch comparison](chore/test-hermetic-build...chore/test-hermetic-build-update-sharedconfig-and-lint) for upcoming changes), which I plan to do before merging this PR. #### Before merging: - [x] Update golden branch - [x] Restore hermetic_library_generation workflow - [x] Restore formatted java files --------- Co-authored-by: Mend Renovate <bot@renovateapp.com> Co-authored-by: cloud-java-bot <cloud-java-bot@google.com>
b/406556155 --------- Co-authored-by: Min Zhu <zhumin@google.com>
…i/majorversion (#3712) This change allow generator to generate for a specified api-path. When "--api-path" is not specified, fallback to "--library-names", and __behavior for existing command usages should not change__. For now, api-path should only take in path to api/version, e.g. google/cloud/functions/v2
…neration (#3723) Part of the fix for googleapis/sdk-platform-java#3701 ☕ ### Approach The templates come from https://github.com/googleapis/synthtool/tree/bf182cd41d9a7de56092cafcc7befe6b398332f6. The only update was to include `generated-files-bot`, which is already up to date in all the HW repos. The `.kokoro` folder will be a separate follow up task. We will now focus on solving the update of `update_generation_config` `yaml` and `sh` files. The fix to include the `.github` folder follows from https://setuptools.pypa.io/en/latest/userguide/datafiles.html: ``` Glob patterns do not automatically match dotfiles, i.e., directory or file names starting with a dot (.). To include such files, you must explicitly start the pattern with a dot, e.g. .* to match .gitignore. ``` Interestingly, this is also the reason `cp synthool/gcp/templates/java_library/* ...` did not bring folders starting with dot (such as .kokoro) into googleapis/sdk-platform-java#2884 ### Confirming effects in downstream repos Demos show the results as of googleapis/sdk-platform-java@b66af92 in - googleapis/java-storage#3012 - googleapis/java-logging#1787 - googleapis/java-pubsub#2384 - googleapis/java-bigtable#2546 - googleapis/java-spanner#3711 - googleapis/java-firestore#2065 - googleapis/java-datastore#1810 - googleapis/java-bigquerystorage#2929 - googleapis/java-pubsublite#1837 There were no regressions on templated files that were manually modified.
Full context in [GraalVM 17 migration doc](https://docs.google.com/document/d/1bOeGtVFLsq5ts71If5pFXCvHIeNpbtBRvF6XQfavLZs/edit?tab=t.loipy7ydvwga) Confirmation that this works: googleapis/java-shared-config@9530494 ### Problem JDK 17 `InputStreamReader` produces different bytes from JDK 18+. This affects `ITHttpAnnotation#testComplianceGroup` because of the way `compliance_suite.json` is parsed. ### Cause JDK 18 was released including commit [7fc854](openjdk/jdk@7fc8540) which enables usage of UTF-8 by default. Before this commit, each JVM will produce their own default Charset (_likely the reason we don't see this error in other CI setups using java 17_). As a confirmation, if we create an experiment test to print the default charset as in: ```java @test void verifyByteSizeOfExtremePayload() throws IOException { System.out.println(System.getProperty("file.encoding")); } ``` When using openjdk 17 we get the value `Cp1252`, and on openjdk 18 we get the value `UTF-8`. Solution ### Solution Finally, the solution is to explicitly use UTF-8 with the `InputStreamReader`
…image` (#3732) This marks the images as infrastructure-related and will not apply for the customer-facing VM scanning tools. Context in b/395190324 and [internal g3doc](https://g3doc.corp.google.com/security/g3doc/isa/autovm/vmprograms/public_image_scanning.md?cl=head#common_vocab)
Context: [we will introduce a new GraalVM job](https://docs.google.com/document/d/1bOeGtVFLsq5ts71If5pFXCvHIeNpbtBRvF6XQfavLZs/edit?tab=t.dcjxhf429j6t#bookmark=id.3s7d4dj247hr) and will leverage the hermetic build templates to propagate this change to some of the repositories. Each PR will be followed with ad-hoc changes such as sync-repo-settings (the cannot be templated). Demo PRs * googleapis/java-bigtable#2558 * googleapis/java-bigquerystorage#2937 * googleapis/java-storage#3029 * googleapis/java-datastore#1816 * There are manual changes in `build.sh`. We will add this file to the [ignored files in owlbot.py](https://github.com/googleapis/java-datastore/blob/8ceb62b5182e30b4f771d6c1b586a22fb084c9ac/owlbot.py#L48-L57) and will raise an issue to move this logic elsewhere (if feasible). * googleapis/java-firestore#2074 * googleapis/java-logging#1789 * googleapis/java-pubsub#2389 * googleapis/java-pubsublite#1839 * googleapis/java-spanner#3821
…onfig to v1.15.4 (#3742) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-shared-config](https://redirect.github.com/googleapis/java-shared-config) | `1.15.1` -> `1.15.4` | [](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 <details> <summary>googleapis/java-shared-config (com.google.cloud:google-cloud-shared-config)</summary> ### [`v1.15.4`](https://redirect.github.com/googleapis/java-shared-config/blob/HEAD/CHANGELOG.md#1154-2025-04-15) [Compare Source](https://redirect.github.com/googleapis/java-shared-config/compare/v1.15.1...v1.15.4) ##### Bug Fixes - Use recommended variable expansion syntax ([#​1016](https://redirect.github.com/googleapis/java-shared-config/issues/1016)) ([6ff6dc4](https://redirect.github.com/googleapis/java-shared-config/commit/6ff6dc48b8d92604164da7c68e268476b5a16578)) </details> --- ### 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. --- - [ ] <!-- rebase-check -->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). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzguMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzOC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
To be merged after cl/747626774 [context doc](https://docs.google.com/document/d/1bOeGtVFLsq5ts71If5pFXCvHIeNpbtBRvF6XQfavLZs/edit?tab=t.dcjxhf429j6t) TL;DR: we are introducing testing infra for GraalVM for JDK 17
…#3743) Fixes a typo in two image references on templates.
## Implement Selective GAPIC Generation (Phase II)
This PR implements Phase II of selective GAPIC generation within the
`gapic-generator-java` project. This allows for finer control over the
intended usage of generated client methods (public, internal, or hidden)
by providing selective gapic generation configuration in service yaml.
### Key Changes:
#### 1. Model Updates
* Added a `isInternalApi` attribute to the internal representation of
methods to track their intended visibility (e.g., public, internal).
#### 2. Parser Logic
* Introduced the `getMethodSelectiveGapicType()` method responsible for
parsing the selective generation configuration for each method.
* Modified service filtering logic: Service classes will not be
generated if the service definition contains no methods or includes only
methods marked as **`HIDDEN`**.
* Enhanced `parseService()` to determine and assign the appropriate
`SelectiveGapicType` to each service method and its corresponding
generated variants (e.g., overloaded methods).
#### 3. Composer (Code Generation) Updates
* **Method Annotations:** For all method variants designated as
`INTERNAL`, generate an `@InternalApi` annotation accompanied by a
warning message discouraging external use.
* **Method Header Comments:** For methods marked as `INTERNAL`, generate
a specific comment in the method's header indicating its intended
internal-only usage.
* **Sample Generation:** Adjusted the logic for generating
`package-info.java` samples to prevent the usage of any methods marked
as `INTERNAL`.
#### 4. Tests
* Added **unit tests** covering the new parser logic and comment
generation changes related to selective generation types.
* Added/updated **golden unit/integration tests** to verify the correct
code output for various selective generation scenarios, including
services with:
* All public methods.
* A mix of public, `INTERNAL`, and/or `HIDDEN` methods.
* No public methods (verifying that the service class is not generated).
Error: ``` Error: Exception in thread "main" java.lang.UnsupportedClassVersionError: com/google/cloud/datastore/emulator/CloudDatastore has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 ``` This error seemed to show up ~3 weeks ago, but it doesn't look like anything changed in java-datastore. Cloud Datastore Emulator seems to have required JRE 11 since ~late 2022. We have been compiling with JDK 11 and running with Java 8. Successful run: https://github.com/googleapis/sdk-platform-java/actions/runs/14522553161
`Empty commit messages, skip creating pull request description.` Fixes googleapis/sdk-platform-java#3745 --------- Co-authored-by: cloud-java-bot <cloud-java-bot@google.com>
🤖 I have created a release *beep* *boop* --- <details><summary>2.56.0</summary> ## [2.56.0](googleapis/sdk-platform-java@v2.55.1...v2.56.0) (2025-04-18) ### Features * Selective gapic generation phase II ([#3730](googleapis/sdk-platform-java#3730)) ([64ac2c1](googleapis/sdk-platform-java@64ac2c1)) ### Bug Fixes * **hermetic-build:** use correct image name in templated graalvm jobs ([#3743](googleapis/sdk-platform-java#3743)) ([29a78d3](googleapis/sdk-platform-java@29a78d3)) * plumb mtls endpoint to TransportChannelProvider ([#3673](googleapis/sdk-platform-java#3673)) ([a961459](googleapis/sdk-platform-java@a961459)) ### Dependencies * add opentelemetry gcp-resources to shared deps ([#3722](googleapis/sdk-platform-java#3722)) ([b1b075d](googleapis/sdk-platform-java@b1b075d)) </details> --- 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>
Additionally: we use cloud-java-bot to create the flakiness issues.
Prepares downstream repos for the linter upgrade from java-shared-config (googleapis/java-shared-config#1003)
This follows from the linter upgrade done in googleapis/java-shared-config#1003
Fixes error from https://fusion2.corp.google.com/invocations/e3010c7e-ee63-4a12-ae04-e2dae7766bbe/targets/cloud-devrel%2Fclient-libraries%2Fjava%2Fjava-storage%2Fpresubmit%2Fgraalvm-native-a/log This is due to the name of the jobs not matching what was submitted in cl/750211040 ``` [09:45:52 PDT] Job config validated! [09:45:52 PDT] Resolving Github Scm Revision State [09:45:56 PDT] Running git -c core.hooksPath=/dev/null clone https://github.com/googleapis/java-storage.git /tmp/workspace/workspace/src/github/java-storage [09:45:57 PDT] Fetching GitHub java-storage@PR#3050. This code is considered not submitted as it's coming from a pull request. [09:45:57 PDT] Running git -c core.hooksPath=/dev/null fetch origin pull/3050/merge:pull_branch [09:45:58 PDT] Running git -c core.hooksPath=/dev/null checkout pull_branch -- [09:45:58 PDT] Running git -c core.hooksPath=/dev/null rev-parse --verify HEAD [09:45:58 PDT][ERROR] Build failed due to an error com.google.devtools.kokoro.controller.UserException: An error happened while reading and parsing the build config at com.google.devtools.kokoro.jenkins.plugin.executor.BuilderStepsProvider.provide(BuilderStepsProvider.java:55) at com.google.devtools.kokoro.controller.build.PipelineBuildExecutor.runPipeline(PipelineBuildExecutor.java:92) at com.google.devtools.kokoro.controller.build.PipelineBuildExecutor.lambda$start$0(PipelineBuildExecutor.java:67) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: com.google.devtools.kokoro.controller.UserException: APPLICATION_ERROR;devtools.kokoro.executor.proto/KokoroExecutorWorker.ReadBuildConfig;no file found at path 'src/github/java-storage/.kokoro/presubmit/graalvm-native-a' or with allowed extensions invalid argument;AppErrorCode=3;StartTimeMs=1745340358647;tcp;Deadline(sec)=300.0;ResFormat=uncompressed;interceptors={[com.google.frameworks.debug.sherlog.core.rpcutil.Stubby3ClientInterceptor];overrides={}};ServerTimeSec=5.21036E-4;LogBytes=256;FailFast;EffSecLevel=none;ReqFormat=uncompressed;ReqID=3534e3e8629380d4;GlobalID=0;Server=[2002:a4f:c6c1:0:b0:422:a3e6:c419]:14001 at com.google.devtools.kokoro.jenkins.shared.worker.ExecutorHelperClient.mapRpcException(ExecutorHelperClient.java:638) at com.google.devtools.kokoro.jenkins.shared.worker.ExecutorHelperClient.readBuildConfig(ExecutorHelperClient.java:529) at com.google.devtools.kokoro.jenkins.plugin.kokorojob.store.ConfigStore.getKokoroBuildConfigFromScm(ConfigStore.java:124) at com.google.devtools.kokoro.jenkins.plugin.kokorojob.store.ConfigStore.getKokoroBuildConfig(ConfigStore.java:93) at com.google.devtools.kokoro.jenkins.plugin.executor.BuilderStepsProvider.provide(BuilderStepsProvider.java:45) ... 6 more ```
🤖 I have created a release *beep* *boop* --- <details><summary>2.56.1-SNAPSHOT</summary> ### Updating meta-information for bleeding-edge SNAPSHOT release. </details> --- 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> Co-authored-by: Diego Marquez <diegomarquezp@google.com>
🤖 I have created a release *beep* *boop* --- <details><summary>2.56.1</summary> ## [2.56.1](googleapis/sdk-platform-java@v2.56.0...v2.56.1) (2025-04-23) ### Bug Fixes * match graalvm job names with internal configs ([#3755](googleapis/sdk-platform-java#3755)) ([23b4b12](googleapis/sdk-platform-java@23b4b12)) * use java 17 in samples.yaml ([#3754](googleapis/sdk-platform-java#3754)) ([2d5c5e2](googleapis/sdk-platform-java@2d5c5e2)) * use spotify formatter in hermetic build templates ([#3752](googleapis/sdk-platform-java#3752)) ([65e29da](googleapis/sdk-platform-java@65e29da)) </details> --- 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> Co-authored-by: Diego Alonso Marquez Palacios <diegomarquezp@google.com>
This ensures the templates are up to date with the latest released version of sdk-platform-java-config
🤖 I have created a release *beep* *boop* --- <details><summary>2.56.2-SNAPSHOT</summary> ### Updating meta-information for bleeding-edge SNAPSHOT release. </details> --- 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> Co-authored-by: Diego Marquez <diegomarquezp@google.com>
🤖 I have created a release *beep* *boop* --- <details><summary>2.56.2</summary> ## [2.56.2](googleapis/sdk-platform-java@v2.56.1...v2.56.2) (2025-04-23) ### Bug Fixes * inline version update in kokoro templates ([#3762](googleapis/sdk-platform-java#3762)) ([050aeab](googleapis/sdk-platform-java@050aeab)) * keep native image templates up to date ([#3759](googleapis/sdk-platform-java#3759)) ([7dffab1](googleapis/sdk-platform-java@7dffab1)) </details> --- 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>
Temporary solution while googleapis/sdk-platform-java#3766 is not fixed
See b/392225607
… to v2.38.0 (#3773) 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.36.0` -> `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 <details> <summary>google/error-prone (com.google.errorprone:error_prone_annotations)</summary> ### [`v2.38.0`](https://redirect.github.com/google/error-prone/releases/tag/v2.38.0): Error Prone 2.38.0 New checks: - [`AddNullMarkedToPackageInfo`](https://errorprone.info/bugpattern/AddNullMarkedToPackageInfo): adds [`@org.jspecify.annotations.NullMarked`](https://jspecify.dev/docs/api/org/jspecify/annotations/NullMarked.html) annotation to package-info files - [`IntLiteralCast`](https://errorprone.info/bugpattern/IntLiteralCast): Suggests a literal of the desired type instead of casting an int literal to a long, float, or double - [`MisleadingEmptyVarargs`](https://errorprone.info/bugpattern/MisleadingEmptyVarargs): Discourages calling varargs methods that expect at least one argument with no arguments, like Mockito's `thenThrow` - [`PreconditionsExpensiveString`](https://errorprone.info/bugpattern/PreconditionsExpensiveString): Discourages expensive string formatting in Guava `Preconditions` checks - [`SelfSet`](https://errorprone.info/bugpattern/SelfSet): Detects mistakes like `proto.setFoo(proto.getFoo())` - [`UnnecessaryCopy`](https://errorprone.info/bugpattern/UnnecessaryCopy): detect unnecessary copies of proto Lists and Maps. Closed issues: [#​4924](https://redirect.github.com/google/error-prone/issues/4924), [#​4897](https://redirect.github.com/google/error-prone/issues/4897), [#​4995](https://redirect.github.com/google/error-prone/issues/4995) Full changelog: google/error-prone@v2.37.0...v2.38.0 ### [`v2.37.0`](https://redirect.github.com/google/error-prone/releases/tag/v2.37.0): Error Prone 2.37.0 [Compare Source](https://redirect.github.com/google/error-prone/compare/v2.36.0...v2.37.0) Changes: - The annotations that were previously in `error_prone_type_annotations` have been been merged into `error_prone_annotations`. `error_prone_type_annotations` is now deprecated, and will be removed in a future release. New checks: - [`AssignmentExpression`](https://errorprone.info/bugpattern/AssignmentExpression) - The use of an assignment expression can be surprising and hard to read; consider factoring out the assignment to a separate statement. - [`IntFloatConversion`](https://errorprone.info/bugpattern/IntFloatConversion) - Detect calls to `scalb` that should be using the double overload instead - [`InvalidSnippet`](https://errorprone.info/bugpattern/InvalidSnippet) - Detects snippets which omit the `:` required for inline code. - [`JUnit4EmptyMethods`](https://errorprone.info/bugpattern/JUnit4EmptyMethods) - Detects empty JUnit4 `@Before`, `@After`, `@BeforeClass`, and `@AfterClass` methods. - [`MockIllegalThrows`](https://errorprone.info/bugpattern/MockIllegalThrows) - Detects cases where Mockito is configured to throw checked exception types which are impossible. - [`NegativeBoolean`](https://errorprone.info/bugpattern/NegativeBoolean) - Prefer positive boolean names. - [`RuleNotRun`](https://errorprone.info/bugpattern/RuleNotRun) - Detects `TestRule`s not annotated with `@Rule`, that won't be run. - [`StringConcatToTextBlock`](https://errorprone.info/bugpattern/StringConcatToTextBlock) - Replaces concatenated multiline strings with text blocks. - [`TimeInStaticInitializer`](https://errorprone.info/bugpattern/TimeInStaticInitializer) - Detects accesses of the system time in static contexts. Closed issues: - Propagate check flags in patch mode ([#​4699](https://redirect.github.com/google/error-prone/issues/4699)) - Fixes a crash in ComputeIfAbsentAmbiguousReference ([#​4736](https://redirect.github.com/google/error-prone/issues/4736)) - Show the field name in HidingField diagnostics ([#​4775](https://redirect.github.com/google/error-prone/issues/4775)) - Add support for jakarta annotations to some checks ([#​4782](https://redirect.github.com/google/error-prone/issues/4782)) - FloatingPointAssertionWithinEpsilonTest depends on default locale ([#​4815](https://redirect.github.com/google/error-prone/issues/4815)) - `@InlineMe` patching of `Strings.repeat` produces broken code ([#​4819](https://redirect.github.com/google/error-prone/issues/4819)) - Fix a crash in IdentifierName on unnamed (`_`) variables ([#​4847](https://redirect.github.com/google/error-prone/issues/4847)) - Fix a crash in ArgumentParameterSwap ([#​490](https://redirect.github.com/google/error-prone/issues/490)) Full changelog: google/error-prone@v2.36.0...v2.37.0 </details> --- ### 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. --- - [ ] <!-- rebase-check -->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). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
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.33.1` -> `1.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/) | | [com.google.auth:google-auth-library-oauth2-http](https://redirect.github.com/googleapis/google-auth-library-java) | `1.33.1` -> `1.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/) | | [com.google.auth:google-auth-library-bom](https://redirect.github.com/googleapis/google-auth-library-java) | `1.33.1` -> `1.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 <details> <summary>googleapis/google-auth-library-java (com.google.auth:google-auth-library-credentials)</summary> ### [`v1.34.0`](https://redirect.github.com/googleapis/google-auth-library-java/blob/HEAD/CHANGELOG.md#1340-2025-04-29) [Compare Source](https://redirect.github.com/googleapis/google-auth-library-java/compare/v1.33.1...v1.34.0) ##### Features - Implement X509 certificate provider ([#​1722](https://redirect.github.com/googleapis/google-auth-library-java/issues/1722)) ([4340684](https://redirect.github.com/googleapis/google-auth-library-java/commit/4340684fe29c9e9bffa90e88d0b1746f19b623ab)) - Next release from main branch is 1.34.0 ([#​1698](https://redirect.github.com/googleapis/google-auth-library-java/issues/1698)) ([fe43815](https://redirect.github.com/googleapis/google-auth-library-java/commit/fe4381513db1340190c4309a53c6265718682dde)) - Next release from main branch is 1.34.0 ([#​1702](https://redirect.github.com/googleapis/google-auth-library-java/issues/1702)) ([4507cf9](https://redirect.github.com/googleapis/google-auth-library-java/commit/4507cf9e17e7ff40cf142056d3929c87f5742dd1)) ##### Bug Fixes - Do not add padding in Client-Side CAB tokens. ([#​1728](https://redirect.github.com/googleapis/google-auth-library-java/issues/1728)) ([8a75ccd](https://redirect.github.com/googleapis/google-auth-library-java/commit/8a75ccd1c09191abd8ebf463bc41810a38e185f5)) </details> --- ### 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. --- - [ ] <!-- rebase-check -->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). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Add a new module java-showcase-3.25.8. This is a copy of the java-showcase module with a different version (3.25.8) of protobuf gen code. This is intended to test the compatibility between protobuf runtime v4.33.x and gen code 3.25.8. Add [a new step](https://github.com/googleapis/sdk-platform-java/blob/bccc9ded96f5313c22cd4543c25e49fb673792f6/.github/workflows/ci.yaml#L306-L312) in CI to test this module.
🤖 I have created a release *beep* *boop* --- <details><summary>2.66.0</summary> ## [2.66.0](googleapis/sdk-platform-java@v2.65.1...v2.66.0) (2026-01-23) ### Features * Upgrade protobuf runtime and gen code to 4.33.x ([#4000](googleapis/sdk-platform-java#4000)) ([#4074](googleapis/sdk-platform-java#4074)) ([3e37376](googleapis/sdk-platform-java@3e37376)) ### Dependencies * Downgrade opentelemetry to 1.51.0 ([#4075](googleapis/sdk-platform-java#4075)) ([cf65482](googleapis/sdk-platform-java@cf65482)) * update auth library to 1.42.0 ([#4087](googleapis/sdk-platform-java#4087)) ([ad9ee07](googleapis/sdk-platform-java@ad9ee07)) * update googleapis/java-cloud-bom digest to ef3656d ([#3630](googleapis/sdk-platform-java#3630)) ([790bcf0](googleapis/sdk-platform-java@790bcf0)) * update http-client to 2.1.0 ([#4086](googleapis/sdk-platform-java#4086)) ([d8bc8f5](googleapis/sdk-platform-java@d8bc8f5)) </details> --- 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>
🤖 I have created a release *beep* *boop* --- <details><summary>2.66.1-SNAPSHOT</summary> ### Updating meta-information for bleeding-edge SNAPSHOT release. </details> --- 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>
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [commons-codec:commons-codec](https://commons.apache.org/proper/commons-codec/) ([source](https://redirect.github.com/apache/commons-codec)) | `1.20.0` → `1.21.0` |  |  | | [io.opentelemetry.semconv:opentelemetry-semconv](https://redirect.github.com/open-telemetry/semantic-conventions-java) | `1.37.0` → `1.39.0` |  |  | --- ### Release Notes <details> <summary>apache/commons-codec (commons-codec:commons-codec)</summary> ### [`v1.21.0`](https://redirect.github.com/apache/commons-codec/blob/HEAD/RELEASE-NOTES.txt#Apache-Commons-Codec-1210-Release-Notes) The Apache Commons Codec team is pleased to announce the release of Apache Commons Codec 1.21.0. The Apache Commons Codec component contains encoders and decoders for formats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these widely used encoders and decoders, the codec package also maintains a collection of phonetic encoding utilities. This is a feature and maintenance release. Java 8 or later is required. </details> <details> <summary>open-telemetry/semantic-conventions-java (io.opentelemetry.semconv:opentelemetry-semconv)</summary> ### [`v1.39.0`](https://redirect.github.com/open-telemetry/semantic-conventions-java/blob/HEAD/CHANGELOG.md#Version-1390-2026-01-28) [Compare Source](https://redirect.github.com/open-telemetry/semantic-conventions-java/compare/v1.38.0...v1.39.0) - Bump to semconv v1.39.0 ([#​396](https://redirect.github.com/open-telemetry/semantic-conventions-java/pull/396)) ### [`v1.38.0`](https://redirect.github.com/open-telemetry/semantic-conventions-java/blob/HEAD/CHANGELOG.md#Version-1380-2026-01-27) [Compare Source](https://redirect.github.com/open-telemetry/semantic-conventions-java/compare/v1.37.0...v1.38.0) - Bump to semconv v1.38.0 ([#​384](https://redirect.github.com/open-telemetry/semantic-conventions-java/pull/384)) </details> --- ### 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4zLjAiLCJ1cGRhdGVkSW5WZXIiOiI0My4zLjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=--> Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
This pull request is generated with proto changes between [googleapis/googleapis@6406df7](googleapis/googleapis@6406df7) (exclusive) and [googleapis/googleapis@7a57066](googleapis/googleapis@7a57066) (inclusive). BEGIN_COMMIT_OVERRIDE BEGIN_NESTED_COMMIT docs: [common-protos] update reference documentation for `SelectionInput.DROPDOWN` to include dynamic data sources and autosuggestion docs: [common-protos] update copyright to 2026 PiperOrigin-RevId: 864941572 Source Link: [googleapis/googleapis@2ca9449](googleapis/googleapis@2ca9449) END_NESTED_COMMIT END_COMMIT_OVERRIDE
🤖 I have created a release *beep* *boop* --- <details><summary>2.66.1</summary> ## [2.66.1](googleapis/sdk-platform-java@v2.66.0...v2.66.1) (2026-02-04) ### Documentation * [common-protos] update reference documentation for `SelectionInput.DROPDOWN` to include dynamic data sources and autosuggestion ([9960262](googleapis/sdk-platform-java@9960262)) </details> --- 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>
Remove 3.25.8 from protobuf compatibility testing because the gen code has already been upgraded to 4.x.
We received vulnerability report for logback v1.5.21. Even though it is only used in tests and does not affect customers, it is still good to upgrade logback to 1.5.25 in tests.
🤖 I have created a release *beep* *boop* --- <details><summary>2.66.2-SNAPSHOT</summary> ### Updating meta-information for bleeding-edge SNAPSHOT release. </details> --- 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>
## Summary This PR introduces a new tracing mechanism in GAX that allows recording traces using OpenTelemetry. It provides a way of recording spans and attributes, following the existing `ApiTracer` class pattern with a few tracing-specific additions. The implementation is meant to be extensible to support other implementations. ## New Classes - **`TraceManager`**: An interface for managing spans and attributes; can be implemented by observability frameworks. - **`OpenTelemetryTraceManager`**: An implementation of `TraceManager` that uses the OpenTelemetry API. - **`AppCentricTracer`**: An `ApiTracer` implementation that delegates span management to a `TraceManager`. - **`AppCentricTracerFactory`**: A factory for creating `AppCentricTracer` instances. - **`ApiTracerContext`**: A context object that carries information (like `EndpointContext`'s server address property) used to infer common attributes for all tracers. - **`Span`**: A handle returned by `TraceManager` to manage the lifecycle of a specific span (ending it, recording errors, or setting attributes). ## Approach ### Connecting Tracer with Manager The implementation aims to decouple `AppCentricTracer` from `TraceManager`. When a tracer starts an operation or an attempt, it requests a `Span` from the recorder. This handle allows the tracer to update the span (e.g., adding attributes or recording errors) to keep `AppCentricTracer` separated from specific recorder implementations (like OpenTelemetry's `Span` object). ### Attribute Inference via `ApiTracerContext` To provide a source of Span Attributes that are common to all operations, we introduced `ApiTracerContext`. This context is passed to `ApiTracerFactory` and contains information such as serverAddress (provided by `EndpointContext`). It is operated by `ClientContext`. Initially, only `serverAddress` is contained in this class and it's meant to obtain the `server.address` attribute. The class is ultimately operated by `AppCentricTracer` to extract the necessary attributes. ### Integration Tests A new integration test, `ITOtelTracing`, was added to the `java-showcase` module: - It validates that the expected spans (operation and attempt spans) are recorded with the correct names, parent-child relationships, and attributes (including `server.address` and `gcp.client.language`). #### Note on java-bigtable downstream check Since [SkipTrailersTest](https://github.com/googleapis/java-bigtable/blob/49fe7692c55747714ada4296ff0f856b1109eba5/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/SkipTrailersTest.java#L97) mocks the tracer factory, the `EndpointContext` call to `apiTracerFactory.withContext()` returns a null factory, causing a null pointer exception when building the client context. We expect the test to be adjusted with this change with the next release. ### Confirmation in Cloud Trace <img width="1801" height="843" alt="image" src="https://github.com/user-attachments/assets/dfccf278-7bfc-43fe-bf64-51cae21494ea" /> --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
chore: update googleapis commit at Thu Feb 5 03:00:22 UTC 2026
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [com.google.auth:google-auth-library-bom](https://togithub.com/googleapis/google-auth-library-java) | minor | `1.42.1` -> `1.43.0` | | [com.google.errorprone:error_prone_annotations](https://errorprone.info) ([source](https://togithub.com/google/error-prone)) | minor | `2.46.0` -> `2.47.0` | | [com.google.protobuf:protobuf-java](https://developers.google.com/protocol-buffers/) ([source](https://togithub.com/protocolbuffers/protobuf)) | patch | `4.33.4` -> `4.33.5` | | [io.grpc:grpc-bom](https://togithub.com/grpc/grpc-java) | minor | `1.78.0` -> `1.79.0` | | [io.opentelemetry:opentelemetry-bom](https://togithub.com/open-telemetry/opentelemetry-java) | minor | `1.58.0` -> `1.59.0` | | [org.apache.httpcomponents.core5:httpcore5](https://hc.apache.org/) | patch | `5.4` -> `5.4.1` | --- ### Release Notes <details> <summary>googleapis/google-auth-library-java (com.google.auth:google-auth-library-bom)</summary> ### [`v1.43.0`](https://togithub.com/googleapis/google-auth-library-java/blob/HEAD/CHANGELOG.md#1430-2026-02-10) [Compare Source](https://togithub.com/googleapis/google-auth-library-java/compare/v1.42.1...v1.43.0) ##### Features - Next release from main branch is 1.43.0 ([#​1887](https://togithub.com/googleapis/google-auth-library-java/issues/1887)) ([bec0ece](https://togithub.com/googleapis/google-auth-library-java/commit/bec0ecea8d1064a3467c4329a0d09f7d5705f84d)) ##### Bug Fixes - Deserialization checks valid class types for HttpTransportFactory ([#​1882](https://togithub.com/googleapis/google-auth-library-java/issues/1882)) ([76ff74e](https://togithub.com/googleapis/google-auth-library-java/commit/76ff74e4c810d54763ca34d4f483730c43c329a8)) </details> <details> <summary>google/error-prone (com.google.errorprone:error_prone_annotations)</summary> ### [`v2.47.0`](https://togithub.com/google/error-prone/releases/tag/v2.47.0): Error Prone 2.47.0 [Compare Source](https://togithub.com/google/error-prone/compare/v2.46.0...v2.47.0) New checks: - [`InterruptedInCatchBlock`](https://errorprone.info/bugpattern/InterruptedInCatchBlock): Detect accidental calls to `Thread.interrupted()` inside of `catch(InterruptedException e)` blocks. - [`RefactorSwitch`](https://errorprone.info/bugpattern/RefactorSwitch): Refactorings to simplify arrow switches - [`UnnamedVariable`](https://errorprone.info/bugpattern/UnnamedVariable): Rename unused variables to `_` Closed issues: [#​1811](https://togithub.com/google/error-prone/issues/1811), [#​4168](https://togithub.com/google/error-prone/issues/4168), [#​5459](https://togithub.com/google/error-prone/issues/5459), [#​5460](https://togithub.com/google/error-prone/issues/5460) Full changelog: google/error-prone@v2.46.0...v2.47.0 </details> <details> <summary>grpc/grpc-java (io.grpc:grpc-bom)</summary> ### [`v1.79.0`](https://togithub.com/grpc/grpc-java/releases/tag/v1.79.0) [Compare Source](https://togithub.com/grpc/grpc-java/compare/v1.78.0...v1.79.0) **API Changes** - core: Delete the never-used io.grpc.internal.ReadableBuffer.readBytes(ByteBuffer) ([#​12580](https://togithub.com/grpc/grpc-java/issues/12580)) ([`738782f`](https://togithub.com/grpc/grpc-java/commit/738782fb0)). This is deeply internal and not accessible, so shouldn’t impact anything. However, Apache Arrow Java [uses reflection to access private fields](https://togithub.com/apache/arrow-java/blob/96156ccc2bf933c75c852ca7c04418a61f87defd/flight/flight-core/src/main/java/org/apache/arrow/flight/grpc/GetReadableBuffer.java#L44-L45); [GH-939: Remove reflection for gRPC buffers](https://togithub.com/apache/arrow-java/pull/954) is swapping to gRPC’s public zero-copy APIs - opentelemetry: Add target attribute filter for metrics ([#​12587](https://togithub.com/grpc/grpc-java/issues/12587)). Introduce an optional Predicate targetAttributeFilter to control how grpc.target is recorded in OpenTelemetry client metrics. When a filter is provided, targets rejected by the predicate are normalized to "other" to reduce grpc.target metric cardinality, while accepted targets are recorded as-is. If no filter is set, existing behavior is preserved. This change adds a new Builder API on GrpcOpenTelemetry to allow applications to configure the filter. **Behavior Changes** - core: Convert AutoConfiguredLB to an actual LB ([`4bbf8ee`](https://togithub.com/grpc/grpc-java/commit/4bbf8eee5)). This is an internal refactoring, but it does improve how errors are handled for broken binaries. Previously, not being able to load pick_first would result in a channel panic. Now it is handled as a regular load balancing error - okhttp: Assert no pending streams before transport READY ([#​12566](https://togithub.com/grpc/grpc-java/issues/12566)) ([`ed6d175`](https://togithub.com/grpc/grpc-java/commit/ed6d175fc)). No pending streams should exist when the transport transitions to READY. This PR adds an assertion to help verify this invariant. **Bug Fixes** - core: PickFirstLB should not return a subchannel during CONNECTING ([`228fc8e`](https://togithub.com/grpc/grpc-java/commit/228fc8ecd)). Pick-first in grpc-java has behaved this way since it was created, and it was of no consequence. However, now there are some load balancing policies (mainly RLS) that will do a pick() and hope the result to be reasonably accurate for metrics. **Improvements** - core: Improve DEADLINE_EXCEEDED message for CallCreds delays ([`ead532b`](https://togithub.com/grpc/grpc-java/commit/ead532b39)). Previously the error message contained “buffered_nanos” and “waiting_for_connection” for connection delays. However, we discovered the same strings were also used if waiting on CallCredentials. Now you’ll see details like “connecting_and_lb_delay”, “call_credentials_delay”, and “was_still_waiting”. - opentelemetry: Add Android API checking ([`a9f73f4`](https://togithub.com/grpc/grpc-java/commit/a9f73f4c0)). Previously we assumed OpenTelemetry support would not be used on Android. It did happen to be compatible with Android, but since OpenTelemetry does have some Android support, we now have a check that it remains compatible - core: Catch Errors when calling complex config parsing code ([`a535ed7`](https://togithub.com/grpc/grpc-java/commit/a535ed799)). Error (and any other Throwable) is now caught and handled when parsing configuration (e.g., service config, xds). This will cause such failures to be handled gracefully instead of panicking the channel - core: Implement LoadBalancer.Helper.createOobChannel() with the internals of createResolvingOobChannel() ([`3915d02`](https://togithub.com/grpc/grpc-java/commit/3915d029c)). This API is only expected to be relevant to the gRPC-LB lookaside load balancer, and is not believed to have behavior changes. Out-of-band channel had been implemented with its own stripped-down Channel without load balancing. Reimplementing using the resolving oob channel makes it a full-fledged channel and reduces the burden when integrating new features and allows us to have a ManagedChannelBuilder to use with efforts like [gRFC A110: Child Channel Options](https://togithub.com/grpc/proposal/pull/529). - xds: Implement the proactive connection logic in RingHashLoadBalancer as outlined in gRFC A61 ([#​12596](https://togithub.com/grpc/grpc-java/issues/12596)). Previously, the Java implementation only initialized child balancers when a ring-chosen endpoint was in TRANSIENT_FAILURE during a picker's pickSubchannel call. This PR adds the missing logic: when a child balancer reports TRANSIENT_FAILURE, the LoadBalancer now proactively initializes the first available IDLE child if no other children are currently connecting or ready. This ensures a backup subchannel starts warming up immediately outside the RPC flow, reducing failover latency and improving overall resilience. This behavior was previously present but was inadvertently lost after [#​10610](https://togithub.com/grpc/grpc-java/pull/10610). - api: Add RFC 3986 support to DnsNameResolverProvider ([#​12602](https://togithub.com/grpc/grpc-java/issues/12602)) ([`f65127c`](https://togithub.com/grpc/grpc-java/commit/f65127cf7)) Experimental RFC 3986 target URI parsing mode (disabled by default) **New Features** - opentelemetry: Actual reason for the disconnects in subchannel metrics([`6b2f758`](https://togithub.com/grpc/grpc-java/commit/6b2f7580c)), completing the remaining work in [gRFC A96: OTel metrics for Subchannels](https://togithub.com/grpc/proposal/pull/485/files) **Dependencies** - protobuf: Upgrade Bazel protobuf to 33.1 ([#​12553](https://togithub.com/grpc/grpc-java/issues/12553)) ([`b61a8f4`](https://togithub.com/grpc/grpc-java/commit/b61a8f49c)) and load java_proto_library from the protobuf repo ([`c7f3cdb`](https://togithub.com/grpc/grpc-java/commit/c7f3cdbc3)) - protobuf: Fix build with Bazel 9 by upgrading bazel_jar_jar and grpc-proto versions ([#​12569](https://togithub.com/grpc/grpc-java/issues/12569)) - Upgrade dependencies ([#​12588](https://togithub.com/grpc/grpc-java/issues/12588)) ([`6422092`](https://togithub.com/grpc/grpc-java/commit/6422092e3)) Netty to 4.1.130, error-prone annotations to 2.45.0, google-auth-library to 1.41.0, tomcat-embed-core9 to 9.0.113, tomcat-embed-core to 10.1.50, opentelemetry to 1.57.0, jetty-ee10-servlet to 12.1.5, jetty-http2-server to 12.1.5, google-cloud-logging to 3.23.9, google-auth to 1.41.0, proto-google-common-protos to 2.63.2. **Thanks to** - [@​benjaminp](https://togithub.com/benjaminp) - [@​becomeStar](https://togithub.com/becomeStar) - [@​meteorcloudy](https://togithub.com/meteorcloudy) </details> <details> <summary>open-telemetry/opentelemetry-java (io.opentelemetry:opentelemetry-bom)</summary> ### [`v1.59.0`](https://togithub.com/open-telemetry/opentelemetry-java/blob/HEAD/CHANGELOG.md#Version-1590-2026-02-06) [Compare Source](https://togithub.com/open-telemetry/opentelemetry-java/compare/v1.58.0...v1.59.0) ##### API - Stabilize complex attributes ([#​7973](https://togithub.com/open-telemetry/opentelemetry-java/pull/7973)) - Limit init valid hex array to range that can be true ([#​7809](https://togithub.com/open-telemetry/opentelemetry-java/pull/7809)) ##### Extensions - Trace propagators: Deprecate OtTracePropagator ([#​8020](https://togithub.com/open-telemetry/opentelemetry-java/pull/8020)) - Trace propagators: Deprecate JaegerPropagator ([#​8019](https://togithub.com/open-telemetry/opentelemetry-java/pull/8019)) ##### SDK - Move io.opentelemetry.sdk.internal to io.opentelemetry.sdk.common.internal ([#​8003](https://togithub.com/open-telemetry/opentelemetry-java/pull/8003)) - Always return ExtendedOpenTelemetry when incubator is available ([#​7991](https://togithub.com/open-telemetry/opentelemetry-java/pull/7991)) ##### Traces - Fix memory leak in SdkSpan#spanEndingThread ([#​7984](https://togithub.com/open-telemetry/opentelemetry-java/pull/7984)) ##### Metrics - Rework and publish metric benchmarks ([#​8000](https://togithub.com/open-telemetry/opentelemetry-java/pull/8000)) - Update LongLastValueAggregator algo to avoid allocations ([#​8017](https://togithub.com/open-telemetry/opentelemetry-java/pull/8017)) ##### Testing - Fix OTel JUnit5 Extension cleanup when using Nested test classes ([#​7999](https://togithub.com/open-telemetry/opentelemetry-java/pull/7999)) - Add assertion support for Span hasException(null) ([#​8033](https://togithub.com/open-telemetry/opentelemetry-java/pull/8033)) ##### Exporters - **DEPRECATION**: `opentelemetry-exporter-zipkin` is now deprecated with the last release planned for 1.65.0 (August 2026) ([#​7974](https://togithub.com/open-telemetry/opentelemetry-java/pull/7974)) - Refactor http, grpc senders and promote to public API ([#​7782](https://togithub.com/open-telemetry/opentelemetry-java/pull/7782)) ##### Extensions - Jaeger remote sampler: Remove unused code ([#​7970](https://togithub.com/open-telemetry/opentelemetry-java/pull/7970)) - Incubator: Add AlwaysRecordSampler ([#​7877](https://togithub.com/open-telemetry/opentelemetry-java/pull/7877)) ##### Project tooling - Align generate release contributors ([#​8023](https://togithub.com/open-telemetry/opentelemetry-java/pull/8023)) </details> --- ### 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://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
🤖 I have created a release *beep* *boop* --- <details><summary>2.67.0</summary> ## [2.67.0](googleapis/sdk-platform-java@v2.66.1...v2.67.0) (2026-02-18) ### Features * **observability:** introduce minimal tracing implementation ([#4105](googleapis/sdk-platform-java#4105)) ([e4e5e89](googleapis/sdk-platform-java@e4e5e89)) ### Dependencies * Upgrade Google-Auth-Library to v1.43.0 ([#4114](googleapis/sdk-platform-java#4114)) ([825298b](googleapis/sdk-platform-java@825298b)) * Upgrade grpc to 1.76.3 ([#4106](googleapis/sdk-platform-java#4106)) ([c6555f5](googleapis/sdk-platform-java@c6555f5)) </details> --- 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>
🤖 I have created a release *beep* *boop* --- <details><summary>2.67.1-SNAPSHOT</summary> ### Updating meta-information for bleeding-edge SNAPSHOT release. </details> --- 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>
…ributes (#4120) This PR introduces the ability to include repository and artifact name metadata in generated GAPIC libraries. ## Changes ### GAX (Google API Extensions) - **`LibraryMetadata`**: Introduced a new internal class to hold `repository` and `artifactName`. - **`StubSettings` & `ClientContext`**: Added `LibraryMetadata` to these classes to carry the metadata through the client lifecycle. - **Observability/Tracing**: Updated `ApiTracerContext` and `ObservabilityAttributes` to support these new attributes, enabling them to be included in exported traces. ### GAPIC Generator - Support for `repo` and `artifact` flags, passed down to generate a method in `[Service]StubSettings` that builds an instance of `LibraryMetadata`. ### Hermetic Build - Support for `repo` and `artifact` to be passed down to `generate_library.sh`. The flags reuse the existing logic that determines the values. ## Verification Results <img width="1412" height="877" alt="image" src="https://github.com/user-attachments/assets/1b746361-db2b-4661-bbe6-38f7f63155aa" /> ## Note on java-bigtable downstream check Since [SkipTrailersTest](https://github.com/googleapis/java-bigtable/blob/49fe7692c55747714ada4296ff0f856b1109eba5/google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/data/v2/stub/SkipTrailersTest.java#L97) mocks the tracer factory, the `EndpointContext` call to `apiTracerFactory.withContext()` returns a null factory, causing a null pointer exception when building the client context. We expect the test to be adjusted with this change with the next release. --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot <cloud-java-bot@google.com>
…elease_please_versions.sh
7cef60a to
49be0a2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.