The latest picasso release version 2.71828 has a dependency to com.android.support:exifinterface in version 27.1.0. See dependency tree below:
./gradlew app:dependencies
+--- com.squareup.picasso:picasso:2.71828
| +--- com.squareup.okhttp3:okhttp:3.10.0
| | \--- com.squareup.okio:okio:1.14.0
| +--- com.android.support:support-annotations:27.1.0 -> 27.1.1
| \--- com.android.support:exifinterface:27.1.0
| \--- com.android.support:support-annotations:27.1.0 -> 27.1.1
When using picasso in a project, which has a dependency to current support libs version 27.1.1, Android Studio is complaining about mixed library versions:
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 27.1.1, 27.1.0. Examples include com.android.support:animated-vector-drawable:27.1.1 and com.android.support:exifinterface:27.1.0
Furthermore this causes Android Studio to show various unrelated errors in the source code editor.
As workaround, I include the exifinterface library with current version in gradle file:
// Image view libraries
implementation 'com.squareup.picasso:picasso:2.71828'
implementation "com.android.support:exifinterface:27.1.1"
However it the picasso support lib dependency should be updated.
We will not be releasing a new version every time there is a release of a dependent library. Since the support libraries require a single version, you should force them all to be the same in your local build: https://github.com/JakeWharton/SdkSearch/blob/master/build.gradle#L140-L149
The libraries are already updated to 28 alphas on master as well.
Most helpful comment
We will not be releasing a new version every time there is a release of a dependent library. Since the support libraries require a single version, you should force them all to be the same in your local build: https://github.com/JakeWharton/SdkSearch/blob/master/build.gradle#L140-L149
The libraries are already updated to 28 alphas on master as well.