jooby icon indicating copy to clipboard operation
jooby copied to clipboard

Could starter:graphql-starter:1.0.0 drop off redundant dependencies?

Open Celebrate-future opened this issue 2 years ago • 0 comments

Hi! I found the pom file of project starter:graphql-starter:1.0.0 introduced 49 dependencies. However, among them, 6 libraries (12%) are not used by your project. I list the redundant dependencies below (labelled as red ones in the figure):

Redundant dependencies

com.google.code.findbugs:jsr305:jar:3.0.2:compile com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:compile com.google.errorprone:error_prone_annotations:jar:2.3.4:compile com.google.j2objc:j2objc-annotations:jar:1.3:compile org.reactivestreams:reactive-streams:jar:1.0.2:compile org.jetbrains:annotations:jar:13.0:test


Removing the redundant dependencies can reduce the size of project and prevent potential dependency conflict issues (i.e., multiple versions of the same library). More importantly, one of the redundant dependencies com.google.code.findbugs:jsr305:jar:3.0.2:compile induced dependency conflict in the dependency graph. As such, I suggest a refactoring operation for starter:graphql-starter:1.0.0’s pom file.

The attached PR helps resolve the reported problem. It is safe to remove the unused libraries (we considered Java reflection relations when analyzing the dependencies). These changes have passed starter:graphql-starter:1.0.0’s maven tests.

Best regards

Celebrate-future avatar Apr 12 '22 05:04 Celebrate-future