Skip to content

Changed resolution strategy in 4.0 #12648

Description

@seregamorph

Affected version

4.0.0-rc-6

Bug description

Consider a simple pom (additional repo needed: https://packages.confluent.io/maven/):

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>4.1.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.confluent</groupId>
            <artifactId>kafka-schema-registry-client</artifactId>
            <version>7.5.12</version>
        </dependency>
    </dependencies>

Note: spring-boot-dependencies declare org.apache.kafka:kafka-clients as 4.2.1, overriding io.confluent:kafka-schema-registry-client dependency

In Maven 3 the dependency tree of kafka-schema-registry-client is:

[INFO] \- io.confluent:kafka-schema-registry-client:jar:7.5.12:compile
[INFO]    +- org.yaml:snakeyaml:jar:2.6:compile
[INFO]    +- org.apache.kafka:kafka-clients:jar:4.2.1:compile
[INFO]    |  +- com.github.luben:zstd-jni:jar:1.5.6-10:runtime
[INFO]    |  +- at.yawk.lz4:lz4-java:jar:1.10.1:runtime
[INFO]    |  +- org.xerial.snappy:snappy-java:jar:1.1.10.7:runtime
[INFO]    |  \- org.slf4j:slf4j-api:jar:2.0.18:compile

snappy-java is 1.1.10.7, version taken from org.apache.kafka:kafka-clients:4.2.1 as declared in kafka-clients pom

In Maven 4 the dependency tree is different:

[INFO] \- io.confluent:kafka-schema-registry-client:jar:7.5.12:compile
[INFO]    +- org.yaml:snakeyaml:jar:2.6:compile
[INFO]    +- org.apache.kafka:kafka-clients:jar:4.2.1:compile
[INFO]    |  +- com.github.luben:zstd-jni:jar:1.5.6-10:runtime
[INFO]    |  +- at.yawk.lz4:lz4-java:jar:1.10.1:runtime
[INFO]    |  +- org.xerial.snappy:snappy-java:jar:1.1.10.5:runtime
[INFO]    |  \- org.slf4j:slf4j-api:jar:2.0.18:compile

the org.xerial.snappy:snappy-java is 1.1.10.5, as declared in io.confluent:kafka-schema-registry-client parent pom io.confluent:common-parent:7.5.12 dependencyManagement.

So, the question: is it a bug, or on purpose?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority:majorMajor loss of function

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions