Skip to content
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

[docs] Upgrade next to v9 #16546

Merged
merged 16 commits into from
Jul 21, 2019
Merged

[docs] Upgrade next to v9 #16546

merged 16 commits into from
Jul 21, 2019

Conversation

eps1lon
Copy link
Member

@eps1lon eps1lon commented Jul 10, 2019

Upgrades next to 9.0.2.

The new build output allows tracking of each page individually.

@eps1lon eps1lon added the docs Improvements or additions to the documentation label Jul 10, 2019
@mui-pr-bot
Copy link

mui-pr-bot commented Jul 10, 2019

@material-ui/core: parsed: -0.54% 😍, gzip: -0.66% 😍
@material-ui/lab: parsed: -0.01% 😍, gzip: -0.52% 😍
@material-ui/styles: parsed: -0.96% 😍, gzip: -0.48% 😍

Details of bundle changes.

Comparing: 95cbe4f...7b09a56

bundle parsed diff gzip diff prev parsed current parsed prev gzip current gzip
@material-ui/core -0.54% -0.66% 327,543 325,780 90,444 89,850
@material-ui/core/Paper -0.74% -0.43% 68,477 67,971 20,410 20,322
@material-ui/core/Paper.esm +0.01% 🔺 -0.09% 61,761 61,770 19,177 19,160
@material-ui/core/Popper 0.00% +0.07% 🔺 28,896 28,896 10,394 10,401
@material-ui/core/Textarea 0.00% +0.04% 🔺 5,534 5,534 2,369 2,370
@material-ui/core/TrapFocus 0.00% 0.00% 3,808 3,808 1,602 1,602
@material-ui/core/styles/createMuiTheme 0.00% -0.05% 16,156 16,156 5,816 5,813
@material-ui/core/useMediaQuery 0.00% +0.31% 🔺 3,098 3,098 1,310 1,314
@material-ui/lab -0.01% -0.52% 141,699 141,684 43,813 43,585
@material-ui/styles -0.96% -0.48% 51,886 51,387 15,380 15,306
@material-ui/system -0.01% -0.13% 15,576 15,574 4,445 4,439
Button +0.08% 🔺 0.00% 79,711 79,776 24,358 24,359
Modal +0.07% 🔺 +1.97% 🔺 14,603 14,613 5,126 5,227
Portal 0.00% +0.26% 🔺 3,471 3,471 1,568 1,572
Rating +0.10% 🔺 -0.00% 70,267 70,334 22,068 22,067
Slider +0.01% 🔺 -0.00% 75,096 75,105 23,311 23,310
colorManipulator 0.00% 0.00% 3,904 3,904 1,543 1,543
docs.landing -0.20% +0.11% 🔺 54,357 54,246 13,915 13,930
docs.main -1.15% -0.26% 646,829 639,411 203,055 202,521
packages/material-ui/build/umd/material-ui.production.min.js 0.00% 0.00% 299,949 299,949 86,208 86,208
docs: / +Infinity% 🔺 -Infinity% 0 58,200 0 -1
docs: /_app +Infinity% 🔺 -Infinity% 0 134,000 0 -1
docs: /_error +Infinity% 🔺 -Infinity% 0 2,110 0 -1
docs: /blog/2019-developer-survey-results +Infinity% 🔺 -Infinity% 0 13,600 0 -1
docs: /blog/april-2019-update +Infinity% 🔺 -Infinity% 0 4,700 0 -1
docs: /blog/june-2019-update +Infinity% 🔺 -Infinity% 0 2,280 0 -1
docs: /blog/march-2019-update +Infinity% 🔺 -Infinity% 0 3,260 0 -1
docs: /blog/material-ui-v4-is-out +Infinity% 🔺 -Infinity% 0 22,600 0 -1
docs: /blog/may-2019-update +Infinity% 🔺 -Infinity% 0 2,830 0 -1
docs: /components/about-the-lab +Infinity% 🔺 -Infinity% 0 6,450 0 -1
docs: /components/app-bar +Infinity% 🔺 -Infinity% 0 146,000 0 -1
docs: /components/autocomplete +Infinity% 🔺 -Infinity% 0 311,000 0 -1
docs: /components/avatars +Infinity% 🔺 -Infinity% 0 26,400 0 -1
docs: /components/badges +Infinity% 🔺 -Infinity% 0 66,500 0 -1
docs: /components/bottom-navigation +Infinity% 🔺 -Infinity% 0 27,700 0 -1
docs: /components/box +Infinity% 🔺 -Infinity% 0 32,900 0 -1
docs: /components/breadcrumbs +Infinity% 🔺 -Infinity% 0 109,000 0 -1
docs: /components/buttons +Infinity% 🔺 -Infinity% 0 252,000 0 -1
docs: /components/cards +Infinity% 🔺 -Infinity% 0 76,900 0 -1
docs: /components/checkboxes +Infinity% 🔺 -Infinity% 0 69,500 0 -1
docs: /components/chips +Infinity% 🔺 -Infinity% 0 121,000 0 -1
docs: /components/click-away-listener +Infinity% 🔺 -Infinity% 0 13,300 0 -1
docs: /components/container +Infinity% 🔺 -Infinity% 0 12,800 0 -1
docs: /components/css-baseline +Infinity% 🔺 -Infinity% 0 19,300 0 -1
docs: /components/dialogs +Infinity% 🔺 -Infinity% 0 231,000 0 -1
docs: /components/dividers +Infinity% 🔺 -Infinity% 0 54,200 0 -1
docs: /components/drawers +Infinity% 🔺 -Infinity% 0 233,000 0 -1
docs: /components/expansion-panels +Infinity% 🔺 -Infinity% 0 88,500 0 -1
docs: /components/grid +Infinity% 🔺 -Infinity% 0 161,000 0 -1
docs: /components/grid-list +Infinity% 🔺 -Infinity% 0 59,000 0 -1
docs: /components/hidden +Infinity% 🔺 -Infinity% 0 56,700 0 -1
docs: /components/icons +Infinity% 🔺 -Infinity% 0 149,000 0 -1
docs: /components/links +Infinity% 🔺 -Infinity% 0 58,600 0 -1
docs: /components/lists +Infinity% 🔺 -Infinity% 0 184,000 0 -1
docs: /components/menus +Infinity% 🔺 -Infinity% 0 91,200 0 -1
docs: /components/modal +Infinity% 🔺 -Infinity% 0 37,600 0 -1
docs: /components/no-ssr +Infinity% 🔺 -Infinity% 0 16,200 0 -1
docs: /components/paper +Infinity% 🔺 -Infinity% 0 9,500 0 -1
docs: /components/pickers +Infinity% 🔺 -Infinity% 0 383,000 0 -1
docs: /components/popover +Infinity% 🔺 -Infinity% 0 72,100 0 -1
docs: /components/popper +Infinity% 🔺 -Infinity% 0 120,000 0 -1
docs: /components/portal +Infinity% 🔺 -Infinity% 0 12,200 0 -1
docs: /components/progress +Infinity% 🔺 -Infinity% 0 104,000 0 -1
docs: /components/radio-buttons +Infinity% 🔺 -Infinity% 0 60,800 0 -1
docs: /components/rating +Infinity% 🔺 -Infinity% 0 42,900 0 -1
docs: /components/selects +Infinity% 🔺 -Infinity% 0 178,000 0 -1
docs: /components/slider +Infinity% 🔺 -Infinity% 0 80,600 0 -1
docs: /components/snackbars +Infinity% 🔺 -Infinity% 0 114,000 0 -1
docs: /components/speed-dial +Infinity% 🔺 -Infinity% 0 62,100 0 -1
docs: /components/steppers +Infinity% 🔺 -Infinity% 0 213,000 0 -1
docs: /components/switches +Infinity% 🔺 -Infinity% 0 75,800 0 -1
docs: /components/tables +Infinity% 🔺 -Infinity% 0 779,000 0 -1
docs: /components/tabs +Infinity% 🔺 -Infinity% 0 167,000 0 -1
docs: /components/text-fields +Infinity% 🔺 -Infinity% 0 304,000 0 -1
docs: /components/textarea-autosize +Infinity% 🔺 -Infinity% 0 5,890 0 -1
docs: /components/toggle-button +Infinity% 🔺 -Infinity% 0 23,900 0 -1
docs: /components/tooltips +Infinity% 🔺 -Infinity% 0 98,400 0 -1
docs: /components/transfer-list +Infinity% 🔺 -Infinity% 0 51,400 0 -1
docs: /components/transitions +Infinity% 🔺 -Infinity% 0 62,500 0 -1
docs: /components/typography +Infinity% 🔺 -Infinity% 0 38,800 0 -1
docs: /components/use-media-query +Infinity% 🔺 -Infinity% 0 55,100 0 -1
docs: /customization/breakpoints +Infinity% 🔺 -Infinity% 0 80,800 0 -1
docs: /customization/color +Infinity% 🔺 -Infinity% 0 97,200 0 -1
docs: /customization/components +Infinity% 🔺 -Infinity% 0 168,000 0 -1
docs: /customization/default-theme +Infinity% 🔺 -Infinity% 0 79,000 0 -1
docs: /customization/density +Infinity% 🔺 -Infinity% 0 22,600 0 -1
docs: /customization/globals +Infinity% 🔺 -Infinity% 0 20,100 0 -1
docs: /customization/palette +Infinity% 🔺 -Infinity% 0 57,500 0 -1
docs: /customization/spacing +Infinity% 🔺 -Infinity% 0 12,700 0 -1
docs: /customization/themes +Infinity% 🔺 -Infinity% 0 62,200 0 -1
docs: /customization/typography +Infinity% 🔺 -Infinity% 0 550,000 0 -1
docs: /customization/z-index +Infinity% 🔺 -Infinity% 0 9,810 0 -1
docs: /discover-more/backers +Infinity% 🔺 -Infinity% 0 6,860 0 -1
docs: /discover-more/changelog +Infinity% 🔺 -Infinity% 0 3,630 0 -1
docs: /discover-more/community +Infinity% 🔺 -Infinity% 0 5,520 0 -1
docs: /discover-more/governance +Infinity% 🔺 -Infinity% 0 6,880 0 -1
docs: /discover-more/languages +Infinity% 🔺 -Infinity% 0 11,800 0 -1
docs: /discover-more/related-projects +Infinity% 🔺 -Infinity% 0 18,900 0 -1
docs: /discover-more/roadmap +Infinity% 🔺 -Infinity% 0 6,690 0 -1
docs: /discover-more/showcase +Infinity% 🔺 -Infinity% 0 74,100 0 -1
docs: /discover-more/team +Infinity% 🔺 -Infinity% 0 22,800 0 -1
docs: /discover-more/vision +Infinity% 🔺 -Infinity% 0 19,100 0 -1
docs: /getting-started/example-projects +Infinity% 🔺 -Infinity% 0 24,200 0 -1
docs: /getting-started/faq +Infinity% 🔺 -Infinity% 0 154,000 0 -1
docs: /getting-started/installation +Infinity% 🔺 -Infinity% 0 31,400 0 -1
docs: /getting-started/learn +Infinity% 🔺 -Infinity% 0 34,600 0 -1
docs: /getting-started/page-layout-examples +Infinity% 🔺 -Infinity% 0 30,600 0 -1
docs: /getting-started/page-layout-examples/album +Infinity% 🔺 -Infinity% 0 12,200 0 -1
docs: /getting-started/page-layout-examples/blog +Infinity% 🔺 -Infinity% 0 34,700 0 -1
docs: /getting-started/page-layout-examples/checkout +Infinity% 🔺 -Infinity% 0 56,100 0 -1
docs: /getting-started/page-layout-examples/dashboard +Infinity% 🔺 -Infinity% 0 520,000 0 -1
docs: /getting-started/page-layout-examples/pricing +Infinity% 🔺 -Infinity% 0 27,400 0 -1
docs: /getting-started/page-layout-examples/sign-in +Infinity% 🔺 -Infinity% 0 54,300 0 -1
docs: /getting-started/page-layout-examples/sign-in-side +Infinity% 🔺 -Infinity% 0 54,600 0 -1
docs: /getting-started/page-layout-examples/sign-up +Infinity% 🔺 -Infinity% 0 54,800 0 -1
docs: /getting-started/page-layout-examples/sticky-footer +Infinity% 🔺 -Infinity% 0 2,530 0 -1
docs: /getting-started/supported-components +Infinity% 🔺 -Infinity% 0 73,900 0 -1
docs: /getting-started/supported-platforms +Infinity% 🔺 -Infinity% 0 23,900 0 -1
docs: /getting-started/usage +Infinity% 🔺 -Infinity% 0 32,200 0 -1
docs: /guides/api +Infinity% 🔺 -Infinity% 0 62,100 0 -1
docs: /guides/composition +Infinity% 🔺 -Infinity% 0 113,000 0 -1
docs: /guides/flow +Infinity% 🔺 -Infinity% 0 5,710 0 -1
docs: /guides/interoperability +Infinity% 🔺 -Infinity% 0 190,000 0 -1
docs: /guides/migration-v0x +Infinity% 🔺 -Infinity% 0 52,300 0 -1
docs: /guides/migration-v3 +Infinity% 🔺 -Infinity% 0 129,000 0 -1
docs: /guides/minimizing-bundle-size +Infinity% 🔺 -Infinity% 0 45,700 0 -1
docs: /guides/responsive-ui +Infinity% 🔺 -Infinity% 0 14,400 0 -1
docs: /guides/right-to-left +Infinity% 🔺 -Infinity% 0 50,000 0 -1
docs: /guides/server-rendering +Infinity% 🔺 -Infinity% 0 58,600 0 -1
docs: /guides/testing +Infinity% 🔺 -Infinity% 0 50,200 0 -1
docs: /guides/typescript +Infinity% 🔺 -Infinity% 0 79,200 0 -1
docs: /performance/table-component +Infinity% 🔺 -Infinity% 0 1,530 0 -1
docs: /performance/table-emotion +Infinity% 🔺 -Infinity% 0 27,100 0 -1
docs: /performance/table-hook +Infinity% 🔺 -Infinity% 0 1,610 0 -1
docs: /performance/table-mui +Infinity% 🔺 -Infinity% 0 8,320 0 -1
docs: /performance/table-raw +Infinity% 🔺 -Infinity% 0 1,280 0 -1
docs: /performance/table-styled-components +Infinity% 🔺 -Infinity% 0 45,600 0 -1
docs: /premium-themes/instapaper +Infinity% 🔺 -Infinity% 0 108,000 0 -1
docs: /premium-themes/onepirate +Infinity% 🔺 -Infinity% 0 58,900 0 -1
docs: /premium-themes/onepirate/forgot-password +Infinity% 🔺 -Infinity% 0 87,500 0 -1
docs: /premium-themes/onepirate/privacy +Infinity% 🔺 -Infinity% 0 80,100 0 -1
docs: /premium-themes/onepirate/sign-in +Infinity% 🔺 -Infinity% 0 88,000 0 -1
docs: /premium-themes/onepirate/sign-up +Infinity% 🔺 -Infinity% 0 88,200 0 -1
docs: /premium-themes/onepirate/terms +Infinity% 🔺 -Infinity% 0 103,000 0 -1
docs: /premium-themes/paperbase +Infinity% 🔺 -Infinity% 0 64,900 0 -1
docs: /premium-themes/tweeper +Infinity% 🔺 -Infinity% 0 117,000 0 -1
docs: /styles/advanced +Infinity% 🔺 -Infinity% 0 405,000 0 -1
docs: /styles/api +Infinity% 🔺 -Infinity% 0 126,000 0 -1
docs: /styles/basics +Infinity% 🔺 -Infinity% 0 89,000 0 -1
docs: /system/api +Infinity% 🔺 -Infinity% 0 77,800 0 -1
docs: /system/basics +Infinity% 🔺 -Infinity% 0 198,000 0 -1
docs: /system/borders +Infinity% 🔺 -Infinity% 0 43,500 0 -1
docs: /system/display +Infinity% 🔺 -Infinity% 0 63,500 0 -1
docs: /system/flexbox +Infinity% 🔺 -Infinity% 0 75,400 0 -1
docs: /system/palette +Infinity% 🔺 -Infinity% 0 32,800 0 -1
docs: /system/positions +Infinity% 🔺 -Infinity% 0 26,900 0 -1
docs: /system/shadows +Infinity% 🔺 -Infinity% 0 26,400 0 -1
docs: /system/sizing +Infinity% 🔺 -Infinity% 0 35,200 0 -1
docs: /system/spacing +Infinity% 🔺 -Infinity% 0 54,700 0 -1
docs: /system/typography +Infinity% 🔺 -Infinity% 0 50,800 0 -1
docs: /versions +Infinity% 🔺 -Infinity% 0 78,700 0 -1

Generated by 🚫 dangerJS against 7b09a56

@eps1lon eps1lon force-pushed the docs/upgrade-next branch from ddc629e to 8520640 Compare July 10, 2019 11:39
@eps1lon eps1lon force-pushed the docs/upgrade-next branch from 8520640 to 23a1284 Compare July 19, 2019 21:34
@eps1lon eps1lon changed the title [docs] Upgrade next [docs] Upgrade next to v9 Jul 19, 2019
@eps1lon eps1lon force-pushed the docs/upgrade-next branch from b36c39d to 8a4ab7e Compare July 19, 2019 22:23
@eps1lon eps1lon marked this pull request as ready for review July 19, 2019 22:50
@eps1lon eps1lon requested a review from oliviertassinari July 19, 2019 22:54
* parses output from next build to size snapshot format
* @returns {[string, { gzip: number, files: number, packages: number }][]}
*/
async function getNextPagesSize() {
Copy link
Member

@oliviertassinari oliviertassinari Jul 20, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to keep track of all the documentation pages? If I could trade all the documentation pages with all the components bundle size, I would :).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to keep track of all the documentation pages?

It helps spotting ES modules issues

If I could trade all the documentation pages with all the components bundle size, I would :).

You don't need to trade them. Just add them to the tracking.

Copy link
Member

@oliviertassinari oliviertassinari Jul 21, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It helps spotting ES modules issues

Ok, I was assuming that tracking some key pages, like the home and the button, text field pages would be enough to fix systematic problems.

My question had the following background motivation: tracking all the documentation pages opens the door to optimize specific pages in particular. I don't think it would yield the best return on our time. So I was wondering if we could not collect the data to prevent this in the first place.

However, the counter-argument to it is that we might spot some pages that have an abnormal bundle size, most likely related to third-party libraries we bundle, from the demos. Given that people copy & paste the demos, our users will be impacted too.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tracking all the documentation pages opens the door to optimize specific pages in particular. I don't think it would yield the best return on our time. So I was wondering if we could not collect the data to prevent this in the first place.

Yeah we need to moderate ourselves if it comes to that. But specifically #16046 will target various pages. Only tracking pages with demos might make more sense but then other things might fall through the cracks.

I'd rather have the data available and then limit the view if it becomes to noisy instead of limiting the data.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

scripts/sizeSnapshot/create.js Outdated Show resolved Hide resolved
docs/package.json Outdated Show resolved Hide resolved
Co-Authored-By: Olivier Tassinari <olivier.tassinari@gmail.com>
@eps1lon
Copy link
Member Author

eps1lon commented Jul 21, 2019

@material-ui/core: parsed: -0.54% heart_eyes, gzip: -0.66% heart_eyes

Just want to say that we should probably use resolutions to force a single version of packages concerned with transpilation. next insisting on pinning those to patches is really harmful and they don't even apply their reasoning completely: babel pins their dependencies to majors which means everything concerned with transpilation isn't even pinned to patches. Just the surface level.

@eps1lon eps1lon merged commit 97999a6 into mui:master Jul 21, 2019
@eps1lon eps1lon deleted the docs/upgrade-next branch July 21, 2019 09:22
@oliviertassinari
Copy link
Member

oliviertassinari commented Jul 21, 2019

next insisting on pinning those to patches is really harmful

I agree, it's not ideal, did you try to convince them otherwise?

@eps1lon
Copy link
Member Author

eps1lon commented Jul 21, 2019

I agree, it's not ideal, did you try to convince them otherwise?

Well the issue got shut down immediately with the usual panicky response: Two versions (out of a thousand) broke SemVer contracts so we don't use SemVer anymore. Pretty curious attitude. Wonder if they deal with all bugs like this: If it breaks once we'll never use it again.

@oliviertassinari
Copy link
Member

Yeah, it's a hard tradeoff to make. It would be simpler for them if they had fewer dependencies. They have x10 more than us 🙃:

@oliviertassinari
Copy link
Member

oliviertassinari commented Jul 23, 2019

I have caught an important issue with Next.js v9, it introduces a redirection to all the URLs. It's a significant SEO issue. It was caught by Ahrefs (it should be all green):

Capture d’écran 2019-07-23 à 17 25 05

I'm looking into why. We can't release a new version until this problem is fixed.

@eps1lon
Copy link
Member Author

eps1lon commented Jul 23, 2019

Please describe charts and include a before state. These posts are nothing but inflammatory. Let's keep our cool here.

@oliviertassinari
Copy link
Member

No need to worry. We will find a solution, working on generating the chart, before it :).

@oliviertassinari
Copy link
Member

oliviertassinari commented Jul 23, 2019

The redirection stats on Next.js v8 are not much better. The pages are also full of redirections. I have found the beginning of an answer. I will soon submit a pull request to get closer to a 100% crawling score. My plan:

  • Change the trailing option of Next.js v9 to behave like v8, this way, we will keep the same canonical URLs. That should probably be our concern n°1.
  • Fix the wrong URLs, pointing to pages without a leading slash. This seems to impact i18n pages, only.

Capture d’écran 2019-07-23 à 18 11 03

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Improvements or additions to the documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants