Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error highlighting broken in several default stack #15919

Closed
10 tasks done
Katka92 opened this issue Feb 4, 2020 · 36 comments
Closed
10 tasks done

Error highlighting broken in several default stack #15919

Katka92 opened this issue Feb 4, 2020 · 36 comments
Assignees
Labels
area/plugins area/samples kind/bug Outline of a bug - must adhere to the bug report template. severity/P1 Has a major impact to usage or development of the system.

Comments

@Katka92
Copy link
Contributor

Katka92 commented Feb 4, 2020

Describe the bug

Error highlighting feature is not working in several default stacks in 7.8.0.
Affected stacks:

  • NodeJS Express Web Application
  • NodeJS MongoDB Web Application
  • PHP Symfony
  • PHP with MySQL
  • PHP Laravel with MySQL
  • Rust
    EDIT: added .net core stack
  • .NET Core

Che version

  • other: 7.8.0 on che.prod-preview.openshift.io

Steps to reproduce

  1. Go to Workspaces -> Add Workspace
  2. Select one of the stacks from the description of the issue
  3. Open the file and write some erroneous text to it
  4. Erroneous words are not highlighted

Expected behavior

Erroneous code should be highlighted by a red underline.

Runtime

  • other: (please specify) che.prod-preview.openshift.io

Environment

  • other: please specify che.prod-preview.openshift.io
@Katka92 Katka92 added the kind/bug Outline of a bug - must adhere to the bug report template. label Feb 4, 2020
@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Feb 4, 2020
@l0rd l0rd removed the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Feb 4, 2020
@l0rd
Copy link
Contributor

l0rd commented Feb 4, 2020

@Katka92 can you provide some logs (c.f. the doc to retrieve language servers logs)?

@l0rd l0rd added severity/P1 Has a major impact to usage or development of the system. area/samples area/languages Issues related to Language extensions or plugins integration. team/languages labels Feb 4, 2020
@tsmaeder
Copy link
Contributor

tsmaeder commented Feb 5, 2020

@Katka92 are the plugins starting at all? Do you get content assist, for example? I know that the node support writes progress messages to the status bar when starting up.

@tsmaeder
Copy link
Contributor

tsmaeder commented Feb 17, 2020

NodeJS Express works just fine on local crc. I suspect this is some limitation on prod-preview.

@tsmaeder tsmaeder added area/hosted-che and removed team/languages area/languages Issues related to Language extensions or plugins integration. labels Feb 17, 2020
@Katka92
Copy link
Contributor Author

Katka92 commented Feb 17, 2020

Hi, thank you for your answers. In some devfiles just error highlighting was not working as expected, in other devfiles also other features. Now there is a new issue for 4 days with Java Maven stack that LS seems to not work at all. #16051

@Katka92
Copy link
Contributor Author

Katka92 commented Mar 2, 2020

On 7.9.0 Hosted che on prod-preview error highlighting is not working for a Rust devfile, but code suggestion and completion seems to be working correctly.

@Katka92
Copy link
Contributor Author

Katka92 commented Apr 27, 2020

The issue is still present for 7.12.0 tested on Hosted Che.

@Katka92 Katka92 mentioned this issue Apr 30, 2020
16 tasks
@ibuziuk
Copy link
Member

ibuziuk commented May 8, 2020

@ericwill could you please take a look?

@ericwill
Copy link
Contributor

ericwill commented May 8, 2020

Yes we've planned it for next sprint (184).

@ericwill ericwill mentioned this issue May 13, 2020
43 tasks
@ericwill
Copy link
Contributor

I tried today on che.openshift.io and it turns out the PHP stacks (Symfony, MySQL, and Laravel) work fine. Rust and NodeJS are still broken.

@Katka92 Katka92 mentioned this issue May 26, 2020
10 tasks
@ericwill
Copy link
Contributor

NodeJS with React is also broken.

@ericwill ericwill mentioned this issue Jun 3, 2020
40 tasks
@ericwill ericwill mentioned this issue Jun 24, 2020
31 tasks
@tsmaeder
Copy link
Contributor

tsmaeder commented Jun 26, 2020

Checking:

✔️ NodeJS Express Web Application
❌ NodeJS MongoDB Web Application
✔️ PHP Symfony
✔️ PHP with MySQL
✔️ PHP Laravel with MySQL
✔️ Rust: there is no language plugin for Rust in the Che plugin registry: this works as designed.

@tsmaeder
Copy link
Contributor

There seems to be an element of randomness to this: I have observed the node/mongodb workspace start the language server successfully, but most of the time, it fails.

@tsmaeder
Copy link
Contributor

When the LS startup failed, I was this stack trace in the typescript container log:

PLUGIN_HOST(1): PluginManagerExtImpl/loadPlugin(/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/extension)
Remote plugin in vscode-typescript5dp: promise rejection is not handled in two seconds: TypeError: vscode.workspace.onDidRenameFile is not a function
Remote plugin in vscode-typescript5dp: promise rejection stack trace: TypeError: vscode.workspace.onDidRenameFile is not a function
    at new UpdateImportsOnFileRenameHandler (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/features/updatePathsOnRename.js:42:41)
    at ConditionalRegistration.dependentRegistration_1.VersionDependentRegistration [as _doRegister] (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/features/updatePathsOnRename.js:181:128)
    at ConditionalRegistration.update (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/utils/dependentRegistration.js:23:42)
    at VersionDependentRegistration.update (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/utils/dependentRegistration.js:51:28)
    at new VersionDependentRegistration (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/utils/dependentRegistration.js:41:14)
    at Object.register (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/features/updatePathsOnRename.js:181:12)
    at TypeScriptServiceClientHost.Promise.resolve.then.then.module (/tmp/vscode-unpacked/che-incubator.typescript.latest.zkalzvuwgu.che-typescript-language-1.35.1.vsix/extension/out/typeScriptServiceClientHost.js:67:118)

@tsmaeder
Copy link
Contributor

tsmaeder commented Aug 10, 2020

A new instance of the stack trace I reported has been spotted in the wild (from Mattermost):

hi all, before i post a bug report, i wanted to make sure i do it right and in the correct place.

The TS/JS tooling keeps crashing in the latest Che (7.16.2) for us. Stack from the container below: Is this a bug with the plugin, che, or what? and where should I report, or is it known?

Remote plugin in vscode-typescript4xq: promise rejection is not handled in two seconds: TypeError: vscode.workspace.onDidRenameFile is not a function
Remote plugin in vscode-typescript4xq: promise rejection stack trace: TypeError: vscode.workspace.onDidRenameFile is not a function
at new UpdateImportsOnFileRenameHandler (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/features/updatePathsOnRename.js:31:49)
at ConditionalRegistration.dependentRegistration_1.VersionDependentRegistration [as _doRegister] (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/features/updatePathsOnRename.js:241:103)
at ConditionalRegistration.update (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/utils/dependentRegistration.js:23:42)
at VersionDependentRegistration.update (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/utils/dependentRegistration.js:51:28)
at new VersionDependentRegistration (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/utils/dependentRegistration.js:41:14)
at Object.register (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/features/updatePathsOnRename.js:241:12)
at TypeScriptServiceClientHost.Promise.resolve.then.then.module (/tmp/vscode-unpacked/che-incubator.typescript.1.30.2.aaxqtsdhym.che-typescript-language.vsix/extension/out/typeScriptServiceClientHost.js:67:118)
at process._tickCallback (internal/process/next_tick.js:68:7)
Remote plugin in vscode-typescript4xq: promise rejection is not handled in two seconds: undefined>
Remote plugin in vscode-typescript4xq: promise rejection is not handled in two seconds: TypeError: Cannot read property 'stack' of undefined
Remote plugin in vscode-typescript4xq: promise rejection stack trace: TypeError: Cannot read property 'stack' of undefined
at /remote-endpoint/node_modules/@eclipse-che/theia-remote/lib/node/plugin-remote.js:36:25

19:29

ignore the 1.30.2 version, i switched from latest to test if 1.35 was the issue. It seemed like it was working, but eventually came back

@tsmaeder
Copy link
Contributor

My suspicion is that initialization of the plugin host (aka overriding the module load) and plugin activation are happening at the same time. We could test this theory by putting a breakpoint in the plugin host to simulate delay.

@ericwill ericwill added this to the 7.19 milestone Aug 10, 2020
@tsmaeder
Copy link
Contributor

root ERROR [hosted-plugin: 20812] With stack trace: TypeError: s.workspace.onDidRenameFile is not a function

Note that this is looking for "onDidRenameFile", not "onDidRenameFiles". The "s" was added when the api graduated from vscode-proposed.ts to vscode.ts.
So in fact, we're looking at a version issue here: for newer version of Theia (about 4 months ago), we need a newer version of the typescript extension

@ericwill ericwill modified the milestones: 7.19, 7.21 Oct 1, 2020
@ericwill ericwill mentioned this issue Oct 1, 2020
27 tasks
@ericwill ericwill mentioned this issue Oct 22, 2020
29 tasks
@ericwill ericwill modified the milestones: 7.21, 7.22 Nov 2, 2020
@ericwill ericwill mentioned this issue Nov 12, 2020
34 tasks
@ericwill ericwill modified the milestones: 7.22, 7.23 Nov 18, 2020
@ericwill ericwill modified the milestones: 7.23, 7.24 Dec 8, 2020
@nickboldt nickboldt modified the milestones: 7.24, 7.25 Jan 8, 2021
@ericwill
Copy link
Contributor

This has been fixed now that we've updated the typescript extension, no?

@che-bot
Copy link
Contributor

che-bot commented Sep 20, 2021

Issues go stale after 180 days of inactivity. lifecycle/stale issues rot after an additional 7 days of inactivity and eventually close.

Mark the issue as fresh with /remove-lifecycle stale in a new comment.

If this issue is safe to close now please do so.

Moderators: Add lifecycle/frozen label to avoid stale mode.

@che-bot che-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 20, 2021
@svor svor removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 20, 2021
@l0rd
Copy link
Contributor

l0rd commented Sep 20, 2021

@svor it's not clear from the description what's missing here

@svor
Copy link
Contributor

svor commented Sep 21, 2021

@l0rd The typescript extension was updated and seems we don't have vscode.workspace.onDidRenameFile is not a function related problem any more.

screenshot-che-dogfooding apps che-dev x6e0 p1 openshiftapps com-2021 09 21-14_32_38

I'm going to close the issue.

@svor svor closed this as completed Sep 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/plugins area/samples kind/bug Outline of a bug - must adhere to the bug report template. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

9 participants