I understand why it is useful for a library to define the minSdkVersion, but does a library having the defined targetSdkVersion add any value?
I'm not sure if there would be any issues with libraries having lower and higher targetSdkVersions than the main project. Would they just be ignored if the main project defined it? Or, take the lower/higher one? Android apps can work differently at different targetSdkVersion (for example, Marshmallow runtime permissions).