{"action":"created","comment":{"url":"https://api.github.com/repos/apache/trafficserver/pulls/comments/209796263","pull_request_review_id":145879835,"id":209796263,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwOTc5NjI2Mw==","diff_hunk":"@@ -437,6 +437,61 @@ CacheKey::appendPath(Pattern &pathCapture, Pattern &pathCaptureUri)\n   }\n }\n \n+template <class T>\n+void\n+CacheKey::processHeader(const String &name, const ConfigHeaders &config, T &dst,\n+                        void (*fun)(const ConfigHeaders &config, const String &name_s, const String &value_s, T &captures))\n+{\n+  TSMLoc field;\n+\n+  for (field = TSMimeHdrFieldFind(_buf, _hdrs, name.c_str(), name.size()); field != TS_NULL_MLOC;\n+       field = ::nextDuplicate(_buf, _hdrs, field)) {\n+    const char *value;\n+    int vlen;\n+    int count = TSMimeHdrFieldValuesCount(_buf, _hdrs, field);\n+\n+    for (int i = 0; i < count; ++i) {\n+      value = TSMimeHdrFieldValueStringGet(_buf, _hdrs, field, i, &vlen);\n+      if (value == nullptr || vlen == 0) {\n+        CacheKeyDebug(\"missing value %d for header %s\", i, name.c_str());\n+        continue;\n+      }\n+\n+      String value_s(value, vlen);\n+      fun(config, name, value_s, dst);\n+    }\n+  }\n+}\n+\n+template <class T>","path":"plugins/cachekey/cachekey.cc","position":30,"original_position":30,"commit_id":"fb0a9fe12ad1aebf3fe01cc08e8ed98e9f7bdd1b","original_commit_id":"fb0a9fe12ad1aebf3fe01cc08e8ed98e9f7bdd1b","user":{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false},"body":"With this code this is true, I can see the benefit of the clarification but I am not sure we should limit things. Also this is a local template which helped me process the headers + taking 2 different actions w/o duplicating code and it is not meant to be reused a lot (not part of the \"public\" interface of the class, etc). If you look through out the plugin code you can see I like lots of comments but it feels overkill in this case.","created_at":"2018-08-14T00:08:17Z","updated_at":"2018-08-14T00:08:17Z","html_url":"https://github.com/apache/trafficserver/pull/3995#discussion_r209796263","pull_request_url":"https://api.github.com/repos/apache/trafficserver/pulls/3995","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/comments/209796263"},"html":{"href":"https://github.com/apache/trafficserver/pull/3995#discussion_r209796263"},"pull_request":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/3995"}},"in_reply_to_id":209080885},"pull_request":{"url":"https://api.github.com/repos/apache/trafficserver/pulls/3995","id":202946690,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAyOTQ2Njkw","html_url":"https://github.com/apache/trafficserver/pull/3995","diff_url":"https://github.com/apache/trafficserver/pull/3995.diff","patch_url":"https://github.com/apache/trafficserver/pull/3995.patch","issue_url":"https://api.github.com/repos/apache/trafficserver/issues/3995","number":3995,"state":"open","locked":false,"title":"cachekey: capture cache key elements from headers","user":{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false},"body":"`--capture-header=<headername>:<capture_definition>`\r\ncaptures elements from header `<headername>` using `<capture_definition>`\r\nand adds them to the cache key.","created_at":"2018-07-20T20:18:49Z","updated_at":"2018-08-14T00:08:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"172bc5919bf508affe941aec1b11b25c296fb148","assignee":{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false},"assignees":[{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"jpeach","id":9917,"node_id":"MDQ6VXNlcjk5MTc=","avatar_url":"https://avatars0.githubusercontent.com/u/9917?v=4","gravatar_id":"","url":"https://api.github.com/users/jpeach","html_url":"https://github.com/jpeach","followers_url":"https://api.github.com/users/jpeach/followers","following_url":"https://api.github.com/users/jpeach/following{/other_user}","gists_url":"https://api.github.com/users/jpeach/gists{/gist_id}","starred_url":"https://api.github.com/users/jpeach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jpeach/subscriptions","organizations_url":"https://api.github.com/users/jpeach/orgs","repos_url":"https://api.github.com/users/jpeach/repos","events_url":"https://api.github.com/users/jpeach/events{/privacy}","received_events_url":"https://api.github.com/users/jpeach/received_events","type":"User","site_admin":false},{"login":"zwoop","id":202131,"node_id":"MDQ6VXNlcjIwMjEzMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/202131?v=4","gravatar_id":"","url":"https://api.github.com/users/zwoop","html_url":"https://github.com/zwoop","followers_url":"https://api.github.com/users/zwoop/followers","following_url":"https://api.github.com/users/zwoop/following{/other_user}","gists_url":"https://api.github.com/users/zwoop/gists{/gist_id}","starred_url":"https://api.github.com/users/zwoop/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zwoop/subscriptions","organizations_url":"https://api.github.com/users/zwoop/orgs","repos_url":"https://api.github.com/users/zwoop/repos","events_url":"https://api.github.com/users/zwoop/events{/privacy}","received_events_url":"https://api.github.com/users/zwoop/received_events","type":"User","site_admin":false},{"login":"SolidWallOfCode","id":1545753,"node_id":"MDQ6VXNlcjE1NDU3NTM=","avatar_url":"https://avatars2.githubusercontent.com/u/1545753?v=4","gravatar_id":"","url":"https://api.github.com/users/SolidWallOfCode","html_url":"https://github.com/SolidWallOfCode","followers_url":"https://api.github.com/users/SolidWallOfCode/followers","following_url":"https://api.github.com/users/SolidWallOfCode/following{/other_user}","gists_url":"https://api.github.com/users/SolidWallOfCode/gists{/gist_id}","starred_url":"https://api.github.com/users/SolidWallOfCode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SolidWallOfCode/subscriptions","organizations_url":"https://api.github.com/users/SolidWallOfCode/orgs","repos_url":"https://api.github.com/users/SolidWallOfCode/repos","events_url":"https://api.github.com/users/SolidWallOfCode/events{/privacy}","received_events_url":"https://api.github.com/users/SolidWallOfCode/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":374860701,"node_id":"MDU6TGFiZWwzNzQ4NjA3MDE=","url":"https://api.github.com/repos/apache/trafficserver/labels/Plugins","name":"Plugins","color":"fbca04","default":false}],"milestone":{"url":"https://api.github.com/repos/apache/trafficserver/milestones/19","html_url":"https://github.com/apache/trafficserver/milestone/19","labels_url":"https://api.github.com/repos/apache/trafficserver/milestones/19/labels","id":3358032,"node_id":"MDk6TWlsZXN0b25lMzM1ODAzMg==","number":19,"title":"9.0.0","description":"","creator":{"login":"bryancall","id":216749,"node_id":"MDQ6VXNlcjIxNjc0OQ==","avatar_url":"https://avatars3.githubusercontent.com/u/216749?v=4","gravatar_id":"","url":"https://api.github.com/users/bryancall","html_url":"https://github.com/bryancall","followers_url":"https://api.github.com/users/bryancall/followers","following_url":"https://api.github.com/users/bryancall/following{/other_user}","gists_url":"https://api.github.com/users/bryancall/gists{/gist_id}","starred_url":"https://api.github.com/users/bryancall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bryancall/subscriptions","organizations_url":"https://api.github.com/users/bryancall/orgs","repos_url":"https://api.github.com/users/bryancall/repos","events_url":"https://api.github.com/users/bryancall/events{/privacy}","received_events_url":"https://api.github.com/users/bryancall/received_events","type":"User","site_admin":false},"open_issues":36,"closed_issues":62,"state":"open","created_at":"2018-05-18T19:12:59Z","updated_at":"2018-08-13T20:46:06Z","due_on":"2019-06-30T07:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/apache/trafficserver/pulls/3995/commits","review_comments_url":"https://api.github.com/repos/apache/trafficserver/pulls/3995/comments","review_comment_url":"https://api.github.com/repos/apache/trafficserver/pulls/comments{/number}","comments_url":"https://api.github.com/repos/apache/trafficserver/issues/3995/comments","statuses_url":"https://api.github.com/repos/apache/trafficserver/statuses/fb0a9fe12ad1aebf3fe01cc08e8ed98e9f7bdd1b","head":{"label":"gtenev:cachekey_caputure_elements","ref":"cachekey_caputure_elements","sha":"fb0a9fe12ad1aebf3fe01cc08e8ed98e9f7bdd1b","user":{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false},"repo":{"id":51556259,"node_id":"MDEwOlJlcG9zaXRvcnk1MTU1NjI1OQ==","name":"trafficserver","full_name":"gtenev/trafficserver","owner":{"login":"gtenev","id":10522628,"node_id":"MDQ6VXNlcjEwNTIyNjI4","avatar_url":"https://avatars0.githubusercontent.com/u/10522628?v=4","gravatar_id":"","url":"https://api.github.com/users/gtenev","html_url":"https://github.com/gtenev","followers_url":"https://api.github.com/users/gtenev/followers","following_url":"https://api.github.com/users/gtenev/following{/other_user}","gists_url":"https://api.github.com/users/gtenev/gists{/gist_id}","starred_url":"https://api.github.com/users/gtenev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gtenev/subscriptions","organizations_url":"https://api.github.com/users/gtenev/orgs","repos_url":"https://api.github.com/users/gtenev/repos","events_url":"https://api.github.com/users/gtenev/events{/privacy}","received_events_url":"https://api.github.com/users/gtenev/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gtenev/trafficserver","description":"Mirror of Apache Traffic Server","fork":true,"url":"https://api.github.com/repos/gtenev/trafficserver","forks_url":"https://api.github.com/repos/gtenev/trafficserver/forks","keys_url":"https://api.github.com/repos/gtenev/trafficserver/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gtenev/trafficserver/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gtenev/trafficserver/teams","hooks_url":"https://api.github.com/repos/gtenev/trafficserver/hooks","issue_events_url":"https://api.github.com/repos/gtenev/trafficserver/issues/events{/number}","events_url":"https://api.github.com/repos/gtenev/trafficserver/events","assignees_url":"https://api.github.com/repos/gtenev/trafficserver/assignees{/user}","branches_url":"https://api.github.com/repos/gtenev/trafficserver/branches{/branch}","tags_url":"https://api.github.com/repos/gtenev/trafficserver/tags","blobs_url":"https://api.github.com/repos/gtenev/trafficserver/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gtenev/trafficserver/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gtenev/trafficserver/git/refs{/sha}","trees_url":"https://api.github.com/repos/gtenev/trafficserver/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gtenev/trafficserver/statuses/{sha}","languages_url":"https://api.github.com/repos/gtenev/trafficserver/languages","stargazers_url":"https://api.github.com/repos/gtenev/trafficserver/stargazers","contributors_url":"https://api.github.com/repos/gtenev/trafficserver/contributors","subscribers_url":"https://api.github.com/repos/gtenev/trafficserver/subscribers","subscription_url":"https://api.github.com/repos/gtenev/trafficserver/subscription","commits_url":"https://api.github.com/repos/gtenev/trafficserver/commits{/sha}","git_commits_url":"https://api.github.com/repos/gtenev/trafficserver/git/commits{/sha}","comments_url":"https://api.github.com/repos/gtenev/trafficserver/comments{/number}","issue_comment_url":"https://api.github.com/repos/gtenev/trafficserver/issues/comments{/number}","contents_url":"https://api.github.com/repos/gtenev/trafficserver/contents/{+path}","compare_url":"https://api.github.com/repos/gtenev/trafficserver/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gtenev/trafficserver/merges","archive_url":"https://api.github.com/repos/gtenev/trafficserver/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gtenev/trafficserver/downloads","issues_url":"https://api.github.com/repos/gtenev/trafficserver/issues{/number}","pulls_url":"https://api.github.com/repos/gtenev/trafficserver/pulls{/number}","milestones_url":"https://api.github.com/repos/gtenev/trafficserver/milestones{/number}","notifications_url":"https://api.github.com/repos/gtenev/trafficserver/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gtenev/trafficserver/labels{/name}","releases_url":"https://api.github.com/repos/gtenev/trafficserver/releases{/id}","deployments_url":"https://api.github.com/repos/gtenev/trafficserver/deployments","created_at":"2016-02-11T23:51:16Z","updated_at":"2018-08-08T22:49:12Z","pushed_at":"2018-08-13T20:33:52Z","git_url":"git://github.com/gtenev/trafficserver.git","ssh_url":"git@github.com:gtenev/trafficserver.git","clone_url":"https://github.com/gtenev/trafficserver.git","svn_url":"https://github.com/gtenev/trafficserver","homepage":null,"size":85369,"stargazers_count":1,"watchers_count":1,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"apache:master","ref":"master","sha":"2088331f339e9102f9281ec440ad7a987b223cd2","user":{"login":"apache","id":47359,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3MzU5","avatar_url":"https://avatars0.githubusercontent.com/u/47359?v=4","gravatar_id":"","url":"https://api.github.com/users/apache","html_url":"https://github.com/apache","followers_url":"https://api.github.com/users/apache/followers","following_url":"https://api.github.com/users/apache/following{/other_user}","gists_url":"https://api.github.com/users/apache/gists{/gist_id}","starred_url":"https://api.github.com/users/apache/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apache/subscriptions","organizations_url":"https://api.github.com/users/apache/orgs","repos_url":"https://api.github.com/users/apache/repos","events_url":"https://api.github.com/users/apache/events{/privacy}","received_events_url":"https://api.github.com/users/apache/received_events","type":"Organization","site_admin":false},"repo":{"id":356066,"node_id":"MDEwOlJlcG9zaXRvcnkzNTYwNjY=","name":"trafficserver","full_name":"apache/trafficserver","owner":{"login":"apache","id":47359,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQ3MzU5","avatar_url":"https://avatars0.githubusercontent.com/u/47359?v=4","gravatar_id":"","url":"https://api.github.com/users/apache","html_url":"https://github.com/apache","followers_url":"https://api.github.com/users/apache/followers","following_url":"https://api.github.com/users/apache/following{/other_user}","gists_url":"https://api.github.com/users/apache/gists{/gist_id}","starred_url":"https://api.github.com/users/apache/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apache/subscriptions","organizations_url":"https://api.github.com/users/apache/orgs","repos_url":"https://api.github.com/users/apache/repos","events_url":"https://api.github.com/users/apache/events{/privacy}","received_events_url":"https://api.github.com/users/apache/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/apache/trafficserver","description":"Mirror of Apache Traffic Server","fork":false,"url":"https://api.github.com/repos/apache/trafficserver","forks_url":"https://api.github.com/repos/apache/trafficserver/forks","keys_url":"https://api.github.com/repos/apache/trafficserver/keys{/key_id}","collaborators_url":"https://api.github.com/repos/apache/trafficserver/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/apache/trafficserver/teams","hooks_url":"https://api.github.com/repos/apache/trafficserver/hooks","issue_events_url":"https://api.github.com/repos/apache/trafficserver/issues/events{/number}","events_url":"https://api.github.com/repos/apache/trafficserver/events","assignees_url":"https://api.github.com/repos/apache/trafficserver/assignees{/user}","branches_url":"https://api.github.com/repos/apache/trafficserver/branches{/branch}","tags_url":"https://api.github.com/repos/apache/trafficserver/tags","blobs_url":"https://api.github.com/repos/apache/trafficserver/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/apache/trafficserver/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/apache/trafficserver/git/refs{/sha}","trees_url":"https://api.github.com/repos/apache/trafficserver/git/trees{/sha}","statuses_url":"https://api.github.com/repos/apache/trafficserver/statuses/{sha}","languages_url":"https://api.github.com/repos/apache/trafficserver/languages","stargazers_url":"https://api.github.com/repos/apache/trafficserver/stargazers","contributors_url":"https://api.github.com/repos/apache/trafficserver/contributors","subscribers_url":"https://api.github.com/repos/apache/trafficserver/subscribers","subscription_url":"https://api.github.com/repos/apache/trafficserver/subscription","commits_url":"https://api.github.com/repos/apache/trafficserver/commits{/sha}","git_commits_url":"https://api.github.com/repos/apache/trafficserver/git/commits{/sha}","comments_url":"https://api.github.com/repos/apache/trafficserver/comments{/number}","issue_comment_url":"https://api.github.com/repos/apache/trafficserver/issues/comments{/number}","contents_url":"https://api.github.com/repos/apache/trafficserver/contents/{+path}","compare_url":"https://api.github.com/repos/apache/trafficserver/compare/{base}...{head}","merges_url":"https://api.github.com/repos/apache/trafficserver/merges","archive_url":"https://api.github.com/repos/apache/trafficserver/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/apache/trafficserver/downloads","issues_url":"https://api.github.com/repos/apache/trafficserver/issues{/number}","pulls_url":"https://api.github.com/repos/apache/trafficserver/pulls{/number}","milestones_url":"https://api.github.com/repos/apache/trafficserver/milestones{/number}","notifications_url":"https://api.github.com/repos/apache/trafficserver/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/apache/trafficserver/labels{/name}","releases_url":"https://api.github.com/repos/apache/trafficserver/releases{/id}","deployments_url":"https://api.github.com/repos/apache/trafficserver/deployments","created_at":"2009-10-31T08:00:10Z","updated_at":"2018-08-13T20:46:14Z","pushed_at":"2018-08-13T21:05:07Z","git_url":"git://github.com/apache/trafficserver.git","ssh_url":"git@github.com:apache/trafficserver.git","clone_url":"https://github.com/apache/trafficserver.git","svn_url":"https://github.com/apache/trafficserver","homepage":null,"size":89213,"stargazers_count":788,"watchers_count":788,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":534,"mirror_url":null,"archived":false,"open_issues_count":328,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":534,"open_issues":328,"watchers":788,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/3995"},"html":{"href":"https://github.com/apache/trafficserver/pull/3995"},"issue":{"href":"https://api.github.com/repos/apache/trafficserver/issues/3995"},"comments":{"href":"https://api.github.com/repos/apache/trafficserver/issues/3995/comments"},"review_comments":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/3995/comments"},"review_comment":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/apache/trafficserver/pulls/3995/commits"},"statuses":{"href":"https://api.github.com/repos/apache/trafficserver/statuses/fb0a9fe12ad1aebf3fe01cc08e8ed98e9f7bdd1b"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"gtenev"}}