sbt/testing
Jason Zaugg 0bea7e9e18 Fix race condition in non-forked, parallel tests.
Non forked tests that are run in parallel groups can call into
a single instance of TestStatusReporter concurrently.

This seems to be limited to the startGroup/endGroup/testEvent
methods called in:

  a41727fb17/testing/src/main/scala/sbt/TestFramework.scala (L100-L124)

Which itself is called within:

  a41727fb17/testing/src/main/scala/sbt/TestFramework.scala (L203-L229)

Creating the `runnables` that are run in parallel (in builds so configured):

  a6eb1260c8/main-actions/src/main/scala/sbt/Tests.scala (L222-L230)

We believe this to be the cause of the hang witnessed in
the a suite of Scalacheck-framework tests in the Scala
build:

  https://github.com/scala/scala-jenkins-infra/issues/249

This commit uses a concurrent map to support concurrent
status updates.
2018-03-05 18:23:03 +10:00
..
agent/src/main/java/sbt Add, configure & enforce file headers 2017-10-05 09:03:40 +01:00
src/main Fix race condition in non-forked, parallel tests. 2018-03-05 18:23:03 +10:00
NOTICE Add, configure & enforce file headers 2017-10-05 09:03:40 +01:00