[
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/374",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/374/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/374/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/374/events",
    "html_url": "https://github.com/hub4j/github-api/issues/374",
    "id": 252585243,
    "node_id": "MDU6SXNzdWUyNTI1ODUyNDM=",
    "number": 374,
    "title": "Implement the new invitations API",
    "user": {
      "login": "jdubois",
      "id": 316835,
      "node_id": "MDQ6VXNlcjMxNjgzNQ==",
      "avatar_url": "https://avatars1.githubusercontent.com/u/316835?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/jdubois",
      "html_url": "https://github.com/jdubois",
      "followers_url": "https://api.github.com/users/jdubois/followers",
      "following_url": "https://api.github.com/users/jdubois/following{/other_user}",
      "gists_url": "https://api.github.com/users/jdubois/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/jdubois/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/jdubois/subscriptions",
      "organizations_url": "https://api.github.com/users/jdubois/orgs",
      "repos_url": "https://api.github.com/users/jdubois/repos",
      "events_url": "https://api.github.com/users/jdubois/events{/privacy}",
      "received_events_url": "https://api.github.com/users/jdubois/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 0,
    "created_at": "2017-08-24T12:27:31Z",
    "updated_at": "2018-08-30T03:19:28Z",
    "closed_at": "2018-08-30T03:19:28Z",
    "author_association": "NONE",
    "body": "Since yesterday the new invitations API is live:\r\nhttps://developer.github.com/changes/2017-08-23-repository-invitation-api/\r\n\r\nImplementing this API is necessary in order to be able to accept repository invitations."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/373",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/373/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/373/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/373/events",
    "html_url": "https://github.com/hub4j/github-api/pull/373",
    "id": 252322218,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTM3MjQ3NTc4",
    "number": 373,
    "title": "Retry all HttpException & SocketException in to methods (workaround http -1)",
    "user": {
      "login": "borgstrom",
      "id": 1594130,
      "node_id": "MDQ6VXNlcjE1OTQxMzA=",
      "avatar_url": "https://avatars0.githubusercontent.com/u/1594130?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/borgstrom",
      "html_url": "https://github.com/borgstrom",
      "followers_url": "https://api.github.com/users/borgstrom/followers",
      "following_url": "https://api.github.com/users/borgstrom/following{/other_user}",
      "gists_url": "https://api.github.com/users/borgstrom/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/borgstrom/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/borgstrom/subscriptions",
      "organizations_url": "https://api.github.com/users/borgstrom/orgs",
      "repos_url": "https://api.github.com/users/borgstrom/repos",
      "events_url": "https://api.github.com/users/borgstrom/events{/privacy}",
      "received_events_url": "https://api.github.com/users/borgstrom/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 9,
    "created_at": "2017-08-23T15:22:51Z",
    "updated_at": "2019-06-25T18:56:08Z",
    "closed_at": "2019-06-25T14:27:07Z",
    "author_association": "NONE",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/373",
      "html_url": "https://github.com/hub4j/github-api/pull/373",
      "diff_url": "https://github.com/hub4j/github-api/pull/373.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/373.patch"
    },
    "body": "This PR is the result of needing to work around https://issues.jenkins-ci.org/browse/JENKINS-45142\r\n\r\nWe were seeing the following error quite frequently when scanning all repos in our github org:\r\n\r\n```\r\nERROR: Server returned HTTP response code: -1, message: 'null' for URL: https://api.github.com\r\njava.net.SocketException: Socket closed\r\n```\r\n\r\nThe retry code in parse was not working as expected, so this moves the retry code directly into the `to` methods."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/372",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/372/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/372/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/372/events",
    "html_url": "https://github.com/hub4j/github-api/issues/372",
    "id": 251837836,
    "node_id": "MDU6SXNzdWUyNTE4Mzc4MzY=",
    "number": 372,
    "title": "<null> fields yeld NPE on getX operations.",
    "user": {
      "login": "baranowb",
      "id": 574886,
      "node_id": "MDQ6VXNlcjU3NDg4Ng==",
      "avatar_url": "https://avatars2.githubusercontent.com/u/574886?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/baranowb",
      "html_url": "https://github.com/baranowb",
      "followers_url": "https://api.github.com/users/baranowb/followers",
      "following_url": "https://api.github.com/users/baranowb/following{/other_user}",
      "gists_url": "https://api.github.com/users/baranowb/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/baranowb/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/baranowb/subscriptions",
      "organizations_url": "https://api.github.com/users/baranowb/orgs",
      "repos_url": "https://api.github.com/users/baranowb/repos",
      "events_url": "https://api.github.com/users/baranowb/events{/privacy}",
      "received_events_url": "https://api.github.com/users/baranowb/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 2,
    "created_at": "2017-08-22T04:54:33Z",
    "updated_at": "2017-11-23T10:16:36Z",
    "closed_at": "2017-09-09T21:07:27Z",
    "author_association": "NONE",
    "body": "GHPullRequest@645aa696[base=org.kohsuke.github.GHCommitPointer@7ce026d3,head=org.kohsuke.github.GHCommitPointer@7ce69770,additions=1,merged=false,mergeable=<null>,deletions=1,assignee=<null>,state=open,number=1903,comments=2,labels=<null>,title=XXXXX,milestone=<null>,url=PR_URL,id=122473208]\r\n\r\n\r\nWill throw NPE on .getMergeable()\r\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/371",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/371/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/371/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/371/events",
    "html_url": "https://github.com/hub4j/github-api/issues/371",
    "id": 250726219,
    "node_id": "MDU6SXNzdWUyNTA3MjYyMTk=",
    "number": 371,
    "title": "Not able to get the right file content",
    "user": {
      "login": "vaibhavswarnkar",
      "id": 12168400,
      "node_id": "MDQ6VXNlcjEyMTY4NDAw",
      "avatar_url": "https://avatars0.githubusercontent.com/u/12168400?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/vaibhavswarnkar",
      "html_url": "https://github.com/vaibhavswarnkar",
      "followers_url": "https://api.github.com/users/vaibhavswarnkar/followers",
      "following_url": "https://api.github.com/users/vaibhavswarnkar/following{/other_user}",
      "gists_url": "https://api.github.com/users/vaibhavswarnkar/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/vaibhavswarnkar/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/vaibhavswarnkar/subscriptions",
      "organizations_url": "https://api.github.com/users/vaibhavswarnkar/orgs",
      "repos_url": "https://api.github.com/users/vaibhavswarnkar/repos",
      "events_url": "https://api.github.com/users/vaibhavswarnkar/events{/privacy}",
      "received_events_url": "https://api.github.com/users/vaibhavswarnkar/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-08-16T18:57:39Z",
    "updated_at": "2019-10-26T02:20:02Z",
    "closed_at": "2019-10-26T02:20:02Z",
    "author_association": "NONE",
    "body": "I have a use case in which I get a commit id for a particular branch in a repository, but when I try to get the file content from that particular branch, I get the content for the same file from the master branch.\r\n\r\nHow to get a branch and get the file content from that branch only. Also, is it possible to get the branch and file content on the basis of commit id. Below is my code I use to get the file content\r\n\r\n\r\n`\r\n\r\n\r\n        GHContent props = null;\r\n        try {\r\n            props = ghBranch.getOwner().getFileContent(\"props.json\");\r\n        } catch (IOException e) {\r\n            return Response.badRequest(\"Cannot find props.json at the root of project\");\r\n        }\r\n\r\n        CustomProps props = convertorService.getProperties(props);\r\n        return Response.ok(cloud);`\r\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/370",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/370/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/370/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/370/events",
    "html_url": "https://github.com/hub4j/github-api/issues/370",
    "id": 250386246,
    "node_id": "MDU6SXNzdWUyNTAzODYyNDY=",
    "number": 370,
    "title": "Unable to Deserialize Homepage in GHRepository",
    "user": {
      "login": "ivelichkovich",
      "id": 12717569,
      "node_id": "MDQ6VXNlcjEyNzE3NTY5",
      "avatar_url": "https://avatars2.githubusercontent.com/u/12717569?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/ivelichkovich",
      "html_url": "https://github.com/ivelichkovich",
      "followers_url": "https://api.github.com/users/ivelichkovich/followers",
      "following_url": "https://api.github.com/users/ivelichkovich/following{/other_user}",
      "gists_url": "https://api.github.com/users/ivelichkovich/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/ivelichkovich/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/ivelichkovich/subscriptions",
      "organizations_url": "https://api.github.com/users/ivelichkovich/orgs",
      "repos_url": "https://api.github.com/users/ivelichkovich/repos",
      "events_url": "https://api.github.com/users/ivelichkovich/events{/privacy}",
      "received_events_url": "https://api.github.com/users/ivelichkovich/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 3,
    "created_at": "2017-08-15T17:47:00Z",
    "updated_at": "2019-11-07T22:56:39Z",
    "closed_at": "2019-11-07T22:56:39Z",
    "author_association": "NONE",
    "body": "As of yesterday evening a jenkins job we have running using this repo has stopped working. We get a jackson deserialization error throwing a java IO exception here: https://github.com/kohsuke/github-api/blob/master/src/main/java/org/kohsuke/github/Requester.java#L608\r\n\r\nIt also mentions something about:  caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token\r\n at [Source: java.io.StringReader@5474ef58; line: 1, column: 4222] (through reference chain: org.kohsuke.github.GHRepository[\"homepage\"]))\r\n\r\nWe checked GHRepository homepage and this is a string but in our json from github homepage looks like:\r\n\"homepage\":{\"scheme\":\"http\",\"user\":null,\"password\":null,\"host\":\"xxxxx-xx.github.com\",\"port\":null,\"path\":\"/xxxx-xxxx/\",\"query\":null,\"fragment\":null}\r\n\r\nSo I think the issue is trying to put this object into a homepage string but we are not sure why this problem started suddenly. There have been no changes to the script we have.\r\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/369",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/369/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/369/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/369/events",
    "html_url": "https://github.com/hub4j/github-api/pull/369",
    "id": 248840471,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTM0NzU0MjE2",
    "number": 369,
    "title": "- improve branch protection support",
    "user": {
      "login": "jgangemi",
      "id": 1831839,
      "node_id": "MDQ6VXNlcjE4MzE4Mzk=",
      "avatar_url": "https://avatars0.githubusercontent.com/u/1831839?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/jgangemi",
      "html_url": "https://github.com/jgangemi",
      "followers_url": "https://api.github.com/users/jgangemi/followers",
      "following_url": "https://api.github.com/users/jgangemi/following{/other_user}",
      "gists_url": "https://api.github.com/users/jgangemi/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/jgangemi/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/jgangemi/subscriptions",
      "organizations_url": "https://api.github.com/users/jgangemi/orgs",
      "repos_url": "https://api.github.com/users/jgangemi/repos",
      "events_url": "https://api.github.com/users/jgangemi/events{/privacy}",
      "received_events_url": "https://api.github.com/users/jgangemi/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-08-08T20:43:36Z",
    "updated_at": "2017-09-08T21:13:42Z",
    "closed_at": "2017-09-08T21:13:41Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/369",
      "html_url": "https://github.com/hub4j/github-api/pull/369",
      "diff_url": "https://github.com/hub4j/github-api/pull/369.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/369.patch"
    },
    "body": "this is a re-submission of #340. i'd like to see this get some traction and thought this the best way to grab attention.\r\n\r\nthe PR will improves the support around protected branches and bring it inline w/ the current experimental api. the current implementation doesn't work (properly at least) and given how i interpreted the @Preview docs, it did not seem i was bound to maintain existing method signatures.\r\n\r\ni'd like to be able to add some user/team restriction tests, but that requires a repository in an organization."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/368",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/368/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/368/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/368/events",
    "html_url": "https://github.com/hub4j/github-api/pull/368",
    "id": 246956376,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTMzMzg5MzA1",
    "number": 368,
    "title": "Added support for traffic statistics (number of views and clones)",
    "user": {
      "login": "adw1n",
      "id": 8993001,
      "node_id": "MDQ6VXNlcjg5OTMwMDE=",
      "avatar_url": "https://avatars0.githubusercontent.com/u/8993001?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/adw1n",
      "html_url": "https://github.com/adw1n",
      "followers_url": "https://api.github.com/users/adw1n/followers",
      "following_url": "https://api.github.com/users/adw1n/following{/other_user}",
      "gists_url": "https://api.github.com/users/adw1n/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/adw1n/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/adw1n/subscriptions",
      "organizations_url": "https://api.github.com/users/adw1n/orgs",
      "repos_url": "https://api.github.com/users/adw1n/repos",
      "events_url": "https://api.github.com/users/adw1n/events{/privacy}",
      "received_events_url": "https://api.github.com/users/adw1n/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 0,
    "created_at": "2017-08-01T05:08:45Z",
    "updated_at": "2017-09-09T18:40:59Z",
    "closed_at": "2017-09-09T18:40:59Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/368",
      "html_url": "https://github.com/hub4j/github-api/pull/368",
      "diff_url": "https://github.com/hub4j/github-api/pull/368.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/368.patch"
    },
    "body": "Added support for:\r\n* https://developer.github.com/v3/repos/traffic/#views\r\n* https://developer.github.com/v3/repos/traffic/#clones\r\n\r\nby adding to the GHRepository class public methods:\r\n* getViews\r\n* getClones\r\n\r\nAlso introduced new public classes:\r\n* GHRepositoryViews\r\n* GHRepositoryClones\r\n* GHRepositoryTrafficInfo (do you want this one to be public?)"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/367",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/367/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/367/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/367/events",
    "html_url": "https://github.com/hub4j/github-api/issues/367",
    "id": 246406998,
    "node_id": "MDU6SXNzdWUyNDY0MDY5OTg=",
    "number": 367,
    "title": "Cannot merge newly created GHPullRequest",
    "user": {
      "login": "jamesdh",
      "id": 1085322,
      "node_id": "MDQ6VXNlcjEwODUzMjI=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1085322?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/jamesdh",
      "html_url": "https://github.com/jamesdh",
      "followers_url": "https://api.github.com/users/jamesdh/followers",
      "following_url": "https://api.github.com/users/jamesdh/following{/other_user}",
      "gists_url": "https://api.github.com/users/jamesdh/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/jamesdh/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/jamesdh/subscriptions",
      "organizations_url": "https://api.github.com/users/jamesdh/orgs",
      "repos_url": "https://api.github.com/users/jamesdh/repos",
      "events_url": "https://api.github.com/users/jamesdh/events{/privacy}",
      "received_events_url": "https://api.github.com/users/jamesdh/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-07-28T17:10:49Z",
    "updated_at": "2017-07-28T17:36:12Z",
    "closed_at": "2017-07-28T17:35:59Z",
    "author_association": "NONE",
    "body": "```\r\nGHPullRequest pull = repo.createPullRequest(\"Release $version\", \"master\", \"production\", body)\r\nwhile(!pull.getMergeable()) {\r\n      println \"PR not yet mergeable, retrying...\"\r\n      sleep 2\r\n}\r\npull.merge(\"Merged via Jenkins\", pull.getHead().getSha())\r\n```\r\n\r\nThe `pull.merge(...)` seemingly results in a no-op. No error. No merge. \r\n\r\nGenerally it's not immediately mergeable via `pull.getMergeable()` and it must pause a moment before that passes. But even accounting for that, I still get nothing. "
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/366",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/366/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/366/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/366/events",
    "html_url": "https://github.com/hub4j/github-api/pull/366",
    "id": 244219273,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTMxNDUyMDkw",
    "number": 366,
    "title": "Implement Pull request review feature",
    "user": {
      "login": "PauloMigAlmeida",
      "id": 1011868,
      "node_id": "MDQ6VXNlcjEwMTE4Njg=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1011868?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/PauloMigAlmeida",
      "html_url": "https://github.com/PauloMigAlmeida",
      "followers_url": "https://api.github.com/users/PauloMigAlmeida/followers",
      "following_url": "https://api.github.com/users/PauloMigAlmeida/following{/other_user}",
      "gists_url": "https://api.github.com/users/PauloMigAlmeida/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/PauloMigAlmeida/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/PauloMigAlmeida/subscriptions",
      "organizations_url": "https://api.github.com/users/PauloMigAlmeida/orgs",
      "repos_url": "https://api.github.com/users/PauloMigAlmeida/repos",
      "events_url": "https://api.github.com/users/PauloMigAlmeida/events{/privacy}",
      "received_events_url": "https://api.github.com/users/PauloMigAlmeida/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-07-20T01:23:23Z",
    "updated_at": "2017-07-21T05:34:32Z",
    "closed_at": "2017-07-21T05:34:32Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/366",
      "html_url": "https://github.com/hub4j/github-api/pull/366",
      "diff_url": "https://github.com/hub4j/github-api/pull/366.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/366.patch"
    },
    "body": "Hi @kohsuke and github-api's contributors,\r\n\r\nI have been using github-api for a while now (BTW congrats for the high-quality SDK provided 👍) and recently, I have come to the conclusion that the ```Pull Request Review``` feature was needed to achieve the automation level the team and I are aiming for.  Since it wasn't implemented at that time, I decided to implement it myself and to create a PR so other developers with the same need could benefit from it in the future.\r\n\r\n**Features implemented / Things done:**\r\n* Create Review\r\n* List Review\r\n* Submit Review\r\n* Delete Review\r\n* Unit tests implemented\r\n\r\nIf you think that this is good addition to your SDK, please accept this PR. In case you have any doubt about anything I have coded, just let me know.\r\n\r\nBest regards,\r\n\r\nPaulo Miguel Almeida "
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/365",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/365/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/365/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/365/events",
    "html_url": "https://github.com/hub4j/github-api/issues/365",
    "id": 243315367,
    "node_id": "MDU6SXNzdWUyNDMzMTUzNjc=",
    "number": 365,
    "title": "Unable to search thru search API",
    "user": {
      "login": "Rahamathulla",
      "id": 23169170,
      "node_id": "MDQ6VXNlcjIzMTY5MTcw",
      "avatar_url": "https://avatars1.githubusercontent.com/u/23169170?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/Rahamathulla",
      "html_url": "https://github.com/Rahamathulla",
      "followers_url": "https://api.github.com/users/Rahamathulla/followers",
      "following_url": "https://api.github.com/users/Rahamathulla/following{/other_user}",
      "gists_url": "https://api.github.com/users/Rahamathulla/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/Rahamathulla/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/Rahamathulla/subscriptions",
      "organizations_url": "https://api.github.com/users/Rahamathulla/orgs",
      "repos_url": "https://api.github.com/users/Rahamathulla/repos",
      "events_url": "https://api.github.com/users/Rahamathulla/events{/privacy}",
      "received_events_url": "https://api.github.com/users/Rahamathulla/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 4,
    "created_at": "2017-07-17T07:34:13Z",
    "updated_at": "2017-08-02T15:30:09Z",
    "closed_at": "2017-08-02T15:30:09Z",
    "author_association": "NONE",
    "body": "I am getting the below error.\r\n\r\nINFO: timed out accessing https://api.github.com/search/issues?q=ArithmeticException+language%3AJava; will try 2 more time(s)\r\njava.net.SocketTimeoutException: connect timed out\r\n\r\nI am able to connect go github using password\r\n\r\ntry {\r\n\t\t\thub = GitHub.connectUsingPassword(\"username\", \"passwd\");\r\n\t\t\tSystem.out.println(\"Successfully connected\");\r\n\t\t} catch (IOException e) {\r\n\t\t\tSystem.out.println(\"failed to authenticate\");\r\n\t\t\te.printStackTrace();\r\n\t\t\tSystem.exit(1);\r\n\t\t}\r\n\r\n\r\nStack Trace:\r\n\r\nNFO: timed out accessing https://api.github.com/search/issues?q=ArithmeticException+language%3AJava; will try 2 more time(s)\r\njava.net.SocketTimeoutException: connect timed out\r\n\tat java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)\r\n\tat java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)\r\n\tat java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)\r\n\tat java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)\r\n\tat java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)\r\n\tat java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)\r\n\tat java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)\r\n\tat java.net.Socket.connect(Socket.java:589)\r\n\tat sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)\r\n\tat sun.net.NetworkClient.doConnect(NetworkClient.java:175)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:432)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:527)\r\n\tat sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)\r\n\tat sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1105)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:999)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:592)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:584)\r\n\tat org.kohsuke.github.Requester.access$200(Requester.java:70)\r\n\tat org.kohsuke.github.Requester$PagingIterator.fetch(Requester.java:496)\r\n\tat org.kohsuke.github.Requester$PagingIterator.hasNext(Requester.java:472)\r\n\tat org.kohsuke.github.PagedSearchIterable$1.hasNext(PagedSearchIterable.java:56)\r\n\tat org.kohsuke.github.PagedIterator.fetch(PagedIterator.java:44)\r\n\tat org.kohsuke.github.PagedIterator.hasNext(PagedIterator.java:32)\r\n\tat org.kohsuke.github.PagedIterable.asList(PagedIterable.java:42)\r\n\tat org.kohsuke.github.GitHubSearchTest.search(GitHubSearchTest.java:55)\r\n\tat org.kohsuke.github.GitHubSearchTest.main(GitHubSearchTest.java:44)\r\n\r\nJul 17, 2017 12:57:17 PM org.kohsuke.github.Requester parse\r\nINFO: timed out accessing https://api.github.com/search/issues?q=ArithmeticException+language%3AJava; will try 1 more time(s)\r\njava.net.SocketTimeoutException: connect timed out\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:423)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1890)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1885)\r\n\tat java.security.AccessController.doPrivileged(Native Method)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1884)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1457)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:592)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:620)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:584)\r\n\tat org.kohsuke.github.Requester.access$200(Requester.java:70)\r\n\tat org.kohsuke.github.Requester$PagingIterator.fetch(Requester.java:496)\r\n\tat org.kohsuke.github.Requester$PagingIterator.hasNext(Requester.java:472)\r\n\tat org.kohsuke.github.PagedSearchIterable$1.hasNext(PagedSearchIterable.java:56)\r\n\tat org.kohsuke.github.PagedIterator.fetch(PagedIterator.java:44)\r\n\tat org.kohsuke.github.PagedIterator.hasNext(PagedIterator.java:32)\r\n\tat org.kohsuke.github.PagedIterable.asList(PagedIterable.java:42)\r\n\tat org.kohsuke.github.GitHubSearchTest.search(GitHubSearchTest.java:55)\r\n\tat org.kohsuke.github.GitHubSearchTest.main(GitHubSearchTest.java:44)\r\nCaused by: java.net.SocketTimeoutException: connect timed out\r\n\tat java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)\r\n\tat java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)\r\n\tat java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)\r\n\tat java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)\r\n\tat java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)\r\n\tat java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)\r\n\tat java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)\r\n\tat java.net.Socket.connect(Socket.java:589)\r\n\tat sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)\r\n\tat sun.net.NetworkClient.doConnect(NetworkClient.java:175)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:432)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:527)\r\n\tat sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)\r\n\tat sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1105)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:999)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:592)\r\n\t... 10 more\r\n\r\nException in thread \"main\" java.lang.Error: org.kohsuke.github.HttpException: Server returned HTTP response code: -1, message: 'null' for URL: https://api.github.com/search/issues?q=ArithmeticException+language%3AJava\r\n\tat org.kohsuke.github.Requester$PagingIterator.fetch(Requester.java:507)\r\n\tat org.kohsuke.github.Requester$PagingIterator.hasNext(Requester.java:472)\r\n\tat org.kohsuke.github.PagedSearchIterable$1.hasNext(PagedSearchIterable.java:56)\r\n\tat org.kohsuke.github.PagedIterator.fetch(PagedIterator.java:44)\r\n\tat org.kohsuke.github.PagedIterator.hasNext(PagedIterator.java:32)\r\n\tat org.kohsuke.github.PagedIterable.asList(PagedIterable.java:42)\r\n\tat org.kohsuke.github.GitHubSearchTest.search(GitHubSearchTest.java:55)\r\n\tat org.kohsuke.github.GitHubSearchTest.main(GitHubSearchTest.java:44)\r\nCaused by: org.kohsuke.github.HttpException: Server returned HTTP response code: -1, message: 'null' for URL: https://api.github.com/search/issues?q=ArithmeticException+language%3AJava\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:622)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:620)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:620)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:584)\r\n\tat org.kohsuke.github.Requester.access$200(Requester.java:70)\r\n\tat org.kohsuke.github.Requester$PagingIterator.fetch(Requester.java:496)\r\n\t... 7 more\r\nCaused by: java.net.SocketTimeoutException: connect timed out\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:423)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1890)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1885)\r\n\tat java.security.AccessController.doPrivileged(Native Method)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1884)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1457)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:592)\r\n\t... 12 more\r\nCaused by: java.net.SocketTimeoutException: connect timed out\r\n\tat java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)\r\n\tat java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)\r\n\tat java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)\r\n\tat java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)\r\n\tat java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)\r\n\tat java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)\r\n\tat java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)\r\n\tat java.net.Socket.connect(Socket.java:589)\r\n\tat sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:668)\r\n\tat sun.net.NetworkClient.doConnect(NetworkClient.java:175)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:432)\r\n\tat sun.net.www.http.HttpClient.openServer(HttpClient.java:527)\r\n\tat sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)\r\n\tat sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1105)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:999)\r\n\tat sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:592)\r\n\t... 10 more"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/364",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/364/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/364/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/364/events",
    "html_url": "https://github.com/hub4j/github-api/issues/364",
    "id": 243284423,
    "node_id": "MDU6SXNzdWUyNDMyODQ0MjM=",
    "number": 364,
    "title": "Unable to find documentation for issue search",
    "user": {
      "login": "Rahamathulla",
      "id": 23169170,
      "node_id": "MDQ6VXNlcjIzMTY5MTcw",
      "avatar_url": "https://avatars1.githubusercontent.com/u/23169170?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/Rahamathulla",
      "html_url": "https://github.com/Rahamathulla",
      "followers_url": "https://api.github.com/users/Rahamathulla/followers",
      "following_url": "https://api.github.com/users/Rahamathulla/following{/other_user}",
      "gists_url": "https://api.github.com/users/Rahamathulla/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/Rahamathulla/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/Rahamathulla/subscriptions",
      "organizations_url": "https://api.github.com/users/Rahamathulla/orgs",
      "repos_url": "https://api.github.com/users/Rahamathulla/repos",
      "events_url": "https://api.github.com/users/Rahamathulla/events{/privacy}",
      "received_events_url": "https://api.github.com/users/Rahamathulla/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 4,
    "created_at": "2017-07-17T02:18:45Z",
    "updated_at": "2017-07-17T06:56:09Z",
    "closed_at": "2017-07-17T06:56:09Z",
    "author_association": "NONE",
    "body": "I would like to see the documentation for sample issue search.\r\n\r\nCan you please help with it.\r\n\r\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/363",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/363/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/363/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/363/events",
    "html_url": "https://github.com/hub4j/github-api/pull/363",
    "id": 242895852,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTMwNTE0NzU0",
    "number": 363,
    "title": "Add missing event types used by repository webhooks",
    "user": {
      "login": "PauloMigAlmeida",
      "id": 1011868,
      "node_id": "MDQ6VXNlcjEwMTE4Njg=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1011868?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/PauloMigAlmeida",
      "html_url": "https://github.com/PauloMigAlmeida",
      "followers_url": "https://api.github.com/users/PauloMigAlmeida/followers",
      "following_url": "https://api.github.com/users/PauloMigAlmeida/following{/other_user}",
      "gists_url": "https://api.github.com/users/PauloMigAlmeida/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/PauloMigAlmeida/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/PauloMigAlmeida/subscriptions",
      "organizations_url": "https://api.github.com/users/PauloMigAlmeida/orgs",
      "repos_url": "https://api.github.com/users/PauloMigAlmeida/repos",
      "events_url": "https://api.github.com/users/PauloMigAlmeida/events{/privacy}",
      "received_events_url": "https://api.github.com/users/PauloMigAlmeida/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 0,
    "created_at": "2017-07-14T04:42:14Z",
    "updated_at": "2017-09-08T17:36:34Z",
    "closed_at": "2017-09-08T17:36:34Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/363",
      "html_url": "https://github.com/hub4j/github-api/pull/363",
      "diff_url": "https://github.com/hub4j/github-api/pull/363.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/363.patch"
    },
    "body": "There are a few event types that were missing in the GHEvent file since the last time it was updated.\r\n\r\nSo I thought it would be nice to update it again with the most recent events.\r\n\r\nCheers,\r\n\r\nPaulo Almeida"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/362",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/362/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/362/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/362/events",
    "html_url": "https://github.com/hub4j/github-api/pull/362",
    "id": 241568869,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTI5NTgzMDQ4",
    "number": 362,
    "title": "Add ping hook method",
    "user": {
      "login": "KostyaSha",
      "id": 231611,
      "node_id": "MDQ6VXNlcjIzMTYxMQ==",
      "avatar_url": "https://avatars2.githubusercontent.com/u/231611?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/KostyaSha",
      "html_url": "https://github.com/KostyaSha",
      "followers_url": "https://api.github.com/users/KostyaSha/followers",
      "following_url": "https://api.github.com/users/KostyaSha/following{/other_user}",
      "gists_url": "https://api.github.com/users/KostyaSha/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/KostyaSha/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/KostyaSha/subscriptions",
      "organizations_url": "https://api.github.com/users/KostyaSha/orgs",
      "repos_url": "https://api.github.com/users/KostyaSha/repos",
      "events_url": "https://api.github.com/users/KostyaSha/events{/privacy}",
      "received_events_url": "https://api.github.com/users/KostyaSha/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 3,
    "created_at": "2017-07-09T23:39:05Z",
    "updated_at": "2017-09-08T17:34:46Z",
    "closed_at": "2017-09-08T17:34:46Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/362",
      "html_url": "https://github.com/hub4j/github-api/pull/362",
      "diff_url": "https://github.com/hub4j/github-api/pull/362.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/362.patch"
    },
    "body": "\n\n<!-- Reviewable:start -->\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/kohsuke/github-api/362)\n<!-- Reviewable:end -->\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/361",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/361/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/361/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/361/events",
    "html_url": "https://github.com/hub4j/github-api/pull/361",
    "id": 241435089,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTI5NTIxNjI1",
    "number": 361,
    "title": "issue #360: Add support for committing multiple files",
    "user": {
      "login": "siordache",
      "id": 1158863,
      "node_id": "MDQ6VXNlcjExNTg4NjM=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1158863?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/siordache",
      "html_url": "https://github.com/siordache",
      "followers_url": "https://api.github.com/users/siordache/followers",
      "following_url": "https://api.github.com/users/siordache/following{/other_user}",
      "gists_url": "https://api.github.com/users/siordache/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/siordache/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/siordache/subscriptions",
      "organizations_url": "https://api.github.com/users/siordache/orgs",
      "repos_url": "https://api.github.com/users/siordache/repos",
      "events_url": "https://api.github.com/users/siordache/events{/privacy}",
      "received_events_url": "https://api.github.com/users/siordache/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 6,
    "created_at": "2017-07-08T08:10:29Z",
    "updated_at": "2017-09-09T18:48:49Z",
    "closed_at": "2017-09-09T18:48:49Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/361",
      "html_url": "https://github.com/hub4j/github-api/pull/361",
      "diff_url": "https://github.com/hub4j/github-api/pull/361.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/361.patch"
    },
    "body": "Implement #360. New classes:\r\n- GHBlobBuilder - [create a blob](https://developer.github.com/v3/git/blobs/#create-a-blob)\r\n- GHTreeBuilder - [create a tree](https://developer.github.com/v3/git/trees/#create-a-tree)\r\n- GHCommitBuilder - [create a commit](https://developer.github.com/v3/git/commits/#create-a-commit)\r\n\r\n[This gist](https://gist.github.com/siordache/63b19f515e4db6944e2411265f89e92f) shows how to use the new classes."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/360",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/360/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/360/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/360/events",
    "html_url": "https://github.com/hub4j/github-api/issues/360",
    "id": 241250399,
    "node_id": "MDU6SXNzdWUyNDEyNTAzOTk=",
    "number": 360,
    "title": "Add support for committing multiple files.",
    "user": {
      "login": "siordache",
      "id": 1158863,
      "node_id": "MDQ6VXNlcjExNTg4NjM=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1158863?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/siordache",
      "html_url": "https://github.com/siordache",
      "followers_url": "https://api.github.com/users/siordache/followers",
      "following_url": "https://api.github.com/users/siordache/following{/other_user}",
      "gists_url": "https://api.github.com/users/siordache/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/siordache/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/siordache/subscriptions",
      "organizations_url": "https://api.github.com/users/siordache/orgs",
      "repos_url": "https://api.github.com/users/siordache/repos",
      "events_url": "https://api.github.com/users/siordache/events{/privacy}",
      "received_events_url": "https://api.github.com/users/siordache/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 0,
    "created_at": "2017-07-07T12:33:46Z",
    "updated_at": "2017-09-09T21:07:45Z",
    "closed_at": "2017-09-09T21:07:45Z",
    "author_association": "CONTRIBUTOR",
    "body": "A single file can be committed by using one of the GHRepository.createContent() methods.\r\n\r\nIn order to commit multiple files, the following steps have to be taken:\r\n1. Get the SHA of the latest commit on the branch\r\n2. Get the tree information for that commit\r\n3. **Create a new tree for your commit**\r\n4. **Create the commit**\r\n5. Link commit to the reference\r\n\r\nThe operations in steps 3 and 4 are currently not suppported by github-api. They involve:\r\n- [creating a blob](https://developer.github.com/v3/git/blobs/#create-a-blob)\r\n- [creating a tree](https://developer.github.com/v3/git/trees/#create-a-tree)\r\n- [creating a commit](https://developer.github.com/v3/git/commits/#create-a-commit)\r\n\r\nDo you find the addition of these operations useful? If yes, I will create a PR for this.\r\n"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/359",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/359/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/359/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/359/events",
    "html_url": "https://github.com/hub4j/github-api/pull/359",
    "id": 239298451,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTI4MDIxMDU2",
    "number": 359,
    "title": "[JENKINS-45142] Retry connections after getting SocketTimeoutException",
    "user": {
      "login": "jglick",
      "id": 154109,
      "node_id": "MDQ6VXNlcjE1NDEwOQ==",
      "avatar_url": "https://avatars1.githubusercontent.com/u/154109?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/jglick",
      "html_url": "https://github.com/jglick",
      "followers_url": "https://api.github.com/users/jglick/followers",
      "following_url": "https://api.github.com/users/jglick/following{/other_user}",
      "gists_url": "https://api.github.com/users/jglick/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/jglick/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/jglick/subscriptions",
      "organizations_url": "https://api.github.com/users/jglick/orgs",
      "repos_url": "https://api.github.com/users/jglick/repos",
      "events_url": "https://api.github.com/users/jglick/events{/privacy}",
      "received_events_url": "https://api.github.com/users/jglick/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 6,
    "created_at": "2017-06-28T21:10:42Z",
    "updated_at": "2017-07-03T13:41:45Z",
    "closed_at": "2017-06-29T21:13:31Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/359",
      "html_url": "https://github.com/hub4j/github-api/pull/359",
      "diff_url": "https://github.com/hub4j/github-api/pull/359.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/359.patch"
    },
    "body": "[JENKINS-45142](https://issues.jenkins-ci.org/browse/JENKINS-45142)\r\n\r\n@reviewbybees"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/358",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/358/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/358/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/358/events",
    "html_url": "https://github.com/hub4j/github-api/pull/358",
    "id": 235251737,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTI1MTUwMTMy",
    "number": 358,
    "title": "[JENKINS-36240] /repos/:owner/:repo/collaborators/:username/permission no longer requires korra preview",
    "user": {
      "login": "jglick",
      "id": 154109,
      "node_id": "MDQ6VXNlcjE1NDEwOQ==",
      "avatar_url": "https://avatars1.githubusercontent.com/u/154109?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/jglick",
      "html_url": "https://github.com/jglick",
      "followers_url": "https://api.github.com/users/jglick/followers",
      "following_url": "https://api.github.com/users/jglick/following{/other_user}",
      "gists_url": "https://api.github.com/users/jglick/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/jglick/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/jglick/subscriptions",
      "organizations_url": "https://api.github.com/users/jglick/orgs",
      "repos_url": "https://api.github.com/users/jglick/repos",
      "events_url": "https://api.github.com/users/jglick/events{/privacy}",
      "received_events_url": "https://api.github.com/users/jglick/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 3,
    "created_at": "2017-06-12T14:30:15Z",
    "updated_at": "2017-10-04T21:14:56Z",
    "closed_at": "2017-09-08T17:33:32Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/358",
      "html_url": "https://github.com/hub4j/github-api/pull/358",
      "diff_url": "https://github.com/hub4j/github-api/pull/358.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/358.patch"
    },
    "body": "[JENKINS-36240](https://issues.jenkins-ci.org/browse/JENKINS-36240)\r\n\r\nAmends #324 (and its unfiled follow-ups). [This API](https://developer.github.com/v3/repos/collaborators/#review-a-users-permission-level) seems to now be official.\r\n\r\n@reviewbybees esp. @stephenc & @kohsuke"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/357",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/357/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/357/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/357/events",
    "html_url": "https://github.com/hub4j/github-api/issues/357",
    "id": 226462677,
    "node_id": "MDU6SXNzdWUyMjY0NjI2Nzc=",
    "number": 357,
    "title": "Update compiler",
    "user": {
      "login": "justin-wesley",
      "id": 3708806,
      "node_id": "MDQ6VXNlcjM3MDg4MDY=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/3708806?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/justin-wesley",
      "html_url": "https://github.com/justin-wesley",
      "followers_url": "https://api.github.com/users/justin-wesley/followers",
      "following_url": "https://api.github.com/users/justin-wesley/following{/other_user}",
      "gists_url": "https://api.github.com/users/justin-wesley/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/justin-wesley/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/justin-wesley/subscriptions",
      "organizations_url": "https://api.github.com/users/justin-wesley/orgs",
      "repos_url": "https://api.github.com/users/justin-wesley/repos",
      "events_url": "https://api.github.com/users/justin-wesley/events{/privacy}",
      "received_events_url": "https://api.github.com/users/justin-wesley/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 5,
    "created_at": "2017-05-05T03:16:04Z",
    "updated_at": "2017-09-09T21:09:16Z",
    "closed_at": "2017-09-09T21:09:16Z",
    "author_association": "NONE",
    "body": "With JDK 5 being end of life for many many years, it is time to move to JDK 8. I think you should create a branch for JDK 8 and even JDK 9, so contributors can use the newer JDK."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/356",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/356/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/356/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/356/events",
    "html_url": "https://github.com/hub4j/github-api/issues/356",
    "id": 223539584,
    "node_id": "MDU6SXNzdWUyMjM1Mzk1ODQ=",
    "number": 356,
    "title": "Extension mechanism?",
    "user": {
      "login": "vromero",
      "id": 1119553,
      "node_id": "MDQ6VXNlcjExMTk1NTM=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/1119553?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/vromero",
      "html_url": "https://github.com/vromero",
      "followers_url": "https://api.github.com/users/vromero/followers",
      "following_url": "https://api.github.com/users/vromero/following{/other_user}",
      "gists_url": "https://api.github.com/users/vromero/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/vromero/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/vromero/subscriptions",
      "organizations_url": "https://api.github.com/users/vromero/orgs",
      "repos_url": "https://api.github.com/users/vromero/repos",
      "events_url": "https://api.github.com/users/vromero/events{/privacy}",
      "received_events_url": "https://api.github.com/users/vromero/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-04-22T04:37:16Z",
    "updated_at": "2017-09-09T21:18:27Z",
    "closed_at": "2017-09-09T21:18:27Z",
    "author_association": "NONE",
    "body": "I need to get direct collaborators only,\r\n\r\nhttps://developer.github.com/v3/repos/collaborators/\r\n\r\nseems the only way is to modify the library itself, privates and packages prevent me to extend"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/355",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/355/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/355/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/355/events",
    "html_url": "https://github.com/hub4j/github-api/issues/355",
    "id": 222295800,
    "node_id": "MDU6SXNzdWUyMjIyOTU4MDA=",
    "number": 355,
    "title": "Update GHPullRequest with missing properties",
    "user": {
      "login": "aaronjwhiteside",
      "id": 1084153,
      "node_id": "MDQ6VXNlcjEwODQxNTM=",
      "avatar_url": "https://avatars2.githubusercontent.com/u/1084153?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/aaronjwhiteside",
      "html_url": "https://github.com/aaronjwhiteside",
      "followers_url": "https://api.github.com/users/aaronjwhiteside/followers",
      "following_url": "https://api.github.com/users/aaronjwhiteside/following{/other_user}",
      "gists_url": "https://api.github.com/users/aaronjwhiteside/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/aaronjwhiteside/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/aaronjwhiteside/subscriptions",
      "organizations_url": "https://api.github.com/users/aaronjwhiteside/orgs",
      "repos_url": "https://api.github.com/users/aaronjwhiteside/repos",
      "events_url": "https://api.github.com/users/aaronjwhiteside/events{/privacy}",
      "received_events_url": "https://api.github.com/users/aaronjwhiteside/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 0,
    "created_at": "2017-04-18T04:06:08Z",
    "updated_at": "2017-09-10T03:39:03Z",
    "closed_at": "2017-09-10T03:39:03Z",
    "author_association": "NONE",
    "body": "As per https://developer.github.com/v3/pulls/#get-a-single-pull-request\r\n\r\n`locked` - read/write, https://developer.github.com/v3/issues/#unlock-an-issue\r\n`commits` - read only\r\n`maintainer_can_modify` - read/write, https://developer.github.com/v3/pulls/#update-a-pull-request"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/354",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/354/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/354/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/354/events",
    "html_url": "https://github.com/hub4j/github-api/issues/354",
    "id": 218964710,
    "node_id": "MDU6SXNzdWUyMTg5NjQ3MTA=",
    "number": 354,
    "title": "Updating file is not possible",
    "user": {
      "login": "GJL",
      "id": 1681921,
      "node_id": "MDQ6VXNlcjE2ODE5MjE=",
      "avatar_url": "https://avatars2.githubusercontent.com/u/1681921?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/GJL",
      "html_url": "https://github.com/GJL",
      "followers_url": "https://api.github.com/users/GJL/followers",
      "following_url": "https://api.github.com/users/GJL/following{/other_user}",
      "gists_url": "https://api.github.com/users/GJL/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/GJL/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/GJL/subscriptions",
      "organizations_url": "https://api.github.com/users/GJL/orgs",
      "repos_url": "https://api.github.com/users/GJL/repos",
      "events_url": "https://api.github.com/users/GJL/events{/privacy}",
      "received_events_url": "https://api.github.com/users/GJL/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 2,
    "created_at": "2017-04-03T15:07:56Z",
    "updated_at": "2019-10-11T21:06:44Z",
    "closed_at": "2019-10-11T21:06:44Z",
    "author_association": "NONE",
    "body": "Updating a file is not possible with `GHRepository.createContent(...)`. None of the methods accept the required `sha` argument. See https://developer.github.com/enterprise/2.9/v3/repos/contents/#update-a-file\r\n\r\n> sha\tstring\tRequired. The blob SHA of the file being replaced.\r\n\r\nFull stacktrace:\r\n```\r\nCaused by: org.kohsuke.github.HttpException: {\"message\":\"Invalid request.\\n\\n\\\"sha\\\" wasn't supplied.\",\"documentation_url\":\"https://developer.github.com/enterprise/2.9/v3/repos/contents/\"}\r\n\tat org.kohsuke.github.Requester.handleApiError(Requester.java:654)\r\n\tat org.kohsuke.github.Requester._to(Requester.java:283)\r\n\tat org.kohsuke.github.Requester.to(Requester.java:224)\r\n\tat org.kohsuke.github.GHRepository.createContent(GHRepository.java:1343)\r\n\tat org.kohsuke.github.GHRepository.createContent(GHRepository.java:1325)\r\n\t[...]\r\n\t... 7 more\r\nCaused by: org.kohsuke.github.HttpException: Server returned HTTP response code: 422, message: 'Unprocessable Entity' for URL: [...]\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:612)\r\n\tat org.kohsuke.github.Requester._to(Requester.java:262)\r\n\t... 11 more\r\nCaused by: java.io.IOException: Server returned HTTP response code: 422 for URL: [...]\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)\r\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\r\n\tat java.lang.reflect.Constructor.newInstance(Constructor.java:422)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1889)\r\n\tat sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1884)\r\n\tat java.security.AccessController.doPrivileged(Native Method)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1883)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1456)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1440)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:596)\r\n\t... 12 more\r\nCaused by: java.io.IOException: Server returned HTTP response code: 422 for URL: [...]\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1839)\r\n\tat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1440)\r\n\tat java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)\r\n\tat sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)\r\n\tat org.kohsuke.github.Requester.parse(Requester.java:586)\r\n\t... 12 more\r\n```"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/353",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/353/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/353/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/353/events",
    "html_url": "https://github.com/hub4j/github-api/issues/353",
    "id": 218568283,
    "node_id": "MDU6SXNzdWUyMTg1NjgyODM=",
    "number": 353,
    "title": "Refactor to allow for additional HTTP headers",
    "user": {
      "login": "cosmocracy",
      "id": 10222432,
      "node_id": "MDQ6VXNlcjEwMjIyNDMy",
      "avatar_url": "https://avatars0.githubusercontent.com/u/10222432?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/cosmocracy",
      "html_url": "https://github.com/cosmocracy",
      "followers_url": "https://api.github.com/users/cosmocracy/followers",
      "following_url": "https://api.github.com/users/cosmocracy/following{/other_user}",
      "gists_url": "https://api.github.com/users/cosmocracy/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/cosmocracy/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/cosmocracy/subscriptions",
      "organizations_url": "https://api.github.com/users/cosmocracy/orgs",
      "repos_url": "https://api.github.com/users/cosmocracy/repos",
      "events_url": "https://api.github.com/users/cosmocracy/events{/privacy}",
      "received_events_url": "https://api.github.com/users/cosmocracy/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-03-31T17:35:07Z",
    "updated_at": "2017-09-09T21:12:33Z",
    "closed_at": "2017-09-09T21:12:32Z",
    "author_association": "NONE",
    "body": "For new/experimental functionality, the GitHub API requires the submission of an additional header to enable features (see, for example, the [API documentation note](https://developer.github.com/v3/repos/) below related to the new Topics attributes):\r\n\r\n![image](https://cloud.githubusercontent.com/assets/10222432/24561770/15a10854-1616-11e7-97a3-cf9b61987b87.png)\r\n\r\nCurrently while the HTTP mechanisms are well-factored, they are only plugable via changes to the source code of this library.  To ease extensibility (and meet the needs of additional headers), please consider either: \r\n - Implementing a Factory-style improvement that would allow for us to provide a ```Requester``` that could, for examlpe include the headers within the implementation of ```buildRequest```, or\r\n - Provide a pathway for injecting headers into the ```Requester```'s ```headers``` property, possibly via a static-level \"DefaultHeaders\" that is publicly available."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/352",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/352/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/352/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/352/events",
    "html_url": "https://github.com/hub4j/github-api/pull/352",
    "id": 218162682,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTEzNDAzNDQ0",
    "number": 352,
    "title": "Add support for PR reviews preview",
    "user": {
      "login": "stephenc",
      "id": 209336,
      "node_id": "MDQ6VXNlcjIwOTMzNg==",
      "avatar_url": "https://avatars2.githubusercontent.com/u/209336?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/stephenc",
      "html_url": "https://github.com/stephenc",
      "followers_url": "https://api.github.com/users/stephenc/followers",
      "following_url": "https://api.github.com/users/stephenc/following{/other_user}",
      "gists_url": "https://api.github.com/users/stephenc/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/stephenc/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/stephenc/subscriptions",
      "organizations_url": "https://api.github.com/users/stephenc/orgs",
      "repos_url": "https://api.github.com/users/stephenc/repos",
      "events_url": "https://api.github.com/users/stephenc/events{/privacy}",
      "received_events_url": "https://api.github.com/users/stephenc/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 9,
    "created_at": "2017-03-30T11:14:29Z",
    "updated_at": "2017-11-01T15:50:05Z",
    "closed_at": "2017-09-08T17:35:59Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/352",
      "html_url": "https://github.com/hub4j/github-api/pull/352",
      "diff_url": "https://github.com/hub4j/github-api/pull/352.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/352.patch"
    },
    "body": "@reviewbybees"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/351",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/351/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/351/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/351/events",
    "html_url": "https://github.com/hub4j/github-api/pull/351",
    "id": 218159611,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTEzNDAxMTgz",
    "number": 351,
    "title": "Add the Commit search API",
    "user": {
      "login": "mdeverdelhan",
      "id": 856354,
      "node_id": "MDQ6VXNlcjg1NjM1NA==",
      "avatar_url": "https://avatars1.githubusercontent.com/u/856354?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/mdeverdelhan",
      "html_url": "https://github.com/mdeverdelhan",
      "followers_url": "https://api.github.com/users/mdeverdelhan/followers",
      "following_url": "https://api.github.com/users/mdeverdelhan/following{/other_user}",
      "gists_url": "https://api.github.com/users/mdeverdelhan/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/mdeverdelhan/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/mdeverdelhan/subscriptions",
      "organizations_url": "https://api.github.com/users/mdeverdelhan/orgs",
      "repos_url": "https://api.github.com/users/mdeverdelhan/repos",
      "events_url": "https://api.github.com/users/mdeverdelhan/events{/privacy}",
      "received_events_url": "https://api.github.com/users/mdeverdelhan/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 2,
    "created_at": "2017-03-30T11:01:05Z",
    "updated_at": "2017-09-08T21:17:01Z",
    "closed_at": "2017-09-08T21:17:01Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/351",
      "html_url": "https://github.com/hub4j/github-api/pull/351",
      "diff_url": "https://github.com/hub4j/github-api/pull/351.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/351.patch"
    },
    "body": "Fix #345 - Add the Commit search API (still in preview in GitHub API v3)\r\n\r\nSee also: https://developer.github.com/v3/search/#search-commits"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/350",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/350/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/350/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/350/events",
    "html_url": "https://github.com/hub4j/github-api/pull/350",
    "id": 217857146,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTEzMTgzOTQz",
    "number": 350,
    "title": "Add application/json header when sending json data.",
    "user": {
      "login": "kounoike",
      "id": 6997928,
      "node_id": "MDQ6VXNlcjY5OTc5Mjg=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/6997928?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/kounoike",
      "html_url": "https://github.com/kounoike",
      "followers_url": "https://api.github.com/users/kounoike/followers",
      "following_url": "https://api.github.com/users/kounoike/following{/other_user}",
      "gists_url": "https://api.github.com/users/kounoike/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/kounoike/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/kounoike/subscriptions",
      "organizations_url": "https://api.github.com/users/kounoike/orgs",
      "repos_url": "https://api.github.com/users/kounoike/repos",
      "events_url": "https://api.github.com/users/kounoike/events{/privacy}",
      "received_events_url": "https://api.github.com/users/kounoike/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-03-29T12:18:55Z",
    "updated_at": "2017-09-09T18:53:10Z",
    "closed_at": "2017-09-09T18:53:10Z",
    "author_association": "NONE",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/350",
      "html_url": "https://github.com/hub4j/github-api/pull/350",
      "diff_url": "https://github.com/hub4j/github-api/pull/350.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/350.patch"
    },
    "body": "I'm using Jenkins and SonarQube GitHub plugins with [GitBucket](https://github.com/gitbucket/gitbucket).\r\nGitBucket has GitHub-compatible API.\r\nBut it is not 100% compatible. This PR solves one of the differences between GitHub and GitBucket. And, it also solves header and body data format mismatch when sending json data.\r\n\r\nin current version's Requester.java [buildRequest](https://github.com/kohsuke/github-api/blob/2627dc5ee4ed60c0250ce5a9e99d586d480603f2/src/main/java/org/kohsuke/github/Requester.java#L385) sends json data with content-type: application/x-www-form-urlencoded.\r\nThis behavior is incorrect. data and header mismatch. Then, GitBucket was confused by how to handle data.\r\n\r\nIn GitHub API, GitHub parses this data as json (header content-type is ignored), but this behavior is not documented. In the future this behavior may change.\r\n\r\nI think that it is better to accept this modification to avoid future problems."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/346",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/346/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/346/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/346/events",
    "html_url": "https://github.com/hub4j/github-api/pull/346",
    "id": 209753433,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTA3NjE4NjQ3",
    "number": 346,
    "title": "Ensure that connections are closed for error responses",
    "user": {
      "login": "stephenc",
      "id": 209336,
      "node_id": "MDQ6VXNlcjIwOTMzNg==",
      "avatar_url": "https://avatars2.githubusercontent.com/u/209336?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/stephenc",
      "html_url": "https://github.com/stephenc",
      "followers_url": "https://api.github.com/users/stephenc/followers",
      "following_url": "https://api.github.com/users/stephenc/following{/other_user}",
      "gists_url": "https://api.github.com/users/stephenc/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/stephenc/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/stephenc/subscriptions",
      "organizations_url": "https://api.github.com/users/stephenc/orgs",
      "repos_url": "https://api.github.com/users/stephenc/repos",
      "events_url": "https://api.github.com/users/stephenc/events{/privacy}",
      "received_events_url": "https://api.github.com/users/stephenc/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 6,
    "created_at": "2017-02-23T12:54:15Z",
    "updated_at": "2017-11-01T15:50:06Z",
    "closed_at": "2017-02-27T20:33:19Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/346",
      "html_url": "https://github.com/hub4j/github-api/pull/346",
      "diff_url": "https://github.com/hub4j/github-api/pull/346.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/346.patch"
    },
    "body": "- This was endless fun to trace, but I found it at last. This should\r\nstop the `WARNING: A connection to https://api.github.com/ was leaked.\r\nDid you forget to close a response body?` messages in the logs when\r\nusing the OkHttpConnector.\r\n\r\n@reviewbybees"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/345",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/345/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/345/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/345/events",
    "html_url": "https://github.com/hub4j/github-api/issues/345",
    "id": 209735152,
    "node_id": "MDU6SXNzdWUyMDk3MzUxNTI=",
    "number": 345,
    "title": "Commit Search API implemented or not?",
    "user": {
      "login": "mdeverdelhan",
      "id": 856354,
      "node_id": "MDQ6VXNlcjg1NjM1NA==",
      "avatar_url": "https://avatars1.githubusercontent.com/u/856354?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/mdeverdelhan",
      "html_url": "https://github.com/mdeverdelhan",
      "followers_url": "https://api.github.com/users/mdeverdelhan/followers",
      "following_url": "https://api.github.com/users/mdeverdelhan/following{/other_user}",
      "gists_url": "https://api.github.com/users/mdeverdelhan/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/mdeverdelhan/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/mdeverdelhan/subscriptions",
      "organizations_url": "https://api.github.com/users/mdeverdelhan/orgs",
      "repos_url": "https://api.github.com/users/mdeverdelhan/repos",
      "events_url": "https://api.github.com/users/mdeverdelhan/events{/privacy}",
      "received_events_url": "https://api.github.com/users/mdeverdelhan/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-02-23T11:26:52Z",
    "updated_at": "2017-09-08T21:17:01Z",
    "closed_at": "2017-09-08T21:17:01Z",
    "author_association": "CONTRIBUTOR",
    "body": "Hello,\r\n\r\nIs the [Commit Search API](https://developer.github.com/v3/search/#search-commits) (in preview) already implemented in the library?\r\n\r\nThank you."
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/344",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/344/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/344/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/344/events",
    "html_url": "https://github.com/hub4j/github-api/issues/344",
    "id": 209519050,
    "node_id": "MDU6SXNzdWUyMDk1MTkwNTA=",
    "number": 344,
    "title": "Building failing due problematic repository server",
    "user": {
      "login": "sergiofigueras",
      "id": 1733227,
      "node_id": "MDQ6VXNlcjE3MzMyMjc=",
      "avatar_url": "https://avatars2.githubusercontent.com/u/1733227?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/sergiofigueras",
      "html_url": "https://github.com/sergiofigueras",
      "followers_url": "https://api.github.com/users/sergiofigueras/followers",
      "following_url": "https://api.github.com/users/sergiofigueras/following{/other_user}",
      "gists_url": "https://api.github.com/users/sergiofigueras/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/sergiofigueras/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/sergiofigueras/subscriptions",
      "organizations_url": "https://api.github.com/users/sergiofigueras/orgs",
      "repos_url": "https://api.github.com/users/sergiofigueras/repos",
      "events_url": "https://api.github.com/users/sergiofigueras/events{/privacy}",
      "received_events_url": "https://api.github.com/users/sergiofigueras/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-02-22T17:08:48Z",
    "updated_at": "2017-09-09T21:19:28Z",
    "closed_at": "2017-09-09T21:19:28Z",
    "author_association": "NONE",
    "body": "Hello guys,\r\n\r\nOur build is failing due an bad repository. It started two days ago.\r\n\r\n```org.kohsuke:github-api:jar:1.77 -> com.infradna.tool:bridge-method-annotation:jar:1.14 -> org.jenkins-ci:annotation-indexer:jar:1.4: Failed to read artifact descriptor for org.jenkins-ci:annotation-indexer:jar:1.4: Could not transfer artifact org.jenkins-ci:jenkins:pom:1.26 from/to repo.jenkins-ci.org (http://repo.jenkins-ci.org/public/): Failed to transfer file: http://repo.jenkins-ci.org/public/org/jenkins-ci/jenkins/1.26/jenkins-1.26.pom. Return code is: 502 , ReasonPhrase:Bad Gateway. -> [Help 1]```\r\n\r\nI also checked https://repo.jenkins-ci.org/public/org/jenkins-ci/jenkins/1.26/jenkins-1.26.pom, but its giving 504 TIMEOUT.\r\nIs anybody facing this too?"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/343",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/343/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/343/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/343/events",
    "html_url": "https://github.com/hub4j/github-api/pull/343",
    "id": 208729931,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MTA2OTA4MDYw",
    "number": 343,
    "title": "add latest release",
    "user": {
      "login": "kamontat",
      "id": 14089557,
      "node_id": "MDQ6VXNlcjE0MDg5NTU3",
      "avatar_url": "https://avatars2.githubusercontent.com/u/14089557?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/kamontat",
      "html_url": "https://github.com/kamontat",
      "followers_url": "https://api.github.com/users/kamontat/followers",
      "following_url": "https://api.github.com/users/kamontat/following{/other_user}",
      "gists_url": "https://api.github.com/users/kamontat/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/kamontat/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/kamontat/subscriptions",
      "organizations_url": "https://api.github.com/users/kamontat/orgs",
      "repos_url": "https://api.github.com/users/kamontat/repos",
      "events_url": "https://api.github.com/users/kamontat/events{/privacy}",
      "received_events_url": "https://api.github.com/users/kamontat/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 5,
    "created_at": "2017-02-19T17:04:31Z",
    "updated_at": "2017-09-08T17:39:14Z",
    "closed_at": "2017-09-08T17:39:13Z",
    "author_association": "CONTRIBUTOR",
    "pull_request": {
      "url": "https://api.github.com/repos/hub4j/github-api/pulls/343",
      "html_url": "https://github.com/hub4j/github-api/pull/343",
      "diff_url": "https://github.com/hub4j/github-api/pull/343.diff",
      "patch_url": "https://github.com/hub4j/github-api/pull/343.patch"
    },
    "body": "I already add the latest release, so please add to master and update version so that I can use in my project\r\nFix #341 \r\n\r\nPS  I don't know how to push my fixed module to the maven server so, please. @emlagowski \r\n\r\n\r\nThank you"
  },
  {
    "url": "https://api.github.com/repos/hub4j/github-api/issues/342",
    "repository_url": "https://api.github.com/repos/hub4j/github-api",
    "labels_url": "https://api.github.com/repos/hub4j/github-api/issues/342/labels{/name}",
    "comments_url": "https://api.github.com/repos/hub4j/github-api/issues/342/comments",
    "events_url": "https://api.github.com/repos/hub4j/github-api/issues/342/events",
    "html_url": "https://github.com/hub4j/github-api/issues/342",
    "id": 208728508,
    "node_id": "MDU6SXNzdWUyMDg3Mjg1MDg=",
    "number": 342,
    "title": "getPusher() returns null in call to getPusher()",
    "user": {
      "login": "golharam",
      "id": 671079,
      "node_id": "MDQ6VXNlcjY3MTA3OQ==",
      "avatar_url": "https://avatars2.githubusercontent.com/u/671079?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/golharam",
      "html_url": "https://github.com/golharam",
      "followers_url": "https://api.github.com/users/golharam/followers",
      "following_url": "https://api.github.com/users/golharam/following{/other_user}",
      "gists_url": "https://api.github.com/users/golharam/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/golharam/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/golharam/subscriptions",
      "organizations_url": "https://api.github.com/users/golharam/orgs",
      "repos_url": "https://api.github.com/users/golharam/repos",
      "events_url": "https://api.github.com/users/golharam/events{/privacy}",
      "received_events_url": "https://api.github.com/users/golharam/received_events",
      "type": "User",
      "site_admin": false
    },
    "labels": [],
    "state": "closed",
    "locked": false,
    "assignee": null,
    "assignees": [],
    "milestone": null,
    "comments": 1,
    "created_at": "2017-02-19T16:41:23Z",
    "updated_at": "2017-02-19T16:42:54Z",
    "closed_at": "2017-02-19T16:42:53Z",
    "author_association": "NONE",
    "body": "I have a github enterprise installation.   I'm trying to get Jenkins connected to it.  When I set up a repo and turn on 'GitHub hook trigger for GITScm polling', I see the hook get created in my repo, however it has a Red Triangle icon.  Hovering over it says 'Invalid HTTP Reponse: 0'.\r\n\r\nWhen I look at the Jenkins log, I see github tried to post an event, but I see the following error:\r\n\r\njava.lang.NullPointerException\r\n\tat org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber.onEvent(DefaultPushGHEventSubscriber.java:77)\r\n\tat org.jenkinsci.plugins.github.extension.GHEventsSubscriber$4.applyNullSafe(GHEventsSubscriber.java:240)\r\n\tat org.jenkinsci.plugins.github.extension.GHEventsSubscriber$4.applyNullSafe(GHEventsSubscriber.java:236)\r\n\tat org.jenkinsci.plugins.github.util.misc.NullSafeFunction.apply(NullSafeFunction.java:18)\r\n\tat com.google.common.collect.Iterators$8.next(Iterators.java:812)\r\n\tat com.google.common.collect.Lists.newArrayList(Lists.java:139)\r\n\tat com.google.common.collect.Lists.newArrayList(Lists.java:119)\r\n\tat org.jenkinsci.plugins.github.util.FluentIterableWrapper.toList(FluentIterableWrapper.java:147)\r\n\tat com.cloudbees.jenkins.GitHubWebHook.doIndex(GitHubWebHook.java:124)\r\n\tat java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)\r\n\tat org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343)\r\n\tat org.jenkinsci.plugins.github.webhook.RequirePostWithGHHookPayload$Processor.invoke(RequirePostWithGHHookPayload.java:76)\r\n\tat org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)\r\n\tat org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184)\r\n\tat org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117)\r\n\tat org.kohsuke.stapler.IndexDispatcher.dispatch(IndexDispatcher.java:26)\r\n\tat org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)\r\n\tat org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)\r\n\tat org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:374)\r\n\tat org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)\r\n\tat org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)\r\n\tat org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)\r\n\tat org.kohsuke.stapler.Stapler.service(Stapler.java:238)\r\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:790)\r\n\tat org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)\r\n\tat hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)\r\n\tat hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat com.cloudbees.jenkins.GitHubWebHookCrumbExclusion.process(GitHubWebHookCrumbExclusion.java:29)\r\n\tat hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:58)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)\r\n\tat hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)\r\n\tat hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)\r\n\tat hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)\r\n\tat hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)\r\n\tat hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)\r\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\r\n\tat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)\r\n\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\r\n\tat org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)\r\n\tat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)\r\n\tat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)\r\n\tat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)\r\n\tat org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)\r\n\tat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)\r\n\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\r\n\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)\r\n\tat org.eclipse.jetty.server.Server.handle(Server.java:499)\r\n\tat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)\r\n\tat org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)\r\n\tat org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)\r\n\tat winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)\r\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)\r\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)\r\n\tat java.lang.Thread.run(Thread.java:745)\r\n\r\n\r\nInterestingly enough, if I take the same payload and put it in a JSON, I can post the even manually using curl:\r\n$ curl -X POST --header \"Content-Type: application/json\" --header \"X-GitHub-Event: push\" -d @data.json http://XXX.XXX.XXX.XXX:8080/github-webhook/ -v\r\n* About to connect() to proxy proxy-server port 8080 (#0)\r\n*   Trying XXX.XXX.XXX.XXX... connected\r\n* Connected to proxy-server (XXX.XXX.XXX.XXX) port 8080 (#0)\r\n> POST http://XXX.XXX.XXX.XXX:8080/github-webhook/ HTTP/1.1\r\n> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.18 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2\r\n> Host: XXX.XXX.XXX.XXX:8080\r\n> Accept: */*\r\n> Proxy-Connection: Keep-Alive\r\n> Content-Type: application/json\r\n> X-GitHub-Event: push\r\n> Content-Length: 6983\r\n> Expect: 100-continue\r\n>\r\n< HTTP/1.1 100 Continue\r\n< HTTP/1.1 200 OK\r\n< Date: Sun, 19 Feb 2017 15:27:47 GMT\r\n< X-Content-Type-Options: nosniff\r\n< Content-Length: 0\r\n< Server: Jetty(9.2.z-SNAPSHOT)\r\n< Proxy-Connection: Keep-Alive\r\n< Connection: Keep-Alive\r\n<\r\n* Connection #0 to host proxy-server left intact\r\n* Closing connection #0\r\n\r\n\r\nLooking at the code in org.jenkinsci.plugins.github.webhook.subscriber.DefaultPushGHEventSubscriber.onEvent(DefaultPushGHEventSubscriber.java:77), it looks like the call to getPusher is null. \r\n\r\nIn deed, when I put the json in a unit test, getPusher returns null.\r\n"
  }
]