Closed remagpie closed 3 years ago
I found out that if a relative path was provided as an option, this package tries to find tsserver
from the path where the package was installed.
I think finding it from the current project's path would be a good solution for this.
Found problem with merged PR:
If to open project without locally specified TS server path, it will show error alert. Also if to open project with locally specified TS server path, it'll show error alert anyway, because project path is not always set.
Summary
Allow users to pick the
tsserver.js
from thenode_modules
folder at the current project root if it exists.Motivation
Most of the projects using typescript specifies their own version of the compiler as a dependency. Since the typescript introduces some breaking changes and new features when bumping their versions, it's pretty natural to use the locally installed version of the compiler rather than the global one. However,
ide-typescript
currently passes the path to the bundled version of thetsserver.js
rather than using the project-local one.One of the solutions for this situation would be providing an option for using a locally installed version of the tsserver if it exists. Maybe the simplest solution would be done by providing a boolean flag to interpret specified path as a relative path from the
ide-typescript
's installed directory or current project's root directory. Similar approach is implemented by prettier-atom package.Describe alternatives you've considered
None
Additional context
https://github.com/atom/ide-typescript/blob/962f06acb1a463e86e406299a835516d48f87756/lib/main.js#L19 This line of code decides the path of the
tsserver.js
to use.