- Notifications
You must be signed in to change notification settings - Fork 319
Introduce marker mechanism for eagerly initializing helpers #8028
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…it to register AsyncResultExtensions
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 6 unstable metrics. Startup time reports for petclinicgantt title petclinic - global startup overhead: candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section tracing Agent [baseline] (1.093 s) : 0, 1093040 Total [baseline] (10.475 s) : 0, 10475402 Agent [candidate] (1.09 s) : 0, 1090277 Total [candidate] (10.416 s) : 0, 10416065 section appsec Agent [baseline] (1.227 s) : 0, 1226507 Total [baseline] (10.742 s) : 0, 10742496 Agent [candidate] (1.23 s) : 0, 1230120 Total [candidate] (10.749 s) : 0, 10748696 section iast Agent [baseline] (1.217 s) : 0, 1217277 Total [baseline] (10.96 s) : 0, 10960468 Agent [candidate] (1.221 s) : 0, 1220828 Total [candidate] (10.955 s) : 0, 10955277 section profiling Agent [baseline] (1.314 s) : 0, 1313979 Total [baseline] (10.795 s) : 0, 10795259 Agent [candidate] (1.321 s) : 0, 1321323 Total [candidate] (10.844 s) : 0, 10843844
gantt title petclinic - break down per module: candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (694.589 ms) : 0, 694589 BytebuddyAgent [candidate] (694.391 ms) : 0, 694391 GlobalTracer [baseline] (317.87 ms) : 0, 317870 GlobalTracer [candidate] (318.149 ms) : 0, 318149 AppSec [baseline] (54.759 ms) : 0, 54759 AppSec [candidate] (54.87 ms) : 0, 54870 Remote Config [baseline] (676.532 µs) : 0, 677 Remote Config [candidate] (677.248 µs) : 0, 677 Telemetry [baseline] (11.422 ms) : 0, 11422 Telemetry [candidate] (8.468 ms) : 0, 8468 section appsec BytebuddyAgent [baseline] (712.627 ms) : 0, 712627 BytebuddyAgent [candidate] (714.019 ms) : 0, 714019 GlobalTracer [baseline] (314.65 ms) : 0, 314650 GlobalTracer [candidate] (316.292 ms) : 0, 316292 AppSec [baseline] (167.545 ms) : 0, 167545 AppSec [candidate] (166.18 ms) : 0, 166180 Remote Config [baseline] (647.653 µs) : 0, 648 Remote Config [candidate] (645.527 µs) : 0, 646 Telemetry [baseline] (7.812 ms) : 0, 7812 Telemetry [candidate] (9.675 ms) : 0, 9675 IAST [baseline] (18.927 ms) : 0, 18927 IAST [candidate] (19.079 ms) : 0, 19079 section iast BytebuddyAgent [baseline] (810.949 ms) : 0, 810949 BytebuddyAgent [candidate] (813.308 ms) : 0, 813308 GlobalTracer [baseline] (305.832 ms) : 0, 305832 GlobalTracer [candidate] (306.649 ms) : 0, 306649 AppSec [baseline] (57.853 ms) : 0, 57853 AppSec [candidate] (58.145 ms) : 0, 58145 Remote Config [baseline] (630.079 µs) : 0, 630 Remote Config [candidate] (643.032 µs) : 0, 643 Telemetry [baseline] (7.478 ms) : 0, 7478 Telemetry [candidate] (7.556 ms) : 0, 7556 IAST [baseline] (20.783 ms) : 0, 20783 IAST [candidate] (20.768 ms) : 0, 20768 section profiling BytebuddyAgent [baseline] (687.274 ms) : 0, 687274 BytebuddyAgent [candidate] (691.774 ms) : 0, 691774 GlobalTracer [baseline] (433.043 ms) : 0, 433043 GlobalTracer [candidate] (434.001 ms) : 0, 434001 AppSec [baseline] (53.448 ms) : 0, 53448 AppSec [candidate] (53.814 ms) : 0, 53814 Remote Config [baseline] (647.637 µs) : 0, 648 Remote Config [candidate] (664.403 µs) : 0, 664 Telemetry [baseline] (7.682 ms) : 0, 7682 Telemetry [candidate] (7.739 ms) : 0, 7739 ProfilingAgent [baseline] (92.85 ms) : 0, 92850 ProfilingAgent [candidate] (93.983 ms) : 0, 93983 Profiling [baseline] (92.874 ms) : 0, 92874 Profiling [candidate] (94.007 ms) : 0, 94007 Startup time reports for insecure-bankgantt title insecure-bank - global startup overhead: candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section tracing Agent [baseline] (1.092 s) : 0, 1092201 Total [baseline] (8.666 s) : 0, 8665822 Agent [candidate] (1.09 s) : 0, 1089888 Total [candidate] (8.693 s) : 0, 8692798 section iast Agent [baseline] (1.225 s) : 0, 1225469 Total [baseline] (9.273 s) : 0, 9273019 Agent [candidate] (1.227 s) : 0, 1226625 Total [candidate] (9.23 s) : 0, 9230394 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.222 s) : 0, 1222087 Total [baseline] (9.166 s) : 0, 9166180 Agent [candidate] (1.227 s) : 0, 1226546 Total [candidate] (9.216 s) : 0, 9216081 section iast_TELEMETRY_OFF Agent [baseline] (1.229 s) : 0, 1228680 Total [baseline] (9.209 s) : 0, 9208554 Agent [candidate] (1.221 s) : 0, 1221154 Total [candidate] (9.207 s) : 0, 9206671
gantt title insecure-bank - break down per module: candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (694.317 ms) : 0, 694317 BytebuddyAgent [candidate] (693.681 ms) : 0, 693681 GlobalTracer [baseline] (317.815 ms) : 0, 317815 GlobalTracer [candidate] (317.588 ms) : 0, 317588 AppSec [baseline] (54.872 ms) : 0, 54872 AppSec [candidate] (54.852 ms) : 0, 54852 Remote Config [baseline] (678.645 µs) : 0, 679 Remote Config [candidate] (679.989 µs) : 0, 680 Telemetry [baseline] (10.719 ms) : 0, 10719 Telemetry [candidate] (9.329 ms) : 0, 9329 section iast BytebuddyAgent [baseline] (815.8 ms) : 0, 815800 BytebuddyAgent [candidate] (817.627 ms) : 0, 817627 GlobalTracer [baseline] (307.656 ms) : 0, 307656 GlobalTracer [candidate] (307.698 ms) : 0, 307698 AppSec [baseline] (57.798 ms) : 0, 57798 AppSec [candidate] (56.704 ms) : 0, 56704 IAST [baseline] (22.089 ms) : 0, 22089 IAST [candidate] (22.591 ms) : 0, 22591 Remote Config [baseline] (649.05 µs) : 0, 649 Remote Config [candidate] (632.287 µs) : 0, 632 Telemetry [baseline] (7.652 ms) : 0, 7652 Telemetry [candidate] (7.51 ms) : 0, 7510 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (813.025 ms) : 0, 813025 BytebuddyAgent [candidate] (816.929 ms) : 0, 816929 GlobalTracer [baseline] (307.916 ms) : 0, 307916 GlobalTracer [candidate] (308.126 ms) : 0, 308126 AppSec [baseline] (58.258 ms) : 0, 58258 AppSec [candidate] (58.205 ms) : 0, 58205 IAST [baseline] (20.915 ms) : 0, 20915 IAST [candidate] (21.087 ms) : 0, 21087 Remote Config [baseline] (636.331 µs) : 0, 636 Remote Config [candidate] (640.025 µs) : 0, 640 Telemetry [baseline] (7.588 ms) : 0, 7588 Telemetry [candidate] (7.55 ms) : 0, 7550 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (816.26 ms) : 0, 816260 BytebuddyAgent [candidate] (811.57 ms) : 0, 811570 GlobalTracer [baseline] (310.553 ms) : 0, 310553 GlobalTracer [candidate] (308.732 ms) : 0, 308732 AppSec [baseline] (56.558 ms) : 0, 56558 AppSec [candidate] (58.323 ms) : 0, 58323 IAST [baseline] (23.365 ms) : 0, 23365 IAST [candidate] (20.602 ms) : 0, 20602 Remote Config [baseline] (625.709 µs) : 0, 626 Remote Config [candidate] (636.634 µs) : 0, 637 Telemetry [baseline] (7.491 ms) : 0, 7491 Telemetry [candidate] (7.512 ms) : 0, 7512 LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt title insecure-bank - request duration [CI 0.99] : candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section baseline no_agent (374.409 µs) : 354, 395 . : milestone, 374, iast (503.693 µs) : 482, 526 . : milestone, 504, iast_FULL (659.945 µs) : 638, 681 . : milestone, 660, iast_GLOBAL (529.286 µs) : 507, 552 . : milestone, 529, iast_HARDCODED_SECRET_DISABLED (494.182 µs) : 473, 515 . : milestone, 494, iast_INACTIVE (462.771 µs) : 441, 484 . : milestone, 463, iast_TELEMETRY_OFF (487.857 µs) : 466, 509 . : milestone, 488, tracing (457.294 µs) : 436, 478 . : milestone, 457, section candidate no_agent (376.36 µs) : 357, 396 . : milestone, 376, iast (505.46 µs) : 484, 527 . : milestone, 505, iast_FULL (658.899 µs) : 637, 681 . : milestone, 659, iast_GLOBAL (532.068 µs) : 510, 554 . : milestone, 532, iast_HARDCODED_SECRET_DISABLED (494.235 µs) : 473, 516 . : milestone, 494, iast_INACTIVE (467.843 µs) : 446, 489 . : milestone, 468, iast_TELEMETRY_OFF (491.389 µs) : 470, 513 . : milestone, 491, tracing (455.332 µs) : 435, 476 . : milestone, 455,
Request duration reports for petclinicgantt title petclinic - request duration [CI 0.99] : candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section baseline no_agent (1.372 ms) : 1353, 1392 . : milestone, 1372, appsec (1.771 ms) : 1746, 1795 . : milestone, 1771, appsec_no_iast (1.77 ms) : 1746, 1794 . : milestone, 1770, iast (1.506 ms) : 1483, 1529 . : milestone, 1506, profiling (1.56 ms) : 1536, 1584 . : milestone, 1560, tracing (1.5 ms) : 1475, 1524 . : milestone, 1500, section candidate no_agent (1.362 ms) : 1342, 1382 . : milestone, 1362, appsec (1.762 ms) : 1737, 1787 . : milestone, 1762, appsec_no_iast (1.767 ms) : 1742, 1791 . : milestone, 1767, iast (1.514 ms) : 1490, 1537 . : milestone, 1514, profiling (1.538 ms) : 1515, 1562 . : milestone, 1538, tracing (1.489 ms) : 1464, 1514 . : milestone, 1489,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt title biojava - execution time [CI 0.99] : candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section baseline no_agent (14.698 s) : 14698000, 14698000 . : milestone, 14698000, appsec (15.056 s) : 15056000, 15056000 . : milestone, 15056000, iast (18.762 s) : 18762000, 18762000 . : milestone, 18762000, iast_GLOBAL (18.06 s) : 18060000, 18060000 . : milestone, 18060000, profiling (14.864 s) : 14864000, 14864000 . : milestone, 14864000, tracing (15.096 s) : 15096000, 15096000 . : milestone, 15096000, section candidate no_agent (15.419 s) : 15419000, 15419000 . : milestone, 15419000, appsec (14.961 s) : 14961000, 14961000 . : milestone, 14961000, iast (18.994 s) : 18994000, 18994000 . : milestone, 18994000, iast_GLOBAL (17.691 s) : 17691000, 17691000 . : milestone, 17691000, profiling (15.056 s) : 15056000, 15056000 . : milestone, 15056000, tracing (14.899 s) : 14899000, 14899000 . : milestone, 14899000,
Execution time for tomcatgantt title tomcat - execution time [CI 0.99] : candidate=1.44.0-SNAPSHOT~bb3eabdb03, baseline=1.44.0-SNAPSHOT~207f770623 dateFormat X axisFormat %s section baseline no_agent (1.467 ms) : 1455, 1478 . : milestone, 1467, appsec (2.33 ms) : 2289, 2372 . : milestone, 2330, iast (2.078 ms) : 2026, 2130 . : milestone, 2078, iast_GLOBAL (2.116 ms) : 2064, 2169 . : milestone, 2116, profiling (1.933 ms) : 1892, 1975 . : milestone, 1933, tracing (1.919 ms) : 1879, 1959 . : milestone, 1919, section candidate no_agent (1.465 ms) : 1454, 1477 . : milestone, 1465, appsec (2.334 ms) : 2292, 2375 . : milestone, 2334, iast (2.071 ms) : 2019, 2124 . : milestone, 2071, iast_GLOBAL (2.118 ms) : 2065, 2170 . : milestone, 2118, profiling (1.949 ms) : 1905, 1992 . : milestone, 1949, tracing (1.92 ms) : 1880, 1960 . : milestone, 1920,
|
| .getClass() | ||
| .getName() | ||
| .endsWith("ThrowawayClassLoader")) { | ||
| return; // spring-native expects this to be thrown away, not persisted |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what's the story behind that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spring-native uses this special class-loader to perform its own analysis during native-image generation - classes loaded by it are not supposed to be recorded as "build-time". Since AsyncResultExtensions and anything it holds will be marked as "build-time" we must not keep hold of any throw-away classes here.
amarziali left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thank you Stuart
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.49.0` -> `2.50.0` | | [com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.48.0` -> `2.49.0` | | [com.google.cloud:google-cloud-spanner](https://github.com/googleapis/java-spanner) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `6.82.0` -> `6.83.0` | | [com.google.cloud:google-cloud-logging](https://github.com/googleapis/java-logging) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.20.7` -> `3.21.0` | | [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.24.3` -> `2.25.1` | | [com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.48.0` -> `2.49.0` | | [com.google.api:gax](https://github.com/googleapis/sdk-platform-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.58.0` -> `2.59.0` | | [com.autonomousapps.dependency-analysis](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin) | plugin | misk/gradle/libs.versions.toml | gradle | patch | `2.6.0` -> `2.6.1` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.43.0` -> `1.44.1` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.43.0` -> `1.44.1` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.29.32` -> `2.29.34` | | [com.amazonaws:aws-java-sdk-sqs](https://aws.amazon.com/sdkforjava) ([source](https://github.com/aws/aws-sdk-java)) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` -> `1.12.780` | | [com.amazonaws:aws-java-sdk-s3](https://aws.amazon.com/sdkforjava) ([source](https://github.com/aws/aws-sdk-java)) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` -> `1.12.780` | | [com.amazonaws:aws-java-sdk-dynamodb](https://aws.amazon.com/sdkforjava) ([source](https://github.com/aws/aws-sdk-java)) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` -> `1.12.780` | | [com.amazonaws:aws-java-sdk-core](https://aws.amazon.com/sdkforjava) ([source](https://github.com/aws/aws-sdk-java)) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` -> `1.12.780` | --- ### Release Notes <details> <summary>googleapis/sdk-platform-java (com.google.api.grpc:proto-google-common-protos)</summary> ### [`v2.50.0`](https://github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2500-2024-11-14) ##### Features - Add experimental S2A integration in client libraries grpc transport ([#​3326](googleapis/sdk-platform-java#3326)) ([1138ca6](googleapis/sdk-platform-java@1138ca6)) - enable selective generation based on service config include list ([#​3323](googleapis/sdk-platform-java#3323)) ([0cddadb](googleapis/sdk-platform-java@0cddadb)) - introduce `java.time` to java-core ([#​3330](googleapis/sdk-platform-java#3330)) ([f202c3b](googleapis/sdk-platform-java@f202c3b)) - Update Gapic-Generator to generate libraries using `java.time` methods ([#​3321](googleapis/sdk-platform-java#3321)) ([b21c9a4](googleapis/sdk-platform-java@b21c9a4)) ##### Bug Fixes - Fix flaky test ScheduledRetryingExecutorTest.testCancelOuterFutureAfterStart ([#​3335](googleapis/sdk-platform-java#3335)) ([e73740d](googleapis/sdk-platform-java@e73740d)) - httpjson callables to trace attempts (started, failed) ([#​3300](googleapis/sdk-platform-java#3300)) ([15a64ee](googleapis/sdk-platform-java@15a64ee)) - instantiate GaxProperties at build time to ensure we get the protobuf version ([#​3365](googleapis/sdk-platform-java#3365)) ([bb2a3be](googleapis/sdk-platform-java@bb2a3be)) - protobuf version not always getting set in headers ([#​3322](googleapis/sdk-platform-java#3322)) ([7f6e470](googleapis/sdk-platform-java@7f6e470)) - use BuildKit instead of legacy builder to build the Hermetic Build images ([#​3338](googleapis/sdk-platform-java#3338)) ([222fb45](googleapis/sdk-platform-java@222fb45)) ##### Dependencies - update google auth library dependencies to v1.30.0 ([#​3367](googleapis/sdk-platform-java#3367)) ([a31c682](googleapis/sdk-platform-java@a31c682)) - update grpc dependencies to v1.68.1 ([#​3240](googleapis/sdk-platform-java#3240)) ([c8e3941](googleapis/sdk-platform-java@c8e3941)) ##### Documentation - fix list num ([#​3356](googleapis/sdk-platform-java#3356)) ([b7d6296](googleapis/sdk-platform-java@b7d6296)) - **hermetic-build:** indicate usage of Docker Buildkit in development guide ([#​3337](googleapis/sdk-platform-java#3337)) ([01e742d](googleapis/sdk-platform-java@01e742d)) - modify hermetic build docs ([#​3331](googleapis/sdk-platform-java#3331)) ([25023af](googleapis/sdk-platform-java@25023af)) </details> <details> <summary>googleapis/java-spanner (com.google.cloud:google-cloud-spanner)</summary> ### [`v6.83.0`](https://github.com/googleapis/java-spanner/blob/HEAD/CHANGELOG.md#6830-2024-12-13) ##### Features - Add Metrics host for built in metrics ([#​3519](googleapis/java-spanner#3519)) ([4ed455a](googleapis/java-spanner@4ed455a)) - Add opt-in for using multiplexed sessions for blind writes ([#​3540](googleapis/java-spanner#3540)) ([216f53e](googleapis/java-spanner@216f53e)) - Add UUID in Spanner TypeCode enum ([41f83dc](googleapis/java-spanner@41f83dc)) - Introduce java.time variables and methods ([#​3495](googleapis/java-spanner#3495)) ([8a7d533](googleapis/java-spanner@8a7d533)) - **spanner:** Support multiplexed session for Partitioned operations ([#​3231](googleapis/java-spanner#3231)) ([4501a3e](googleapis/java-spanner@4501a3e)) - Support 'set local' for retry_aborts_internally ([#​3532](googleapis/java-spanner#3532)) ([331942f](googleapis/java-spanner@331942f)) ##### Bug Fixes - **deps:** Update the Java code generator (gapic-generator-java) to 2.51.0 ([41f83dc](googleapis/java-spanner@41f83dc)) ##### Dependencies - Update sdk platform java dependencies ([#​3549](googleapis/java-spanner#3549)) ([6235f0f](googleapis/java-spanner@6235f0f)) </details> <details> <summary>googleapis/java-logging (com.google.cloud:google-cloud-logging)</summary> ### [`v3.21.0`](https://github.com/googleapis/java-logging/blob/HEAD/CHANGELOG.md#3210-2024-12-13) ##### Features - Introduce `java.time` methods ([#​1729](googleapis/java-logging#1729)) ([323eb33](googleapis/java-logging@323eb33)) ##### Bug Fixes - **deps:** Update the Java code generator (gapic-generator-java) to 2.51.0 ([04d8868](googleapis/java-logging@04d8868)) ##### Dependencies - Update dependency io.opentelemetry:opentelemetry-bom to v1.45.0 ([#​1638](googleapis/java-logging#1638)) ([7e007d4](googleapis/java-logging@7e007d4)) - Update sdk platform java dependencies ([#​1736](googleapis/java-logging#1736)) ([88b4cdf](googleapis/java-logging@88b4cdf)) </details> <details> <summary>googleapis/java-datastore (com.google.cloud:google-cloud-datastore)</summary> ### [`v2.25.1`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2251-2024-12-13) ##### Bug Fixes - **deps:** Update the Java code generator (gapic-generator-java) to 2.51.0 ([106ee4d](googleapis/java-datastore@106ee4d)) ##### Dependencies - Update sdk platform java dependencies ([#​1685](googleapis/java-datastore#1685)) ([4372350](googleapis/java-datastore@4372350)) ### [`v2.25.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2250-2024-12-11) ##### Features - Introduce `java.time` methods and variables ([#​1671](googleapis/java-datastore#1671)) ([5a78a80](googleapis/java-datastore@5a78a80)) ##### Dependencies - Update dependency com.google.cloud:gapic-libraries-bom to v1.48.0 ([#​1605](googleapis/java-datastore#1605)) ([5c6a678](googleapis/java-datastore@5c6a678)) ##### Documentation - Update gapic upgrade installation instructions ([#​1677](googleapis/java-datastore#1677)) ([b3fbfcc](googleapis/java-datastore@b3fbfcc)) </details> <details> <summary>autonomousapps/dependency-analysis-android-gradle-plugin (com.autonomousapps.dependency-analysis)</summary> ### [`v2.6.1`](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/blob/HEAD/CHANGELOG.md#Version-261) - \[Fix]: `superClassName` can be null (Object has no superclass). </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.44.1`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.44.1): 1.44.1 ##### Components ##### Continuous Integration Visibility - 🐛 Fix tracing JUnit5 tests in Maven projects with multiple forks ([#​8089](DataDog/dd-trace-java#8089) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) ### [`v1.44.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.44.0): 1.44.0 ##### Known Issues > \[!WARNING]\ > This release contains a known issue that causes failures when using Test Optimization to trace JUnit 5 tests in a Maven project where Maven Surefire is configured with `forkCount` > 1. > The issue is fixed in v1.44.1 ##### Breaking Changes > \[!WARNING]\ > Support for `X-Forwarded` header is dropped from default client IP resolution. > It can still be re-activated using the `dd.trace.client-ip-header=x-forwarded` system property, or the `DD_TRACE_CLIENT_IP_HEADER=x-forwarded` environment variable. See [#​7946](DataDog/dd-trace-java#7946). ##### Components ##### Application Security Management (IAST) - ✨ Set unexpected IAST exceptions to debug log level ([#​8044](DataDog/dd-trace-java#8044) - [@​smola](https://github.com/smola)) - ✨ Increase IAST propagation to StringBuffer subSequence ([#​8038](DataDog/dd-trace-java#8038) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Increase IAST propagation to StringBuilder subSequence ([#​8026](DataDog/dd-trace-java#8026) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Add IAST propagation to String valueOf ([#​8013](DataDog/dd-trace-java#8013) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Increase IAST propagation to StringBuilder append ([#​8010](DataDog/dd-trace-java#8010) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Expand SSRF support in IAST to apache-httpclient-5 and apache-httpasyncclient-4 ([#​7920](DataDog/dd-trace-java#7920) - [@​Mariovido](https://github.com/Mariovido)) ##### Build & Tooling - ✨ Generate Muzzle classes for Groovy instrumentations ([#​8004](DataDog/dd-trace-java#8004) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) ##### Continuous Integration Visibility - ✨ Support distributed traces in tests ([#​8078](DataDog/dd-trace-java#8078) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement fail-fast tests ordering for JUnit 5 ([#​8055](DataDog/dd-trace-java#8055) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Mark JUnit 5 setup and teardown action spans as failed if there is an error ([#​8033](DataDog/dd-trace-java#8033) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add tracing of setup and teardown actions in JUnit 4 ([#​8030](DataDog/dd-trace-java#8030) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) ##### Crash tracking - ✨ Improve crash tracking install logging ([#​8045](DataDog/dd-trace-java#8045) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Data Streams Monitoring - 🐛 Add Data Streams support in AWS SQS without raw message delivery ([#​8071](DataDog/dd-trace-java#8071) - [@​piochelepiotr](https://github.com/piochelepiotr)) - ✨ Add new tag for enabled products / features to DSM checkpoints ([#​8051](DataDog/dd-trace-java#8051) - [@​kr-igor](https://github.com/kr-igor)) - 💡 Instrument self hosted Kafka connectors ([#​7959](DataDog/dd-trace-java#7959) - [@​piochelepiotr](https://github.com/piochelepiotr)) ##### Dynamic Instrumentation - ✨ Add Micronaut 4 support for code origin for spans ([#​8039](DataDog/dd-trace-java#8039) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Refactor probe matching for methods ([#​8021](DataDog/dd-trace-java#8021) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Update the CodeOriginProbe fingerprint to not rely on a stack walk ([#​8016](DataDog/dd-trace-java#8016) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Implement code origin support for grpc server entry spans ([#​7942](DataDog/dd-trace-java#7942) - [@​evanchooly](https://github.com/evanchooly)) ##### GraalVM native-image - 🐛 Update Graal build-time instrumentation config for TracePropagationStyle ([#​8065](DataDog/dd-trace-java#8065) - [@​MattAlp](https://github.com/MattAlp)) - 🐛 Fix NoClassDefFoundError: Could not initialize class DDSpanLink$EncoderHolder in Graal native-image ([#​8036](DataDog/dd-trace-java#8036) - [@​mcculls](https://github.com/mcculls)) - 🐛🧹 Fix native-image generation of reactive applications ([#​8012](DataDog/dd-trace-java#8012) - [@​mcculls](https://github.com/mcculls)) ##### OpenTracing - 🧹 Custom ScopeManagers are deprecated and will be removed in a future release of dd-trace-ot ([#​8058](DataDog/dd-trace-java#8058) - [@​mcculls](https://github.com/mcculls)) ##### Tracer core - ✨🧪 Service naming: split by jee deployment ([#​8064](DataDog/dd-trace-java#8064) - [@​amarziali](https://github.com/amarziali)) - ✨ Exclude jboss mdb proxies from instrumenting ([#​8061](DataDog/dd-trace-java#8061) - [@​amarziali](https://github.com/amarziali)) - ✨ Add a built-in trace interceptor for keeping traces depending of their latency ([#​8040](DataDog/dd-trace-java#8040) - [@​cecile75](https://github.com/cecile75)) - 💡 Introduce marker mechanism for eagerly initializing helpers ([#​8028](DataDog/dd-trace-java#8028) - [@​mcculls](https://github.com/mcculls)) - 💡 Add JSON component ([#​7973](DataDog/dd-trace-java#7973) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨⚠️ Remove support for X-Forwarded in client IP resolution ([#​7946](DataDog/dd-trace-java#7946) - [@​smola](https://github.com/smola)) ##### Instrumentations ##### Apache HttpComponents - ✨ Expand SSRF support in IAST to apache-httpclient-5 and apache-httpasyncclient-4 ([#​7920](DataDog/dd-trace-java#7920) - [@​Mariovido](https://github.com/Mariovido)) ##### gRPC instrumentation - 🐛 Use lower priorities for grpc server errors ([#​8043](DataDog/dd-trace-java#8043) - [@​amarziali](https://github.com/amarziali)) ##### JDBC instrumentation - ✨ Add trace injection for prepared statements in Postgres ([#​7940](DataDog/dd-trace-java#7940) - [@​nenadnoveljic](https://github.com/nenadnoveljic)) ##### JMS instrumentation - 🐛 Protect mdb from instrumenting multiple time the same event ([#​8062](DataDog/dd-trace-java#8062) - [@​amarziali](https://github.com/amarziali)) ##### Kafka instrumentation - 💡 Instrument self hosted Kafka connectors ([#​7959](DataDog/dd-trace-java#7959) - [@​piochelepiotr](https://github.com/piochelepiotr)) ##### OpenTelemetry instrumentation - 🐛 Support using OpenTelemetry Event API inside `@WithSpan` annotated method ([#​8019](DataDog/dd-trace-java#8019) - [@​mcculls](https://github.com/mcculls)) ##### Reactor instrumentation - 🐛🧹 Fix native-image generation of reactive applications ([#​8012](DataDog/dd-trace-java#8012) - [@​mcculls](https://github.com/mcculls)) ##### Spring instrumentation - 🐛 Avoid double instrumenting lambdas on latest spring scheduling ([#​8005](DataDog/dd-trace-java#8005) - [@​amarziali](https://github.com/amarziali)) ##### All other instrumentations - 🐛 Twilio: allow service name flattening ([#​8025](DataDog/dd-trace-java#8025) - [@​amarziali](https://github.com/amarziali)) - ✨ Instrument Mulesoft 4.5.0+ ([#​7981](DataDog/dd-trace-java#7981) - [@​amarziali](https://github.com/amarziali)) </details> <details> <summary>aws/aws-sdk-java (com.amazonaws:aws-java-sdk-sqs)</summary> ### [`v1.12.780`](https://github.com/aws/aws-sdk-java/blob/HEAD/CHANGELOG.md#112780-2024-12-11) [Compare Source](aws/aws-sdk-java@1.12.779...1.12.780) #### **Amazon Simple Storage Service** - ### Bugfixes - AWS SDK for Java 1.x now includes additional validation for Amazon S3 client APIs to handle scenarios where an empty string ('') is passed as the key argument to the following operations: PutObject, DeleteObject, ListObjects, GetObjectMetaData, ListObjectsV2, SetObjectTagging, GetObjectTagging, SetObjectAcl, GetObjectAcl, SetObjectLegalHold, GetObjectLegalHold, CopyObject, CopyPart, SelectObjectContent, SetObjectRetention, GetObjectRetention, AbortMultipartUpload, CompleteMultipartUpload, InitiateMultipartUpload, ListParts, UploadPart, RestoreObjectV2, and RestoreObject. The SDK will validate the key argument and throw an exception if it is an empty string, ensuring correct and expected behavior. </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am every weekday" in timezone Australia/Melbourne, 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://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://github.com/renovatebot/renovate). GitOrigin-RevId: 69831bc62ea4d80cdcd42cef2aa9bd8eda28ae8c
What Does This Do
Builds on existing helper mechanism, eager helpers must declare a public static "init" method that takes no arguments.
Motivation
Use eager helper mechanism to register AsyncResultExtensions as we inject them, so we don't need to instrument lots of different constructors / methods.
Contributor Checklist
type:and (comp:orinst:) labels in addition to any usefull labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: AIDM-447