From 83992b60a5456519334f5d4445c7064f30b1eeab Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 15:48:35 +0000 Subject: [PATCH 1/2] fix(deps): update errorproneversion to v2.47.0 --- dependencyManagement/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencyManagement/build.gradle.kts b/dependencyManagement/build.gradle.kts index 2949e6c7058..debe9f7f40f 100644 --- a/dependencyManagement/build.gradle.kts +++ b/dependencyManagement/build.gradle.kts @@ -9,7 +9,7 @@ rootProject.extra["versions"] = dependencyVersions val autoValueVersion = "1.11.1" -val errorProneVersion = "2.46.0" +val errorProneVersion = "2.47.0" val jmhVersion = "1.37" // Mockito 5.x.x requires Java 11 https://github.com/mockito/mockito/releases/tag/v5.0.0 val mockitoVersion = "4.11.0" From 097f687c5dd726add2557259e1b5c198d2dcb4a4 Mon Sep 17 00:00:00 2001 From: Jack Berg Date: Tue, 10 Feb 2026 14:13:31 -0600 Subject: [PATCH 2/2] Suppress recommendations to use java 10 APIs --- .../api/baggage/propagation/PercentEscaperFuzzTest.java | 4 +++- .../logging/otlp/AbstractOtlpStdoutExporterTest.java | 1 + .../opentelemetry/exporter/otlp/internal/OtlpConfigUtil.java | 3 ++- .../exporter/prometheus/PrometheusMetricReaderTest.java | 1 + .../extension/trace/propagation/JaegerPropagator.java | 4 +++- .../extension/trace/propagation/JaegerPropagatorTest.java | 5 ++++- .../sdk/autoconfigure/ResourceConfiguration.java | 3 ++- 7 files changed, 16 insertions(+), 5 deletions(-) diff --git a/api/all/src/test/java/io/opentelemetry/api/baggage/propagation/PercentEscaperFuzzTest.java b/api/all/src/test/java/io/opentelemetry/api/baggage/propagation/PercentEscaperFuzzTest.java index f24fe62d387..11fbe0182f6 100644 --- a/api/all/src/test/java/io/opentelemetry/api/baggage/propagation/PercentEscaperFuzzTest.java +++ b/api/all/src/test/java/io/opentelemetry/api/baggage/propagation/PercentEscaperFuzzTest.java @@ -13,6 +13,7 @@ import edu.berkeley.cs.jqf.fuzz.random.NoGuidance; import io.opentelemetry.api.internal.PercentEscaper; import java.net.URLDecoder; +import java.nio.charset.StandardCharsets; import org.junit.jupiter.api.Test; import org.junit.runner.Result; import org.junit.runner.RunWith; @@ -22,10 +23,11 @@ class PercentEscaperFuzzTest { public static class TestCases { private final PercentEscaper percentEscaper = new PercentEscaper(); + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 @Fuzz public void roundTripWithUrlDecoder(String value) throws Exception { String escaped = percentEscaper.escape(value); - String decoded = URLDecoder.decode(escaped, "UTF-8"); + String decoded = URLDecoder.decode(escaped, StandardCharsets.UTF_8.name()); assertThat(decoded).isEqualTo(value); } } diff --git a/exporters/logging-otlp/src/test/java/io/opentelemetry/exporter/logging/otlp/AbstractOtlpStdoutExporterTest.java b/exporters/logging-otlp/src/test/java/io/opentelemetry/exporter/logging/otlp/AbstractOtlpStdoutExporterTest.java index a7313d2ded8..87b2a14c1aa 100644 --- a/exporters/logging-otlp/src/test/java/io/opentelemetry/exporter/logging/otlp/AbstractOtlpStdoutExporterTest.java +++ b/exporters/logging-otlp/src/test/java/io/opentelemetry/exporter/logging/otlp/AbstractOtlpStdoutExporterTest.java @@ -83,6 +83,7 @@ protected abstract T createExporter( protected abstract T createDefaultExporter(); + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 private String output(@Nullable OutputStream outputStream, @Nullable Path file) { if (outputStream == null) { return logs.getEvents().stream() diff --git a/exporters/otlp/all/src/main/java/io/opentelemetry/exporter/otlp/internal/OtlpConfigUtil.java b/exporters/otlp/all/src/main/java/io/opentelemetry/exporter/otlp/internal/OtlpConfigUtil.java index b2fbea35461..6dc0555f5d4 100644 --- a/exporters/otlp/all/src/main/java/io/opentelemetry/exporter/otlp/internal/OtlpConfigUtil.java +++ b/exporters/otlp/all/src/main/java/io/opentelemetry/exporter/otlp/internal/OtlpConfigUtil.java @@ -150,6 +150,7 @@ public static void configureOtlpExporterBuilder( ExporterBuilderUtil.configureExporterMemoryMode(config, setMemoryMode); } + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 static void configureOtlpHeaders( ConfigProperties config, String dataType, BiConsumer addHeader) { Map headers = config.getMap("otel.exporter.otlp." + dataType + ".headers"); @@ -162,7 +163,7 @@ static void configureOtlpHeaders( try { // headers are encoded as URL - see // https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#specifying-headers-via-environment-variables - addHeader.accept(key, URLDecoder.decode(value, StandardCharsets.UTF_8.displayName())); + addHeader.accept(key, URLDecoder.decode(value, StandardCharsets.UTF_8.name())); } catch (Exception e) { throw new ConfigurationException("Cannot decode header value: " + value, e); } diff --git a/exporters/prometheus/src/test/java/io/opentelemetry/exporter/prometheus/PrometheusMetricReaderTest.java b/exporters/prometheus/src/test/java/io/opentelemetry/exporter/prometheus/PrometheusMetricReaderTest.java index ad4dd1398a5..de31edef6e4 100644 --- a/exporters/prometheus/src/test/java/io/opentelemetry/exporter/prometheus/PrometheusMetricReaderTest.java +++ b/exporters/prometheus/src/test/java/io/opentelemetry/exporter/prometheus/PrometheusMetricReaderTest.java @@ -1134,6 +1134,7 @@ private static String toPattern(String expected) { return regexBuilder.toString(); } + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 private static String toOpenMetrics(MetricSnapshots snapshots) throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); OpenMetricsTextFormatWriter writer = new OpenMetricsTextFormatWriter(true, true); diff --git a/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation/JaegerPropagator.java b/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation/JaegerPropagator.java index 53747bde875..8db82ff2b8c 100644 --- a/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation/JaegerPropagator.java +++ b/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation/JaegerPropagator.java @@ -22,6 +22,7 @@ import io.opentelemetry.context.propagation.TextMapSetter; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; +import java.nio.charset.StandardCharsets; import java.util.Collection; import java.util.Collections; import java.util.logging.Level; @@ -156,6 +157,7 @@ public String toString() { return "JaegerPropagator"; } + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 private static SpanContext getSpanContextFromHeader( @Nullable C carrier, TextMapGetter getter) { String value = getter.get(carrier, PROPAGATION_HEADER); @@ -168,7 +170,7 @@ private static SpanContext getSpanContextFromHeader( if (value.lastIndexOf(PROPAGATION_HEADER_DELIMITER) == -1) { try { // the propagation value - value = URLDecoder.decode(value, "UTF-8"); + value = URLDecoder.decode(value, StandardCharsets.UTF_8.name()); } catch (UnsupportedEncodingException e) { logger.fine( "Error decoding '" diff --git a/extensions/trace-propagators/src/test/java/io/opentelemetry/extension/trace/propagation/JaegerPropagatorTest.java b/extensions/trace-propagators/src/test/java/io/opentelemetry/extension/trace/propagation/JaegerPropagatorTest.java index a68af6f97c8..e8eb57aee73 100644 --- a/extensions/trace-propagators/src/test/java/io/opentelemetry/extension/trace/propagation/JaegerPropagatorTest.java +++ b/extensions/trace-propagators/src/test/java/io/opentelemetry/extension/trace/propagation/JaegerPropagatorTest.java @@ -24,6 +24,7 @@ import io.opentelemetry.context.propagation.TextMapSetter; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; @@ -357,13 +358,15 @@ void extract_SampledContext_Short_TraceId() { } @Test + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 void extract_UrlEncodedContext() throws UnsupportedEncodingException { Map carrier = new LinkedHashMap<>(); JaegerSpanContext context = new JaegerSpanContext( TRACE_ID_HI, TRACE_ID_LOW, SPAN_ID_LONG, DEPRECATED_PARENT_SPAN_LONG, (byte) 5); carrier.put( - PROPAGATION_HEADER, URLEncoder.encode(TextMapCodec.contextAsString(context), "UTF-8")); + PROPAGATION_HEADER, + URLEncoder.encode(TextMapCodec.contextAsString(context), StandardCharsets.UTF_8.name())); assertThat(getSpanContext(jaegerPropagator.extract(Context.current(), carrier, getter))) .isEqualTo( diff --git a/sdk-extensions/autoconfigure/src/main/java/io/opentelemetry/sdk/autoconfigure/ResourceConfiguration.java b/sdk-extensions/autoconfigure/src/main/java/io/opentelemetry/sdk/autoconfigure/ResourceConfiguration.java index 1de7f2fa772..bf663666839 100644 --- a/sdk-extensions/autoconfigure/src/main/java/io/opentelemetry/sdk/autoconfigure/ResourceConfiguration.java +++ b/sdk-extensions/autoconfigure/src/main/java/io/opentelemetry/sdk/autoconfigure/ResourceConfiguration.java @@ -65,6 +65,7 @@ public static Resource createEnvironmentResource() { * @param config the {@link ConfigProperties} used to obtain resource properties * @return the resource. */ + @SuppressWarnings("JdkObsolete") // Recommended alternative was introduced in java 10 public static Resource createEnvironmentResource(ConfigProperties config) { AttributesBuilder resourceAttributes = Attributes.builder(); try { @@ -74,7 +75,7 @@ public static Resource createEnvironmentResource(ConfigProperties config) { // Attributes specified via otel.resource.attributes follow the W3C Baggage spec and // characters outside the baggage-octet range are percent encoded // https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/sdk.md#specifying-resource-information-via-an-environment-variable - URLDecoder.decode(entry.getValue(), StandardCharsets.UTF_8.displayName())); + URLDecoder.decode(entry.getValue(), StandardCharsets.UTF_8.name())); } } catch (UnsupportedEncodingException e) { // Should not happen since always using standard charset