linkedin / parseq

Asynchronous Java made easier
Apache License 2.0
1.17k stars 266 forks source link

Add testArtifact configuration back #253

Closed evanw555 closed 4 years ago

evanw555 commented 4 years ago

Temporary fix to maintain compatibility with transitive consumers who are still explicitly depending on the testArtifact configuration of the parseq module. This simply tacks on the parseq-test-api dependency.

Steps to reproduce error:

  1. Consumer A depends directly on parseq-test-api@4.0.0
  2. Consumer B depends directly on Consumer A, yet also depends directly on parseq@3.* using the testArtifact configuration.
  3. Consumer B's dependency on parseq will be bumped up to 4.0.0, which will cause an error because the testArtifact configuration doesn't exist for parseq@4.0.0.

Without this fix, transitive consumers of parseq 4.0.0 may still be explicitly depending on the testArtifact configuration of the parseq module, which would result in an error like this:

Could not resolve all files for configuration ':consumer:testCompileClasspath'.
   > Could not resolve com.linkedin.parseq:parseq:4.0.0-SNAPSHOT.
Required by:
    project :consumer
      > Project :consumer declares a dependency from configuration 'testCompile' to configuration 'testArtifact' which is not declared in the descriptor for com.linkedin.parseq:parseq:4.0.0-SNAPSHOT.
mockitoguy commented 4 years ago

Looks great. Thank you!