This PR fixes several causes of test flakiness and re-enables the tests that were disabled in #10665, #10669 and #10673. Specifically, it fixes: - A race condition in the file worker that caused it to report an incomplete snapshot prefix in the inlay hint request (confirmed to be the cause of #10665) - A bug in the test runner where it didn't correctly account for non-deterministic message ordering inducing different RPC pointer numbering (confirmed to be the cause of #10673) - A race condition in the watchdog that would sometimes cause the module hierarchy to be empty (likely the cause of #10669, but not confirmed as this issue only reproduced again once in tens of thousands of test runs on various machines, including CI) - An unrelated bug in the module hierarchy implementation that would cause it to report an empty module hierarchy when the file was changed It also replaces some calls to `Task.get` in the language server with `IO.wait` to protect the code against unfortunate compiler re-ordering.
9 lines
194 B
Text
9 lines
194 B
Text
def foo1 (x : Nat) := x.succ
|
|
def foo2 (x : Nat) := x |>.succ
|
|
theorem foo3 (x : Nat) : True :=
|
|
let y := x.succ
|
|
True.intro
|
|
|
|
#eval 1
|
|
--^ collectDiagnostics
|
|
--^ textDocument/semanticTokens/full
|