You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
as dependencies. Until Pact 4.2.11 everything was fine, but when dependabot suggested the updated to 4.2.12 our build started failing with class file for org.apache.http.entity.mime.MultipartEntityBuilder not found when calling PactDslWithProvider::body with a PactDslJsonBody instance.
I traced it down to the new feature of allowing to pass an org.apache.http.entity.mime.MultipartEntityBuilder from theorg.apache.httpcomponents:httpmime library, which is a dependency of the au.com.dius.pact:consumer library. This library also uses Gradle and defines the httpmime library via implementation scope, which according to Gradle's documentation says, that it will not be exposed to the actual library consumer. The JUnit5 consumer pulls that library in via api scope, but I assume, that Gradle does not apply the scope widening to the dependencies of the pulled in dependency resulting in the httpmime library being unavailable during the test compilation.
The text was updated successfully, but these errors were encountered:
We have a project built with Gradle 7.1.1 using
as dependencies. Until Pact 4.2.11 everything was fine, but when dependabot suggested the updated to 4.2.12 our build started failing with
class file for org.apache.http.entity.mime.MultipartEntityBuilder not found
when callingPactDslWithProvider::body
with aPactDslJsonBody
instance.I traced it down to the new feature of allowing to pass an
org.apache.http.entity.mime.MultipartEntityBuilder
from theorg.apache.httpcomponents:httpmime
library, which is a dependency of theau.com.dius.pact:consumer
library. This library also uses Gradle and defines thehttpmime
library via implementation scope, which according to Gradle's documentation says, that it will not be exposed to the actual library consumer. The JUnit5 consumer pulls that library in viaapi
scope, but I assume, that Gradle does not apply the scope widening to the dependencies of the pulled in dependency resulting in thehttpmime
library being unavailable during the test compilation.The text was updated successfully, but these errors were encountered: