{"action":"created","issue":{"url":"https://api.github.com/repos/mozilla-services/pageshot/issues/1233","repository_url":"https://api.github.com/repos/mozilla-services/pageshot","labels_url":"https://api.github.com/repos/mozilla-services/pageshot/issues/1233/labels{/name}","comments_url":"https://api.github.com/repos/mozilla-services/pageshot/issues/1233/comments","events_url":"https://api.github.com/repos/mozilla-services/pageshot/issues/1233/events","html_url":"https://github.com/mozilla-services/pageshot/issues/1233","id":164618669,"number":1233,"title":"Running full `make all` build is slow","user":{"login":"pdehaan","id":557895,"avatar_url":"https://avatars.githubusercontent.com/u/557895?v=3","gravatar_id":"","url":"https://api.github.com/users/pdehaan","html_url":"https://github.com/pdehaan","followers_url":"https://api.github.com/users/pdehaan/followers","following_url":"https://api.github.com/users/pdehaan/following{/other_user}","gists_url":"https://api.github.com/users/pdehaan/gists{/gist_id}","starred_url":"https://api.github.com/users/pdehaan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pdehaan/subscriptions","organizations_url":"https://api.github.com/users/pdehaan/orgs","repos_url":"https://api.github.com/users/pdehaan/repos","events_url":"https://api.github.com/users/pdehaan/events{/privacy}","received_events_url":"https://api.github.com/users/pdehaan/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/mozilla-services/pageshot/milestones/2","html_url":"https://github.com/mozilla-services/pageshot/milestones/Next%20Tasks","labels_url":"https://api.github.com/repos/mozilla-services/pageshot/milestones/2/labels","id":947014,"number":2,"title":"Next Tasks","description":"Things we plan to potentially revisit in the next sprint after the current one.","creator":{"login":"ianb","id":44390,"avatar_url":"https://avatars.githubusercontent.com/u/44390?v=3","gravatar_id":"","url":"https://api.github.com/users/ianb","html_url":"https://github.com/ianb","followers_url":"https://api.github.com/users/ianb/followers","following_url":"https://api.github.com/users/ianb/following{/other_user}","gists_url":"https://api.github.com/users/ianb/gists{/gist_id}","starred_url":"https://api.github.com/users/ianb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ianb/subscriptions","organizations_url":"https://api.github.com/users/ianb/orgs","repos_url":"https://api.github.com/users/ianb/repos","events_url":"https://api.github.com/users/ianb/events{/privacy}","received_events_url":"https://api.github.com/users/ianb/received_events","type":"User","site_admin":false},"open_issues":49,"closed_issues":121,"state":"open","created_at":"2015-01-22T15:37:04Z","updated_at":"2016-09-15T20:36:20Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-07-08T21:19:41Z","updated_at":"2016-09-15T20:36:20Z","closed_at":"2016-09-15T20:36:20Z","body":"Currently, running `$ make all` seems to take about 7-8 minutes locally and on Travis-CI. Not sure if there is an easy way to optimize that and make it faster, but it's kind of a drag.\r\n\r\n```sh\r\n$ time make all\r\n...\r\nmake all  374.82s user 35.14s system 99% cpu 6:52.02 total\r\n```\r\n\r\nHere's a snippet of some of the output:\r\n\r\n```sh\r\n...\r\ncp static/img/profile.png build/static/img/profile.png\r\ncp build/static/img/profile.png build/server/static/img/profile.png\r\ncp static/img/question-mark.svg build/static/img/question-mark.svg\r\ncp build/static/img/question-mark.svg build/server/static/img/question-mark.svg\r\ncp static/img/twitter-16.png build/static/img/twitter-16.png\r\ncp build/static/img/twitter-16.png build/server/static/img/twitter-16.png\r\ncp static/img/twitter-32.png build/static/img/twitter-32.png\r\ncp build/static/img/twitter-32.png build/server/static/img/twitter-32.png\r\ncp static/img/up-arrow.png build/static/img/up-arrow.png\r\ncp build/static/img/up-arrow.png build/server/static/img/up-arrow.png\r\ncp static/img/zoom-in.svg build/static/img/zoom-in.svg\r\ncp build/static/img/zoom-in.svg build/server/static/img/zoom-in.svg\r\ncp static/img/zoom-out.svg build/static/img/zoom-out.svg\r\ncp build/static/img/zoom-out.svg build/server/static/img/zoom-out.svg\r\ncp static/img/zoom.svg build/static/img/zoom.svg\r\ncp build/static/img/zoom.svg build/server/static/img/zoom.svg\r\nbabel --retain-lines static/js/content-helper.js | bin/_fixup_panel_js > build/static/js/content-helper.js\r\ncp build/static/js/content-helper.js build/server/static/js/content-helper.js\r\nbabel --retain-lines static/js/parent-helper.js | bin/_fixup_panel_js > build/static/js/parent-helper.js\r\ncp build/static/js/parent-helper.js build/server/static/js/parent-helper.js\r\ncp static/vendor/raven.js build/server/static/vendor/raven.js\r\ncp -p server/src/export-shots.sh build/server/export-shots.sh\r\ncp server/db-patches/patch-0-1.sql build/server/db-patches/patch-0-1.sql\r\ncp server/db-patches/patch-1-0.sql build/server/db-patches/patch-1-0.sql\r\ncp server/db-patches/patch-1-2.sql build/server/db-patches/patch-1-2.sql\r\ncp server/db-patches/patch-2-1.sql build/server/db-patches/patch-2-1.sql\r\ncp server/db-patches/patch-2-3.sql build/server/db-patches/patch-2-3.sql\r\ncp server/db-patches/patch-3-2.sql build/server/db-patches/patch-3-2.sql\r\ncp server/db-patches/patch-3-4.sql build/server/db-patches/patch-3-4.sql\r\ncp server/db-patches/patch-4-3.sql build/server/db-patches/patch-4-3.sql\r\ncp server/db-patches/patch-4-5.sql build/server/db-patches/patch-4-5.sql\r\ncp server/db-patches/patch-5-4.sql build/server/db-patches/patch-5-4.sql\r\ncp server/db-patches/patch-5-6.sql build/server/db-patches/patch-5-6.sql\r\ncp server/db-patches/patch-6-5.sql build/server/db-patches/patch-6-5.sql\r\ncp server/db-patches/patch-6-7.sql build/server/db-patches/patch-6-7.sql\r\ncp server/db-patches/patch-7-6.sql build/server/db-patches/patch-7-6.sql\r\ncp server/db-patches/patch-7-8.sql build/server/db-patches/patch-7-8.sql\r\ncp server/db-patches/patch-8-7.sql build/server/db-patches/patch-8-7.sql\r\n./bin/_write_build_time > build/server/build-time.js\r\n...\r\n```\r\n\r\nI kind of roughly understand what's happening in the Makefile, but not sure if there is a way to run `$ cp -av static/img build/static/img` and `$ cp -av server/db-patches build/server/db-patches` so it copies the files all at once instead of copying them one at a time.\r\n\r\nOr with something like this:\r\n```sh\r\n$ babel --retain-lines static/js/parent-helper.js | bin/_fixup_panel_js > build/static/js/parent-helper.js\r\n$ cp build/static/js/parent-helper.js build/server/static/js/parent-helper.js\r\n```\r\n\r\nI imagine it's possibly much faster to just run `babel` on an entire directory/glob instead of file-by-file (plus writing the transformed code to a file, then immediately copying that file to a new directory)."},"comment":{"url":"https://api.github.com/repos/mozilla-services/pageshot/issues/comments/247447667","html_url":"https://github.com/mozilla-services/pageshot/issues/1233#issuecomment-247447667","issue_url":"https://api.github.com/repos/mozilla-services/pageshot/issues/1233","id":247447667,"user":{"login":"ianb","id":44390,"avatar_url":"https://avatars.githubusercontent.com/u/44390?v=3","gravatar_id":"","url":"https://api.github.com/users/ianb","html_url":"https://github.com/ianb","followers_url":"https://api.github.com/users/ianb/followers","following_url":"https://api.github.com/users/ianb/following{/other_user}","gists_url":"https://api.github.com/users/ianb/gists{/gist_id}","starred_url":"https://api.github.com/users/ianb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ianb/subscriptions","organizations_url":"https://api.github.com/users/ianb/orgs","repos_url":"https://api.github.com/users/ianb/repos","events_url":"https://api.github.com/users/ianb/events{/privacy}","received_events_url":"https://api.github.com/users/ianb/received_events","type":"User","site_admin":false},"created_at":"2016-09-15T20:36:20Z","updated_at":"2016-09-15T20:36:20Z","body":"I think we're okay or at least good enough now.  We do spend a lot of time in babel, but eh, so it goes.  We're much better than we used to be."}}
{"actor":{"display_login":"ianb"}}