-
Notifications
You must be signed in to change notification settings - Fork 27.5k
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
New example: with-relay-modern-typescript #10790
New example: with-relay-modern-typescript #10790
Conversation
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Decrease detected ✓)General
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Serverless bundles Overall decrease ✓
Commit: 1285a64 |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
buildDuration | 10.3s | 10.3s | |
nodeModulesSize | 56.3 MB | 56.3 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.js gzip | 5.76 kB | 5.76 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..67cb.js gzip | 9.69 kB | 9.69 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 55.3 kB | 55.3 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.79 kB | 4.79 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.64 kB | 6.64 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.3 kB | 51.3 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 18.9 kB | 18.9 kB | ✓ |
Overall change | 18.9 kB | 18.9 kB | ✓ |
Client Pages
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.js gzip | 1.07 kB | 1.07 kB | ✓ |
_error.js gzip | 2.98 kB | 2.98 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 1.89 kB | 1.89 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.38 kB | 7.38 kB | ✓ |
Client Pages Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.module.js gzip | 589 B | 589 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.27 kB | 5.27 kB | ✓ |
Client Build Manifests
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_error.js gzip | 292 kB | 292 kB | |
404.html gzip | 1.34 kB | 1.34 kB | ✓ |
hooks.html gzip | 975 B | 975 B | ✓ |
index.js gzip | 292 kB | 292 kB | |
link.js gzip | 299 kB | 300 kB | |
routerDirect.js gzip | 298 kB | 298 kB | -348 B |
withRouter.js gzip | 299 kB | 299 kB | |
Overall change | 1.48 MB | 1.48 MB |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
buildDuration | 10.5s | 10.3s | -231ms |
nodeModulesSize | 54.8 MB | 54.8 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.js gzip | 5.77 kB | 5.77 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..8eb0.js gzip | 9.78 kB | 9.78 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 55.4 kB | 55.4 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.71 kB | 6.71 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.4 kB | 51.4 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.js gzip | 1.09 kB | 1.09 kB | ✓ |
_error.js gzip | 2.97 kB | 2.97 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 1.89 kB | 1.89 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.39 kB | 7.39 kB | ✓ |
Client Pages Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_error.js gzip | 293 kB | 293 kB | |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 956 B | 956 B | ✓ |
index.js gzip | 293 kB | 293 kB | |
link.js gzip | 301 kB | 301 kB | -170 B |
routerDirect.js gzip | 300 kB | 300 kB | |
withRouter.js gzip | 300 kB | 300 kB | -51 B |
Overall change | 1.49 MB | 1.49 MB |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
buildDuration | 12.1s | 12s | -77ms |
nodeModulesSize | 54.8 MB | 54.8 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.js gzip | 5.77 kB | 5.77 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..8eb0.js gzip | 9.78 kB | 9.78 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 55.4 kB | 55.4 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.71 kB | 6.71 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.4 kB | 51.4 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.js gzip | 1.09 kB | 1.09 kB | ✓ |
_error.js gzip | 2.97 kB | 2.97 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 1.89 kB | 1.89 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.39 kB | 7.39 kB | ✓ |
Client Pages Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_error.js gzip | 293 kB | 293 kB | |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 956 B | 956 B | ✓ |
index.js gzip | 294 kB | 293 kB | -485 B |
link.js gzip | 301 kB | 302 kB | |
routerDirect.js gzip | 300 kB | 300 kB | |
withRouter.js gzip | 300 kB | 300 kB | -230 B |
Overall change | 1.49 MB | 1.49 MB |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
buildDuration | 11.8s | 12.2s | |
nodeModulesSize | 54.8 MB | 54.8 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.js gzip | 5.77 kB | 5.77 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..8eb0.js gzip | 9.78 kB | 9.78 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 55.4 kB | 55.4 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.78 kB | 4.78 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
de003c3a9d30..dule.js gzip | 6.71 kB | 6.71 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 51.4 kB | 51.4 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 26.3 kB | 26.3 kB | ✓ |
Overall change | 26.3 kB | 26.3 kB | ✓ |
Client Pages
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.js gzip | 1.09 kB | 1.09 kB | ✓ |
_error.js gzip | 2.97 kB | 2.97 kB | ✓ |
hooks.js gzip | 664 B | 664 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 1.89 kB | 1.89 kB | ✓ |
routerDirect.js gzip | 279 B | 279 B | ✓ |
withRouter.js gzip | 278 B | 278 B | ✓ |
Overall change | 7.39 kB | 7.39 kB | ✓ |
Client Pages Modern
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_app.module.js gzip | 594 B | 594 B | ✓ |
_error.module.js gzip | 2.08 kB | 2.08 kB | ✓ |
hooks.module.js gzip | 370 B | 370 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 1.48 kB | 1.48 kB | ✓ |
routerDirect..dule.js gzip | 271 B | 271 B | ✓ |
withRouter.m..dule.js gzip | 270 B | 270 B | ✓ |
Overall change | 5.28 kB | 5.28 kB | ✓ |
Client Build Manifests
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | bdombro/next.js with-relay-modern-typescript-example | Change | |
---|---|---|---|
_error.js gzip | 294 kB | 293 kB | -259 B |
404.html gzip | 1.32 kB | 1.32 kB | ✓ |
hooks.html gzip | 956 B | 956 B | ✓ |
index.js gzip | 293 kB | 293 kB | |
link.js gzip | 301 kB | 301 kB | |
routerDirect.js gzip | 300 kB | 300 kB | -163 B |
withRouter.js gzip | 299 kB | 300 kB | |
Overall change | 1.49 MB | 1.49 MB |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Decrease detected ✓)General
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Serverless bundles Overall decrease ✓
|
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Decrease detected ✓)General
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Serverless bundles Overall decrease ✓
|
Hi @bdombro thank you for the PR!. We're currently moving most examples to using the new data fetching methods Furthermore, we already have this exact example and there's around 200 examples right now, so we're currently not introducing duplicates of examples. |
Hi @lfades, from getServerSideProps documentation:
But here we do not want to make a server round-trip - we want to make the graphql request directly from the browser. Exactly what |
Just to be clear, we are not planning to remove/deprecate The relay example will be updated to use getStaticProps / getServerSideProps accordingly eventually, and if it doesn't cover that case we'll see if the new methods can be updated to support the ideal way to use it. Replied here also: https://twitter.com/timneutkens/status/1240903685300985856 Also updated @lfades's reply to correctly reflect the reasoning for not merging it. |
@timneutkens I wouldn't have contributed this example if I didn't think it was helpful. Converting a NextJS javascript example to strict Typescript is very tricky IMO, which is why I took the time to contribute a working example. On the other hand, converting a typescript example to javascript is easy. At the same time, there are WAY more Apollo Client examples than React Relay, so it seems a little biased towards Apollo Client. If you're concerned about the number of examples, may I recommend that we instead keep the typescript example in this PR and drop the existing javascript example? |
I'm not opposed to adding this example per-se, just want to make sure we solve the case that getInitialProps is used with the new data fetching methods instead of adding in more examples for getInitialProps |
Okay, got it! So would you consider accepting if I update upgraded to |
Yep! |
This new example is literally the same as examples/with-relay-modern except with typescript.