-
Notifications
You must be signed in to change notification settings - Fork 162
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
Remove schema data from client message to devtool #1362
Remove schema data from client message to devtool #1362
Conversation
#327 Bundle Size — 916.35KiB (+0.28%).Warning Bundle contains 32 duplicate packages – View duplicate packages Bundle metrics
|
Current #327 |
Baseline #322 |
|
---|---|---|
Initial JS | 878.95KiB (+0.29% ) |
876.4KiB |
Initial CSS | 0B |
0B |
Cache Invalidation | 1.31% |
0% |
Chunks | 5 |
5 |
Assets | 12 |
12 |
Modules | 693 (+1.46% ) |
683 |
Duplicate Modules | 45 (+28.57% ) |
35 |
Duplicate Code | 5.48% (+20.18% ) |
4.56% |
Packages | 99 |
99 |
Duplicate Packages | 31 |
31 |
Bundle size by type 1 change
1 regression
Current #327 |
Baseline #322 |
|
---|---|---|
JS | 878.95KiB (+0.29% ) |
876.4KiB |
IMG | 35.85KiB |
35.85KiB |
HTML | 810B |
810B |
Other | 778B |
778B |
Bundle analysis report Branch hehaijin:remove-schema-from-mess... Project dashboard
@jerelmiller could you take a look? |
e3cc3be
to
6771365
Compare
Hey @hehaijin this is a really great find! The reasoning here makes sense. The only thing that uses that introspection query is the explorer since it uses the apollo client instance to send queries. No reason we need to hang onto that. Would you mind adding a changeset? I'll be happy to merge and get this released as soon as you do 🙂. Thanks so much for looking into this! I'm sure this will be super helpful for you app. That memory and CPU savings is nuts! |
6771365
to
80b5b7c
Compare
@jerelmiller Thanks for review. Added change set. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔥 Thanks again! Looking forward to getting this one out.
Schema data is requested by 'IntrospectionQuery'
for showing documentation in dev tool for the explorer tab.
It is removed from queries and cache tab as no need to show there.
However, for each message to sync client data to dev tools,
the schema data is still included in each message, and needs to be
stringified/parsed/processed/GCed for each message.
This creates big performance issue when schema is big.
by removing it I see a big reduction in memory and cpu usage.