Upon updating a file, I’d expect flycheck to display up-to-date list of errors. It seems that lsp-mode (specifically ts-ls) is not sending correct diagnostics upon changing. Only after restarting lsp via running lsp-restart-workspace it updates as expected.

Example (Type is completely wrong, no LSP error):

import type {
    AsetContainerProp, 
} from "browser-editor/types/props";

export cost Meedia: AssetcContrainerPropCOMPLETELYWRONG = {
    type: "container", 
    propKey: "meediaSesion", 
    label: " Meedia Section", 
    flexDirection: "row", 
    tag: "div", 
    children: [],
};

Similar thing happens when I fix an error:

1. I'have a correctly displayed error
2. Fix the code
3. Still get a flycheck error message for old code

Not sure if useful, but here’s lsp doctor:

Checking for Native JSON support: OK
Check emacs supports `read-process-output-max': OK
Check `read-process-output-max' default has been changed from 4k: OK
Byte compiled against Native JSON (recompile lsp-mode if failing when Native JSON available): OK
`gc-cons-threshold' increased?: OK
Using `plist' for deserialized objects? (refer to https://emacs-lsp.github.io/lsp-mode/page/performance/#use-plists-for-deserialization): OK
Using emacs 28+ with native compilation?: OK

As for now I do not have solution for this issue.

My site is free of ads and trackers. Was this post helpful to you? Why not BuyMeACoffee


Reference:

  1. Doom Emacs - A configuration framework for GNU Emacs
  2. Emacs
  3. GNU Emacs
  4. Doom Emacs - Documentation & Support
  5. Emacs Lisp