-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor forAllProjects to use ScopeFilter #62
base: main
Are you sure you want to change the base?
Conversation
sbt has a built-in way of aggregating tasks over multiple projects. See [ScopeFilter](https://www.scala-sbt.org/1.x/docs/Tasks.html#Getting+values+from+multiple+scopes). This is also safer than evaluating tasks off-state.
I have no idea what the issue is with sbt-shading… Seems something must have changed in the scaladoc-related settings, but I'm unsure what… |
@eed3si9n If that can help, I think I ran into a similar issue with sbt-contraband + sbt-shading, from the coursier sources, with just scaladoc generation failing too (because of missing sources rather than missing dependencies). Can be reproduced from the coursier sources with
|
If that's really a blocker, I could try to replace sbt-shading with sbt-assembly here or there, and stop publishing sbt-shading. It's used in the coursier and sbt-coursier repositories, to shade fastparse in coursier, and coursier in lm-coursier in particular. |
I am not familiar with your method of shading, but Jar Jar Links used by sbt-assembly doesn't handle Scala pickles, so shading only works for leaf application which gets consumed by |
It's the same with sbt-shading, the scala annotations are not changed either. The main point of sbt-shading is that it is given dependencies to shade, and shades those and their transitive dependencies that aren't brought by any other (non shaded) dependency. It also adjusts |
I wonder if you can fake the |
Conflicts: modules/sbt-coursier-shared/src/main/scala/coursier/sbtcoursiershared/InputsTasks.scala modules/sbt-coursier/src/main/scala/coursier/sbtcoursier/InputsTasks.scala
sbt has a built-in way of aggregating tasks over multiple projects. See ScopeFilter. This is also safer than evaluating tasks off-state.