You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following are some changes that can be made to improve the load times of the python extension:
Changes required
Load 3rd party npm modules on demand #3018 Load 3rd party npm modules on demand (in code using require)
Easy change, and should be done selectively, without having to sacrifice benefits of typechecking, etc.
Create a liter to ensure npm modules are always loaded on demand (with ability to add exceptions, e.g. fs, child_process, etc).
activateResolvedTime
We have tests today that do something similar, we need to ensure they are more granular. (compare against release and dev versions of extension - as done today).
Change interpreters list into an Observable list #3023 Observable list of interpreters (currently we need any, subsribe, filter, and similar capabitlies of interpreters, but in a non-blocking way, thats exactly that Observable lists provide - RxJs).
Short term solution could be to add new code for perf improvements
E.g. add a predicate to IInterpreterService.getInterpreters, add methods IInterpreterService.hasAny, IInterpreterService.onChange()
Following are some changes that can be made to improve the load times of the python extension:
Changes required
require)Easy change, and should be done selectively, without having to sacrifice benefits of typechecking, etc.
fs,child_process, etc).Document and notify LS and IC teams.
activate().readythings should work as expectedLong Term Changes:
We have tests today that do something similar, we need to ensure they are more granular. (compare against release and dev versions of extension - as done today).
any,subsribe,filter, and similar capabitlies of interpreters, but in a non-blocking way, thats exactly that Observable lists provide - RxJs).IInterpreterService.getInterpreters, add methodsIInterpreterService.hasAny,IInterpreterService.onChange()@Microsoft/pvsc-team /cc