{"action":"created","comment":{"url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/comments/115132475","pull_request_review_id":36655376,"id":115132475,"diff_hunk":"@@ -281,6 +282,13 @@ module.exports = {\n     new ManifestPlugin({\n       fileName: 'asset-manifest.json',\n     }),\n+    new SWPrecacheWebpackPlugin({\n+      dontCacheBustUrlsMatching: /\\.\\w{8}\\./,","path":"packages/react-scripts/config/webpack.config.prod.js","position":13,"original_position":13,"commit_id":"444f0ca798b6f9fb8eb32cfc55cc7a1a072f6ee3","original_commit_id":"444f0ca798b6f9fb8eb32cfc55cc7a1a072f6ee3","user":{"login":"Timer","id":616428,"avatar_url":"https://avatars2.githubusercontent.com/u/616428?v=3","gravatar_id":"","url":"https://api.github.com/users/Timer","html_url":"https://github.com/Timer","followers_url":"https://api.github.com/users/Timer/followers","following_url":"https://api.github.com/users/Timer/following{/other_user}","gists_url":"https://api.github.com/users/Timer/gists{/gist_id}","starred_url":"https://api.github.com/users/Timer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Timer/subscriptions","organizations_url":"https://api.github.com/users/Timer/orgs","repos_url":"https://api.github.com/users/Timer/repos","events_url":"https://api.github.com/users/Timer/events{/privacy}","received_events_url":"https://api.github.com/users/Timer/received_events","type":"User","site_admin":false},"body":"I don't believe it's immediately apparent what this is doing, we should probably add a comment explaining we're trying to match any files with a hash (as generated by webpack).\r\n\r\nThis configuration is handed to the user when they eject, so anything to help them understand what's going on better. 😄","created_at":"2017-05-07T01:31:38Z","updated_at":"2017-05-07T01:41:37Z","html_url":"https://github.com/facebookincubator/create-react-app/pull/1728#discussion_r115132475","pull_request_url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728","_links":{"self":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/comments/115132475"},"html":{"href":"https://github.com/facebookincubator/create-react-app/pull/1728#discussion_r115132475"},"pull_request":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728"}}},"pull_request":{"url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728","id":109167657,"html_url":"https://github.com/facebookincubator/create-react-app/pull/1728","diff_url":"https://github.com/facebookincubator/create-react-app/pull/1728.diff","patch_url":"https://github.com/facebookincubator/create-react-app/pull/1728.patch","issue_url":"https://api.github.com/repos/facebookincubator/create-react-app/issues/1728","number":1728,"state":"open","locked":false,"title":"PWA-ification, via SWPrecacheWebpackPlugin + manifest.json","user":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars2.githubusercontent.com/u/1749548?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffposnick","html_url":"https://github.com/jeffposnick","followers_url":"https://api.github.com/users/jeffposnick/followers","following_url":"https://api.github.com/users/jeffposnick/following{/other_user}","gists_url":"https://api.github.com/users/jeffposnick/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffposnick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffposnick/subscriptions","organizations_url":"https://api.github.com/users/jeffposnick/orgs","repos_url":"https://api.github.com/users/jeffposnick/repos","events_url":"https://api.github.com/users/jeffposnick/events{/privacy}","received_events_url":"https://api.github.com/users/jeffposnick/received_events","type":"User","site_admin":false},"body":"This PR adds:\r\n\r\n- Service worker generation via [`SWPrecacheWebpackPlugin`](https://devhub.io/repos/goldhand-sw-precache-webpack-plugin).\r\n- Helper code to conditionally register the service worker if the browser supports it, and if `NODE_ENV === 'production'`.\r\n- A web app manifest and a few additional `<meta>` tags to supply metadata, which some mobile browsers use during the Add to Homescreen flow.\r\n\r\nUsing a server worker with a cache-first strategy offers performance advantages, since the network is no longer a bottleneck for fulfilling navigation requests. It does mean, however, that developers (and users) will only see deployed updates are only visible on the \"N+1\" visit to a page, since previously cached resources are updated in the background. A good portion of this PR involves updating the documentation to try to explain this model to developers, and make sure that it doesn't catch folks by surprise.\r\n\r\nFixes #192 & fixes #1086\r\n\r\nCC: @addyosmani @goldhand @ianschmitz @ryansully who provided comments on a provisional version of this PR.","created_at":"2017-03-05T22:01:28Z","updated_at":"2017-05-07T01:41:37Z","closed_at":null,"merged_at":null,"merge_commit_sha":"aa475bff2f7f5f76e71cb433aa2098218613ac15","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/facebookincubator/create-react-app/milestones/23","html_url":"https://github.com/facebookincubator/create-react-app/milestone/23","labels_url":"https://api.github.com/repos/facebookincubator/create-react-app/milestones/23/labels","id":2272429,"number":23,"title":"0.10.0","description":"","creator":{"login":"gaearon","id":810438,"avatar_url":"https://avatars3.githubusercontent.com/u/810438?v=3","gravatar_id":"","url":"https://api.github.com/users/gaearon","html_url":"https://github.com/gaearon","followers_url":"https://api.github.com/users/gaearon/followers","following_url":"https://api.github.com/users/gaearon/following{/other_user}","gists_url":"https://api.github.com/users/gaearon/gists{/gist_id}","starred_url":"https://api.github.com/users/gaearon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gaearon/subscriptions","organizations_url":"https://api.github.com/users/gaearon/orgs","repos_url":"https://api.github.com/users/gaearon/repos","events_url":"https://api.github.com/users/gaearon/events{/privacy}","received_events_url":"https://api.github.com/users/gaearon/received_events","type":"User","site_admin":false},"open_issues":57,"closed_issues":56,"state":"open","created_at":"2017-01-23T19:32:52Z","updated_at":"2017-05-07T01:20:12Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728/commits","review_comments_url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728/comments","review_comment_url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/comments{/number}","comments_url":"https://api.github.com/repos/facebookincubator/create-react-app/issues/1728/comments","statuses_url":"https://api.github.com/repos/facebookincubator/create-react-app/statuses/444f0ca798b6f9fb8eb32cfc55cc7a1a072f6ee3","head":{"label":"jeffposnick:pwa","ref":"pwa","sha":"444f0ca798b6f9fb8eb32cfc55cc7a1a072f6ee3","user":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars2.githubusercontent.com/u/1749548?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffposnick","html_url":"https://github.com/jeffposnick","followers_url":"https://api.github.com/users/jeffposnick/followers","following_url":"https://api.github.com/users/jeffposnick/following{/other_user}","gists_url":"https://api.github.com/users/jeffposnick/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffposnick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffposnick/subscriptions","organizations_url":"https://api.github.com/users/jeffposnick/orgs","repos_url":"https://api.github.com/users/jeffposnick/repos","events_url":"https://api.github.com/users/jeffposnick/events{/privacy}","received_events_url":"https://api.github.com/users/jeffposnick/received_events","type":"User","site_admin":false},"repo":{"id":81680947,"name":"create-react-app","full_name":"jeffposnick/create-react-app","owner":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars2.githubusercontent.com/u/1749548?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffposnick","html_url":"https://github.com/jeffposnick","followers_url":"https://api.github.com/users/jeffposnick/followers","following_url":"https://api.github.com/users/jeffposnick/following{/other_user}","gists_url":"https://api.github.com/users/jeffposnick/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffposnick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffposnick/subscriptions","organizations_url":"https://api.github.com/users/jeffposnick/orgs","repos_url":"https://api.github.com/users/jeffposnick/repos","events_url":"https://api.github.com/users/jeffposnick/events{/privacy}","received_events_url":"https://api.github.com/users/jeffposnick/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jeffposnick/create-react-app","description":"Create React apps with no build configuration.","fork":true,"url":"https://api.github.com/repos/jeffposnick/create-react-app","forks_url":"https://api.github.com/repos/jeffposnick/create-react-app/forks","keys_url":"https://api.github.com/repos/jeffposnick/create-react-app/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jeffposnick/create-react-app/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jeffposnick/create-react-app/teams","hooks_url":"https://api.github.com/repos/jeffposnick/create-react-app/hooks","issue_events_url":"https://api.github.com/repos/jeffposnick/create-react-app/issues/events{/number}","events_url":"https://api.github.com/repos/jeffposnick/create-react-app/events","assignees_url":"https://api.github.com/repos/jeffposnick/create-react-app/assignees{/user}","branches_url":"https://api.github.com/repos/jeffposnick/create-react-app/branches{/branch}","tags_url":"https://api.github.com/repos/jeffposnick/create-react-app/tags","blobs_url":"https://api.github.com/repos/jeffposnick/create-react-app/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jeffposnick/create-react-app/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jeffposnick/create-react-app/git/refs{/sha}","trees_url":"https://api.github.com/repos/jeffposnick/create-react-app/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jeffposnick/create-react-app/statuses/{sha}","languages_url":"https://api.github.com/repos/jeffposnick/create-react-app/languages","stargazers_url":"https://api.github.com/repos/jeffposnick/create-react-app/stargazers","contributors_url":"https://api.github.com/repos/jeffposnick/create-react-app/contributors","subscribers_url":"https://api.github.com/repos/jeffposnick/create-react-app/subscribers","subscription_url":"https://api.github.com/repos/jeffposnick/create-react-app/subscription","commits_url":"https://api.github.com/repos/jeffposnick/create-react-app/commits{/sha}","git_commits_url":"https://api.github.com/repos/jeffposnick/create-react-app/git/commits{/sha}","comments_url":"https://api.github.com/repos/jeffposnick/create-react-app/comments{/number}","issue_comment_url":"https://api.github.com/repos/jeffposnick/create-react-app/issues/comments{/number}","contents_url":"https://api.github.com/repos/jeffposnick/create-react-app/contents/{+path}","compare_url":"https://api.github.com/repos/jeffposnick/create-react-app/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jeffposnick/create-react-app/merges","archive_url":"https://api.github.com/repos/jeffposnick/create-react-app/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jeffposnick/create-react-app/downloads","issues_url":"https://api.github.com/repos/jeffposnick/create-react-app/issues{/number}","pulls_url":"https://api.github.com/repos/jeffposnick/create-react-app/pulls{/number}","milestones_url":"https://api.github.com/repos/jeffposnick/create-react-app/milestones{/number}","notifications_url":"https://api.github.com/repos/jeffposnick/create-react-app/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jeffposnick/create-react-app/labels{/name}","releases_url":"https://api.github.com/repos/jeffposnick/create-react-app/releases{/id}","deployments_url":"https://api.github.com/repos/jeffposnick/create-react-app/deployments","created_at":"2017-02-11T20:41:11Z","updated_at":"2017-02-11T20:41:13Z","pushed_at":"2017-04-27T19:59:57Z","git_url":"git://github.com/jeffposnick/create-react-app.git","ssh_url":"git@github.com:jeffposnick/create-react-app.git","clone_url":"https://github.com/jeffposnick/create-react-app.git","svn_url":"https://github.com/jeffposnick/create-react-app","homepage":null,"size":2247,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"facebookincubator:master","ref":"master","sha":"d65070edc4312eaa674d12ebc528e3bcd749e3e4","user":{"login":"facebookincubator","id":19538647,"avatar_url":"https://avatars1.githubusercontent.com/u/19538647?v=3","gravatar_id":"","url":"https://api.github.com/users/facebookincubator","html_url":"https://github.com/facebookincubator","followers_url":"https://api.github.com/users/facebookincubator/followers","following_url":"https://api.github.com/users/facebookincubator/following{/other_user}","gists_url":"https://api.github.com/users/facebookincubator/gists{/gist_id}","starred_url":"https://api.github.com/users/facebookincubator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/facebookincubator/subscriptions","organizations_url":"https://api.github.com/users/facebookincubator/orgs","repos_url":"https://api.github.com/users/facebookincubator/repos","events_url":"https://api.github.com/users/facebookincubator/events{/privacy}","received_events_url":"https://api.github.com/users/facebookincubator/received_events","type":"Organization","site_admin":false},"repo":{"id":63537249,"name":"create-react-app","full_name":"facebookincubator/create-react-app","owner":{"login":"facebookincubator","id":19538647,"avatar_url":"https://avatars1.githubusercontent.com/u/19538647?v=3","gravatar_id":"","url":"https://api.github.com/users/facebookincubator","html_url":"https://github.com/facebookincubator","followers_url":"https://api.github.com/users/facebookincubator/followers","following_url":"https://api.github.com/users/facebookincubator/following{/other_user}","gists_url":"https://api.github.com/users/facebookincubator/gists{/gist_id}","starred_url":"https://api.github.com/users/facebookincubator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/facebookincubator/subscriptions","organizations_url":"https://api.github.com/users/facebookincubator/orgs","repos_url":"https://api.github.com/users/facebookincubator/repos","events_url":"https://api.github.com/users/facebookincubator/events{/privacy}","received_events_url":"https://api.github.com/users/facebookincubator/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/facebookincubator/create-react-app","description":"Create React apps with no build configuration.","fork":false,"url":"https://api.github.com/repos/facebookincubator/create-react-app","forks_url":"https://api.github.com/repos/facebookincubator/create-react-app/forks","keys_url":"https://api.github.com/repos/facebookincubator/create-react-app/keys{/key_id}","collaborators_url":"https://api.github.com/repos/facebookincubator/create-react-app/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/facebookincubator/create-react-app/teams","hooks_url":"https://api.github.com/repos/facebookincubator/create-react-app/hooks","issue_events_url":"https://api.github.com/repos/facebookincubator/create-react-app/issues/events{/number}","events_url":"https://api.github.com/repos/facebookincubator/create-react-app/events","assignees_url":"https://api.github.com/repos/facebookincubator/create-react-app/assignees{/user}","branches_url":"https://api.github.com/repos/facebookincubator/create-react-app/branches{/branch}","tags_url":"https://api.github.com/repos/facebookincubator/create-react-app/tags","blobs_url":"https://api.github.com/repos/facebookincubator/create-react-app/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/facebookincubator/create-react-app/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/facebookincubator/create-react-app/git/refs{/sha}","trees_url":"https://api.github.com/repos/facebookincubator/create-react-app/git/trees{/sha}","statuses_url":"https://api.github.com/repos/facebookincubator/create-react-app/statuses/{sha}","languages_url":"https://api.github.com/repos/facebookincubator/create-react-app/languages","stargazers_url":"https://api.github.com/repos/facebookincubator/create-react-app/stargazers","contributors_url":"https://api.github.com/repos/facebookincubator/create-react-app/contributors","subscribers_url":"https://api.github.com/repos/facebookincubator/create-react-app/subscribers","subscription_url":"https://api.github.com/repos/facebookincubator/create-react-app/subscription","commits_url":"https://api.github.com/repos/facebookincubator/create-react-app/commits{/sha}","git_commits_url":"https://api.github.com/repos/facebookincubator/create-react-app/git/commits{/sha}","comments_url":"https://api.github.com/repos/facebookincubator/create-react-app/comments{/number}","issue_comment_url":"https://api.github.com/repos/facebookincubator/create-react-app/issues/comments{/number}","contents_url":"https://api.github.com/repos/facebookincubator/create-react-app/contents/{+path}","compare_url":"https://api.github.com/repos/facebookincubator/create-react-app/compare/{base}...{head}","merges_url":"https://api.github.com/repos/facebookincubator/create-react-app/merges","archive_url":"https://api.github.com/repos/facebookincubator/create-react-app/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/facebookincubator/create-react-app/downloads","issues_url":"https://api.github.com/repos/facebookincubator/create-react-app/issues{/number}","pulls_url":"https://api.github.com/repos/facebookincubator/create-react-app/pulls{/number}","milestones_url":"https://api.github.com/repos/facebookincubator/create-react-app/milestones{/number}","notifications_url":"https://api.github.com/repos/facebookincubator/create-react-app/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/facebookincubator/create-react-app/labels{/name}","releases_url":"https://api.github.com/repos/facebookincubator/create-react-app/releases{/id}","deployments_url":"https://api.github.com/repos/facebookincubator/create-react-app/deployments","created_at":"2016-07-17T14:55:11Z","updated_at":"2017-05-07T01:36:42Z","pushed_at":"2017-05-06T03:08:28Z","git_url":"git://github.com/facebookincubator/create-react-app.git","ssh_url":"git@github.com:facebookincubator/create-react-app.git","clone_url":"https://github.com/facebookincubator/create-react-app.git","svn_url":"https://github.com/facebookincubator/create-react-app","homepage":null,"size":2153,"stargazers_count":25858,"watchers_count":25858,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3497,"mirror_url":null,"open_issues_count":241,"forks":3497,"open_issues":241,"watchers":25858,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728"},"html":{"href":"https://github.com/facebookincubator/create-react-app/pull/1728"},"issue":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/issues/1728"},"comments":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/issues/1728/comments"},"review_comments":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728/comments"},"review_comment":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/pulls/1728/commits"},"statuses":{"href":"https://api.github.com/repos/facebookincubator/create-react-app/statuses/444f0ca798b6f9fb8eb32cfc55cc7a1a072f6ee3"}}}}
{"actor":{"display_login":"Timer"}}