Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Do not depend on dynamic versions #5

Merged
merged 1 commit into from
Jan 20, 2018

Conversation

debanne
Copy link
Contributor

@debanne debanne commented Jan 12, 2018

Dynamic versions make the execution of the code that depends on this
plugin less deterministic.

Dynamic versions make the execution of the code that depends on this
plugin less deterministic.
@TheBoegl
Copy link
Owner

I understand your reasoning, though dependencies on fixed versions of the shadow plugin and log4j-core are not intended because they would limit the usage of this helper class. Both dependencies are declared in the project anyways and, therefore, should be used as intended by the developer.

I should really document the intended use of this class more clearly.

@TheBoegl TheBoegl closed this Jan 12, 2018
@TheBoegl TheBoegl mentioned this pull request Jan 12, 2018
@debanne
Copy link
Contributor Author

debanne commented Jan 15, 2018

My concern is that Gradle takes the latest version when there is a version conflict. So the dependencies have to be declared with { force = true } to not take the last one:

  dependencies {
      classpath "com.github.jengelman.gradle.plugins:shadow:2.0.1", { force = true }
      classpath 'de.sebastianboegl.gradle.plugins:shadow-log4j-transformer:2.1.1'
   }

Shouldn't this library depend on the first version of shadow it is compatible with (such as 1.0.0 and 2.0.0)? That would avoid the need to use the 'force' property.

@TheBoegl
Copy link
Owner

I see. I'll accept your PR, document the internal change and publish a new version. Thanks for your PR and help!

@TheBoegl TheBoegl reopened this Jan 20, 2018
@TheBoegl TheBoegl merged commit ed2850a into TheBoegl:master Jan 20, 2018
TheBoegl added a commit that referenced this pull request Jan 20, 2018
💥 enforce minimum shadow version _1.2.3_.

This library depends on the first compatible shadow version. The
developer can enforce newer versions by just depending on them. This
fix avoids to possibly break old builds and keeps included shadow
version without the need to `force` it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants