Vscode: Iteration Plan for November 2017

Created on 14 Nov 2017  Â·  3Comments  Â·  Source: microsoft/vscode

This plan captures our work in November. This is a 5 week iteration. We will ship early December.

With Version 1.18 we made multi-root-folder workspaces available to everyone and we released plenty new functionality such as viewing diffs right in the editor, and we transitioned from Nemo to Dory :wink:. We also improved performance with predictably shorter startup times on Windows and optimizations of how we handle a large number of editor decorations. The performance work doesn't come as a surprise to you if you had a look at our updated roadmap.

In this iteration we'll turn the dial more toward performance and github issues housekeeping. As a consequence you will find several performance explorations and engineering items on the plan. As you know a series of feature-rich releases always takes a toll on how much we can stay atop of all of our github issues. So, if all of a sudden you see a lot of github notification, don't get scared.

Bottom line, you won't see a lot of new features in 1.19 but you'll still get a better version of VS Code.

December 11 - 22 will not be covered by a separate plan. A couple of items are at the bottom of this plan. Our January iteration starts on January 2nd, 2018.

Endgame

  • December 4th: Code freeze for the endgame
  • December 8th: Endgame done
    The endgame details for this iteration are tracked in #39540.

Plan Items

Below is a summary of the top level plan items. Given the large number of explorations, we'll diverge from our usual practice of having plan items for all bullets upfront. This time we'll add them as we go.

Legend of annotations:

| Mark | Description |
| ------------- | ------------- |
| :runner: | work in progress |
| :hand: | blocked task |
| :muscle: | stretch goal for this iteration |
| :large_blue_circle: | more details required |
| :red_circle: | missing issue reference |

Performance

  • [x] :runner: Address collected startup performance issues (see query) Team @Microsoft/vscode
  • Explore reordering of activities to improve startup time

    • [x] Explore delaying shared process on startup @joaomoreno @alexandrudima

    • [x] Explore delaying code loading of the debugger component on startup @jrieken @weinand @isidorn

  • [x] Optimize configuration reading on startup @sandy081
  • [x] :runner: Explore caching the package.json files of installed extensions #28331 @alexandrudima @sandy081

GitHub Issue Housekeeping

  • [x] Issue grooming - review, categorization, assignment #38209 Team @Microsoft/vscode
  • [x] Implement GitHub bots that make it easier to provide standardized responses #38372 @chrmarti @mjbvz

Serviceability

Language Server Protocol

  • [x] Clarify and extend protocol specification as needed @dbaeumer @aeschli
  • [x] Review and discuss proposed protocol extensions @dbaeumer @aeschli

Debug Adapter Protocol

  • [x] Clarify and extend protocol specification as needed @weinand
  • [x] Review and discuss proposed protocol extensions @weinand

Engineering

  • [x] Explore replacing the custom profiling support for slow-startup with the new inspector @jrieken
  • [ ] :runner: :muscle: Continue adoption/testing for electron 1.8.x @bpasero
  • [ ] :hand: Track high precision touch pad issue on Windows (Chromium issue) @bpasero
  • [x] Adopting tslint 5 #37212 Team @Microsoft/vscode
  • [x] Explore language packs/tooling for contributed translations #39178 @dbaeumer @sandy081
  • [x] Yeoman code generator for JS/TS provide options for more type checking @egamma
  • [x] Investigate version locking of our dev dependencies @joaomoreno
  • [x] Remove unused code #38414 Team @Microsoft/vscode

Documentation

  • [x] Debug Recipe: Write recipe for Next.js @auchenberg
  • [x] Debug Recipe: Write recipe for Meteor @auchenberg
  • [x] Debug Recipe: Write recipe for NodeMon @auchenberg
  • [x] Publish Python docs @gregvanl
  • [x] Publish Java docs @gregvanl

Deferred

  • Make smoke test more stable @joaomoreno
  • Investigate the VS Code build performance on Windows @alexandrudima
  • Investigate performance issue in the Windows installer @joaomoreno
  • Explore usage of ASAR for loose node modules @alexandrudima
  • Explore impact of using plain nodejs to spawn helper processes @alexandrudima
  • Explore improved GDPR annotations @kieferrm

December 11 - 22

Serviceability

  • Provide tooling to support users in filing performance issues Team @Microsoft/vscode

    • Interactive tools about active extensions, active processes and their memory and CPU consumption, unresponsive processes, ...

    • Generators for performance reports that can be attached to issues (installed extensions, activated extensions, processes, memory usage)

  • Explore extension health reports for users about installed extensions (thrown exceptions, activation time, …)
  • Support client side log (and log viewer) that can be shared with us when there are issues
  • Explore tools to guide users in filing issues @octref
iteration-plan

Most helpful comment

we transitioned from Nemo to Dory

Most excellent and clever way to describe the icon color change - you've made my morning sir, hat's off to you!

All 3 comments

we transitioned from Nemo to Dory

Most excellent and clever way to describe the icon color change - you've made my morning sir, hat's off to you!

Shall you give a bit of details about the item Explore impact of using plain nodejs to spawn helper processes, please?

Any issue open addressing Node.js 8.x adoption?

@albertosantini currently the spawned processes are spawned using the node that is part of electron. This helps to avoid shipping a separate node.js version with the product. This saves around 5-6MB. This plan item investigates the benefits of giving up on using electron's version of node.

Any issue open addressing Node.js 8.x adoption?

Since we ship the node version that is part of Electron the issue to adopt version 8 .x of node.js would be in the Electron repository not in this one.

Was this page helpful?
0 / 5 - 0 ratings