Compare C# and Swift:


Note that the completion list is still visible after the ( in the Swift case, whereas C# transitioned to parameter completion. It's not too bad in this example, but it leads to weird behaviors in others, like typing foo() and hitting enter:

Compare with C#:

I believe the fix is to specify commitCharacters = [ '(' ] on the CompletionItem at https://github.com/apple/sourcekit-lsp/blob/8cb76ba22a53bfe4b21575200fd5d930a931eb18/Sources/SourceKitLSP/Swift/CodeCompletion.swift#L173 . Or to use CompletionOptions.allCommitCharacters in initialize.