{"action":"created","issue":{"url":"https://api.github.com/repos/whatwg/html-build/issues/62","labels_url":"https://api.github.com/repos/whatwg/html-build/issues/62/labels{/name}","comments_url":"https://api.github.com/repos/whatwg/html-build/issues/62/comments","events_url":"https://api.github.com/repos/whatwg/html-build/issues/62/events","html_url":"https://github.com/whatwg/html-build/issues/62","id":130030242,"number":62,"title":"Cut down on build dependencies (data files and binaries)","user":{"login":"foolip","id":498917,"avatar_url":"https://avatars.githubusercontent.com/u/498917?v=3","gravatar_id":"","url":"https://api.github.com/users/foolip","html_url":"https://github.com/foolip","followers_url":"https://api.github.com/users/foolip/followers","following_url":"https://api.github.com/users/foolip/following{/other_user}","gists_url":"https://api.github.com/users/foolip/gists{/gist_id}","starred_url":"https://api.github.com/users/foolip/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/foolip/subscriptions","organizations_url":"https://api.github.com/users/foolip/orgs","repos_url":"https://api.github.com/users/foolip/repos","events_url":"https://api.github.com/users/foolip/events{/privacy}","received_events_url":"https://api.github.com/users/foolip/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2016-01-30T20:00:25Z","updated_at":"2016-02-02T12:51:19Z","closed_at":null,"body":"A few things are currently less than ideal:\r\n * A lot of data needs to be downloaded, and it's all thrown away when \"Build tools have been updated since last run; clearing the cache.\"\r\n * .entity-proccessor.py says \"this uses 658 MB and in fact I cannot run it on my VPS.\r\n * Users need to install Subversion and Perl's XML::Parser, which are likely not pre-installed.\r\n *  (minor) We don't track dependencies, so builds are not reproducible.\r\n\r\nWouldn't it be nice if building were just blazing fast by default, and rebuilding dependencies was an option that should rarely be used?\r\n\r\nIt looks like the files that are eventually used are only these 6:\r\n * caniuse.json\r\n * cldr.inc\r\n * entities-dtd.url\r\n * entities.inc\r\n * entities.json\r\n * w3cbugs.csv\r\n\r\nTogether they are only 1.7 MB, or 282 kB gzipped. That's a lot of room for saving.\r\n\r\nRough proposal:\r\n * Separate out the scripts for building these dependencies so that they can easily be built without also building the spec.\r\n * Set up an automatically updated html-build-deps repo that has the output.\r\n * In build.sh, by default use the html-build-deps repo, but have an option to generate from scratch.\r\n * (maybe) Track the exact html-build-deps commit to use, using either submodules or a DEPS file.\r\n\r\nRelated issues:\r\nhttps://github.com/whatwg/html-build/issues/24\r\nhttps://github.com/whatwg/html-build/issues/38\r\nhttps://github.com/whatwg/html-build/issues/55\r\nhttps://github.com/whatwg/html-build/issues/60 (would be made obsolete)"},"comment":{"url":"https://api.github.com/repos/whatwg/html-build/issues/comments/178557937","html_url":"https://github.com/whatwg/html-build/issues/62#issuecomment-178557937","issue_url":"https://api.github.com/repos/whatwg/html-build/issues/62","id":178557937,"user":{"login":"annevk","id":1544111,"avatar_url":"https://avatars.githubusercontent.com/u/1544111?v=3","gravatar_id":"","url":"https://api.github.com/users/annevk","html_url":"https://github.com/annevk","followers_url":"https://api.github.com/users/annevk/followers","following_url":"https://api.github.com/users/annevk/following{/other_user}","gists_url":"https://api.github.com/users/annevk/gists{/gist_id}","starred_url":"https://api.github.com/users/annevk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/annevk/subscriptions","organizations_url":"https://api.github.com/users/annevk/orgs","repos_url":"https://api.github.com/users/annevk/repos","events_url":"https://api.github.com/users/annevk/events{/privacy}","received_events_url":"https://api.github.com/users/annevk/received_events","type":"User","site_admin":false},"created_at":"2016-02-02T12:51:19Z","updated_at":"2016-02-02T12:51:19Z","body":"So I wonder if we could define the quotes stuff in a way that matches what https://tc39.github.io/ecma402/ does. Recommend implementations to use the locale data from that repository, but allow them use their own mapping. And simply define in prose what that would look like."}}