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
When running a task aggregated on root with +, which works as expected when crossScalaVersions is homogeneous, sbt appears to construct a task invocation for a configuration scope that is defined on one project but not others:
sbt:demo> +it:compile
[info] Setting Scala version to 2.12.12 on 2 projects.
[info] Excluded 1 projects, run ++ 2.12.12 -v for more details.
[info] Reapplying settings...
[info] set current project to demo (in build file:/private/tmp/demo/)
[success] Total time: 0 s, completed Jan 21, 2021 12:10:56 AM
[error] Expected ';'
[error] No such setting/task
[error] ++ 2.13.4 core/It/compile
expectation
The aggregated +it:compile runs the task for the project where the Configuration is added, not projects where it is not.
The text was updated successfully, but these errors were encountered:
sbt:hello> IntegrationTest/compile
[success] Total time: 0 s, completed Jan 23, 2021 2:32:59 PM
sbt:hello> core/IntegrationTest/compile
[error] No such setting/task
[error] core/IntegrationTest/compile
[error]
So the real aggregation feature of sbt is permissive of IntegrationTest not being present in core when called at the root level, but would error when specified as core/IntegrationTest/compile. So the emulated aggregation using + should follow that, and I agree with the expectation:
The aggregated +it:compile runs the task for the project where the Configuration is added, not projects where it is not.
(Triage: can be labelled
area/cross_building
)Another stateful cross-building issue, everyone's favorite kind by now? 馃槄
This is somewhat like #5497 except a Configuration is tried that should not be, rather than a cross version.
steps
Create a minimal build definition where projects differ in their
crossScalaVersions
and applied Configurations:sbt.version = 1.4.6
Or a variation where
scalaVersion
doesn't differ, to distinguish from that aspect of #5586:problem
When running a task aggregated on root with
+
, which works as expected whencrossScalaVersions
is homogeneous, sbt appears to construct a task invocation for a configuration scope that is defined on one project but not others:expectation
The aggregated
+it:compile
runs the task for the project where the Configuration is added, not projects where it is not.The text was updated successfully, but these errors were encountered: