Commit graph

4295 commits

Author SHA1 Message Date
Joe Haddad
c9d9ff6a8b
Informative Error for Invalid Global CSS (#8958)
* Informative Error for Invalid Global CSS
This adds a helpful error message with a (basic) err.sh link for invalid Global CSS usage.

We'll want to expand on this topic more and offer alternatives when CSS Modules support lands.

* Update expected error message
2019-10-04 11:55:18 -04:00
Joe Haddad
d299811bfa
Convert Export to TypeScript (#8965)
This pull request converts Next.js' export CLI command to use TypeScript. This is useful for upcoming changes.
2019-10-04 11:26:44 -04:00
Joe Haddad
9af587930f
v9.0.8-canary.4 2019-10-03 20:36:43 -04:00
Joe Haddad
3f51f0ed80
Add support for CSS Module patching (#8957) 2019-10-03 20:01:40 -04:00
Joe Haddad
3762e75704
Inline relayPaintMetrics function (#8954)
This function was only used once. I missed it in review, but this should save us a few bytes.
2019-10-03 17:34:54 -04:00
Prateek Bhatnagar
5929e9da20 Add unstable_onPerformanceData helper for performance entries (#8480)
* Performance relayer for client side performance

* adding paint metrics

* fixing titles

* fixing route change measure

* accessing exports without loop

* adding more tests

* renaming the method

* adds experimental prefix to method name

* applying the suggested patch

* Update index.js
2019-10-03 15:15:23 -04:00
Jigo Palillo
923547c056 Removes importance link attribute (#8951) 2019-10-03 15:05:07 -04:00
Joe Haddad
8945cbcee0
v9.0.8-canary.3 2019-10-03 13:13:20 -04:00
Joe Haddad
89cf68dd1c
Also patch standalone usage of @zeit/next-css (#8950) 2019-10-03 13:10:42 -04:00
Joe Haddad
50bd10f5f8
Use Better Telemetry Directory (#8942)
* Use Better Telemetry Directory
So, as it turns out, storing in `node_modules` is a bad idea.

Both npm and Yarn will remove additional files when you run `npm install` or `yarn install`.

Instead, we'll store this inside of Next.js' `distDir`. This should also be cached by users, if it's not, it probably won't be any worse as compared to `node_modules`.

* Fix directory name

* Fix build setup

* Record when export session is started

* Move more into branch
2019-10-03 10:21:15 -04:00
Joe Haddad
955ea42288
Monkey patch next-sass and next-less (#8944)
* Monkey patch `next-sass` and `next-less`
These two Next.js plugins use poor webpack practices: they define plugins without resolving themselves.

As a result, the resolution root is unknown by webpack and you get into package hoisting bugs.

To fix this, we emulate the logic these packages should've performed themselves on a best-effort basis.

* Add comments explaining the monkey patch

* Fix comment

* Update packages/next/build/webpack-config.ts

Co-Authored-By: Tim Neutkens <tim@timneutkens.nl>
2019-10-03 10:08:49 -04:00
Joe Haddad
3d5af360a4
v9.0.8-canary.2 2019-10-02 19:28:51 -04:00
Joe Haddad
40b0b9b958
Reduce Timeframe That FOUC Styles Are Active (#8937)
* Show content as soon as <style> tags are added

* Add fallback removal

* Add test for when unused

* Ensure the function is ES5 compatible

* IE support

* Test it works on broken pages
2019-10-02 19:08:19 -04:00
Joe Haddad
67f7cf5627
Remove config export (#8895)
* Remove `config` export
This removes the `config` export instead of all exports.

Reverts #8889 (but with fixed behavior)

* Add test to ensure config object is dropped from client-bundle
2019-10-02 18:49:56 -04:00
Joe Haddad
9a4234cf54
Remove Recipes from Readme (#8939)
These Recipies are not regularly audited to ensure they're using the most up-to-date and suggested practices.

We'll reintroduce the idea of "recipies" in the future, for now, the examples directory is a great place to start.
2019-10-02 18:17:21 -04:00
Joe Haddad
29c1b93c89
s/Automatic Prerendering/Automatic Static Optimization/ (#8940)
* s/Automatic Prerendering/Automatic Static Optimization/

* Update more links
2019-10-02 18:03:00 -04:00
Joe Haddad
80d574ec05
Do not mix null in getCssLinks return value (#8938) 2019-10-02 17:47:34 -04:00
Joe Haddad
8391d48fc7
Change default body display setting (#8941) 2019-10-02 16:48:42 -04:00
Joe Haddad
b3cc32e9f4
v9.0.8-canary.1 2019-10-02 10:13:09 -04:00
Joe Haddad
294f835592
Add srcRoute attribute to SPRv2 Manifest (#8928)
* Add new `srcRoute` attribute to SprRoute

* Update prerender manfiest test snapshot

* Fix types
2019-10-02 09:28:38 -04:00
JJ Kasper
026d52fb4d Update to not copy static and public folders during auto export (#8923) 2019-10-02 09:19:23 -04:00
JJ Kasper
a73fb5d04a Migrate auth0 example into Next.js repo (#8802)
* Add auth0 example

* Apply suggestions from code review

Co-Authored-By: Joe Haddad <joe.haddad@zeit.co>

* Remove LICENSE

* Add create next-app section

* Update to latest @auth0/nextjs-auth0

* Update user handling

* Update profile link to use <Link>

* Update .env template to reflect guides

* Simplify example

* Update example to prefer API call (temporary hardcoded url)

* Simplify state and ensure rerenders don’t race

* Clear up import being commented

* Make code style consistent

* Update pages to reflect required auth on the client-side

* Memoize the user on window

* Update now.json instruction

* Remove meta fields

* Update docs with explanation

* Update UI for auth0 example
2019-10-01 23:19:04 +02:00
Joe Haddad
1ff5005524
v9.0.8-canary.0 2019-10-01 14:27:31 -04:00
Henrik Wenz
b5da739f56 Simplify with-redux example (#8875)
## Changes

- [x] Remove _app.js usage
- [x] Migrate withRedux HOC to functional component
- [x] Add correct display name
- [x] Remove abstractions/boilerplate from example
- [x] Add useInterval HOC from Dan
2019-10-01 12:11:20 -05:00
Joe Haddad
afa73ae46b
Update Prerender Manifest (#8918)
* Update Prerender Manifest

* Fix typescript
2019-09-30 22:08:01 -04:00
Tim Neutkens
0bcd1fc39b
Mirror actual /_error behavior in documentation 2019-09-30 11:19:03 +02:00
JJ Kasper
d483fa4969 Don't run findPagesDir in production mode (#8896) 2019-09-30 11:08:15 +02:00
takehiro-takahashi
0410a43d5a update package (#8906) 2019-09-29 20:39:32 +02:00
Tim Neutkens
4e1f1131bc v9.0.7 2019-09-28 14:45:57 +02:00
JJ Kasper
1a6a6c99c1 Add test case to prevent regression for page config (#8890) 2019-09-28 14:43:38 +02:00
Tim Neutkens
f68556473a v9.0.7-canary.10 2019-09-28 14:16:03 +02:00
JJ Kasper
6312a49e77 Don't remove path in page-config plugin (#8889) 2019-09-28 14:14:43 +02:00
Tim Neutkens
1c58c5f461 v9.0.7-canary.9 2019-09-28 12:45:56 +02:00
Joe Haddad
d9c6f20023 Remove React Suspense from Client Runtime (#8887) 2019-09-28 12:44:07 +02:00
Joe Haddad
e930961f42
v9.0.7-canary.8 2019-09-28 00:28:30 -04:00
Joe Haddad
296cfacd12
Add SPR Dynamic Routes to Manifest (#8885)
* Add SPR Dynamic Routes to Manifest
This adds dynamic routes for SPR pages to the prerender manifest so we can configure the Now Builder to handle these routes as SPR routes. Otherwise, they're treated like normal `getInitialProps` pages.

* Fix types
2019-09-27 16:34:37 -04:00
Joe Haddad
c566b322a8
v9.0.7-canary.7 2019-09-27 14:49:01 -04:00
Joe Haddad
2aa1203171
Configure the Default Revalidate (#8880)
* Configure the Default Revalidate
The default revalidate behavior should be configured by Next.js. Otherwise, the behavior might drift or change in non-semver compliant ways between Next.js and the builder (or other 3rd party setups).

* Add additional comment
2019-09-27 13:36:00 -04:00
Joe Haddad
01e5471816
Enforce natural numbers for SPR (#8882)
Per the HTTP specification, only natural numbers may be used for caching durations. We should enforce this with a really helpful error message.
2019-09-27 12:46:19 -04:00
Joe Haddad
e8522f4032
Favicon should have low importance (#8878)
* Favicon should have low importance

* Update index.js
2019-09-27 11:05:31 -04:00
Joe Haddad
9152a2a00d
Better test case for serverless export (#8865)
This checks that the program output actually claims there was a build error.
2019-09-26 13:58:42 -04:00
Joe Haddad
e3d15f98dc
Remove stale-if-error header from SPR (#8866)
The Now CDN does not support the `stale-if-error` header and already behaves like that for `stale-while-revalidate`.

Removing this header allows Now CDN to use its default headers instead of sending _only_ `stale-if-error` after stripping `s-maxage` and `stale-while-revalidate`.
2019-09-26 13:46:24 -04:00
fabienheureux
297d1466e7 Fix typo and wording in README.md (#8867)
The first corrected sentence did not feel very natural.
The second one contained a typo.
2019-09-26 17:44:49 +02:00
Joe Haddad
37a50cd387
Add support for ZEIT Now CI detection (#8864)
* Add support for ZEIT Now CI detection

* Add isNowDev to meta fields
2019-09-26 10:59:24 -04:00
Joe Haddad
ebf1fe3da5
v9.0.7-canary.6 2019-09-25 11:39:43 -04:00
JJ Kasper
2ae475e07c SPR follow ups (#8846)
* Add revalidate header and error when invalid
object from getStaticProps

* Make sprCache no-op in dev mode

* Update packages/next/next-server/server/next-server.ts

* Update tests for fixes

* Update getStaticProps error and add test

* Update manifest test

* Add validating revalidate value

* Apply suggestions from code review

Co-Authored-By: Joe Haddad <joe.haddad@zeit.co>

* Change from error to warning high revalidate value
2019-09-25 11:29:21 -04:00
JJ Kasper
fd50e51e2a
Remove extra build logs (#8839) 2019-09-24 11:37:03 -05:00
JJ Kasper
a8e3b02236 Add src directory support (#8735)
* Add find-pages-dir

* Add support for src directory

* Add test for pages dir preference

* Update comment
2019-09-24 17:15:14 +02:00
Tim Neutkens
fb9d777f6c v9.0.7-canary.5 2019-09-24 15:41:12 +02:00
Maël Nison
62fce6f572 TS / PnP compatibility (#8744)
* Fixes PnP + TS support

* Uses import on the resolved TS path (since it's not a dep)

* Fixes TS
2019-09-24 14:54:52 +02:00