{"action":"opened","issue":{"url":"https://api.github.com/repos/zulip/zulip/issues/9468","repository_url":"https://api.github.com/repos/zulip/zulip","labels_url":"https://api.github.com/repos/zulip/zulip/issues/9468/labels{/name}","comments_url":"https://api.github.com/repos/zulip/zulip/issues/9468/comments","events_url":"https://api.github.com/repos/zulip/zulip/issues/9468/events","html_url":"https://github.com/zulip/zulip/issues/9468","id":324744298,"number":9468,"title":"provision: Make tools/inline-email-css only run if any input files have changed","user":{"login":"timabbott","id":2746074,"avatar_url":"https://avatars0.githubusercontent.com/u/2746074?v=4","gravatar_id":"","url":"https://api.github.com/users/timabbott","html_url":"https://github.com/timabbott","followers_url":"https://api.github.com/users/timabbott/followers","following_url":"https://api.github.com/users/timabbott/following{/other_user}","gists_url":"https://api.github.com/users/timabbott/gists{/gist_id}","starred_url":"https://api.github.com/users/timabbott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timabbott/subscriptions","organizations_url":"https://api.github.com/users/timabbott/orgs","repos_url":"https://api.github.com/users/timabbott/repos","events_url":"https://api.github.com/users/timabbott/events{/privacy}","received_events_url":"https://api.github.com/users/timabbott/received_events","type":"User","site_admin":false},"labels":[{"id":632116271,"url":"https://api.github.com/repos/zulip/zulip/labels/area:%20emails","name":"area: emails","color":"bfd4f2","default":false},{"id":461199309,"url":"https://api.github.com/repos/zulip/zulip/labels/area:%20provision","name":"area: provision","color":"bfd4f2","default":false},{"id":419106932,"url":"https://api.github.com/repos/zulip/zulip/labels/area:%20tooling","name":"area: tooling","color":"bfd4f2","default":false},{"id":621149055,"url":"https://api.github.com/repos/zulip/zulip/labels/priority:%20high","name":"priority: high","color":"5319e7","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-05-20T21:30:42Z","updated_at":"2018-05-20T21:30:42Z","closed_at":null,"author_association":"MEMBER","body":"Currently, we spend about 1s (out of ~7s) of every no-op provision on my very fast laptop running `tools/inline-email-css`, even if none of the templates that it generates content from have changed.  I think we could probably do something similar to what we do with `is_template_database_current`, where basically we write a very fast check that just compares a hash of the content of `tools/inline-email-css` and the files under `templates/zerver/emails/*.source.html`, and if those are the same, doesn't re-rerun the tool as part of provision."}}
{"actor":{"display_login":"timabbott"}}