Closed
Conversation
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
laurit
reviewed
Jan 30, 2026
aa9eb2c to
2090146
Compare
trask
reviewed
Feb 14, 2026
trask
reviewed
Feb 20, 2026
42ae2bd to
496365f
Compare
2dedd3f to
b731ced
Compare
f568edc to
df96f82
Compare
77fdd7c to
3646240
Compare
Rebased on latest main and addressed review comments: - Trie: flip delegation so getOrDefault calls getOrNull - TransformSafeLogger: pass logMessageQueue into constructor - HelperInjector: align constructor with main (non-nullable params) - MuzzleMatcher: fix race condition with AtomicReference - SafeServiceLoader/SafeHasSuperTypeMatcher: throw NoSuchElementException - AgentCachingPoolStrategy: remove unnecessary wrapper method Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
…ullAway Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
…TypeMatcher and remove isTransformingClass wrapper Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
…onAccessCustomizerProvider Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
The nullaway PR incorrectly replaced application.io.opentelemetry.api.* imports with io.opentelemetry.api.* in 132 files. In the javaagent's multi-classloader architecture, these are different classes — application.* is the application classloader's view, while the unprefixed imports are the agent's internal classes. This broke ExtendedOpenTelemetryTest and many other tests. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
The OTel SDK 1.59 added VALUE to AttributeType and ValueType enums. Add default cases to switch statements in older API bridge classes to prevent MissingCasesInEnumSwitch errorprone warnings. Also fix spotless formatting in JavaUtilLoggingHelper. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
These modules' application-side enums already cover all cases, so adding default triggers UnnecessaryDefaultInEnumSwitch. Only the 1.0 Bridging.java genuinely needs a default for the new VALUE type. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
When declarative config is used, AutoConfigureUtil.getConfig() returns null. The distribution-node PR added requireNonNull for sdkConfig in AgentInstaller, causing NPE during agent startup. Fix by providing empty DefaultConfigProperties as fallback in OpenTelemetryInstaller when configProperties is null (declarative config path), ensuring the returned AutoConfiguredOpenTelemetrySdk always has non-null config. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
The rebase introduced several unrelated upstream changes and a botched revert that swapped application.* imports in the wrong direction. Reset to main: - 130 files with incorrect application.* import swaps - Javalin module restructuring (14 files) - RxJava module rename rxjava-common-3.0 -> rxjava-3-common - SqlQuerySanitizer -> SqlQueryAnalyzer rename - Semconv import style changes - RPC semconv changes, JDBC refactoring - CI/config/doc changes (.fossa.yml, mise.toml, etc.) - FlakyTestReporter transport change Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
The extensions class loader is intentionally null in test environments (AgentInitializer returns null when agentStarter is not set). Instead of wrapping the call in requireNonNull, inline Utils.getExtensionsClassLoader() and annotate SafeServiceLoader parameters as @nullable since ServiceLoader.load() handles null classloader (uses bootstrap classloader). Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
The nullaway PR accidentally removed the "deprecation" suppression from convertExtendedAttributes. This suppression is needed because ExtendedAttributes is deprecated and the custom OtelDeprecatedApiUsage error-prone check (which accepts "deprecation" as an altName) flags it as a compilation error. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
…o extend() InstrumentationLoader is instantiated by ServiceLoader (no-arg constructor), at which point InstrumentationHolder.getInstrumentation() is still null. Moving the requireNonNull + construction into extend() defers it to when Instrumentation is guaranteed to be available, fixing the NPE. Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Member
Author
|
Closing in favor of per-module PRs to make review easier. Each PR enables NullAway for one Gradle module independently:
Note: two files from the original PR ( |
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.
towards #15991