Skip to content

Consider reducing the dependency graph #21

@mockitoguy

Description

@mockitoguy

Hi @tomasbjerre!

This plugin looks really interesting and I'd like to use it. However, it pulls in too many dependencies, including some dependencies that are known to cause compatibility issues (#18). Therefore I cannot quite recommend your plugin to our projects (although I wish otherwise :-). Can you consider reducing the dependency graph in git-changelog-lib? Try to minimize the incoming dependencies because they are a liability to your customers. Ideally "git-changelog-lib" brings no dependencies.

I tried your plugin in my project and here's the dependency graph (./gradlew bEnv):

classpath
+--- org.shipkit.shipkit-auto-version:org.shipkit.shipkit-auto-version.gradle.plugin:0.0.6
|    \--- org.shipkit:shipkit-auto-version:0.0.6
|         \--- com.github.zafarkhaja:java-semver:0.9.0
+--- com.gradle.plugin-publish:com.gradle.plugin-publish.gradle.plugin:0.10.1
|    \--- com.gradle.publish:plugin-publish-plugin:0.10.1
|         \--- org.apache.maven:maven-model:3.0.4
\--- se.bjurr.gitchangelog.git-changelog-gradle-plugin:se.bjurr.gitchangelog.git-changelog-gradle-plugin.gradle.plugin:1.64
     \--- gradle.plugin.se.bjurr.gitchangelog:git-changelog-gradle-plugin:1.64
          \--- se.bjurr.gitchangelog:git-changelog-lib:1.91
               +--- com.squareup.retrofit2:retrofit:2.0.0
               |    \--- com.squareup.okhttp3:okhttp:3.2.0
               |         \--- com.squareup.okio:okio:1.6.0
               +--- com.squareup.retrofit2:converter-gson:2.0.0
               |    +--- com.squareup.retrofit2:retrofit:2.0.0 (*)
               |    \--- com.google.code.gson:gson:2.6.1
               +--- com.squareup.okhttp:okhttp:2.7.5
               |    \--- com.squareup.okio:okio:1.6.0
               +--- com.jayway.jsonpath:json-path:2.1.0
               |    +--- org.slf4j:slf4j-api:1.7.13 -> 1.8.0-beta2
               |    \--- net.minidev:json-smart:2.2
               |         \--- net.minidev:accessors-smart:1.1
               |              \--- org.ow2.asm:asm:5.0.3
               +--- com.google.guava:guava:16.0.1
               +--- org.eclipse.jgit:org.eclipse.jgit:3.6.2.201501210735-r
               |    +--- com.jcraft:jsch:0.1.50
               |    +--- com.googlecode.javaewah:JavaEWAH:0.7.9
               |    \--- org.apache.httpcomponents:httpclient:4.1.3
               |         +--- org.apache.httpcomponents:httpcore:4.1.4
               |         +--- commons-logging:commons-logging:1.1.1
               |         \--- commons-codec:commons-codec:1.4
               +--- com.github.spullara.mustache.java:compiler:0.8.18
               |    \--- com.google.guava:guava:16.0.1
               \--- org.gitlab:java-gitlab-api:4.1.0
                    +--- com.fasterxml.jackson.core:jackson-core:2.5.3
                    +--- com.fasterxml.jackson.core:jackson-databind:2.5.3
                    |    +--- com.fasterxml.jackson.core:jackson-annotations:2.5.0
                    |    \--- com.fasterxml.jackson.core:jackson-core:2.5.3
                    +--- commons-io:commons-io:2.4
                    \--- org.slf4j:slf4j-api:1.8.0-beta2

Nice work with this Gradle plugin!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions