{"action":"opened","number":1,"pull_request":{"url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1","id":41611173,"html_url":"https://github.com/jeffposnick/polymer-starter-kit/pull/1","diff_url":"https://github.com/jeffposnick/polymer-starter-kit/pull/1.diff","patch_url":"https://github.com/jeffposnick/polymer-starter-kit/pull/1.patch","issue_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/1","number":1,"state":"open","locked":false,"title":"<platinum-sw> retooling","user":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars.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":"R: @addyosmani\r\n\r\nThis PR modifies PSK to take advantage of some of the changes that shipped with `<platinum-sw>` 1.2.0. My hope is it leads to a cleaner integration with PSK with fewer developer surprises/gotchas. I'm leaving the SW integration commented out for the time being, but I'd like to get to a point where we can ship PSK with it enabled by default.\r\n\r\nSome notable changes:\r\n- The default cache strategy is now @wibblymat's `sw-toolbox`'s [`fastest`](https://github.com/GoogleChrome/sw-toolbox#toolboxfastest) instead of [`networkFirst`](https://github.com/GoogleChrome/sw-toolbox#toolboxnetworkfirst). This will lead to better performance when making requests for cached resources, since they'll be served from the cache immediately, with the drawback of temporarily serving staler content even when online. Cached resources are effectively refreshed \"in the background\" whenever they're requested, ensuring that the next time they're requested, they're up to date. This is a common tradeoff when implementing caching.\r\n- Instead of `precache.json`, containing just the array of files to be precached, the `gulp` task now outputs `cache-config.json`, which allows for customizing all of `<platinum-sw-cache>`'s options.\r\n  - This makes it easy to disable caching completely in the `dev` environment, while enabling it in `dist`.\r\n  - It also makes it possible to include a `\"README\":` in the static `app/cache-config.json` file, letting developers know not to modify the file. (This should help with the confusion that led to @robdodson's https://github.com/PolymerElements/polymer-starter-kit/pull/215)\r\n- The generated cache config file relies on a `precacheFingerprint` to trigger the service worker upgrade flow when the list of files to precache changes, instead of serializing the file list as a service worker URL parameter. This works around [reported issues](https://github.com/PolymerElements/platinum-sw/issues/53) with a large number of precached files leading to invalid service worker URLs.\r\n- It changes the default `dev` environment port to `5000` and `dist` environment port to `5001`.\r\n  - This ensures that the `dev` and `dist` environments will no longer share a service worker.\r\n  - It makes it less likely that other local unrelated development projects running in the same browser will accidentally pick up a PSK service worker, since `5000`/`5001` aren't common default HTTP ports.\r\n- The project's name from `package.json` (falling back on the local directory name) will be used to create a distinct [Cache](https://developer.mozilla.org/en-US/docs/Web/API/Cache) object specific to that project, making it less likely for multiple PSK development projects opened in the same browser to accidentally share a cache. (This relies on developers updating their `package.json` with a meaningful value, though.)","created_at":"2015-08-04T20:04:20Z","updated_at":"2015-08-04T20:04:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1/commits","review_comments_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1/comments","review_comment_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/comments{/number}","comments_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/1/comments","statuses_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/statuses/82b00ed077056690a619b6cef38978c81b65498f","head":{"label":"jeffposnick:sw-config-changes","ref":"sw-config-changes","sha":"82b00ed077056690a619b6cef38978c81b65498f","user":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars.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":35499229,"name":"polymer-starter-kit","full_name":"jeffposnick/polymer-starter-kit","owner":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars.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/polymer-starter-kit","description":"A starting point for Polymer 1.0 apps","fork":false,"url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit","forks_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/forks","keys_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/teams","hooks_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/hooks","issue_events_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/events{/number}","events_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/events","assignees_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/assignees{/user}","branches_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/branches{/branch}","tags_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/tags","blobs_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/refs{/sha}","trees_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/statuses/{sha}","languages_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/languages","stargazers_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/stargazers","contributors_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/contributors","subscribers_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/subscribers","subscription_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/subscription","commits_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/commits{/sha}","git_commits_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/commits{/sha}","comments_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/comments{/number}","issue_comment_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/comments{/number}","contents_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/contents/{+path}","compare_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/merges","archive_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/downloads","issues_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues{/number}","pulls_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls{/number}","milestones_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/milestones{/number}","notifications_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/labels{/name}","releases_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/releases{/id}","created_at":"2015-05-12T16:21:02Z","updated_at":"2015-06-30T01:48:25Z","pushed_at":"2015-08-04T20:04:20Z","git_url":"git://github.com/jeffposnick/polymer-starter-kit.git","ssh_url":"git@github.com:jeffposnick/polymer-starter-kit.git","clone_url":"https://github.com/jeffposnick/polymer-starter-kit.git","svn_url":"https://github.com/jeffposnick/polymer-starter-kit","homepage":"","size":503,"stargazers_count":1,"watchers_count":1,"language":"HTML","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"jeffposnick:master","ref":"master","sha":"fb3df07ce49bd2f765ff37a0ffd4e085e65917eb","user":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars.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":35499229,"name":"polymer-starter-kit","full_name":"jeffposnick/polymer-starter-kit","owner":{"login":"jeffposnick","id":1749548,"avatar_url":"https://avatars.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/polymer-starter-kit","description":"A starting point for Polymer 1.0 apps","fork":false,"url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit","forks_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/forks","keys_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/teams","hooks_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/hooks","issue_events_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/events{/number}","events_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/events","assignees_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/assignees{/user}","branches_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/branches{/branch}","tags_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/tags","blobs_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/refs{/sha}","trees_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/statuses/{sha}","languages_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/languages","stargazers_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/stargazers","contributors_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/contributors","subscribers_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/subscribers","subscription_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/subscription","commits_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/commits{/sha}","git_commits_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/git/commits{/sha}","comments_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/comments{/number}","issue_comment_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/comments{/number}","contents_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/contents/{+path}","compare_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/merges","archive_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/downloads","issues_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues{/number}","pulls_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls{/number}","milestones_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/milestones{/number}","notifications_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/labels{/name}","releases_url":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/releases{/id}","created_at":"2015-05-12T16:21:02Z","updated_at":"2015-06-30T01:48:25Z","pushed_at":"2015-08-04T20:04:20Z","git_url":"git://github.com/jeffposnick/polymer-starter-kit.git","ssh_url":"git@github.com:jeffposnick/polymer-starter-kit.git","clone_url":"https://github.com/jeffposnick/polymer-starter-kit.git","svn_url":"https://github.com/jeffposnick/polymer-starter-kit","homepage":"","size":503,"stargazers_count":1,"watchers_count":1,"language":"HTML","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1"},"html":{"href":"https://github.com/jeffposnick/polymer-starter-kit/pull/1"},"issue":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/1"},"comments":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/jeffposnick/polymer-starter-kit/statuses/82b00ed077056690a619b6cef38978c81b65498f"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":4,"additions":36,"deletions":15,"changed_files":7}}