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
Users have reported bugs in #805 (and probably some other older issues too) which are most likely caused by the fact that we maintain a map of client/server instances where reading or writing is not thread-safe.
This can sometimes lead to client instance being read before being written. The problem is in most cases masked by the fact that the LS is initialized quickly, such that reading happens after, but this is rather happy coincidence than a guarantee.
Expected User Experience
Most users will see no UX changes.
A small minority of users which have not upgraded to LS 0.19.0 yet would be already affected by a different incompatibility we introduced earlier when upgrading vscode-languageclient to 7.0.0 in #780 and presented with the following error anyway
Proposal
Refactor ClientHandler such that a single client is only ever used and no situation occurs where we would attempt to access uninitialized client instance.
An error will be shown to the user whenever LS capability workspace.workspaceFolders.supported is set to false just to more explicitly communicate requirements, just in case we happen drop support in the future by accident or someone attempts to use the extension with a different LS which doesn't have that capability.
The text was updated successfully, but these errors were encountered:
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.
Problem Statement
Users have reported bugs in #805 (and probably some other older issues too) which are most likely caused by the fact that we maintain a map of client/server instances where reading or writing is not thread-safe.
vscode-terraform/src/clientHandler.ts
Line 26 in 943a57b
This can sometimes lead to client instance being read before being written. The problem is in most cases masked by the fact that the LS is initialized quickly, such that reading happens after, but this is rather happy coincidence than a guarantee.
Expected User Experience
Most users will see no UX changes.
A small minority of users which have not upgraded to LS 0.19.0 yet would be already affected by a different incompatibility we introduced earlier when upgrading
vscode-languageclient
to7.0.0
in #780 and presented with the following error anywayProposal
Refactor
ClientHandler
such that a single client is only ever used and no situation occurs where we would attempt to access uninitialized client instance.An error will be shown to the user whenever LS capability
workspace.workspaceFolders.supported
is set tofalse
just to more explicitly communicate requirements, just in case we happen drop support in the future by accident or someone attempts to use the extension with a different LS which doesn't have that capability.The text was updated successfully, but these errors were encountered: