Subject: bug#74334: 29.4; Eglot ignores locally set configuration

From: Acid Bong <[email-masked]>
Date: Tue, 12 Nov 2024 22:49:18 +0200

Can be observed on both builtin (1.12.29) and the newest Eglot (1.17). I'm starting Eglot manually, i have no hooks for Rust.

My repo structure:
/
...
|_pkgs/rsblocks/
  |_.dir-locals.el
  |_Cargo.toml
  ...

Since my Rust project isn't in the root of the repo, I need to specify its location for rust-analyzer. Using .dir-locals.el with this content:
```lisp
((nil
  . ((eglot-workspace-configuration
      . (:rust-analyzer (:linkedProjects ["pkgs/rsblocks/Cargo.toml"]))))))
;; thank god it supports relative paths
```
does nothing: I see the variable value is set properly with `C-h v`, but Eglot doesn't seem to recognize it (`eglot-show-workspace-configuration` shows "null").

However, only when I set it globally, Eglot can apply the config to the language server.

Expected behaviour: like described in the manual, Eglot should recognize local values. 

Possibly related report: https://github.com/joaotavora/eglot/issues/355 (unresolved)