Description
This plan captures our work in November. This is a 5-week iteration. We will ship our November Update in early December.
Last month we focussed on getting our issue database back in shape and we made great progress. As this included bug fixing and debt work, unlike in other months, we'll start with feature work right away and skip our typical debt week. Unsurprisingly, November is densely packed with feature work all across VS Code. It stretched from addressing paper cuts all the way to big-rock items such as settings sync and more flexible workbench layout. You also see a new Web
section. With the public availability of Visual Studio Online you can now use VS Code also in the browser and we'll surface any related future work on our iteration plans.
Endgame
- December 2nd, 2019: Endgame begins
- December 6th, 2019: Endgame done
The endgame details for this iteration are tracked in #85959.
Plan Items
Below is a summary of the top level plan items.
Legend of annotations:
Mark | Description |
---|---|
🏃 | work in progress |
✋ | blocked task |
💪 | stretch goal for this iteration |
🔴 | missing issue reference |
🔵 | more investigation required to remove uncertainty |
⚫ | under discussion within the team |
UX
- 🏃 Create a design toolkit for extension authors Create a design toolkit for extension authors #83952 @misolori
- 💪 Identify design inconsistencies with UI + JSON experiences Identify design inconsistencies with UI + JSON expriences #84309 @misolori
Workbench
- 🏃 Support for custom editors Custom webview editor API #77131 @mjbvz @jrieken @bpasero
- Compressed tree support in the explorer (merging sequences of single child directories in the Explorer) Explorer: Support compact folder rendering #41627 @joaomoreno
- 🏃 Settings sync support (settings, extensions, key bindings, snippets) Provide support to synchronize settings across machines #2743 @sandy081
- 🏃 Provide login support for settings sync Provide login support for settings sync #84332 @RMacfarlane
- Use icon fonts for product icons Use icon fonts for product icons #78889 @misolori @bpasero
- Show SCM decorations in the minimap Minimap: Render git status decorations #20934 @RMacfarlane
- Support search as you type across files Auto search - option to search while typing #46326 @JacksonKearl
- Support auto-expanding all search results in the search viewlet Search: Option to expand all results by default #83917 @JacksonKearl
- Copy search results in a search-results editor Display search results in a tab instead of the side bar #23931 @JacksonKearl
- Filter by type in problems view Buttons to hide errors and/or warnings and/or infos in Problems Panel - like in browsers devTools console #47354 @sandy081
- Show problems only for current active file - Show problems only for currently active file #30038 @sandy081
- Show current error in status bar - Show current error in status bar #20183 @sandy081
- Improve trusted domain support for url shorteners Allow more specific trusted domains rule #83731 @octref
- 🏃 Allow to move sidebar views to the panel and vice versa Enable Views to move between sidebar and panel (Part 1) #85164 @sbatten
- Polish custom dialogs with long contents (such as the open url confirmation) @sbatten
- Explore how to improve existing notebook implementations Notebook implementations analysis and exploration #84293 @rebornix
Editor
- 🏃 Semantic coloring - VS Code Language API and implementation Tokenization overhaul #77140 @alexandrudima
- 🏃 Semantic coloring - Syntax tokens and theming [themes] Explore theming support for semantic colors #77133 @aeschli
- Improve the editor release process with automated builds and tests monaco-editor#1668 @rebornix
Terminal
- Experimental WebGL renderer WebGL Terminal Renderer #84949 @Tyriar
Languages
- Finish Call Hierarchy navigation and align it with the find all references support Call hierarchy viewlet #83419, Add call hierarchy APIs command #83274 @jrieken
- Review and polish existing code navigation gestures, Polish existing code navigation gestures #83752 @jrieken
- Run reference search when running go-to-symbol command on target, Feature Request: open Peek References when Ctrl-click is on the symbol in its declaration #73081 @jrieken
- Show keybindings in
Refactor
menu Show keybindings in refactor menu #84101 @mjbvz - 🏃 Explore how extensions can announce all refactorings they support Code actions contribution point #82718 @mjbvz
LSP / LSIF
- Finalize LSP spec version 3.15 @dbaeumer
- Support Call Hierarchy navigation Call Hierarchy language-server-protocol#468 @dbaeumer
CSS/HTML/JSON
- Improve performance of emmet in large
html
files Tab key is extremely slow on medium-large files when emmet.triggerExpansionOnTab is enabled #71996 @octref - Explore Saas variable completion across files [scss] instellisense doesn't work when importing variables from separate file #6734 @octref
- Improve ranking of
css
properties based on statistics likechromestatus.com
[css] Order suggested CSS properties based on usage not alphabetically #3145 @octref - Improve performance of auto-rename tag (core or extension contribution) [html] provide (auto) rename of tags #47069 @octref
- 🏃 Publish blog post about our custom data support Write a blog post for Custom Data #83928 @octref
- Support SCSS Modules SASS Modules (@forward and @use) #81943 @octref
TypeScript/JavaScript
- Adopt TS v3.7 Bundle TypeScript 3.7 #83935 @mjbvz
Debug
- Investigate into using language service support for scope resolution Investigate into using language service support for scope resolution #84044 @weinand
- Improve initial debug / run experience Improve initial debug / run experience #84677 @isidorn @weinand
- Debug console - Improve presentation of input/output Clearer indication of what is input and what is output in debug console #37363 @isidorn
- Improve discoverability of 'Restart Frame' Improve discoverability of 'Restart Frame' #84045 @isidorn
- 🏃 Improve support for PWAs Master work tracking issue vscode-js-debug#56 @connor4312 @roblourens
SCM
- 🏃 Explore File History view API support for Timeline view #84297 @eamodio
- 🏃 Investigate a more organic integration between GitLens with the core SCM Investigate a more organic integration between GitLens with the core SCM #84300 @eamodio
- Adopt FileSystemProvider API: Adopt FileSystemProvider for Git #55110 @joaomoreno
Extensions
- Support extensions that can run locally and remotely (multiple extension kinds) Have extensionKind: "ui" only run in the ui #85036 @sandy081 @alexandrudima
- Adopt new extension kind type in extensions (built in and published) Adopt extension kind for those extensions defined as ui extensions #85819 team
API
- API finalization: query
- API proposals: query
- Closer engagement with the VS Code extension authors
- Make it easier for extension authors to follow our API workflow Make it easier for extension authors to follow our extension API workflow (from proposal through finalization) #84507 @eamodio @jrieken
- 🏃 Explore closer feedback loop with extension authors Explore closer feedback loop with extension authors #84506 @eamodio
Extension Contributions
- Improvements to the Remote extensions (see plan here) team
- ESLint - Improve TypeScript integration and support #802 @dbaeumer
- ESLint - Improve support for mono repositories Improve extension in a Multi repository setup with Lerna. vscode-eslint#745 @dbaeumer
- ESLint - Improve Auto fix support 'Fix all auto-fixable problems' doesn't fix as many issues as possible vscode-eslint#154 @dbaeumer
Web
- Improve support for Firefox and Safari @bpasero @rebornix
- Improve support for mobile @rebornix
- Support running VS Code Web out of sources aka
yarn web
@bpasero - Enrich
yarn web
by adding mock search provider, mock problems provider, custom task running, ... @bpasero - Provide hosted version of
yarn web
for issue validation Provide hosted version of yarn web for issue validation #84485 @bpasero - Enrich
yarn web
by adding debug support @weinand
Engineering
- 🏃 Notarization of VS Code builds for OS X/Catalina Investigate: macOS notarization #74782 @bpasero @joaomoreno
- Automatic signing of RPM packages Automate rpm signing #78727 @Tyriar
- Explore upgrade to electron 7 chore: Upgrade to electron 7.x #83796 @deepak1556
- Identify the work required to use chrome process architecture Experiment with upcoming default electron process model app.allowRendererProcessReuse #79138 @deepak1556
- Adopt
strictPropertyInitialization
EnablestrictPropertyInitialization
#78168 team - 🏃 Adopt
enableStrictFunctionTypes
enable strictFunctionTypes in VS Code codebase #81574 team - 🏃 Implement revised issue triaging workflow Implement revised issues triaging flow #83125 @kieferrm @chrmarti
- Improve build resubmission perf Build: Improve build retrigger perf by using cache.dryRun #85107 @joaomoreno
Planning
- 🏃 Develop and publish the 2020 roadmap Develop and publish 2020 roadmap #84015 @egamma @kieferrm @chrisdias
- 🏃 Collaborate with TS on their 2020 roadmap Collaborate with TypeScript on 2020 roadmap #84102 @mjbvz
Deferred Items
- 🏃 Increase automation for upgrading to newer Electron versions Automate electron upgrades #77159 @deepak1556
- 🏃 Convert native modules to NAPI Convert native module dependencies to N-API #79137 @deepak1556
- ✋ Git: Adopt editor in SCM input: Git: Adopt editor in SCM input #84831 @joaomoreno
- 💪 Setting sync support in the default Settings editor Settings sync for settings GUI #84431 @roblourens
- 💪 Support for custom views with WebView contents Support WebViews in extension contributed custom views #83911 @alexr00
- Add LSIF to the LSP portal @dbaeumer
- 💪 Support semantic coloring in the spec LSP #18 @dbaeumer
- 💪 Support semantic coloring in the LSP libraries LSP Libs #368 @dbaeumer
- Productize the TypeScript LSIF indexer issues @dbaeumer
- 🏃 Allow attaching/detaching from the debug targets Allow attaching/detaching from the debug targets #79314 @weinand
- Debug console - Support for log grouping Improve console.group in Debug Console #34981 @isidorn
- 💪 Debug console - Support to find text Debug Console should support find #4338 @isidorn