-
Notifications
You must be signed in to change notification settings - Fork 294
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
Reduce web bundle size #10307
Labels
debt
Code quality issues
Comments
This was referenced Jun 7, 2022
Merged
Merged
Closed
19 tasks
Closing this for now, as I do not think anything else needs to beon done here. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Currently the unzipped bundle size for Web bits is 4.67MB. Considering that the web extension doesn't support bundle splitting, a large bundle file means long download and evaluation (activation).
There have been quite some good efforts to reduce the bundle size. We can follow the same patterns and also leverage the eslint rules to ensure that we don't overlook them in the future. From a 10000 feet bird view, we can do at least following to bring down the bundle size noticeably:
moment.js
as external as it's not used by us, orjupyterlab
sub-components we depend onsemver
is used for Python intepreter and Python extension versions check, we probably don't need this in Web. If so, make sure we are not referecingsemver
in Web related code pathshash
. We usesha1
,sha256
,sha512
only, no need to reference them all. Also we can validate if we need all three sha algorithms.fnv
. Originally introduced for A/B testing in Python db297c4. The code sets the default algorithm tofnv
and now it's used as default way to generate file hash https://github.com/microsoft/vscode-jupyter/blob/main/src/kernels/jupyter/preferredRemoteKernelIdProvider.ts#L55fnv
, we would need a migration plan to move fromfnv
to simpler hashes assha512
.jupyterlab/services
instead of the whole bundleurl-parse
with inhousevscode.Uri.parse
The text was updated successfully, but these errors were encountered: