You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: remove direct references to the node_modules directory (#4333)
* fix: remove direct references to the node_modules directory
Stop reading `node_modules` directly by the file system.
The problem with this direct loading is that projects without `node_modules` in the top-level directory will not work at all.
For example, when I develop with aws cdk,
I cut off the `cdk` or `infra` directory and create a new `package.json` and put `node_modules` there too,
but in that case, the code before this modification will not work at all.
I solved this problem by simply inserting an abstraction layer.
Relation.
* [lsp-javascript: supply correct path to tsserver for ts-ls by kiennq · Pull Request #4202 · emacs-lsp/lsp-mode](#4202)
* [ts-ls: Wrong lsp-clients-typescript-server-path · Issue #4254 · emacs-lsp/lsp-mode](#4254)
* fix(lsp-javascript): remove shell redirect when call node
In the case of Windows, etc., `shell-command-to-string` is to use a non-bash shell.
To begin with, `shell-command-to-string` seems to ignore standard error output.
* refactor(lsp-javascript): rename function and add docs
`lsp-clients-typescript-server-path-by-node-require` is too long.
* fix(lsp-javascript): use Node.js require to explore
Pros
===
Since Node.js require indicates the path where the file actually exists,
it automatically adapts to various environments unless there are significant system changes or changes in the usage environment.
Cons
===
There is a small overhead at first startup due to the command execution.
* refactor: use `if-let*` and `when-let*`
Simplified based on code review.
0 commit comments