Commit 8603146
committed
remove non-deterministic cancellation of async TASTy in sbt-test
how-i-fixed-it:
Originally these tests were written before we
implemented async TASTy writing. This meant that we blocked the
main thread at the end of ExtractAPI until TASTy was written.
This meant that -Ystop-after:firstTransform would prevent the
compiler reaching the backend, but stop after we knew that TASTy
was written to a-early.jar
Originally we did this to explicitly communicate that TASTy comes
from a-early.jar, rather than genBCode output.
In reality, it doesn't assert anything stronger than a comment would,
because we manually fix the classpath to only be a-early.jar.
After we added async TASTy writing, this test became non-deterministic,
because we cancel async TASTy writing at the end of a run
without synchronizing. So its possible TASTy isn't written
by the time we cancel after firstTransform.
So instead, we remove -Ystop-after, guaranteeing that 'a/compile' does not
finish until we synchronize async TASTy in genBCode.1 parent e6bc130 commit 8603146
2 files changed
+7
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
2 | 5 | | |
3 | 6 | | |
4 | 7 | | |
5 | | - | |
6 | 8 | | |
7 | 9 | | |
8 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
4 | 7 | | |
5 | | - | |
6 | 8 | | |
7 | 9 | | |
8 | 10 | | |
9 | 11 | | |
10 | 12 | | |
11 | 13 | | |
12 | 14 | | |
13 | | - | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
0 commit comments