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

Release/build2024 #10

Open
wants to merge 3,361 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3361 commits
Select commit Hold shift + click to select a range
c06c555
Add more extension install error codes (#212237)
sandy081 May 8, 2024
3ec5b4a
Merge branch 'main' into joh/varied-ermine
jrieken May 8, 2024
e0065ce
Cannot read properties of null (reading 'style') (#212250)
alexr00 May 8, 2024
0d55bb6
add `LanguageModelChat` as explict object and add a select-function a…
jrieken May 8, 2024
6990923
spell-out selector type, allow to select/filter on specific extensions
jrieken May 8, 2024
1a8d6b9
update distro (#212254)
jrieken May 8, 2024
4baa947
register vendors statically and active extensions on them
jrieken May 8, 2024
10a9adb
runCommands: fix: do not try stringify-ing circular objects
ulugbekna May 8, 2024
2edabd6
Merge pull request #212262 from microsoft/ulugbekna/toxic-cockroach
ulugbekna May 8, 2024
69a80f9
use a composted, semi-random identifier for language model and leave …
jrieken May 8, 2024
0486d99
feat: add conditional expressions to keybindings and actions, update …
bpasero May 8, 2024
6e24e5f
fix compile error
connor4312 May 8, 2024
af535be
Merge pull request #212266 from microsoft/joh/varied-ermine
jrieken May 8, 2024
269aa6c
Merge pull request #212212 from microsoft/connor4312/212196-1
connor4312 May 8, 2024
89ee8b8
add logging (#212268)
sandy081 May 8, 2024
349dc8b
use random file name (#212269)
sandy081 May 8, 2024
b2252bd
some more jsdoc (#212270)
jrieken May 8, 2024
d3edb58
Fix p styling in confirmation
daviddossett May 8, 2024
6cb778a
Align border radius to other widgets
daviddossett May 8, 2024
91c5a5d
chore - remove unneccessary RPC call (#212273)
jrieken May 8, 2024
b0c5f83
Pass full function breakpoint options from plugin (#211895)
OccasionalDebugger May 8, 2024
19758c4
Merge pull request #212277 from microsoft/ddossett/confirmation-p
daviddossett May 8, 2024
8d65393
voice - use `mute` and `unmute` for chat responses to trigger synthes…
bpasero May 8, 2024
9c336bf
Add test for FunctionBreakpoint change (#212284)
roblourens May 8, 2024
bd2df94
save to EH synchronously (#212193)
amunger May 8, 2024
afb251a
wip
connor4312 May 8, 2024
2aa1079
just use v8-to-istanbul
connor4312 May 8, 2024
9cb0df2
feat: support concurrent chat progress messages (#212300)
joyceerhl May 8, 2024
f921a48
Move chat suggestions into their own file
roblourens May 9, 2024
8d268f9
Fix blinking "used references"
roblourens May 9, 2024
212bc05
Fix bad spacing with some markdown lists
roblourens May 9, 2024
5f78b58
Support agent hover and proper rendering in /help (#212311)
roblourens May 9, 2024
dd9e114
Merge remote-tracking branch 'origin/main' into roblou/temporary-termite
roblourens May 9, 2024
41f6f5a
yea actually that doesn't work
connor4312 May 8, 2024
e8481cc
Implement UI for reserved agent names
roblourens May 9, 2024
ced32c3
Merge pull request #212315 from microsoft/roblou/miserable-tarsier
roblourens May 9, 2024
9eff384
feat: add language option to text-to-speech sessions (#212330)
bpasero May 9, 2024
90dfd06
contribute standard interactive execute keybindings from core (#212305)
amunger May 9, 2024
997865b
Show fully-qualified name for / completion as well
roblourens May 9, 2024
268c20f
Suppress semantic errors in js/ts notebook cells (#212367)
mjbvz May 9, 2024
a4643b0
Enable web type acquisition by default for js/ts (#212370)
mjbvz May 9, 2024
6f4fe62
fix: don't progressively render chat warnings
joyceerhl May 9, 2024
514b478
fix: rerender progress task when it settles
joyceerhl May 9, 2024
12ad9eb
refactor: clean up optional properties
joyceerhl May 9, 2024
9518d13
fix bad config registration (#212373)
amunger May 9, 2024
65f566e
Fix build
roblourens May 9, 2024
5447d0d
bug fixes and such, format
connor4312 May 9, 2024
3b81dc9
Merge pull request #212365 from microsoft/roblou/temporary-termite
roblourens May 9, 2024
f8d5fca
Tweak chat agent hover styles
daviddossett May 9, 2024
b122bc6
Merge pull request #212385 from microsoft/ddossett/agent-hover
daviddossett May 9, 2024
5a46e2e
Message header font spacing tweak
daviddossett May 9, 2024
81f9a3d
Merge pull request #212397 from microsoft/ddossett/header-font
daviddossett May 9, 2024
dc45dde
Remove requirement that there can be only one account (#212398)
TylerLeonhardt May 9, 2024
d1555a7
Get rid of "GitHub Copilot" header and add a participant "fullName"
roblourens May 9, 2024
a104ad1
Set up save on EH for experiment roll-out (#212399)
amunger May 9, 2024
1e571b3
Avoid bad failure with out of date pre-release
roblourens May 9, 2024
e616baf
Merge pull request #212400 from microsoft/roblou/superb-pony
roblourens May 9, 2024
0f5d751
Fix used references padding
daviddossett May 10, 2024
3235435
testing: implement initial UI for per-test coverage
connor4312 May 9, 2024
e62f072
Merge pull request #212402 from microsoft/ddossett/references-padding
daviddossett May 10, 2024
1facdf8
Merge pull request #212403 from microsoft/connor4312/212196-3
connor4312 May 10, 2024
1466eae
Attempt to partly fix layout issues with codeblocks (#212411)
roblourens May 10, 2024
7d220c8
file watcher - skip flaky tests (win, linux) (#212416)
bpasero May 10, 2024
70e10d6
voice - offer to install speech from chat item (#212412)
bpasero May 10, 2024
aef6b4c
quick pick: a11y workaround (#212248)
joaomoreno May 10, 2024
4ec594f
runCommands: fix: `safeStringify` throws `RangeError: Invalid string …
ulugbekna May 10, 2024
dc7a2cd
Merge pull request #212445 from microsoft/ulugbekna/very-walrus
ulugbekna May 10, 2024
c5e287e
add telemetry to give insight for experiment (#212401)
amunger May 10, 2024
5216c04
chore: update to electron 29 (#209818)
deepak1556 May 10, 2024
47234ec
Clean up chat history variables (#212451)
roblourens May 10, 2024
26c4a07
update distro (#212452)
joaomoreno May 10, 2024
ef54c4e
Get rid of bad Copilot Chat warning, add a proper API version (#212453)
roblourens May 10, 2024
58b0973
Put terminal copilot hint behind a setting (#212456)
roblourens May 10, 2024
4f0c8af
Fix chat participant name regex (#212458)
roblourens May 10, 2024
e0cc334
use real telemetry service (#212459)
amunger May 10, 2024
3aaf39d
Keep Copilot Chat compatibility for one more build (#212460)
roblourens May 10, 2024
dda8b2e
Fix chat progress message contrast
daviddossett May 10, 2024
00b84dc
Use hover statusbar for chat "view in marketplace" option
roblourens May 10, 2024
cb13355
Cleanup
roblourens May 10, 2024
e6ce1cd
Merge pull request #212464 from microsoft/ddossett/xenacious-leopard
daviddossett May 10, 2024
da4c909
Merge pull request #212466 from microsoft/roblou/generous-cricket
roblourens May 10, 2024
33de128
Remove sparkle from follow ups
daviddossett May 10, 2024
273d65a
Merge pull request #212469 from microsoft/ddossett/alleged-dormouse
daviddossett May 10, 2024
03f2af3
testing: polish test coverage bar
connor4312 May 10, 2024
b037068
fix compile
connor4312 May 10, 2024
04baf8e
Merge pull request #212473 from microsoft/connor4312/212196-4
connor4312 May 10, 2024
57dde0a
Fix some participant names being rendered incorrectly after reload (#…
roblourens May 10, 2024
763d5f3
Only allow clicking a chat confirmation button a single time (#212476)
roblourens May 10, 2024
351fa19
dont bump version if nothing changes (#212478)
amunger May 10, 2024
bbc0159
feat: associate chat references and warnings with chat progress (#212…
joyceerhl May 11, 2024
9d4274e
Remove session if it is being replaced (#212504)
TylerLeonhardt May 11, 2024
54edfb7
update distro (#212532)
sandy081 May 12, 2024
29aeab1
Include chat agent ID in telemetry (#212516)
roblourens May 12, 2024
2ba77da
Merge pull request #212158 from kdy1/swcrc-schema
jrieken May 13, 2024
1a45291
Unthemable product icons #2 (#212574)
aeschli May 13, 2024
b3f2d61
jsdoc updates (#212576)
jrieken May 13, 2024
c6ca1ff
voice - support synthesize pending chat responses (#212505)
bpasero May 13, 2024
34925e1
report client target platform (#212584)
sandy081 May 13, 2024
24d4616
Make VS Code compile on Windows with NodeJS >=20
dbaeumer May 13, 2024
108e045
Local history: does not preserve entries from previously deleted file…
bpasero May 13, 2024
0c5a7bd
language model API tweak (#212588)
jrieken May 13, 2024
98e776c
debt - more `readonly` in editor group model (#212589)
bpasero May 13, 2024
4b1cc22
Revert "testing: polish test coverage bar" (#212593)
hediet May 13, 2024
2041cd4
fix #212145 (#212595)
sandy081 May 13, 2024
3028408
don't depend on `ITextModel` from line range util (#212596)
jrieken May 13, 2024
0e1e8fe
Merge pull request #212591 from microsoft/dbaeumer/mighty-silverfish-…
dbaeumer May 13, 2024
dd4f436
Adding tokenization support to the `autoindent.test.ts` file (#212594)
aiday-mar May 13, 2024
0f4718c
SCM - eagerly create the input box text model (#212580)
lszomoru May 13, 2024
6af4f79
aux window - detect fullscreen state early on startup (#212603)
bpasero May 13, 2024
3e769a7
testing: polish test coverage bar (reapply)
connor4312 May 13, 2024
89d8722
editor: fix swapped condition in overlay widget
connor4312 May 13, 2024
e13f3f5
SCM - revert sticky scroll changes for the input/action button nodes …
lszomoru May 13, 2024
3fdda61
feat(markdown-language-features): #208398 add avif as image extension…
BrunoSoaresEngineering May 13, 2024
46eb7d9
Merge pull request #212610 from microsoft/connor4312/212196-5
connor4312 May 13, 2024
ce786ed
fix #212420 (#212611)
sandy081 May 13, 2024
fb618e4
add source context to extension installation (#212615)
sandy081 May 13, 2024
3b72461
fix: don't show spinner when doing basic render of chat progress task
joyceerhl May 13, 2024
f89482e
more API todos (#212617)
jrieken May 13, 2024
95e2edd
`ChatProviderInvokedEvent` event should include the location at which…
jrieken May 13, 2024
cd3514d
Merge pull request #212619 from microsoft/dev/joyceerhl/maximum-kangaroo
joyceerhl May 13, 2024
59018d4
always resume the pausable emitter (#212621)
amunger May 13, 2024
3497513
set terminal hint font, font size to that of terminal, fix bug (#212623)
meganrogge May 13, 2024
55d6200
Add `Codicon.attach` (#212624)
daviddossett May 13, 2024
8a04a33
provide screen reader users with correct info for suggested question …
meganrogge May 13, 2024
501b2bb
add source context to extension installation (#212625)
sandy081 May 13, 2024
929bec0
eng: make it selfhost failure log easier to access and more stable (#…
connor4312 May 13, 2024
90edab1
re-enable terminal chat hint by default, fix bug (#212630)
meganrogge May 13, 2024
88bc75f
Tabs Multi Select (#211712)
benibenj May 13, 2024
d1b5d42
Fix <?php tag (#212631)
roblourens May 13, 2024
683f0a9
`canSendRequest` should take `LanguageModelChat` object and not an id…
jrieken May 13, 2024
8845f69
don't show terminal chat hint for reconnected terminals (#212636)
meganrogge May 13, 2024
85f4f03
Added setting for notebook cell markdown lineheight (#212531)
DatN99 May 13, 2024
6643db7
Add chat variable id and rename to 'references' (#212480)
roblourens May 13, 2024
d6b26fe
testing: fix coverCountBadgeForeground color token is not functional
connor4312 May 13, 2024
584a7a1
Merge pull request #212640 from microsoft/connor4312/issue212479
connor4312 May 13, 2024
31eadce
Make ChatValueReference#range optional (#212641)
roblourens May 13, 2024
39fc2df
Fixes a few more cases of #211878 (#212642)
mjbvz May 13, 2024
358a3a6
fix incomplete coverage reports on macos (#212639)
connor4312 May 13, 2024
597cd68
Accept URI for reference icon (#212643)
roblourens May 13, 2024
bbc4ba1
Move 'variableName' form of 'reference' to chatParticipantAdditions.d…
roblourens May 14, 2024
4779013
feat: introduce Attach Context entrypoint in chat (#212652)
joyceerhl May 14, 2024
743d036
fix #185186 (#212668)
sandy081 May 14, 2024
49bac27
Update language model metadata and add logging (#212670)
jrieken May 14, 2024
7aa7be5
voice - cleanup voice chat actions (#212653)
bpasero May 14, 2024
5dd248f
Fixes #212293 (#212675)
hediet May 14, 2024
b2e6cd0
Adresses #211878 (#212677)
hediet May 14, 2024
bdddba5
fix #212105 (#212693)
sandy081 May 14, 2024
528d13b
report extension version (#212705)
sandy081 May 14, 2024
e1c99ae
Fix chat view name (#212646)
roblourens May 14, 2024
cf8e443
one more round of API todos (#212710)
jrieken May 14, 2024
95348fb
Allow editor actions on inactive editor groups (#212715)
benibenj May 14, 2024
77e5788
Diff editor commands extract resource from action (#212719)
benibenj May 14, 2024
35c4fb4
validate downloaded assets and retry (#212722)
sandy081 May 14, 2024
146d9ed
report internalCode (#212724)
sandy081 May 14, 2024
daec93b
Disable web ata for safari (#212726)
mjbvz May 14, 2024
26dbd91
testing: update coverage from UX feedback
connor4312 May 14, 2024
167cae7
Fix reviving IChatAgentData in the request part (#212732)
roblourens May 14, 2024
fda84a1
Merge pull request #212733 from microsoft/connor4312/coverage-bar-polish
connor4312 May 14, 2024
67caa89
fix: avoid chat input shifting around when attaching context
joyceerhl May 14, 2024
f713593
fix: don't show Attach Context for inline/quick chat
joyceerhl May 14, 2024
987a4c7
return if `activeTerminal` is undefined (#212735)
meganrogge May 14, 2024
dc51a8c
Add sound from sound designer (#212739)
meganrogge May 14, 2024
51d72a2
fix: layout chat input after accounting for attached context widget (…
joyceerhl May 14, 2024
e3c1bbc
fix accessibility signal TOC (#212743)
meganrogge May 14, 2024
4d03498
on blur of terminal chat widget, if terminal is not visible, hide it …
meganrogge May 14, 2024
6ffbf8b
Fix missing implicit variables for inline chat participant (#212748)
roblourens May 14, 2024
7415be2
fix config ID (#212751)
amunger May 14, 2024
0d64170
Chat participant API polishing (#212757)
roblourens May 15, 2024
1a9a2be
Fix broken chat input placeholder and decorations (#212759)
roblourens May 15, 2024
28c4d6b
Prevent overflowing text (#212761)
roblourens May 15, 2024
5f7906e
fix: allow multiple chat file references (#212756)
joyceerhl May 15, 2024
5e68ffd
Fix #212717 (#212763)
roblourens May 15, 2024
7680db2
Move rerun request back to prime spot, return with intent detection b…
jrieken May 15, 2024
6ade685
Fix hovers on empty group watermarks (#212777)
benibenj May 15, 2024
c1f1d6a
update distro (#212776)
sandy081 May 15, 2024
8693728
voice - cleanup synthesize actions (#212680)
bpasero May 15, 2024
ffb2581
remove `maxOutputTokens` for now (#212781)
jrieken May 15, 2024
739d480
Add /** */ to cpp/language-configurations.json (#211202)
sean-mcmanus May 15, 2024
0891d30
fix type checks #211878 (#212790)
sandy081 May 15, 2024
243494c
set UV_USE_IO_URING in code server for linux (#212791)
aeschli May 15, 2024
942d81c
Improve tabs multi select theme colors and high contrast support (#21…
benibenj May 15, 2024
8daa0c1
voice - render markdown as string before synthesizing (#212796)
bpasero May 15, 2024
6317965
shared process - show notification toast on crash (fix #212103) (#212…
bpasero May 15, 2024
d0acead
Update distro hash
chrmarti May 15, 2024
f0676fb
Fixes #211742 (#212807)
hediet May 15, 2024
5d52fe6
rename `LanguageModelChatResponse#stream` to `text` (#212811)
jrieken May 15, 2024
ba6864c
refactor: improve handling of chat widget context in voice chat actio…
bpasero May 15, 2024
bd653ce
move todos into issue (#212821)
jrieken May 15, 2024
b888165
fix #208324 (#212822)
sandy081 May 15, 2024
c924205
Make List / Tree Hovers Focusable (#212818)
benibenj May 15, 2024
00891c2
Update editor actions on settings change (#212824)
benibenj May 15, 2024
e206bcb
Fix multi-select behavior on macOS (#212825)
benibenj May 15, 2024
f8ee037
Add `AccessibilitySignal.terminalCommandSucceeded` and `success.mp3` …
maximetinu May 15, 2024
c2baa46
on blur of terminal chat, if no response content, hide widget (#212831)
meganrogge May 15, 2024
afcb0eb
Finalize chatParticipant and languageModels API (#212829)
roblourens May 15, 2024
90402fb
Remove chat attachments border and tweak styles (#212745)
daviddossett May 15, 2024
d1cc483
Initial inline chat polish (#212755)
daviddossett May 15, 2024
5c7e9ff
Remove extra space above attachments
daviddossett May 15, 2024
4c4ac63
Merge pull request #212843 from microsoft/ddossett/colorful-cricket
daviddossett May 15, 2024
cee8958
Use descriptionForeground for close icon
daviddossett May 15, 2024
7c310e7
Update codicons
daviddossett May 15, 2024
2124fd4
Merge pull request #212847 from microsoft/ddossett/free-wren
daviddossett May 15, 2024
1d3462b
Fix chat border radius
daviddossett May 15, 2024
a041421
Merge pull request #212848 from microsoft/ddossett/tight-angelfish
daviddossett May 15, 2024
a110db2
Merge pull request #212850 from microsoft/ddossett/yielding-bovid
daviddossett May 15, 2024
4b4eb7a
Use latest references accordion styles
daviddossett May 16, 2024
14ebfdc
Add variable 'isSlow' (#212657)
roblourens May 16, 2024
e61d724
fix terminal chat hint bug (#212851)
meganrogge May 16, 2024
c52596a
Merge pull request #212852 from microsoft/ddossett/occupational-llama
daviddossett May 16, 2024
0cd8d6a
fix: make chat progress reporter handle immediately available to exte…
joyceerhl May 16, 2024
652c948
Check for allowed names in the participant fullName (#212849)
roblourens May 16, 2024
c72bcda
Fix split editor inactive group action (#212837)
benibenj May 16, 2024
6af3161
macOS/Linux: Allow `\` in file names (fix #212740) (#212810)
bpasero May 16, 2024
146b3fb
Update tab selected background color (#212872)
benibenj May 16, 2024
95978d5
fixes https://github.com/microsoft/vscode-copilot/issues/4599 (#212870)
jrieken May 16, 2024
88f27ce
disable `vscode.lm`-API for stable (#212890)
jrieken May 16, 2024
462a2a7
use agent's full name in the inline chat provider wrapper (#212871)
jrieken May 16, 2024
bb68461
editors - some :lipstick: from code review (#212886)
bpasero May 16, 2024
c3b42d5
`code --wait` no longer exits when the file is closed in VSCode Insid…
bpasero May 16, 2024
ed83e0e
Remove experimental hover feature (#212865)
benibenj May 16, 2024
be648f9
voice - fix synthesis controller for terminal (#212862)
bpasero May 16, 2024
da020b9
Fix editor command context extraction (#212897)
benibenj May 16, 2024
660fe60
Add docs and register some child insta services for disposal (#212880)
jrieken May 16, 2024
743fdd9
focus owning editor when clicking into zone without having editor wid…
jrieken May 16, 2024
98eec20
fix #212664 (#212873)
sandy081 May 16, 2024
7f58567
fix #210837 (#212901)
sandy081 May 16, 2024
e65febc
ci: use sysroots for oss linux pipeline (#212895)
deepak1556 May 16, 2024
2d97803
add `ListenerRefusalError` and `ListenerLeakError` which get logged w…
jrieken May 16, 2024
32f970f
refactor: clean up redundant handle (#212859)
joyceerhl May 16, 2024
2ef785b
make sure to use `ScrollType.Immediate` when reveal inline chat conte…
jrieken May 16, 2024
cdf9453
update screen readers with plaintext version of response content (#21…
meganrogge May 16, 2024
60d035d
issue reporter refactor (web prep) (#212762)
justschen May 16, 2024
723f851
Match attachment pill border radius to main chat input
daviddossett May 16, 2024
11c70a6
Merge pull request #212922 from microsoft/ddossett/external-kangaroo
daviddossett May 16, 2024
601ea43
issue reporter refactor cleanup (#212932)
justschen May 16, 2024
1d44987
Support for `notebook.format` Code Action (#212750)
Yoyokrazy May 16, 2024
a48f464
Drop usage of inline chat services in notebook chat. (#212935)
rebornix May 16, 2024
8a7971c
fix: only include files that exist on disk in Attach Context picker (…
joyceerhl May 17, 2024
a47a723
watcher - per-request restart support (#212946)
bpasero May 17, 2024
577eca4
refactor: use request path instead of hashed request for error handli…
bpasero May 17, 2024
8a5f332
Revive `TimelineChangeEvent.uri` if passed in `TimelineProvider.onDid…
gjsjohnmurray May 17, 2024
afee943
Optionally accept previous request entries (microsoft/vscode-copilot#…
chrmarti May 17, 2024
f209ce3
Improve model access dialog messaging (#212974)
sbatten May 17, 2024
79c80e0
fix: disable symbols in Attach Context picker (#212986)
joyceerhl May 17, 2024
7e7fe81
feat: support static chat variables in Attach Context picker (#212993)
joyceerhl May 17, 2024
bc1deed
Allow disabling language detection in nb. (#213094)
rebornix May 20, 2024
fca4d00
Merge pull request #213093 from microsoft/dev/joyceerhl/cool-swordtail
joyceerhl May 20, 2024
405ce83
Respect isSlow for chat attachments (#213106)
roblourens May 20, 2024
4207ee1
Bump distro to release/build-2024 (#213195)
roblourens May 22, 2024
81c89c4
cherry-pick 5707 (#213204)
jrieken May 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,4 @@
**/test/unit/assert.js
**/test/automation/out/**
**/typings/**
!.vscode
40 changes: 40 additions & 0 deletions .eslintplugin/code-no-dangerous-type-assertions.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';
import { TSESTree } from '@typescript-eslint/experimental-utils';

export = new class NoDangerousTypeAssertions implements eslint.Rule.RuleModule {

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
// Disable in tests for now
if (context.getFilename().includes('.test')) {
return {};
}

return {
// Disallow type assertions on object literals: <T>{ ... } or {} as T
['TSTypeAssertion > ObjectExpression, TSAsExpression > ObjectExpression']: (node: any) => {
const objectNode = node as TSESTree.Node;

const parent = objectNode.parent as TSESTree.TSTypeAssertion | TSESTree.TSAsExpression;
if (
// Allow `as const` assertions
(parent.typeAnnotation.type === 'TSTypeReference' && parent.typeAnnotation.typeName.type === 'Identifier' && parent.typeAnnotation.typeName.name === 'const')

// For also now still allow `any` casts
|| (parent.typeAnnotation.type === 'TSAnyKeyword')
) {
return;
}

context.report({
node,
message: "Don't use type assertions for creating objects as this can hide type errors."
});
},
};
}
};
37 changes: 37 additions & 0 deletions .eslintplugin/code-no-potentially-unsafe-disposables.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';

/**
* Checks for potentially unsafe usage of `DisposableStore` / `MutableDisposable`.
*
* These have been the source of leaks in the past.
*/
export = new class implements eslint.Rule.RuleModule {

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
function checkVariableDeclaration(inNode: any) {
context.report({
node: inNode,
message: `Use const for 'DisposableStore' to avoid leaks by accidental reassignment.`
});
}

function checkProperty(inNode: any) {
context.report({
node: inNode,
message: `Use readonly for DisposableStore/MutableDisposable to avoid leaks through accidental reassignment.`
});
}

return {
'VariableDeclaration[kind!="const"] NewExpression[callee.name="DisposableStore"]': checkVariableDeclaration,

'PropertyDefinition[readonly!=true][typeAnnotation.typeAnnotation.typeName.name=/DisposableStore|MutableDisposable/]': checkProperty,
'PropertyDefinition[readonly!=true] NewExpression[callee.name=/DisposableStore|MutableDisposable/]': checkProperty,
};
}
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/

import * as eslint from 'eslint';
import { TSESTree } from '@typescript-eslint/experimental-utils';

/**
* Enforces that all parameter properties have an explicit access modifier (public, protected, private).
*
* This catches a common bug where a service is accidentally made public by simply writing: `readonly prop: Foo`
*/
export = new class implements eslint.Rule.RuleModule {

create(context: eslint.Rule.RuleContext): eslint.Rule.RuleListener {
function check(inNode: any) {
const node: TSESTree.TSParameterProperty = inNode;

// For now, only apply to injected services
const firstDecorator = node.decorators?.at(0);
if (
firstDecorator?.expression.type !== 'Identifier'
|| !firstDecorator.expression.name.endsWith('Service')
) {
return;
}

if (!node.accessibility) {
context.report({
node: inNode,
message: 'Parameter properties must have an explicit access modifier.'
});
}
}

return {
['TSParameterProperty']: check,
};
}
};
13 changes: 8 additions & 5 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,10 @@
],
"local/code-translation-remind": "warn",
"local/code-no-native-private": "warn",
"local/code-parameter-properties-must-have-explicit-accessibility": "warn",
"local/code-no-nls-in-standalone-editor": "warn",
"local/code-no-potentially-unsafe-disposables": "warn",
"local/code-no-dangerous-type-assertions": "off",
"local/code-no-standalone-editor": "warn",
"local/code-no-unexternalized-strings": "warn",
"local/code-must-use-super-dispose": "warn",
Expand Down Expand Up @@ -154,14 +157,11 @@
"src/vs/editor/contrib/codeAction/test/browser/codeActionModel.test.ts",
"src/vs/editor/test/common/services/languageService.test.ts",
"src/vs/editor/test/node/classification/typescript.test.ts",
"src/vs/editor/test/node/diffing/defaultLinesDiffComputer.test.ts",
"src/vs/editor/test/node/diffing/fixtures.test.ts",
"src/vs/platform/configuration/test/common/configuration.test.ts",
"src/vs/platform/extensions/test/common/extensionValidator.test.ts",
"src/vs/platform/opener/test/common/opener.test.ts",
"src/vs/platform/registry/test/common/platform.test.ts",
"src/vs/platform/remote/test/common/remoteHosts.test.ts",
"src/vs/platform/telemetry/test/browser/1dsAppender.test.ts",
"src/vs/platform/workspace/test/common/workspace.test.ts",
"src/vs/platform/workspaces/test/electron-main/workspaces.test.ts",
"src/vs/workbench/api/test/browser/mainThreadConfiguration.test.ts",
Expand Down Expand Up @@ -672,7 +672,6 @@
"vscode-regexpp",
"vscode-textmate",
"worker_threads",
"@xterm/addon-canvas",
"@xterm/addon-image",
"@xterm/addon-search",
"@xterm/addon-serialize",
Expand Down Expand Up @@ -859,7 +858,11 @@
}, // TODO@layers
"tas-client-umd", // node module allowed even in /common/
"vscode-textmate", // node module allowed even in /common/
"@vscode/vscode-languagedetection" // node module allowed even in /common/
"@vscode/vscode-languagedetection", // node module allowed even in /common/
{
"when": "hasBrowser",
"pattern": "@xterm/xterm"
} // node module allowed even in /browser/
]
},
{
Expand Down
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# ensure the API police is aware of changes to the vscode-dts file
# this is only about the final API, not about proposed API changes
src/vscode-dts/vscode.d.ts @jrieken @mjbvz
81 changes: 0 additions & 81 deletions .github/commands.json
Original file line number Diff line number Diff line change
Expand Up @@ -156,37 +156,6 @@
"addLabel": "confirmation-pending",
"removeLabel": "confirmed"
},
{
"type": "comment",
"name": "needsMoreInfo",
"allowUsers": [
"cleidigh",
"usernamehw",
"gjsjohnmurray",
"IllusionMH"
],
"action": "updateLabels",
"addLabel": "~info-needed"
},
{
"type": "comment",
"name": "needsPerfInfo",
"allowUsers": [
"cleidigh",
"usernamehw",
"gjsjohnmurray",
"IllusionMH"
],
"addLabel": "info-needed",
"comment": "Thanks for creating this issue regarding performance! Please follow this guide to help us diagnose performance issues: https://github.com/microsoft/vscode/wiki/Performance-Issues \n\nHappy Coding!"
},
{
"type": "comment",
"name": "jsDebugLogs",
"action": "updateLabels",
"addLabel": "info-needed",
"comment": "Please collect trace logs using the following instructions:\n\n> If you're able to, add `\"trace\": true` to your `launch.json` and reproduce the issue. The location of the log file on your disk will be written to the Debug Console. Share that with us.\n>\n> ⚠️ This log file will not contain source code, but will contain file paths. You can drop it into https://microsoft.github.io/vscode-pwa-analyzer/index.html to see what it contains. If you'd rather not share the log publicly, you can email it to connor@xbox.com"
},
{
"type": "comment",
"name": "closedWith",
Expand All @@ -200,30 +169,6 @@
"reason": "completed",
"addLabel": "unreleased"
},
{
"type": "label",
"name": "~info-needed",
"action": "updateLabels",
"addLabel": "info-needed",
"removeLabel": "~info-needed",
"comment": "Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our [issue reporting guidelines](https://aka.ms/vscodeissuereporting). Please take the time to review these and update the issue.\n\nHappy Coding!"
},
{
"type": "label",
"name": "~version-info-needed",
"action": "updateLabels",
"addLabel": "info-needed",
"removeLabel": "~version-info-needed",
"comment": "Thanks for creating this issue! We figured it's missing some basic information, such as a version number, or in some other way doesn't follow our [issue reporting guidelines](https://aka.ms/vscodeissuereporting). Please take the time to review these and update the issue.\n\nHappy Coding!"
},
{
"type": "label",
"name": "~confirmation-needed",
"action": "updateLabels",
"addLabel": "info-needed",
"removeLabel": "~confirmation-needed",
"comment": "Please diagnose the root cause of the issue by running the command `F1 > Help: Troubleshoot Issue` and following the instructions. Once you have done that, please update the issue with the results.\n\nHappy Coding!"
},
{
"type": "comment",
"name": "a11ymas",
Expand Down Expand Up @@ -469,32 +414,6 @@
"addLabel": "*caused-by-extension",
"comment": "It looks like this is caused by the Copilot extension. Please file the issue in the [Copilot Discussion Forum](https://github.com/community/community/discussions/categories/copilot). Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our [issue reporting guidelines](https://aka.ms/vscodeissuereporting) for more information.\n\nHappy Coding!"
},
{
"type": "comment",
"name": "gifPlease",
"allowUsers": [
"cleidigh",
"usernamehw",
"gjsjohnmurray",
"IllusionMH"
],
"action": "comment",
"addLabel": "info-needed",
"comment": "Thanks for reporting this issue! Unfortunately, it's hard for us to understand what issue you're seeing. Please help us out by providing a screen recording showing exactly what isn't working as expected. While we can work with most standard formats, `.gif` files are preferred as they are displayed inline on GitHub. You may find https://gifcap.dev helpful as a browser-based gif recording tool.\n\nIf the issue depends on keyboard input, you can help us by enabling screencast mode for the recording (`Developer: Toggle Screencast Mode` in the command palette). Lastly, please attach this file via the GitHub web interface as emailed responses will strip files out from the issue.\n\nHappy coding!"
},
{
"type": "comment",
"name": "confirmPlease",
"allowUsers": [
"cleidigh",
"usernamehw",
"gjsjohnmurray",
"IllusionMH"
],
"action": "comment",
"addLabel": "info-needed",
"comment": "Please diagnose the root cause of the issue by running the command `F1 > Help: Troubleshoot Issue` and following the instructions. Once you have done that, please update the issue with the results.\n\nHappy Coding!"
},
{
"__comment__": "Allows folks on the team to label issues by commenting: `\\label My-Label` ",
"type": "comment",
Expand Down
15 changes: 11 additions & 4 deletions .github/workflows/deep-classifier-runner.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
name: "Deep Classifier: Runner"

permissions:
id-token: write
contents: read

on:
schedule:
- cron: 0 * * * *
Expand All @@ -9,7 +14,13 @@ on:
jobs:
main:
runs-on: ubuntu-latest
environment: main
steps:
- uses: azure/login@v2
with:
client-id: ${{ vars.AZURE_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
allow-no-subscriptions: true
- name: Checkout Actions
uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -47,8 +58,4 @@ jobs:
with:
configPath: classifier
allowLabels: "info-needed|new release|error-telemetry|*english-please|translation-required"
tenantId: ${{secrets.TOOLS_TENANT_ID}}
clientId: ${{secrets.TOOLS_CLIENT_ID}}
clientSecret: ${{secrets.TOOLS_CLIENT_SECRET}}
clientScope: ${{secrets.TOOLS_CLIENT_SCOPE}}
token: ${{secrets.VSCODE_ISSUE_TRIAGE_BOT_PAT}}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ npm-debug.log
Thumbs.db
node_modules/
.build/
.vscode/extensions/**/out/
extensions/**/dist/
/out*/
/extensions/**/out/
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.17.1
20.12.1
1 change: 0 additions & 1 deletion .vscode/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
"editorconfig.editorconfig",
"github.vscode-pull-request-github",
"ms-vscode.vscode-github-issue-notebooks",
"ms-vscode.vscode-selfhost-test-provider",
"ms-vscode.extension-test-runner",
"jrieken.vscode-pr-pinger"
]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"configurations": [
{
"args": ["--extensionDevelopmentPath=${workspaceFolder}", "--enable-proposed-api=ms-vscode.vscode-selfhost-test-provider"],
"name": "Launch Extension",
"outFiles": ["${workspaceFolder}/out/**/*.js"],
"request": "launch",
"type": "extensionHost"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "vscode.typescript-language-features",
"editor.codeActionsOnSave": {
"source.organizeImports": "always"
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading