Subject: bug#72705: 31.0.50; eglot--dumb-tryc Filters out too much

From: João Távora <[email-masked]>
Date: Mon, 19 Aug 2024 10:22:06 +0100

On Mon, Aug 19, 2024 at 2:52 AM Dmitry Gutov <[email-masked]> wrote:

> has more completions
> (one can look at them by pressing TAB after "math.A")

That's not relevant.  LSP servers can make completely different
decisions in each position.  What's relevant is to look at the completion
list returned in the "math.As" case (via the events buffer, for example).

> Not sure what's the best fix, but the patch below seems to address both
> problems in my limited testing. WDYT?

I would be (pleasantly) surprised if your change doesn't break something
else.  I tried many many variations in the fairly recent past and each
of them seemed to break something. Be wary of :exit-function
which is where things like snippet conversion and edits happen.
So I'd say this need more testing, especially with more servers.

I also don't understand why the "string-prefix" is being used.
The "dumb" in eglot--dumb-try should be taken to heart.

See logs of commits:
d376462c7183752bf44b9bd20bf5020fe7eaf75a
4dcbf61c1518dc53061707aeff8887517e050003
a6ef458e3831001b0acad57cf8fa75b77a4aff3f

You should also encode whatever decisions you make in
tests in eglot-tests.el.