wix / import-cost

displays the import size of the package you are importing inside the code editor
https://marketplace.visualstudio.com/items?itemName=wix.vscode-import-cost
MIT License
1.35k stars 66 forks source link

Takes so long to save file #325

Open ImBIOS opened 8 months ago

ImBIOS commented 8 months ago

Type: Performance Issue

Saving takes forever

Extension version: 3.3.0 VS Code version: Code 1.85.1 (Universal) (0ee08df0cf4527e40edc9aa28f4b5bd38bbff2b2, 2023-12-13T09:48:06.308Z) OS version: Darwin arm64 23.2.0 Modes:

System Info |Item|Value| |---|---| |CPUs|Apple M2 (8 x 24)| |GPU Status|2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled| |Load (avg)|4, 5, 4| |Memory (System)|8.00GB (0.32GB free)| |Process Argv|--crash-reporter-id 6900bfa1-464b-4338-b1c6-7c44c5f8cce6| |Screen Reader|no| |VM|0%|
Process Info ``` CPU % Mem MB PID Process 6 115 2080 code main 0 41 2086 gpu-process 0 16 2087 utility-network-service 2 49 2244 shared-process 0 0 54562 /bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command= 0 25 2288 ptyHost 0 0 51867 /bin/zsh -il 2 197 51864 window [7] (manifest.ts — hero-academy) 0 74 54437 window [8] (Issue Reporter) 0 41 54441 fileWatcher [7] 19 311 54442 extensionHost [7] 0 33 54458 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node --max-old-space-size=3072 /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js --serverMode partialSemantic --useInferredProjectPerProjectRoot --disableAutomaticTypingAcquisition --cancellationPipeName /var/folders/c1/5z139dpj2ks589vgvvv2xr_m0000gn/T/vscode-typescript501/fb884c3534094efa4222/tscancellation-657122a56d89188961d0.tmp* --globalPlugins astro-ts-plugin-bundle,typescript-deno-plugin,@styled/typescript-styled-plugin,typescript-svelte-plugin,typescript-vue-plugin-bundle --pluginProbeLocations /Users/it-gaadmin/.vscode/extensions/astro-build.astro-vscode-2.5.4-darwin-arm64,/Users/it-gaadmin/.vscode/extensions/denoland.vscode-deno-3.31.0,/Users/it-gaadmin/.vscode/extensions/styled-components.vscode-styled-components-1.7.8,/Users/it-gaadmin/.vscode/extensions/svelte.svelte-vscode-108.1.0,/Users/it-gaadmin/.vscode/extensions/vue.vscode-typescript-vue-plugin-1.8.27 --locale en --noGetErrOnBackgroundUpdate --validateDefaultNpmLocation --useNodeIpc) 0 49 54459 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node --max-old-space-size=3072 /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/tsserver.js --useInferredProjectPerProjectRoot --enableTelemetry --cancellationPipeName /var/folders/c1/5z139dpj2ks589vgvvv2xr_m0000gn/T/vscode-typescript501/fb884c3534094efa4222/tscancellation-29c71096ea167bc11e72.tmp* --globalPlugins astro-ts-plugin-bundle,typescript-deno-plugin,@styled/typescript-styled-plugin,typescript-svelte-plugin,typescript-vue-plugin-bundle --pluginProbeLocations /Users/it-gaadmin/.vscode/extensions/astro-build.astro-vscode-2.5.4-darwin-arm64,/Users/it-gaadmin/.vscode/extensions/denoland.vscode-deno-3.31.0,/Users/it-gaadmin/.vscode/extensions/styled-components.vscode-styled-components-1.7.8,/Users/it-gaadmin/.vscode/extensions/svelte.svelte-vscode-108.1.0,/Users/it-gaadmin/.vscode/extensions/vue.vscode-typescript-vue-plugin-1.8.27 --locale en --noGetErrOnBackgroundUpdate --validateDefaultNpmLocation --useNodeIpc) 0 33 54471 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/typingsInstaller.js --globalTypingsCacheLocation /Users/it-gaadmin/Library/Caches/typescript/5.3 --enableTelemetry --typesMapLocation /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/node_modules/typescript/lib/typesMap.json --validateDefaultNpmLocation) 0 33 54460 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/it-gaadmin/.vscode/extensions/prisma.prisma-5.7.1/node_modules/@prisma/language-server/dist/src/bin.js --node-ipc --clientProcessId=54442) 0 41 54461 mdx-language-server 0 25 54466 /opt/homebrew/bin/deno lsp 0 33 54488 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/it-gaadmin/.vscode/extensions/formulahendry.auto-rename-tag-0.1.10/packages/server/dist/serverMain.js --node-ipc --clientProcessId=54442) 0 33 54489 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/it-gaadmin/.vscode/extensions/mtxr.sqltools-0.28.1/dist/languageserver.js --node-ipc --clientProcessId=54442) 0 180 54507 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/it-gaadmin/.vscode/extensions/dbaeumer.vscode-eslint-2.4.2/server/out/eslintServer.js --node-ipc --clientProcessId=54442) 0 41 54509 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node -r /Users/it-gaadmin/.vscode/extensions/wallabyjs.console-ninja-1.0.268/webview/tokenizer.wasm /Users/it-gaadmin/.vscode/extensions/wallabyjs.console-ninja-1.0.268/out/extension/index.js) 0 33 54517 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/json-language-features/server/dist/node/jsonServerMain --node-ipc --clientProcessId=54442) 0 41 54534 electron-nodejs (/Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin) --ms-enable-electron-run-as-node /Users/it-gaadmin/.vscode/extensions/bradlc.vscode-tailwindcss-0.10.4/dist/tailwindServer.js --node-ipc --clientProcessId=54442) ```
Workspace Info ``` | Window (manifest.ts — hero-academy) | Folder (hero-academy): 669 files | File types: js(230) json(108) tsx(37) ts(30) gz(17) pack(15) woff2(14) | png(12) func(9) old(6) | Conf files: package.json(9) project.json(1) settings.json(1) | tsconfig.json(1); ```
A/B Experiments ``` vsliv368:30146709 vsreu685:30147344 vspor879:30202332 vspor708:30202333 vspor363:30204092 vslsvsres303:30308271 vserr242:30382549 vsjup518:30340749 vshan820:30294714 vscod805:30301674 binariesv615:30325510 bridge0708:30335490 bridge0723:30353136 vsaa593cf:30376535 py29gd2263:30899288 vscaac:30438847 vsclangdf:30486550 c4g48928:30535728 dsvsc012cf:30540253 azure-dev_surveyone:30548225 f6dab269:30613381 showlangstatbar:30737416 0bi6i642:30917235 fixshowwlkth:30771522 showindicator:30805244 pythongtdpath:30769146 i26e3531:30792625 welcomedialogc:30910334 pythonidxpt:30866567 pythonnoceb:30805159 asynctok:30898717 dsvsc013:30795093 dsvsc014:30804076 dsvsc015:30845448 pythontestfixt:30902429 pythonregdiag2cf:30926736 pyreplss1:30897532 pythonmypyd1:30879173 pythoncet0:30885854 h48ei257:30885898 pythontbext0:30879054 dsvsc016:30899300 dsvsc017:30899301 dsvsc018:30899302 aa_t_chat:30882232 dsvsc019:30917259 cp7184c:30925681 ```
pnd280 commented 8 months ago

Initially I thought it was git-related extensions or VSCode itself, wasting hours trying to find a fix, turns out that this crippling extension was the culprit. While calculating deps, this extension also blocks VSCode's UI, including intellisense, source control, saving files, etc. literally unusable 👎️

ImBIOS commented 8 months ago

@pnd280 The function is good, we know which import is bigger than the other (even if it's not so accurate after we bundle it with something like Webpack), but the cons having saving each file takes forever is not worth the benefit. And it's not a crucial function either. my workflow is not affected after disabling this extension, I'm planning to uninstall it too.

wobsoriano commented 8 months ago

...and looks like this extension is not maintained. The last commit was 2 years ago.