Commit graph

3277 commits

Author SHA1 Message Date
Joe Haddad
a63a493346
Refine selective page building (#6866) 2019-04-02 20:22:04 -04:00
JJ Kasper
7c57d2f5e2
v8.0.5-canary.1 2019-04-02 18:53:51 -05:00
JJ Kasper
aac50e4501
Add error message for AMP bind syntax (#6865)
* Add error message for AMP bind syntax

* Fix custom AMP scripts getting dropped

* Add data.js to package.json to include it
in releases
2019-04-02 17:32:07 -05:00
Joe Haddad
4201fb957d
Emit manifest of all page files (#6853)
* Get all modules included in build

* Add tests

* Get all modules contained per entry chunk

* Sort files

* Add specialized page entry to manifest

* Split manifest into pages and chunks key

* Update test

* Use relative paths to build directory

* Update test
2019-04-02 15:48:05 -04:00
JJ Kasper
355ded5c86
v8.0.5-canary.0 2019-04-02 13:44:39 -05:00
JJ Kasper
6344c5f0c1
Add optimizing AMP pages (#6835)
* Added amp-toolbox-optimizer and added
optimizing AMP pages as dirty and clean

* Fix amp-optimizer breaking serverless build

* Exclude amp-toolbox-optimizer from serverless build

* Added check to make sure hybrid AMP pages
optimize cleanly during export

* Add check to make sure noDirtyAmp is applied
2019-04-02 13:01:34 -05:00
Tim Neutkens
b1fdffec75
amp-bind data injection (#6840) 2019-04-02 16:09:34 +02:00
Luis Fernando Alvarez D
84fbd4b594 added async-to-promises transform (#6797)
Replaced regenerator with async-to-promises
2019-04-02 15:42:09 +02:00
Dylan Brookes
035890f9cd Fix adblock comment (#6859) 2019-04-02 04:37:04 -04:00
Joe Haddad
e6e4a15284
v8.0.4 2019-04-01 20:45:36 -04:00
Shahzeb K
25deefbba7 Avoid "ad" anywhere in the buildId (#6854)
* Added a check for ad_ in the buildId

* ad_ > ad

Co-Authored-By: lfades <luis@zeit.co>

* Update the `ad` comment

Co-Authored-By: lfades <luis@zeit.co>

* Avoid all buildId's that contain "ad"

Looking through the uBlock Origin filter list, it uses regex wildcards to avoid various things with "ad" anywhere in the string. It's a safe bet to just avoid "ad" all together (as opposed to just at the start).

* Use regex (case incensitive) to check for "ad" 

The following cases will set this regex to true:

```
/ad/i.test("somead")
/ad/i.test("someADlksdjf")
/ad/i.test("adlksdjf")
/ad/i.test("ADlksdjf")
```
2019-04-01 20:40:43 -04:00
Luis Fernando Alvarez D
742f29fba5 buildId is not an ad (#6851)
* Added a check for ad_ in the buildId

* ad_ > ad

Co-Authored-By: lfades <luis@zeit.co>

* Update the `ad` comment

Co-Authored-By: lfades <luis@zeit.co>
2019-04-01 15:22:21 -04:00
JJ Kasper
e25312b7d7
Make sure error isn't swallowed for production test on CircleCi (#6848) 2019-04-01 09:58:17 -05:00
JJ Kasper
14eef58702 Re-add chromedriver retrying from previous webdriver setup (#6846)
* Re-add previous webdriver setup with falling
back to BrowserStack setup

* Add missing webdriver imports
2019-04-01 16:09:09 +02:00
Allen
8cd7bd1b94 Fix wrong anchors and add missing link (#6845)
self explanatory
2019-04-01 15:00:11 +02:00
JJ Kasper
3a7caa628a
v8.0.4-canary.31 2019-03-31 10:33:10 -05:00
Luis Fernando Alvarez D
c864ab9324 Added useBuiltIns to babel object-rest-spread (#6805)
Use `Object.assign` for the rest-spread transform.
2019-03-31 17:30:25 +02:00
JJ Kasper
41da136b14
v8.0.4-canary.30 2019-03-30 09:38:32 -05:00
Tim Neutkens
f6786b4140 v8.0.4-canary.29 2019-03-30 14:51:00 +01:00
Tim Neutkens
99023b97e0 v8.0.4-canary.28 2019-03-30 14:33:49 +01:00
JJ Kasper
71680fb59f Fix typo in workflow (#6838)
Changed release workflow from `resolve` to `resolves`
2019-03-30 14:33:26 +01:00
Tim Neutkens
e48610ea68 v8.0.4-canary.27 2019-03-30 14:25:28 +01:00
JJ Kasper
f6439aef3d Add workflow to generate stats for release (#6836)
This adds triggering the PR Stats GitHub Action for a canary release. It compares the latest canary release with the last stable release and posts it as a comment to the commit.
2019-03-30 13:47:15 +01:00
Luis Fernando Alvarez D
6bb83272a3 Exclude transform-typeof-symbol (#6812)
Related to [create-react-app#5278](https://github.com/facebook/create-react-app/pull/5278#issue-220142150)
2019-03-30 01:54:05 +01:00
Luis Fernando Alvarez D
f81e5f4cad Added babel-plugin-dynamic-import-node (#6811)
Replaces `import()` with `require` only for the testing environment.
2019-03-30 01:50:24 +01:00
JJ Kasper
26a4eb827c Add dropping of custom scripts in AMP mode (#6830)
Drops user `<script>` tags and shows a warning in AMP mode. Right now they are only dropped in production mode and left in dev mode so the validator shows its warning since it looks like conflicting props log messages are being cleared causing them to not show. 

Closes: #6688
2019-03-29 17:20:12 +01:00
JJ Kasper
b6b0db186a Update env variables for CircleCi (#6834) 2019-03-29 11:17:47 -04:00
JJ Kasper
8b5906c888 Add error catching to firefox url query workaround (#6833)
It appears this workaround sometimes throws a `NS_ERROR_NOT_AVAILABLE` so we add error handling for it
2019-03-29 16:07:17 +01:00
JJ Kasper
533018f7d0 Update tests for BrowserStack (#6810)
Update tests to setup webdriver stuff in `jest-environment` and re-use one browser session instead of spawning one for each webdriver call to prevent creating too many BrowserStack sessions.
2019-03-29 16:05:53 +01:00
Yeoh Joer
9c2f690c0a Fix typo by replacing compatability with compatibility (#6831) 2019-03-29 09:53:00 +01:00
Luis Fernando Alvarez D
a750d1cc42
NODE_ENV is set to undefined before running a test command (#6823) 2019-03-28 17:05:18 -05:00
Danil Shashkov
2f325e0f69 Add example with astroturf (Zero runtime CSS-in-JS) (#6821)
* Add example with astroturf (Zero runtime CSS-in-JS)
2019-03-28 15:41:05 -05:00
Luis Fernando Alvarez D
51b15417f8 The custom build test now runs in production mode (#6818)
I also removed the copy it had of `runNextCommand`
2019-03-28 20:13:27 +01:00
Corbin Crutchley
0f2bd19216 with apollo and redux example: Update deps and fix build (#6733)
* with apollo and redux example: Update deps and fix build

* Fix linting errors
2019-03-27 16:02:05 -05:00
Corbin Crutchley
1d66da15a1 with apollo and redux saga example: Update deps (#6734)
* with apollo and redux saga example: Update deps

* Fix linting problems
2019-03-27 16:00:57 -05:00
Corbin Crutchley
e03266008c form handler example: Update deps and fix build from dep update (#6732)
* form handler example: Update deps and fix build from dep update

* Ran lint error fixers

* Fixes errors that occur when commit occurs

* Commit linter fixes
2019-03-27 16:12:45 -04:00
Joe Haddad
4fd794e8ae
v8.0.4-canary.26 2019-03-27 15:22:03 -04:00
Joe Haddad
b871e43601
Add a leading slash to passed pages (#6808) 2019-03-27 15:21:30 -04:00
Alexander Nanberg
20768ff372 Upgrade unfetch to v4.1.0 (#6807)
`unfetch` ^4.0.0 is already used by `isomorphic-unfetch` so this simplifies the dependency tree a tiny bit.

Release notes
https://github.com/developit/unfetch/releases/tag/4.0.0
https://github.com/developit/unfetch/releases/tag/4.1.0
2019-03-27 19:56:46 +01:00
Jason Miller
1b4b9a34ad Add a viewport meta tag by default (#6754)
* Add default viewport meta tag (fixes #6698)

* Do not inject default viewport when rendering an AMP document

* Remove redundant viewport on error page

* Plumb withSideEffect() to pass through props, then use that for isAmp.

* Add tests for viewport meta tag.

* Fix linting

* Update dedupes test
2019-03-27 11:46:44 -05:00
Joe Haddad
2efad5a2d8
v8.0.4-canary.25 2019-03-27 12:02:26 -04:00
Joe Haddad
b835e2589d
Specified page builds (#6796)
* [wip] individual page builds

* Make flag experimental and remove from main bin

* Do not split chunks when using shared runtime
2019-03-27 11:51:05 -04:00
Václav Nosek
02966afd5a [with-sentry] example: Make 'utils/sentry.js' more flexible (#6769)
* Make `ctx` optional in `captureException` function

* Make 'release' optional when calling sentry util

* Fix code style
2019-03-27 13:23:34 +01:00
Chris Cowan
1888467696 Improve with-google-analytics example (#6787)
The with-google-analytics example had the "routeChangeComplete" event listener set up in components/Page.js, but that the event listener would only be set up if the user visited a page using that component. From the example, it's not clear if google analytics can be used without making every page use a component like components/Page.js. Someone following the example may make pages that don't use components/Page.js and fail to have page views reported, or feel compelled to force a shared component into their design unnecessarily, or might even make a mistake by making multiple different components like Page.js which each add a new "routeChangeComplete" event listener, causing page views to be over-reported when the user navigates between pages using the different components.

This PR moves the "routeChangeComplete" event listener into _app.js, where it's guaranteed to be executed for every page and is more obviously decoupled from page-layout-related components.

This PR also fixes a React warning about the lack of an onChange handler on an input tag, and removes the unnecessary implementation of `getInitialProps` in _document.js (the default implementation is inherited if not present, there's nothing this example needs to do with `getInitialProps` specifically, and the body of the method seems to have been based on an old version of next's internal implementation).

This PR also fixes the url being passed to google tag manager incorrectly. It looks like page_path should be used instead of page_location because the `url` value only has the path, not the full url with the domain name, etc. (https://developers.google.com/analytics/devguides/collection/gtagjs/pages)
2019-03-27 13:21:41 +01:00
Luis Fernando Alvarez D
da9472246c Remove prop-types import in the build (#6798)
Tests don't catch this change because `isProduction &&` is always false so I tested it with a local build
2019-03-27 12:26:01 +01:00
Tomáš Hapl
99362592b9 example with orbit-components (#6793) 2019-03-27 01:49:12 +01:00
Corbin Crutchley
9504a389c0 Update dependencies of various examples (#6731)
Minor changes to examples. Updating major semver updates with only `package.json` changes. 
I've done my best to make sure that these packages.json files all have `latest` for the `nextjs` package, `cross-env` for those with `server.js` files, etc.
I also added a `package.json` to `with-dynamic-app-layout` (it was missing one previously)

Made sure to test all of these packages post-upgrade to ensure maintained functionality
2019-03-27 01:42:49 +01:00
JJ Kasper
244b0e700e
Add AMP validation on export (#6794)
* Add err.sh link and pool validation results
to wait to show error until export is finished

* Fix wording in amp-export-validation err.sh

* Update validation error message

Co-Authored-By: ijjk <22380829+ijjk@users.noreply.github.com>

* Update ways to fix text

Co-Authored-By: ijjk <22380829+ijjk@users.noreply.github.com>

* Update why the error occurred wording

Co-Authored-By: ijjk <22380829+ijjk@users.noreply.github.com>

* Update wording some more

Co-Authored-By: ijjk <22380829+ijjk@users.noreply.github.com>
2019-03-26 16:21:27 -05:00
JJ Kasper
96c628409a
v8.0.4-canary.24 2019-03-26 11:31:48 -05:00
Joe Haddad
0249b331c2
Use a shared module cache (#6791)
* [WIP] Use a shared module cache

* ID modules in development

* Revert "ID modules in development"

This reverts commit 0613d92fa2c8c7fa11a5ff5b7770d784af1cec63.

* Remove context replacement

* Only enable shared runtime in prod

* Sort settings

* Add shared runtime experimental setting

* only enable shared runtime in serverless
2019-03-26 12:30:31 -04:00