{"action":"created","issue":{"url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/2740","repository_url":"https://api.github.com/repos/varnishcache/varnish-cache","labels_url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/2740/labels{/name}","comments_url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/2740/comments","events_url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/2740/events","html_url":"https://github.com/varnishcache/varnish-cache/pull/2740","id":350401335,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA4MjYwNDYy","number":2740,"title":"initialize PRIV_TASK and PRIV_TOP vmod arguments once per subroutine","user":{"login":"nigoroll","id":1528104,"node_id":"MDQ6VXNlcjE1MjgxMDQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1528104?v=4","gravatar_id":"","url":"https://api.github.com/users/nigoroll","html_url":"https://github.com/nigoroll","followers_url":"https://api.github.com/users/nigoroll/followers","following_url":"https://api.github.com/users/nigoroll/following{/other_user}","gists_url":"https://api.github.com/users/nigoroll/gists{/gist_id}","starred_url":"https://api.github.com/users/nigoroll/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nigoroll/subscriptions","organizations_url":"https://api.github.com/users/nigoroll/orgs","repos_url":"https://api.github.com/users/nigoroll/repos","events_url":"https://api.github.com/users/nigoroll/events{/privacy}","received_events_url":"https://api.github.com/users/nigoroll/received_events","type":"User","site_admin":false},"labels":[{"id":438496608,"node_id":"MDU6TGFiZWw0Mzg0OTY2MDg=","url":"https://api.github.com/repos/varnishcache/varnish-cache/labels/a=OK'ed","name":"a=OK'ed","color":"55cc55","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-08-14T12:12:15Z","updated_at":"2018-08-29T05:42:43Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/varnishcache/varnish-cache/pulls/2740","html_url":"https://github.com/varnishcache/varnish-cache/pull/2740","diff_url":"https://github.com/varnishcache/varnish-cache/pull/2740.diff","patch_url":"https://github.com/varnishcache/varnish-cache/pull/2740.patch"},"body":"... and fail the VCL unless successful.\r\n\r\nProviding the PRIVs to vmods is a core function, so error handling should happen outside vmods.\r\n\r\nBesides being safe, this initialization can be more efficient than previous code for PRIVs used frequently within the same subroutine.\r\n\r\nAn alternative approach would be to initialize all privs once per task / top request, but unless all privs are actually used in a VCL, this approach could impose significant overhead, both in terms of time\r\nand memory. By initializing privs once per sub, we impose overhead for privs which are referenced but not actually used in a subroutine, but not for all of the vcl.\r\n\r\nFixes #2708"},"comment":{"url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/comments/416831139","html_url":"https://github.com/varnishcache/varnish-cache/pull/2740#issuecomment-416831139","issue_url":"https://api.github.com/repos/varnishcache/varnish-cache/issues/2740","id":416831139,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNjgzMTEzOQ==","user":{"login":"bsdphk","id":567236,"node_id":"MDQ6VXNlcjU2NzIzNg==","avatar_url":"https://avatars3.githubusercontent.com/u/567236?v=4","gravatar_id":"","url":"https://api.github.com/users/bsdphk","html_url":"https://github.com/bsdphk","followers_url":"https://api.github.com/users/bsdphk/followers","following_url":"https://api.github.com/users/bsdphk/following{/other_user}","gists_url":"https://api.github.com/users/bsdphk/gists{/gist_id}","starred_url":"https://api.github.com/users/bsdphk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bsdphk/subscriptions","organizations_url":"https://api.github.com/users/bsdphk/orgs","repos_url":"https://api.github.com/users/bsdphk/repos","events_url":"https://api.github.com/users/bsdphk/events{/privacy}","received_events_url":"https://api.github.com/users/bsdphk/received_events","type":"User","site_admin":false},"created_at":"2018-08-29T05:42:43Z","updated_at":"2018-08-29T05:42:43Z","author_association":"CONTRIBUTOR","body":"Now that I know how priv_task's work:  OK"}}
{"actor":{"display_login":"bsdphk"}}