Because of how android-plugin interprets provided dependencies, it is harder to create projects depending on macro packages, but not including those packages.
If package A is declared to be provided dependency, it marks all its dependencies as provided, no matter if they are included by any other, package as dependency. Thus, if provided macro package is included, it makes scala-library and all its dependencies provided.
I think a lot better solution would be to mark as provided only those packages, that are explicitly marked as provided, or implicitly marked as provided and not required by any other explicitly not-provided package.
Because of how android-plugin interprets provided dependencies, it is harder to create projects depending on macro packages, but not including those packages.
If package A is declared to be provided dependency, it marks all its dependencies as provided, no matter if they are included by any other, package as dependency. Thus, if provided macro package is included, it makes scala-library and all its dependencies provided.
I think a lot better solution would be to mark as provided only those packages, that are explicitly marked as provided, or implicitly marked as provided and not required by any other explicitly not-provided package.
(btw, I asked on scala-on-android 2 weeks ago and no one replied if this is indended behaviour or bug on my side, so I decided to open issue for it. https://groups.google.com/forum/#!topic/scala-on-android/xxO8nFBUOtI )