In an async test, calling (done) within a (binding) corrupts bound vars.
The first test passes as expected, and because (done) is outside the binding, foo is reverted to nil. The second test passes, but leaves foo bound. The third test fails.
OS X 10.11.5
⟩ java -version
java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)
Comment made by: eyelidlessness
clojure.string is not necessary for the repro, but I am unable to edit to remove it.
might be related to
This is expected behavior