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

onDidChangeDiagnostics different behavior when "extensionKind" ui running on remote workspace #136955

Closed
microhobby opened this issue Nov 11, 2021 · 4 comments
Assignees
Labels
api author-verification-requested Issues potentially verifiable by issue author bug Issue identified by VS Code Team member as probable bug insiders-released Patch has been released in VS Code Insiders languages-diagnostics Source problems reporting verified Verification succeeded
Milestone

Comments

@microhobby
Copy link

Issue Type: Bug

When using languages.onDidChangeDiagnostics in a extension "globally enabled" with the configuration:

"extensionKind": [ "ui" ],

some events, for example when using DiagnosticCollection.clear or DiagnosticCollection.set with a empty Diagnostic[], are not being delivered when running from a remote workspace.

A workaround is to force the remote installation:

"extensionKind": [ "workspace" ],

that way all events are delivered.

This looks like kind of bug to me, it was expected to behave the same in the local and remote workspaces.

VS Code version: Code - Insiders 1.63.0-insider (bef4dba, 2021-11-10T07:59:05.913Z)
OS version: Windows_NT x64 10.0.22499
Restricted Mode: No
Remote OS version: Linux x64 5.10.60.1-microsoft-standard-WSL2

System Info
Item Value
CPUs AMD Ryzen 7 4800H with Radeon Graphics (16 x 2894)
GPU Status 2d_canvas: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
oop_rasterization: enabled
opengl: enabled_on
rasterization: enabled
skia_renderer: enabled_on
video_decode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
Load (avg) undefined
Memory (System) 23.37GB (12.15GB free)
Process Argv --crash-reporter-id 3d9c88e4-3dfe-4b4c-a1ea-3126556e988c
Screen Reader no
VM 0%
Item Value
Remote WSL: Ubuntu-CommPrev
OS Linux x64 5.10.60.1-microsoft-standard-WSL2
CPUs AMD Ryzen 7 4800H with Radeon Graphics (16 x 2894)
Memory (System) 15.63GB (12.31GB free)
VM 0%
Extensions (40)
Extension Author (truncated) Version
language-x86-64-assembly 13x 3.0.0
better-comments aar 2.1.0
icons-carbon ant 0.2.4
QML bbe 1.0.0
vscode-icontheme-nomo-dark be5 1.3.6
bracket-pair-colorizer-2 Coe 0.2.1
arm dan 1.5.2
el-vsc-product-icon-theme ElA 0.1.8
vbnet gor 1.0.2
output-colorizer IBM 0.1.2
better-cpp-syntax jef 1.15.10
bats jet 0.1.7
vscode-icon-theme jtl 1.6.6
fluent-icons mig 0.0.14
theme-monokai-pro-vscode mon 1.1.19
jupyter-keymap ms- 1.0.0
remote-containers ms- 0.205.2
remote-ssh ms- 0.66.1
remote-ssh-edit ms- 0.66.1
remote-wsl ms- 0.58.5
debugger-for-chrome msj 4.13.0
material-product-icons PKi 1.1.1
vscode-autohotkey sle 0.2.2
vscode-il sol 0.0.1
ayu tea 1.0.5
vscode-icons vsc 11.7.0
windows-nt-vscode-theme was 0.0.9
vscode-cil-complete wk- 0.0.5
material-theme zhu 3.13.2
vscode-eslint dba 2.2.2
gitlens eam 11.6.1
EditorConfig Edi 0.16.4
bash-ide-vscode mad 1.11.0
diagnostic-related-information-sample mic 0.0.1
linuxkerneldev mic 0.4.2
vscode-docker ms- 1.17.0
cpptools ms- 1.7.1
powershell ms- 2021.10.2
vscode-yaml red 1.1.1
errorlens use 3.4.0

(14 theme extensions excluded)

A/B Experiments
vsliv695:30137379
vsins829:30139715
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256198
pythontb:30258533
pythonvspyt551:30291412
pythonptprofiler:30281269
vshan820:30294714
pythondataviewer:30285072
vscod805:30301674
pythonvspyt200:30323110
vsccppwt:30382699
bridge0708:30335490
bridge0723:30353136
pythonrunftest32:30365365
pythonf5test824:30361779
javagetstartedt:30350119
pythonvspyt187:30365360
vsaa593cf:30376535
vsc1dst:30396469
vscexrecpromptc:30397557

@jrieken jrieken self-assigned this Nov 11, 2021
@jrieken jrieken added this to the November 2021 milestone Nov 11, 2021
@jrieken jrieken added bug Issue identified by VS Code Team member as probable bug api languages-diagnostics Source problems reporting labels Nov 11, 2021
@jrieken
Copy link
Member

jrieken commented Nov 11, 2021

Likely a regression from 6ef5dbe

@jrieken
Copy link
Member

jrieken commented Nov 11, 2021

The extensionKind trick only works because than you increase the chances of being in the same extension host as the extension that generates in the diagnostics. The bug is that the mirror'ing new ignores empty arrays to prevent double events.

jrieken added a commit that referenced this issue Nov 11, 2021
benoitf added a commit to benoitf/che-code--old that referenced this issue Nov 12, 2021
1bf65f4 Bump distro
231fe61 Add setting to exclude scripts from NPM scripts view Fixes #71635
ca90423 typo
88ad4c0 add mini readme for how to consume/add proposals, microsoft/vscode#131165
9b1d819 #136424 Initialize remote with user synced extensions
a341134 Task description: "User settings" -> "User" Fixes #89448
8215e18 regexp: Unnecessary escapes of `-`
4df5758 remove unnecessary escapes for '-' in regexes that go into schemas (for #137054)
81b5ea2 [json] update service (for #137054)
cd8f11a Remove cgmanifest.json from git extension
93a6105 Extract git syntaxes/grammars into a separate extension
2be31ee Improve task numbering for task quick picks Fixes #91440
b1dc0b0 Fix task arguments with Windows remote Fixes #93437
36c562f Merge pull request #136772 from microsoft/tyriar/smoke_test_improvements
5f4830b  Add progress indicator to SCM in activity bar while QuickDiff is preparing (#136968) (#136969)
2dcc582 reduce `enableProposedApi` usage further, microsoft/vscode#131165
fff34ad Fix test input
3c9b18e Remove test only
c65c873 Copy and use IWindowDriver in PlaywrightDriver
daa8095 Fix xterm layering problem
112709a tweak error messages when API proposal isn't available, microsoft/vscode#131165
df681dc Add link to task when contexts documentation Fixes #104000
b78b727 docs: 📝 better docs for views welcome content, group property
e79a9c8 `checkProposedApiEnabled` and `isProposedApiEnabled` must be called with proposal name, add proposals for `package.json`-based API, microsoft/vscode#131165
634dae7 Merge remote-tracking branch 'origin/main' into tyriar/smoke_test_improvements
23f7918 Include workspace files tasks in recent tasks Fixes #109454
3bd29c1 temp restore all enabled proposed API for test resolver, depends on some contrib-extensions, microsoft/vscode#131165
d775c73 create stand-in declaration for contribViewsWelcome and adopt for git-extension, microsoft/vscode#131165
e6a106f fix microsoft/monaco-editor#2366
22b53c1 Add contextualTitle for NPM Scripts Fixes #111994
7bbae2d Do not brutally kill extension hosts in the abnormal shutdown case to unblock the build
e95c74c Extract git static contributions into a separate extension
09c9d4c use `enabledApiProposals` instead of wildcard property, also update compilation units to only include d.ts-files that are needed, microsoft/vscode#131165
7ac3272 make sure proposal name generation is sorted, microsoft/vscode#131165
4549bd2 Extract diff language into its own extension (#136967)
81cf536 watcher - stop sending out delete events on workspace root (#136673)
8d3536c extract auth#session into its own proposal file, make isProposedApiEnabled and checkProposedApiEnabled more strict by forcing them to be called with undefined or a proposal name, microsoft/vscode#131165
20382c5 extract notebook controller kind into its own proposal, microsoft/vscode#131165
a4d426a split vscode.proposed.d.ts into a file per proposal, microsoft/vscode#131165
4e8450a Fixes #135440
2e0f560 move fsChunks into it own proposal file, microsoft/vscode#131165
98550aa group cell listeners.
0c6e106 separate listeners.
b335fc5 ensure focusMode is always accurate.
cdced28 cell editor focus border focus-within
fb4f68f rename TransferQuickPickItems
f8b1720 refresh more often based on clock skew
023cfc9 Bump axios
bd25c29 Fix incorrect event
183e692 rename commandExecuted
40fbc4e Unskip test
bf523f8 fix microsoft/vscode#136955
cfebd1d remove codicon.registerCodicon: codicon are the default, built-in icons
0db54ee Use widgetClose icon in banner part
5c720d5 add failing/skipped test for microsoft/vscode#136955
37794df Merge pull request #135774 from microsoft/alex/main-process-extension-host
ef7b823 tweak wording of log message, microsoft/vscode#131165
d967d9c extract editorInsets proposal into its own file, microsoft/vscode#131165
788d959 simplify `extensionsApiProposals`, microsoft/vscode#131165
84c9bf4 watcher - harden test for unexpected events
9efa55c Improve appearance of NPM scripts tree Fixes #123091
64da3b1 move languageStatus API proposal into its own file, adopt TypeScript usage, microsoft/vscode#131165
3d6385a feed all "vscode-dts/vscode.proposed.*.d.ts" into tsc, microsoft/vscode#131165
902c672 docs(list): 📝 initial documentation for the ListView and List widgets
cf35554 docs: 📝 add documentation for the HighlightedLabel widget
bb6f91b externalize icons for the workspace trust editor
6a530e7 Merge pull request #136754 from microsoft/joh/vscode-dts
7d10ad3 Make debug run icon themable
778014d Move extension host spawning to a worker thread (on the main process)
9923e8e Variable resolution in contributed custom execution Fixes #136746
18777d9 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
2e53b62 fix #136895
46a6aa9 Merge branch 'main' into joh/vscode-dts
c109637 clean up
17ded26 #136732 cleanup
1d6fe7b Fix #136732
09598a5 docs(grid): 📝 add documentation for the Grid widget
cd76d6b docs(grid): 📝 cleanup
30e88f9 docs(grid): cleanup
eca646d style: 🏷️ connect grid types
a9dd478 docs(grid): 📝 refer to the grid docs
b48a7f3 tweak generation of propsal file a little bit
1a65006 Clean up debug API in vscode.d.ts; see #124362
6eac989 Merge branch 'main' into joh/vscode-dts
c7f4b1a only warn about unavailable API proposals when extension wants them, allow diff'ing proposals for product.json-listed extension but only when the extension is being developed. add very explicit log messages
10ee2d6 docs(grid): 📝 add documentation for the GridView widget
2201b26 docs(splitview): remove unnecessary docs
bf7ad74 docs(splitview): 📝 shift things around
c06bf87 Fixes #136540: Do not eat up error or fall back to the next provider in case an error is thrown
edb91ac Merge branch 'main' into joh/vscode-dts
2864014 ThemeIcon & LinkedEditingRanges: Use `| undefined`. For #124362
ec5486b sandbox - clean up some todos
fb48ad4 git - make integration tests agnostic to file watcher issues (#136933)
3a79384 Tempoary skip sometimes flaky tests
bf32baf Fix hygiene error
30a33a1 Make alt+enter render markdown and insert cell below
0f19baf Fix spelling
b911788 Mark a few more arrays in vscode.d.ts readonly
1423849 Revert "First cut of quick pick separators as `kind`. ref #74967"
9c2a4b7 Revert "widen try in quickpick"
eec726d re #133928.
1cf4de2 experiments: allow using custom experiments url
5415a6d widen try in quickpick
b1651e3 log when actions are executed from custom menu bar
4c00e6d Adding logging to test
6986147 add layout control support on macos
00b931f add layout control to title bar
71f615b Also compare other attributes for md preview updates
84eca12 Remove eslint disable comment
98ea3bc Add proposed api region name, #131165
e6caf0d Pass terminal profiles test
a5d5303 Allow numerical objects in the Settings editor
a41001c First cut of quick pick separators as `kind`. ref #74967
958a5ad Merge pull request #136896 from rchiodo/rchiodo/interactive_hover
f161c7e Merge branch 'main' into joh/vscode-dts
8b7b036 Allow hover to work in the interactive window cells
5d7fd67 Add more information to Inspect Key Mappings
2ec957e Revert "fix #133761."
84052a9 tweak comment
654829a Merge pull request #136794 from alex-brs/npm-fix-msg
35843dd clean up
288cd6d Merge branch 'main' into joh/vscode-dts
c78b632 add logging to ProposedApiController
8d9df01 Fix #136710
ceb2424 remove unused DAP stand-in types
2cc2bfc fix #128406
b9a2b0d Merge branch 'main' into joh/vscode-dts
5bfaf29 Fix layering problem
57df4ae Convert `Inspect Key Mappings` to a workbench action
f87615d Use suggested kernel if we have only one kernel (#136548)
000f04e fix #133360
6a6a1b6 Use handles in playwright driver
1a6e4fc Add privacy and protocol to tunnels API Fixes #124334
cd823d8 Avoid browser restricted ports in port forwarding Fixes #131831
6e5be86 build: 💩 arg
2b25c67 fix: parsing of --ms-enable-electron-run-as-node flag
f7ef737 Merge branch 'main' into joh/vscode-dts
96b9fe6 Fixes #136622: call `extractControlCharacters` before introducing empty line parts for line decorations
972393f add `product#extensionEnabledApiProposals` and tweak how the proposed API controller works
ee12413 build: 💩 fix ci
0613f0c generate `apiProposalNames` as ReadonlySet
a922b81 Merge branch 'joao/widget-docs'
03d2cd4 refactor(grid): 👷 make Grid.addViewAt private
a1f503c docs(splitview): 📝 add documentation for the SplitView widget
453a142 hiddenRangeModel: Track line changes (for #132784)
f0abd64 Fixes microsoft/monaco-editor#2758: Remove sourceMappingURL directive that points to missing file
e08f4b5 Fixes #136711: Improve rendering for decorations using `showIfCollapsed` and enlarge their mouse hover range
9a404e5 💄
042a6e3 Clean up tasks API in vscode.d.ts Part of #124362
a713081 deprecate enableProposedApi, add and use `IExtensionDescription#enabledApiProposals`
fe6b867 declare proposed API properties for package.json and link them with actual proposal names
e7ea07d docs(sash): 📝 add documentation for the Sash widget
5097896 use `ApiProposalName`-type for proposedApiEnabled-utils
f01a1e9 move `isProposedApiEnabled` and `checkProposedApiEnabled`-util back to workbench-layer
cc98e60 Removes unused import.
49efe65 Fixes #136824 by tweaking css.
da967b5 add generated file api proposal names, add compile script that generates this file
37acec6 - clear formatters while creating the spdlog logger - fix name of the logger
262f25a fix description of html.format.wrapAttributesIndentSize. Fixes #136767
2b03df8 editors - add a test for the fix of #136684
d90dd13 Merge branch 'main' into joh/vscode-dts
bef4dba Parcel update and CI improvements (#136830)
42f10bb Call stack items aren't opening tabs with correct contents (fix #136684)
aba18ae 🆙 product
dc553d6 add additional logging and awaiting
d0e2785 Don't show error when cancelling dialog from "Create launch.json" Fix #136741
286af30 Remove now unused ext host method
6816d7e Remove scm.focus proposal
5f69af1 💄
c20b2c9 Add unique names to most proposal regions
b79f09c Adding readonly to some disposable properties
9a49279 Remove empty constructors
05db93f Adding readonly in a few more places
4aeae3f Spelling
2b401e2 add output diff info when the visual change might be invisible.
dbdd50b Align some font size setting descriptions
5317d21 Render numerical arrays in the Settings editor
b2f8216 Removing more duplicate types
304dac2 💄
6902a65 Align ext host name with internal name
18c6544 Adding documentation and cleaning up types
53efcdb Remove console log
e78290c Use object.entries in a few more places
23090cf Force update the md preview when a file on disk changes
53c29fc Use inherited font size for markdown codeblocks
aac257c Spelling
ec1b940 Remove html helper function
333ba03 Extract duplicated type
0fed1d8 Fix build
b44b731 Toughen validation for numerical objects
1ed9a2d Add unit tests for numeric arrays
54f23ce Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
e08e4d3 Move `--ms-enable-electron-run-as-node` to a later location (#136786)
c30ffc4 Fix problem with duplicated entry points
a4ad395 Increase default markup font size
87ea829 Move notebook setting keys into a namespace
8b0720d Pull out and test TerminalProfileQuickpick (#136680)
13bf498 Fix compile error
09dc62b Add notebook markup fontSize setting
f8ee1a1 build/npm/preinstall: fix error message for node version
a88cbb5 Marking a few types/objects readonly
4b10eb1 Use Object.entries
2f6685a Mark array readonly instead of property
4849b6e Fix variable spelling
de17f44 Remove built-in markdown output renderer (#136696)
f8ed49c finalize quickpick APIs
5fa4c88 fix #133741 (#136763)
d5d87b8 fix #135798 (#136776)
2368392 finalize silent option for getSession
574ad9d update distro
bd98431 Write basic terminal default profile test
ac29daa Fixes #136771: update to Electron v13.5.2 and pass `--ms-enable-run-as-node` together with `ELECTRON_RUN_AS_NODE`
36b7d6e Fixes microsoft/monaco-editor#2750
7bd792a `monaco-editor-core@0.30.0`
5a0d538 Fixes microsoft/monaco-editor#2660: If available, create a rule for default tokens using the `editor.foreground` and `editor.background` colors
d258720 Fixes microsoft/monaco-editor#2650: Move scrollbar style participant down to the editor layer
9472f26 Fix #136700
9fbabfc Implements #136764 by not triggering inline suggestions on undo/redo.
628f486 Move playwright driver impl to class
60fe8d9 fix #132183 - finalize api
28da305 Tidy up smoke test imports
281bacb Stub out some terminal smoke tests
1cbf69d Document --headless in smoke tests
a315fd8 #133201 add more logging
8510f32 Merge pull request #136522 from microsoft/tyriar/terminal_layout
a9bf40f Update xterm
dd8a099 Ignore errors when terminal is disposed during fetching xterm ctor
fc91670 Only use isWrapped workaround on Windows
68e8190 use tsconfig.json#include for vscode.d.ts and vscode.proposed.d.ts, enables to remove most ref.d.ts-files
854f7f2 Merge remote-tracking branch 'origin/main' into tyriar/terminal_layout
918ebda Don't stop wheel event propagation
93ce439 Bump distro
4b5611b fix #136734
5417e2a remove unused import
7a93855 refactor: ⚰️ remove dead code
9bdefa7 Further clean up
bc9b6d1 Clean up css
2003092 Tweak z-index so split pane sash is above everything
bf14040 Fix #136732
d019c24 Use base _rows not rows when setting fixed
f18b29e fix(scm): 🐛 do not await git repo status, just give the repo straight up to scm
1c230ef fix(table): 🐛 double clicking sashes should restore column's size
d7ee56c style: 💄
9254a8c move vscode.d.ts and vscode.proposed.d.ts into `src/vscode-dts`-folder, microsoft/vscode#131165
86fde89 Merge remote-tracking branch 'origin/main' into tyriar/terminal_layout
2bd6e00 fix #136731
799d82f add isProposedApiEnabled-util, move checkProposedApiEnabled-util, use utils instead of reading the enableProposedApi-property, microsoft/vscode#129037
9867849 use nullExtensionDescription in more places, microsoft/vscode#131165
3abda3b 💄
d7ed0e3 Uses Array.map.
b2b3437 Improves comments.
5dfa71a fix(git): 🐛 git api commands should be registered as contributions
ace5163 hiddenAreasIds -> hiddenAreasDecorationIds, fixes leaking decorations when lines are reconstructed.
1abc24d _reduceRanges -> normalizeLineRanges.
3f56153 💄 (Reordering Symbols, Fixing spaces)
c833f69 Moves modelLineProjectionData into its own file.
0b5e702 Renames LineBreakData to ModelLineProjectionData
80ab37f model line projection cleanup.
d2df861 Improves prefix sum computer docs.
056fa40 Await workspace trust in auto tasks Fixes #136715
ee9d044 Merge pull request #136665 from microsoft/hediet/injected-text-adoption
3ad622a update log message
5e0d7da debug error name
86dc8a8 refactor(table): align table colors with keybinding table
14a2bc7 Move error handling code sooner in the extension host process lifecycle
8b0ea7d Refactors color detector to use injected text.
e7eb1fc Makes DynamicCssRules reusable.
744c859 Adopts injected text for debug inline values.
6336884 Adopts injected text for debug-top-stack-frame-column spacer.
13438fb Adopts injected text for breakpoint space decoration.
6670578 Remove artificial 1s delay
6780770 lifecycle - adopt the `onWillKill` event
ca19d14 Merge branch 'main' into alex/main-process-extension-host
ad8c9b8 go back to fork
a8e37a4 Kill extension host processes immediately when doing extension test
1459521 Move line counting into XtermTerminal
f2fa859 Create refresh scroll bar method, increase scroll padding
9419cdc Remove scroll bar when setting fixed dimensions to dynamic
cedaa04 Polish fixed dimensions, remove scrollable when toggled off
ea074f2 Add fixed-dims class
ab97bc8 Progress on fixed dimensions sizing
85aa8a4 Remove logs
0b0dc63 Env var widget play nicely with scroll bar
ae66110 Merge remote-tracking branch 'origin/main' into tyriar/terminal_layout
4400020 Align to bottom using pos absolute
8d6b2af Change xterm layout to push scroll bar to edge
e9f8290 Wait for up to 6s for extension hosts to exit, then proceed to kill them
8970935 Fixes #123592: Move extension host spawning to the shared process
4967ca4 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
ff2bd8f Include margin in layout, only trigger resize when settings changed
bb472c5 xterm@4.15.0-beta.13
0bc3f28 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
2af65ef Try to use `spawn` instead of `fork`
6f72d1b Try to fork the extension host process directly from the main process
79ca72e Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
8619b10 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
7501979 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
2e2350f Fix ESM webpack problem
75d2f6d Fix layering problem
3fc735d Fix layering problem
81471f8 Merge remote-tracking branch 'origin/main' into alex/main-process-extension-host
41d6fc7 Create extension host processes from a node worker in the main process

git-subtree-dir: code
git-subtree-split: 1bf65f4
@rchiodo rchiodo added the verification-steps-needed Steps to verify are needed for verification label Dec 2, 2021
@github-actions github-actions bot locked and limited conversation to collaborators Dec 26, 2021
@rzhao271
Copy link
Contributor

What are some verification steps for this issue?

@joyceerhl joyceerhl added the author-verification-requested Issues potentially verifiable by issue author label May 4, 2022
@TylerLeonhardt TylerLeonhardt added verified Verification succeeded and removed verification-steps-needed Steps to verify are needed for verification labels Jan 27, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Feb 1, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
api author-verification-requested Issues potentially verifiable by issue author bug Issue identified by VS Code Team member as probable bug insiders-released Patch has been released in VS Code Insiders languages-diagnostics Source problems reporting verified Verification succeeded
Projects
None yet
Development

No branches or pull requests

7 participants
@jrieken @microhobby @TylerLeonhardt @rzhao271 @rchiodo @joyceerhl and others