diff --git a/build.gradle.kts b/build.gradle.kts index 802c93f..298a2cf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -15,13 +15,7 @@ dependencies { implementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310") compileOnly("io.micrometer:micrometer-core:latest.release") - implementation("com.fasterxml.jackson.module:jackson-module-parameter-names:2.17.2") - // Blackbird generates LambdaMetafactory-backed property accessors so - // Jackson skips the reflective MethodHandle path. ~1.5-2x on real RPC - // traffic per a JMH bench replaying a captured trace from `mod run` - // org.openrewrite.node.migrate.upgrade-node-24 — measurable on the - // GetObject deserialize path where field counts in nested Maps are high. - implementation("com.fasterxml.jackson.module:jackson-module-blackbird:2.17.2") + implementation("com.fasterxml.jackson.module:jackson-module-parameter-names:2.21.1") testImplementation("org.openrewrite:rewrite-test:latest.release") } diff --git a/src/main/java/io/moderne/jsonrpc/formatter/JsonMessageFormatter.java b/src/main/java/io/moderne/jsonrpc/formatter/JsonMessageFormatter.java index 60ac3fa..1b7c9de 100644 --- a/src/main/java/io/moderne/jsonrpc/formatter/JsonMessageFormatter.java +++ b/src/main/java/io/moderne/jsonrpc/formatter/JsonMessageFormatter.java @@ -25,7 +25,6 @@ import com.fasterxml.jackson.databind.json.JsonMapper; import com.fasterxml.jackson.databind.util.TokenBuffer; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; -import com.fasterxml.jackson.module.blackbird.BlackbirdModule; import com.fasterxml.jackson.module.paramnames.ParameterNamesModule; import io.moderne.jsonrpc.JsonRpcError; import io.moderne.jsonrpc.JsonRpcMessage; @@ -48,7 +47,7 @@ public JsonMessageFormatter() { // see https://cowtowncoder.medium.com/jackson-2-12-most-wanted-3-5-246624e2d3d0 .constructorDetector(ConstructorDetector.USE_PROPERTIES_BASED) .build() - .registerModules(new ParameterNamesModule(), new JavaTimeModule(), new BlackbirdModule()) + .registerModules(new ParameterNamesModule(), new JavaTimeModule()) .disable(SerializationFeature.FAIL_ON_EMPTY_BEANS) .setSerializationInclusion(JsonInclude.Include.NON_NULL)); mapper.setVisibility(mapper.getSerializationConfig().getDefaultVisibilityChecker() @@ -62,7 +61,7 @@ public JsonMessageFormatter(com.fasterxml.jackson.databind.Module... modules) { this(JsonMapper.builder() .constructorDetector(ConstructorDetector.USE_PROPERTIES_BASED) .build() - .registerModules(new ParameterNamesModule(), new JavaTimeModule(), new BlackbirdModule()) + .registerModules(new ParameterNamesModule(), new JavaTimeModule()) .registerModules(modules) .disable(SerializationFeature.FAIL_ON_EMPTY_BEANS) .setSerializationInclusion(JsonInclude.Include.NON_NULL));