{"action":"closed","number":155,"pull_request":{"url":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155","id":107479858,"node_id":"MDExOlB1bGxSZXF1ZXN0MTA3NDc5ODU4","html_url":"https://github.com/tomato42/tlslite-ng/pull/155","diff_url":"https://github.com/tomato42/tlslite-ng/pull/155.diff","patch_url":"https://github.com/tomato42/tlslite-ng/pull/155.patch","issue_url":"https://api.github.com/repos/tomato42/tlslite-ng/issues/155","number":155,"state":"closed","locked":false,"title":"Heartbeat extension","user":{"login":"mildass","id":18598137,"node_id":"MDQ6VXNlcjE4NTk4MTM3","avatar_url":"https://avatars2.githubusercontent.com/u/18598137?v=4","gravatar_id":"","url":"https://api.github.com/users/mildass","html_url":"https://github.com/mildass","followers_url":"https://api.github.com/users/mildass/followers","following_url":"https://api.github.com/users/mildass/following{/other_user}","gists_url":"https://api.github.com/users/mildass/gists{/gist_id}","starred_url":"https://api.github.com/users/mildass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mildass/subscriptions","organizations_url":"https://api.github.com/users/mildass/orgs","repos_url":"https://api.github.com/users/mildass/repos","events_url":"https://api.github.com/users/mildass/events{/privacy}","received_events_url":"https://api.github.com/users/mildass/received_events","type":"User","site_admin":false},"body":"Adds heartbeat extension and unit tests for it.\r\n\r\nFixes #58 \r\n\r\n<!-- Reviewable:start -->\r\n---\r\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/tomato42/tlslite-ng/155)\r\n<!-- Reviewable:end -->\r\n","created_at":"2017-02-22T19:26:23Z","updated_at":"2018-08-29T17:27:09Z","closed_at":"2018-08-29T17:27:09Z","merged_at":"2018-08-29T17:27:09Z","merge_commit_sha":"d9a0fd9700ad36be517665fa66610523d59024b5","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":101589767,"node_id":"MDU6TGFiZWwxMDE1ODk3Njc=","url":"https://api.github.com/repos/tomato42/tlslite-ng/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"milestone":{"url":"https://api.github.com/repos/tomato42/tlslite-ng/milestones/5","html_url":"https://github.com/tomato42/tlslite-ng/milestone/5","labels_url":"https://api.github.com/repos/tomato42/tlslite-ng/milestones/5/labels","id":1878193,"node_id":"MDk6TWlsZXN0b25lMTg3ODE5Mw==","number":5,"title":"v0.8.0","description":"Plan for v.0.8.0 includes TLS1.3 (1-RTT, 1-RTT with HRR, PSK, PSK-DH, DH-cert key exchange, FFDHE, ECDHE, x25519, x448, AES-GCM, ChaCha20, RSA, KeyUpdate, handshake client authentication, session resumption).\r\nOptional items: 0-RTT, post-handshake client authentication, AES-CCM, Ed25519 and Ed448 signatures and certificates, ECDSA signatures and certificates","creator":{"login":"tomato42","id":618246,"node_id":"MDQ6VXNlcjYxODI0Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/618246?v=4","gravatar_id":"","url":"https://api.github.com/users/tomato42","html_url":"https://github.com/tomato42","followers_url":"https://api.github.com/users/tomato42/followers","following_url":"https://api.github.com/users/tomato42/following{/other_user}","gists_url":"https://api.github.com/users/tomato42/gists{/gist_id}","starred_url":"https://api.github.com/users/tomato42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomato42/subscriptions","organizations_url":"https://api.github.com/users/tomato42/orgs","repos_url":"https://api.github.com/users/tomato42/repos","events_url":"https://api.github.com/users/tomato42/events{/privacy}","received_events_url":"https://api.github.com/users/tomato42/received_events","type":"User","site_admin":false},"open_issues":24,"closed_issues":26,"state":"open","created_at":"2016-07-12T11:14:50Z","updated_at":"2018-08-29T17:27:09Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155/commits","review_comments_url":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155/comments","review_comment_url":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tomato42/tlslite-ng/issues/155/comments","statuses_url":"https://api.github.com/repos/tomato42/tlslite-ng/statuses/9411cd3e714a2589053c90626e370a44550acecc","head":{"label":"mildass:heartbeat-extension","ref":"heartbeat-extension","sha":"9411cd3e714a2589053c90626e370a44550acecc","user":{"login":"mildass","id":18598137,"node_id":"MDQ6VXNlcjE4NTk4MTM3","avatar_url":"https://avatars2.githubusercontent.com/u/18598137?v=4","gravatar_id":"","url":"https://api.github.com/users/mildass","html_url":"https://github.com/mildass","followers_url":"https://api.github.com/users/mildass/followers","following_url":"https://api.github.com/users/mildass/following{/other_user}","gists_url":"https://api.github.com/users/mildass/gists{/gist_id}","starred_url":"https://api.github.com/users/mildass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mildass/subscriptions","organizations_url":"https://api.github.com/users/mildass/orgs","repos_url":"https://api.github.com/users/mildass/repos","events_url":"https://api.github.com/users/mildass/events{/privacy}","received_events_url":"https://api.github.com/users/mildass/received_events","type":"User","site_admin":false},"repo":{"id":63239239,"node_id":"MDEwOlJlcG9zaXRvcnk2MzIzOTIzOQ==","name":"tlslite-ng","full_name":"mildass/tlslite-ng","owner":{"login":"mildass","id":18598137,"node_id":"MDQ6VXNlcjE4NTk4MTM3","avatar_url":"https://avatars2.githubusercontent.com/u/18598137?v=4","gravatar_id":"","url":"https://api.github.com/users/mildass","html_url":"https://github.com/mildass","followers_url":"https://api.github.com/users/mildass/followers","following_url":"https://api.github.com/users/mildass/following{/other_user}","gists_url":"https://api.github.com/users/mildass/gists{/gist_id}","starred_url":"https://api.github.com/users/mildass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mildass/subscriptions","organizations_url":"https://api.github.com/users/mildass/orgs","repos_url":"https://api.github.com/users/mildass/repos","events_url":"https://api.github.com/users/mildass/events{/privacy}","received_events_url":"https://api.github.com/users/mildass/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mildass/tlslite-ng","description":"New home of the TLS Library in python","fork":true,"url":"https://api.github.com/repos/mildass/tlslite-ng","forks_url":"https://api.github.com/repos/mildass/tlslite-ng/forks","keys_url":"https://api.github.com/repos/mildass/tlslite-ng/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mildass/tlslite-ng/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mildass/tlslite-ng/teams","hooks_url":"https://api.github.com/repos/mildass/tlslite-ng/hooks","issue_events_url":"https://api.github.com/repos/mildass/tlslite-ng/issues/events{/number}","events_url":"https://api.github.com/repos/mildass/tlslite-ng/events","assignees_url":"https://api.github.com/repos/mildass/tlslite-ng/assignees{/user}","branches_url":"https://api.github.com/repos/mildass/tlslite-ng/branches{/branch}","tags_url":"https://api.github.com/repos/mildass/tlslite-ng/tags","blobs_url":"https://api.github.com/repos/mildass/tlslite-ng/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mildass/tlslite-ng/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mildass/tlslite-ng/git/refs{/sha}","trees_url":"https://api.github.com/repos/mildass/tlslite-ng/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mildass/tlslite-ng/statuses/{sha}","languages_url":"https://api.github.com/repos/mildass/tlslite-ng/languages","stargazers_url":"https://api.github.com/repos/mildass/tlslite-ng/stargazers","contributors_url":"https://api.github.com/repos/mildass/tlslite-ng/contributors","subscribers_url":"https://api.github.com/repos/mildass/tlslite-ng/subscribers","subscription_url":"https://api.github.com/repos/mildass/tlslite-ng/subscription","commits_url":"https://api.github.com/repos/mildass/tlslite-ng/commits{/sha}","git_commits_url":"https://api.github.com/repos/mildass/tlslite-ng/git/commits{/sha}","comments_url":"https://api.github.com/repos/mildass/tlslite-ng/comments{/number}","issue_comment_url":"https://api.github.com/repos/mildass/tlslite-ng/issues/comments{/number}","contents_url":"https://api.github.com/repos/mildass/tlslite-ng/contents/{+path}","compare_url":"https://api.github.com/repos/mildass/tlslite-ng/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mildass/tlslite-ng/merges","archive_url":"https://api.github.com/repos/mildass/tlslite-ng/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mildass/tlslite-ng/downloads","issues_url":"https://api.github.com/repos/mildass/tlslite-ng/issues{/number}","pulls_url":"https://api.github.com/repos/mildass/tlslite-ng/pulls{/number}","milestones_url":"https://api.github.com/repos/mildass/tlslite-ng/milestones{/number}","notifications_url":"https://api.github.com/repos/mildass/tlslite-ng/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mildass/tlslite-ng/labels{/name}","releases_url":"https://api.github.com/repos/mildass/tlslite-ng/releases{/id}","deployments_url":"https://api.github.com/repos/mildass/tlslite-ng/deployments","created_at":"2016-07-13T11:06:07Z","updated_at":"2018-04-19T16:00:00Z","pushed_at":"2018-08-29T15:52:48Z","git_url":"git://github.com/mildass/tlslite-ng.git","ssh_url":"git@github.com:mildass/tlslite-ng.git","clone_url":"https://github.com/mildass/tlslite-ng.git","svn_url":"https://github.com/mildass/tlslite-ng","homepage":"","size":2850,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"tomato42:master","ref":"master","sha":"bad2b98b2c382674f71aff617a9274e2a095951f","user":{"login":"tomato42","id":618246,"node_id":"MDQ6VXNlcjYxODI0Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/618246?v=4","gravatar_id":"","url":"https://api.github.com/users/tomato42","html_url":"https://github.com/tomato42","followers_url":"https://api.github.com/users/tomato42/followers","following_url":"https://api.github.com/users/tomato42/following{/other_user}","gists_url":"https://api.github.com/users/tomato42/gists{/gist_id}","starred_url":"https://api.github.com/users/tomato42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomato42/subscriptions","organizations_url":"https://api.github.com/users/tomato42/orgs","repos_url":"https://api.github.com/users/tomato42/repos","events_url":"https://api.github.com/users/tomato42/events{/privacy}","received_events_url":"https://api.github.com/users/tomato42/received_events","type":"User","site_admin":false},"repo":{"id":20074844,"node_id":"MDEwOlJlcG9zaXRvcnkyMDA3NDg0NA==","name":"tlslite-ng","full_name":"tomato42/tlslite-ng","owner":{"login":"tomato42","id":618246,"node_id":"MDQ6VXNlcjYxODI0Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/618246?v=4","gravatar_id":"","url":"https://api.github.com/users/tomato42","html_url":"https://github.com/tomato42","followers_url":"https://api.github.com/users/tomato42/followers","following_url":"https://api.github.com/users/tomato42/following{/other_user}","gists_url":"https://api.github.com/users/tomato42/gists{/gist_id}","starred_url":"https://api.github.com/users/tomato42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomato42/subscriptions","organizations_url":"https://api.github.com/users/tomato42/orgs","repos_url":"https://api.github.com/users/tomato42/repos","events_url":"https://api.github.com/users/tomato42/events{/privacy}","received_events_url":"https://api.github.com/users/tomato42/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tomato42/tlslite-ng","description":"New home of the TLS implementation in pure python","fork":false,"url":"https://api.github.com/repos/tomato42/tlslite-ng","forks_url":"https://api.github.com/repos/tomato42/tlslite-ng/forks","keys_url":"https://api.github.com/repos/tomato42/tlslite-ng/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tomato42/tlslite-ng/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tomato42/tlslite-ng/teams","hooks_url":"https://api.github.com/repos/tomato42/tlslite-ng/hooks","issue_events_url":"https://api.github.com/repos/tomato42/tlslite-ng/issues/events{/number}","events_url":"https://api.github.com/repos/tomato42/tlslite-ng/events","assignees_url":"https://api.github.com/repos/tomato42/tlslite-ng/assignees{/user}","branches_url":"https://api.github.com/repos/tomato42/tlslite-ng/branches{/branch}","tags_url":"https://api.github.com/repos/tomato42/tlslite-ng/tags","blobs_url":"https://api.github.com/repos/tomato42/tlslite-ng/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tomato42/tlslite-ng/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tomato42/tlslite-ng/git/refs{/sha}","trees_url":"https://api.github.com/repos/tomato42/tlslite-ng/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tomato42/tlslite-ng/statuses/{sha}","languages_url":"https://api.github.com/repos/tomato42/tlslite-ng/languages","stargazers_url":"https://api.github.com/repos/tomato42/tlslite-ng/stargazers","contributors_url":"https://api.github.com/repos/tomato42/tlslite-ng/contributors","subscribers_url":"https://api.github.com/repos/tomato42/tlslite-ng/subscribers","subscription_url":"https://api.github.com/repos/tomato42/tlslite-ng/subscription","commits_url":"https://api.github.com/repos/tomato42/tlslite-ng/commits{/sha}","git_commits_url":"https://api.github.com/repos/tomato42/tlslite-ng/git/commits{/sha}","comments_url":"https://api.github.com/repos/tomato42/tlslite-ng/comments{/number}","issue_comment_url":"https://api.github.com/repos/tomato42/tlslite-ng/issues/comments{/number}","contents_url":"https://api.github.com/repos/tomato42/tlslite-ng/contents/{+path}","compare_url":"https://api.github.com/repos/tomato42/tlslite-ng/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tomato42/tlslite-ng/merges","archive_url":"https://api.github.com/repos/tomato42/tlslite-ng/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tomato42/tlslite-ng/downloads","issues_url":"https://api.github.com/repos/tomato42/tlslite-ng/issues{/number}","pulls_url":"https://api.github.com/repos/tomato42/tlslite-ng/pulls{/number}","milestones_url":"https://api.github.com/repos/tomato42/tlslite-ng/milestones{/number}","notifications_url":"https://api.github.com/repos/tomato42/tlslite-ng/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tomato42/tlslite-ng/labels{/name}","releases_url":"https://api.github.com/repos/tomato42/tlslite-ng/releases{/id}","deployments_url":"https://api.github.com/repos/tomato42/tlslite-ng/deployments","created_at":"2014-05-22T19:54:03Z","updated_at":"2018-08-29T15:52:42Z","pushed_at":"2018-08-29T17:27:09Z","git_url":"git://github.com/tomato42/tlslite-ng.git","ssh_url":"git@github.com:tomato42/tlslite-ng.git","clone_url":"https://github.com/tomato42/tlslite-ng.git","svn_url":"https://github.com/tomato42/tlslite-ng","homepage":"","size":2961,"stargazers_count":60,"watchers_count":60,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":26,"mirror_url":null,"archived":false,"open_issues_count":58,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":26,"open_issues":58,"watchers":60,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155"},"html":{"href":"https://github.com/tomato42/tlslite-ng/pull/155"},"issue":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/issues/155"},"comments":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/issues/155/comments"},"review_comments":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155/comments"},"review_comment":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/pulls/155/commits"},"statuses":{"href":"https://api.github.com/repos/tomato42/tlslite-ng/statuses/9411cd3e714a2589053c90626e370a44550acecc"}},"author_association":"COLLABORATOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"tomato42","id":618246,"node_id":"MDQ6VXNlcjYxODI0Ng==","avatar_url":"https://avatars1.githubusercontent.com/u/618246?v=4","gravatar_id":"","url":"https://api.github.com/users/tomato42","html_url":"https://github.com/tomato42","followers_url":"https://api.github.com/users/tomato42/followers","following_url":"https://api.github.com/users/tomato42/following{/other_user}","gists_url":"https://api.github.com/users/tomato42/gists{/gist_id}","starred_url":"https://api.github.com/users/tomato42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomato42/subscriptions","organizations_url":"https://api.github.com/users/tomato42/orgs","repos_url":"https://api.github.com/users/tomato42/repos","events_url":"https://api.github.com/users/tomato42/events{/privacy}","received_events_url":"https://api.github.com/users/tomato42/received_events","type":"User","site_admin":false},"comments":48,"review_comments":147,"maintainer_can_modify":false,"commits":4,"additions":607,"deletions":19,"changed_files":13}}
{"actor":{"display_login":"tomato42"}}