diff --git a/src/github/PaginatedList.py b/src/github/PaginatedList.py index 5c37642f..6e29ed98 100644 --- a/src/github/PaginatedList.py +++ b/src/github/PaginatedList.py @@ -23,7 +23,7 @@ class PaginatedList: def __fromData( self, headers, data ): links = self.__parseLinkHeader( headers ) - if len( data ) > 0 and "next" in links and self.__pages < 9: + if len( data ) > 0 and "next" in links and self.__pages < 9: ### @todo Why would we want to stop at the 10th page ? self.__pages += 1 self.__nextUrl = links[ "next" ] else: diff --git a/src/github/Repository.py b/src/github/Repository.py index ec94af15..50965fd8 100644 --- a/src/github/Repository.py +++ b/src/github/Repository.py @@ -576,7 +576,7 @@ class Repository( object ): def get_git_refs( self ): status, headers, data = self.__requester.request( "GET", - str( self.url ) + "/git", + str( self.url ) + "/git/refs", None, None ) diff --git a/test/Commit.py b/test/Commit.py index 811655b5..b4dd2e82 100644 --- a/test/Commit.py +++ b/test/Commit.py @@ -3,7 +3,7 @@ import Framework class Commit( Framework.TestCase ): def setUp( self ): Framework.TestCase.setUp( self ) - self.commit = self.g.get_user().get_repo( "PyGithub" ).get_branches()[ 0 ].commit + self.commit = self.g.get_user().get_repo( "PyGithub" ).get_commit( "1292bf0e22c796e91cc3d6e24b544aece8c21f2a" ) self.commit.author.login # to force lazy completion def testAttributes( self ): diff --git a/test/IssueEvent.py b/test/IssueEvent.py index f1b87cec..7b3493af 100644 --- a/test/IssueEvent.py +++ b/test/IssueEvent.py @@ -3,7 +3,7 @@ import Framework class IssueEvent( Framework.TestCase ): def setUp( self ): Framework.TestCase.setUp( self ) - self.event = self.g.get_user().get_repo( "PyGithub" ).get_issue( 28 ).get_events()[ 0 ] + self.event = self.g.get_user().get_repo( "PyGithub" ).get_issues_event( 15819975 ) def testAttributes( self ): self.assertEqual( self.event.actor.login, "jacquev6" ) diff --git a/test/ReplayData/Commit.setUp.txt b/test/ReplayData/Commit.setUp.txt index dfdaca90..c82516f0 100644 --- a/test/ReplayData/Commit.setUp.txt +++ b/test/ReplayData/Commit.setUp.txt @@ -1,20 +1,15 @@ -GET /user {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"27524c635501121933f4f78c95b1945a"'), ('date', 'Fri, 18 May 2012 20:12:19 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"owned_private_repos":5,"collaborators":0,"type":"User","hireable":false,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","public_gists":1,"company":"Criteo","bio":"","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","private_gists":5,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"public_repos":11,"followers":13,"login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","disk_usage":16852,"html_url":"https://github.com/jacquev6","name":"Vincent Jacques","total_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24} - -GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c5eec74d4b76b80283636a8efe1a132c"'), ('date', 'Fri, 18 May 2012 20:12:20 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-18T05:29:54Z","forks":2,"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","open_issues":17,"fork":false,"ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-18T05:18:16Z","size":304,"private":false,"has_downloads":true,"watchers":13,"html_url":"https://github.com/jacquev6/PyGithub","owner":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","permissions":{"pull":true,"admin":true,"push":true},"mirror_url":null,"language":"Python","description":"Python library implementing the full Github API v3","created_at":"2012-02-25T12:53:47Z","id":3544490} - -GET /repos/jacquev6/PyGithub/branches {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '769'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2dada6dafd332016bcdf06e42487e520"'), ('date', 'Thu, 10 May 2012 13:56:55 GMT'), ('content-type', 'application/json; charset=utf-8')] -[{"name":"topic/RewriteWithGeneratedCode","commit":{"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a"}},{"name":"master","commit":{"sha":"4303c5b90e2216d927155e9609436ccb8984c495","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495"}},{"name":"topic/DependencyGraph","commit":{"sha":"05157f11f29a3ac057e35d2487880c5d08bd69af","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/05157f11f29a3ac057e35d2487880c5d08bd69af"}},{"name":"develop","commit":{"sha":"4303c5b90e2216d927155e9609436ccb8984c495","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495"}}] - -GET /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('content-length', '3445'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8fe19b9f161802e61f531cec78c69463"'), ('date', 'Thu, 10 May 2012 13:56:56 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","stats":{"deletions":20,"additions":0,"total":20},"committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"files":[{"status":"modified","changes":20,"blob_url":"https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","deletions":20,"raw_url":"https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","patch":"@@ -14,22 +14,17 @@ def __init__( self, requester, attributes, lazy ):\n self.__completed = False\n self.__initAttributes()\n self.__useAttributes( attributes )\n- if not lazy:\n- self.__complete()\n \n @property\n def date( self ):\n- self.__completeIfNeeded( self.__date )\n return self.__date\n \n @property\n def email( self ):\n- self.__completeIfNeeded( self.__email )\n return self.__email\n \n @property\n def name( self ):\n- self.__completeIfNeeded( self.__name )\n return self.__name\n \n def __initAttributes( self ):\n@@ -37,21 +32,6 @@ def __initAttributes( self ):\n self.__email = None\n self.__name = None\n \n- def __completeIfNeeded( self, testedAttribute ):\n- if not self.__completed and testedAttribute is None:\n- self.__complete()\n-\n- # @todo Do not generate __complete if type has no url attribute\n- def __complete( self ):\n- status, headers, data = self.__requester.request(\n- \"GET\",\n- self.__url,\n- None,\n- None\n- )\n- self.__useAttributes( data )\n- self.__completed = True\n-\n def __useAttributes( self, attributes ):\n #@todo No need to check if attribute is in attributes when attribute is mandatory\n if \"date\" in attributes and attributes[ \"date\" ] is not None:","additions":0,"filename":"github/GithubObjects/GitAuthor.py","sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a"}],"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae"}],"commit":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","message":"Remove completion functions from GitAuthor","committer":{"email":"vincent@vincent-jacques.net","date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab","sha":"4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques"}},"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146}} - +GET /user {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4976'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eb9e14862baa71c04b8f0e73ab870756"'), ('date', 'Sun, 27 May 2012 06:50:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_gists":3,"type":"User","disk_usage":16976,"private_gists":5,"public_repos":11,"url":"https://api.github.com/users/jacquev6","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","owned_private_repos":5,"collaborators":0,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","email":"vincent@vincent-jacques.net","hireable":false,"followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","bio":"","id":327146,"following":24,"html_url":"https://github.com/jacquev6"} + +GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4975'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2f4d8b003c5c4f390be2ac28fe623bdb"'), ('date', 'Sun, 27 May 2012 06:50:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:00:29Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"mirror_url":null,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + +GET /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4974'), ('content-length', '3445'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bcfd8d733465b9c28525edfc78ede564"'), ('date', 'Sun, 27 May 2012 06:50:52 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"parents":[{"sha":"b46ed0dfde5ad02d3b91eb54a41c5ed960710eae","url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b46ed0dfde5ad02d3b91eb54a41c5ed960710eae"}],"commit":{"message":"Remove completion functions from GitAuthor","author":{"date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"committer":{"date":"2012-05-09T09:22:33-07:00","name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"tree":{"sha":"4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab","url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4c6bd50994f0f9823f898b1c6c964ad7d4fa11ab"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a"},"author":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"committer":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","stats":{"total":20,"deletions":20,"additions":0},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","files":[{"patch":"@@ -14,22 +14,17 @@ def __init__( self, requester, attributes, lazy ):\n self.__completed = False\n self.__initAttributes()\n self.__useAttributes( attributes )\n- if not lazy:\n- self.__complete()\n \n @property\n def date( self ):\n- self.__completeIfNeeded( self.__date )\n return self.__date\n \n @property\n def email( self ):\n- self.__completeIfNeeded( self.__email )\n return self.__email\n \n @property\n def name( self ):\n- self.__completeIfNeeded( self.__name )\n return self.__name\n \n def __initAttributes( self ):\n@@ -37,21 +32,6 @@ def __initAttributes( self ):\n self.__email = None\n self.__name = None\n \n- def __completeIfNeeded( self, testedAttribute ):\n- if not self.__completed and testedAttribute is None:\n- self.__complete()\n-\n- # @todo Do not generate __complete if type has no url attribute\n- def __complete( self ):\n- status, headers, data = self.__requester.request(\n- \"GET\",\n- self.__url,\n- None,\n- None\n- )\n- self.__useAttributes( data )\n- self.__completed = True\n-\n def __useAttributes( self, attributes ):\n #@todo No need to check if attribute is in attributes when attribute is mandatory\n if \"date\" in attributes and attributes[ \"date\" ] is not None:","status":"modified","deletions":20,"blob_url":"https://github.com/jacquev6/PyGithub/blob/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","changes":20,"additions":0,"sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","raw_url":"https://github.com/jacquev6/PyGithub/raw/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/github/GithubObjects/GitAuthor.py","filename":"github/GithubObjects/GitAuthor.py"}]} + diff --git a/test/ReplayData/IssueEvent.setUp.txt b/test/ReplayData/IssueEvent.setUp.txt index 78cb6f85..9fe1bc60 100644 --- a/test/ReplayData/IssueEvent.setUp.txt +++ b/test/ReplayData/IssueEvent.setUp.txt @@ -1,20 +1,15 @@ GET /user {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d3b188b1a66fc84e18abf036c64bf26b"'), ('date', 'Sat, 26 May 2012 19:42:55 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"private_gists":5,"type":"User","company":"Criteo","location":"Paris, France","hireable":false,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","bio":"","following":24,"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"followers":13,"owned_private_repos":5,"disk_usage":17080,"collaborators":0,"html_url":"https://github.com/jacquev6","url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","public_repos":11,"public_gists":3,"email":"vincent@vincent-jacques.net","id":327146,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"created_at":"2010-07-09T06:10:06Z"} +[('status', '200 OK'), ('x-ratelimit-remaining', '4907'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"99c9bfb75395b749e9913a4729126fb5"'), ('date', 'Sun, 27 May 2012 07:19:30 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"private_gists":5,"type":"User","company":"Criteo","location":"Paris, France","hireable":false,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","bio":"","following":24,"blog":"http://vincent-jacques.net","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","total_private_repos":5,"followers":13,"owned_private_repos":5,"disk_usage":16976,"collaborators":0,"html_url":"https://github.com/jacquev6","url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","public_repos":11,"public_gists":3,"email":"vincent@vincent-jacques.net","id":327146,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"created_at":"2010-07-09T06:10:06Z"} GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c00f18220757752286f6113bfb77720c"'), ('date', 'Sat, 26 May 2012 19:42:56 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-26T18:33:41Z","forks":2,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-26T11:25:48Z","size":412,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":14,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-25T12:53:47Z"} +[('status', '200 OK'), ('x-ratelimit-remaining', '4906'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4c20acf0b23f75bbf25106b1a04f65a5"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"description":"Python library implementing the full Github API v3","full_name":"jacquev6/PyGithub","has_wiki":false,"has_issues":true,"updated_at":"2012-05-27T06:55:28Z","forks":3,"mirror_url":null,"homepage":"http://vincent-jacques.net/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","open_issues":16,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","pushed_at":"2012-05-27T06:00:28Z","size":308,"html_url":"https://github.com/jacquev6/PyGithub","private":false,"url":"https://api.github.com/repos/jacquev6/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","owner":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","login":"jacquev6","id":327146},"name":"PyGithub","has_downloads":true,"language":"Python","watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","id":3544490,"permissions":{"admin":true,"pull":true,"push":true},"created_at":"2012-02-25T12:53:47Z"} -GET /repos/jacquev6/PyGithub/issues/28 {'Authorization': 'Basic login_and_password_removed'} null +GET /repos/jacquev6/PyGithub/issues/events/15819975 {'Authorization': 'Basic login_and_password_removed'} null 200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '2258'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9b3ced08ac5fe826a1c5f4bd20422f17"'), ('date', 'Sat, 26 May 2012 19:42:56 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_issues":3,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"closed_by":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"} - -GET /repos/jacquev6/PyGithub/issues/28/events {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '1885'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"454e9714a70263aa32c28c9a62ab9b2c"'), ('date', 'Sat, 26 May 2012 19:42:57 GMT'), ('content-type', 'application/json; charset=utf-8')] -[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15820048","commit_id":null,"created_at":"2012-05-19T10:42:25Z","event":"assigned","id":15820048,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333938","commit_id":null,"created_at":"2012-05-26T14:58:27Z","event":"assigned","id":16333938,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333959","commit_id":null,"created_at":"2012-05-26T14:59:34Z","event":"closed","id":16333959,"actor":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146}}] +[('status', '200 OK'), ('x-ratelimit-remaining', '4905'), ('content-length', '2430'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a3d244842d23f92f69a23e21626fad11"'), ('date', 'Sun, 27 May 2012 07:19:31 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}} diff --git a/test/ReplayData/Repository.setUp.txt b/test/ReplayData/Repository.setUp.txt index c86fbf13..b620542d 100644 --- a/test/ReplayData/Repository.setUp.txt +++ b/test/ReplayData/Repository.setUp.txt @@ -1,10 +1,10 @@ -GET /user {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d225d472b4b7e6e69cf5141dbcc42533"'), ('date', 'Wed, 09 May 2012 10:26:14 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"public_repos":10,"html_url":"https://github.com/jacquev6","type":"User","url":"https://api.github.com/users/jacquev6","disk_usage":16696,"plan":{"private_repos":5,"space":614400,"name":"micro","collaborators":1},"public_gists":1,"blog":"http://vincent-jacques.net","private_gists":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","total_private_repos":5,"followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"owned_private_repos":5,"collaborators":0} - -GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null -200 -[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eec9ada6466617a78bed22c3605f697c"'), ('date', 'Sat, 26 May 2012 09:45:44 GMT'), ('content-type', 'application/json; charset=utf-8')] -{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":13,"updated_at":"2012-05-25T17:19:46Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","git_url":"git://github.com/jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"size":184,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-25T17:19:45Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} - +GET /user {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4912'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8d4bf64381cca7c6ba5753129f5fc552"'), ('date', 'Sun, 27 May 2012 07:17:08 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"type":"User","disk_usage":16976,"public_gists":3,"bio":"","blog":"http://vincent-jacques.net","url":"https://api.github.com/users/jacquev6","private_gists":5,"collaborators":0,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","email":"vincent@vincent-jacques.net","total_private_repos":5,"followers":13,"name":"Vincent Jacques","public_repos":11,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"owned_private_repos":5,"following":24,"html_url":"https://github.com/jacquev6","hireable":false} + +GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4911'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1a93ec821b0bd7094340a9fc34017aa0"'), ('date', 'Sun, 27 May 2012 07:17:09 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":15,"git_url":"git://github.com/jacquev6/PyGithub.git","updated_at":"2012-05-27T06:55:28Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":3,"size":308,"private":false,"open_issues":16,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:jacquev6/PyGithub.git","pushed_at":"2012-05-27T06:00:28Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"} + diff --git a/test/ReplayData/Repository.testCompare.txt b/test/ReplayData/Repository.testCompare.txt new file mode 100644 index 00000000..eee023d1 --- /dev/null +++ b/test/ReplayData/Repository.testCompare.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/compare/v0.6...v0.7 {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '14488'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"42eb6d36008b20550ae6d1991e0423d5"'), ('date', 'Sun, 27 May 2012 06:30:33 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"status":"ahead","behind_by":0,"total_commits":4,"merge_base_commit":{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},"patch_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.patch","diff_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.diff","url":"https://api.github.com/repos/jacquev6/PyGithub/compare/v0.6...v0.7","ahead_by":4,"base_commit":{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},"permalink_url":"https://github.com/jacquev6/PyGithub/compare/jacquev6:4303c5b...jacquev6:ecda065","files":[{"status":"modified","changes":2,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md","filename":"ReferenceOfClasses.md","patch":"@@ -3,7 +3,7 @@ You obtain instances through calls to `get_` and `create_` methods.\n \n Class `Github`\n ==============\n-* Constructed from user's login and password\n+* Constructed from user's login and password or OAuth token\n * `get_user()`: `AuthenticatedUser`\n * `get_user( login )`: `NamedUser`\n * `get_organization( login )`: `Organization`","additions":1,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":4,"deletions":2,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py","filename":"github/Github.py","patch":"@@ -2,8 +2,8 @@\n from GithubObjects import *\n \n class Github:\n- def __init__( self, login, password, debugFile = None ):\n- self.__requester = Requester( login, password )\n+ def __init__( self, login_or_token = None, password = None, debugFile = None ):\n+ self.__requester = Requester( login_or_token, password )\n self.__debugFile = debugFile\n \n def _dataRequest( self, verb, url, parameters, data ):","additions":2,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":17,"deletions":3,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py","filename":"github/Requester.py","patch":"@@ -7,8 +7,15 @@ class UnknownGithubObject( Exception ):\n pass\n \n class Requester:\n- def __init__( self, login, password ):\n- self.__authorizationHeader = \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' )\n+ def __init__( self, login_or_token, password ):\n+ if password is not None:\n+ login = login_or_token\n+ self.__authorizationHeader = \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' )\n+ elif login_or_token is not None:\n+ token = login_or_token\n+ self.__authorizationHeader = \"token \" + token\n+ else:\n+ self.__authorizationHeader = None\n \n def dataRequest( self, verb, url, parameters, input ):\n if parameters is None:\n@@ -46,12 +53,16 @@ def statusRequest( self, verb, url, parameters, input ):\n def __rawRequest( self, verb, url, parameters, input ):\n assert verb in [ \"HEAD\", \"GET\", \"POST\", \"PATCH\", \"PUT\", \"DELETE\" ]\n \n+ headers = dict()\n+ if self.__authorizationHeader is not None:\n+ headers[ \"Authorization\" ] = self.__authorizationHeader\n+\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request(\n verb,\n self.__completeUrl( url, parameters ),\n json.dumps( input ),\n- { \"Authorization\" : self.__authorizationHeader }\n+ headers\n )\n response = cnx.getresponse()\n ","additions":14,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"},{"status":"modified","changes":10,"deletions":1,"raw_url":"https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py","blob_url":"https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py","filename":"setup.py","patch":"@@ -5,7 +5,7 @@\n \n setup(\n name = 'PyGithub',\n- version = '0.6',\n+ version = '0.7',\n description = 'Use the full Github API v3',\n author = 'Vincent Jacques',\n author_email = 'vincent@vincent-jacques.net',\n@@ -26,6 +26,14 @@\n print repo.name\n repo.edit( has_wiki = False )\n \n+ You can also create a Github instance without authentication::\n+\n+ g = Github( \"user\", \"password\" )\n+\n+ Or with an OAuth token::\n+\n+ g = Github( token )\n+\n Reference documentation\n =======================\n ","additions":9,"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"}],"commits":[{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","message":"Implement the three authentication schemes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"cb0313157bf904f2d364377d35d9397b269547a5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cb0313157bf904f2d364377d35d9397b269547a5","message":"Merge branch 'topic/Authentication' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","sha":"cb0313157bf904f2d364377d35d9397b269547a5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","message":"Publish version 0.7","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","committer":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}}],"html_url":"https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7"} + diff --git a/test/ReplayData/Repository.testGetComments.txt b/test/ReplayData/Repository.testGetComments.txt new file mode 100644 index 00000000..88860aaf --- /dev/null +++ b/test/ReplayData/Repository.testGetComments.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/comments {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '4307'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"2664cb68cf94b65a884d6867aa13e7d2"'), ('date', 'Sun, 27 May 2012 06:42:01 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-18T08:46:09Z","position":null,"body":"probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347033","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T08:46:09Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347033,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347033"},{"updated_at":"2012-05-18T09:03:40Z","position":null,"body":"No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347083","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T08:59:28Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1347083,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347083"},{"updated_at":"2012-05-18T10:55:55Z","position":null,"body":"Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1347397","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-18T10:54:23Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":1347397,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1347397"},{"updated_at":"2012-05-22T18:49:34Z","position":null,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-22T18:49:34Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":26,"user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":1362000,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000"}] + diff --git a/test/ReplayData/Repository.testGetCommits.txt b/test/ReplayData/Repository.testGetCommits.txt new file mode 100644 index 00000000..1429cab5 --- /dev/null +++ b/test/ReplayData/Repository.testGetCommits.txt @@ -0,0 +1,15 @@ +GET /repos/jacquev6/PyGithub/commits {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '46151'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"5443e5772e0bda0813a09a3620a8f7c2"'), ('date', 'Sun, 27 May 2012 06:45:57 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:14:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","sha":"cb0313157bf904f2d364377d35d9397b269547a5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","message":"Publish version 0.7","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:13:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e","sha":"78735573611521bb3ade95921c668097e2a4dc5e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"cb0313157bf904f2d364377d35d9397b269547a5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cb0313157bf904f2d364377d35d9397b269547a5","message":"Merge branch 'topic/Authentication' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T10:04:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","sha":"4303c5b90e2216d927155e9609436ccb8984c495"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","message":"Implement the three authentication schemes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-05-25T05:10:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b","sha":"59d755d95bc2e2de4dcef70a7c73e81e677f610b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:16-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","sha":"0af24499a98e85f8ab2191898e8b809e5cebd4c5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:02-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","message":"Publish version 0.6","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:55:02-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0af24499a98e85f8ab2191898e8b809e5cebd4c5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","sha":"e7dca9143a23b8e2045a4a910a4a329007b10086"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","sha":"e5ae923a68a9ae295ce5aa20b1227253de60e918"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0af24499a98e85f8ab2191898e8b809e5cebd4c5","message":"Merge branch 'topic/issue_21' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e323899d50915b1b8bfca859ceaaa4a24db5d442","sha":"e323899d50915b1b8bfca859ceaaa4a24db5d442"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e5ae923a68a9ae295ce5aa20b1227253de60e918","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","sha":"2f64b625f7e2afc9bef61d0decb459e2ef65c550"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:11-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e5ae923a68a9ae295ce5aa20b1227253de60e918","message":"Add facilities for uniform debug printing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:47:11-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e323899d50915b1b8bfca859ceaaa4a24db5d442","sha":"e323899d50915b1b8bfca859ceaaa4a24db5d442"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2f64b625f7e2afc9bef61d0decb459e2ef65c550","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","sha":"590798d349cba7de6e83b43aa5d4f8b0a38e685d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:21:36-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2f64b625f7e2afc9bef61d0decb459e2ef65c550","message":"Repository.permissions","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:28:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/23140a7b5cd3a7e6f70181775c8f56411223cf13","sha":"23140a7b5cd3a7e6f70181775c8f56411223cf13"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"590798d349cba7de6e83b43aa5d4f8b0a38e685d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","sha":"e7dca9143a23b8e2045a4a910a4a329007b10086"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:18:09-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/590798d349cba7de6e83b43aa5d4f8b0a38e685d","message":"Do not fail if Github adds an attribute in an object","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-04-17T10:28:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2eb1bde5d5aec4c8e146cba6dbadfa862062fe59","sha":"2eb1bde5d5aec4c8e146cba6dbadfa862062fe59"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e7dca9143a23b8e2045a4a910a4a329007b10086","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","sha":"ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:03:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e7dca9143a23b8e2045a4a910a4a329007b10086","message":"Merge branch 'topic/Recomplete' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:03:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68028c858bce6e56a0123f1c7e71be5b0c0ac7f5","sha":"68028c858bce6e56a0123f1c7e71be5b0c0ac7f5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","sha":"632d8b63c32a2b79e87eb3b93e1ad228724de4bd"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:02:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a","message":"NamedUser.create_gist","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T05:02:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/68028c858bce6e56a0123f1c7e71be5b0c0ac7f5","sha":"68028c858bce6e56a0123f1c7e71be5b0c0ac7f5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"632d8b63c32a2b79e87eb3b93e1ad228724de4bd","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:13:08-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/632d8b63c32a2b79e87eb3b93e1ad228724de4bd","message":"GitRef.delete","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:13:08-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b733d1dab08609c2049a8490fdda25f9e68ae2bc","sha":"b733d1dab08609c2049a8490fdda25f9e68ae2bc"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99963536fc81db3b9986c761b9dd08de22089aa2","sha":"99963536fc81db3b9986c761b9dd08de22089aa2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:10:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/64c6a1e975e61b9c1449bed016cd19f33ee4b1c5","message":"Merge branch 'topic/GenerateReferenceOfApis' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:10:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/623fd43b5299b8707a3b10def154f6725b31361c","sha":"623fd43b5299b8707a3b10def154f6725b31361c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99963536fc81db3b9986c761b9dd08de22089aa2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"99963536fc81db3b9986c761b9dd08de22089aa2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","sha":"8d57522bbd15d1fb6b616fae795cd8721deb1c4d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:09:05-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/99963536fc81db3b9986c761b9dd08de22089aa2","message":"GenerateReferenceOfApis.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:09:05-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/623fd43b5299b8707a3b10def154f6725b31361c","sha":"623fd43b5299b8707a3b10def154f6725b31361c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"8d57522bbd15d1fb6b616fae795cd8721deb1c4d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","sha":"1140a91f3e45d09bc15463724f178a7ebf8e3149"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:08:51-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8d57522bbd15d1fb6b616fae795cd8721deb1c4d","message":"Rename GenerateDocumentation.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:08:51-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8eafa52103271d36b1a46e056716f29af46ccb41","sha":"8eafa52103271d36b1a46e056716f29af46ccb41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1140a91f3e45d09bc15463724f178a7ebf8e3149","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:07:51-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1140a91f3e45d09bc15463724f178a7ebf8e3149","message":"Normalize ReferenceOfApis.md","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-30T03:07:51-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6621cb8c710645471b3235cfa7e34eaf1a424320","sha":"6621cb8c710645471b3235cfa7e34eaf1a424320"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"936f4a97f1a86392637ec002bbf89ff036a5062d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","sha":"a3be28756101370fbc689eec3a7825c4c385a6c9"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e10470481795506e2c232720e2a9ecf588c8b567","sha":"e10470481795506e2c232720e2a9ecf588c8b567"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:50:17-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:50:17-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f315f93b637cbd7883c1aed5b58f12d4a812ff26","sha":"f315f93b637cbd7883c1aed5b58f12d4a812ff26"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e10470481795506e2c232720e2a9ecf588c8b567","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e10470481795506e2c232720e2a9ecf588c8b567","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","sha":"e456549e5265406f8090ae5145255c8ca9ea5e4e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:49:21-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e10470481795506e2c232720e2a9ecf588c8b567","message":"Publish version 0.5","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T13:49:21-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f315f93b637cbd7883c1aed5b58f12d4a812ff26","sha":"f315f93b637cbd7883c1aed5b58f12d4a812ff26"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e456549e5265406f8090ae5145255c8ca9ea5e4e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a91131be42eb328ae030f584af500f56aa08424b","sha":"a91131be42eb328ae030f584af500f56aa08424b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:02:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e456549e5265406f8090ae5145255c8ca9ea5e4e","message":"Merge branch 'topic/CompleteImplementation' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:02:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c11065b6df8d201a09bd24f1b3e4b2f9f57a8321","sha":"c11065b6df8d201a09bd24f1b3e4b2f9f57a8321"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a91131be42eb328ae030f584af500f56aa08424b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a91131be42eb328ae030f584af500f56aa08424b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:00:36-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a91131be42eb328ae030f584af500f56aa08424b","message":"Finaly do a poor implementation of Github.get_gists","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:46-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c11065b6df8d201a09bd24f1b3e4b2f9f57a8321","sha":"c11065b6df8d201a09bd24f1b3e4b2f9f57a8321"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"2469c6e1aeb7919126a8271f6980b555b167e8b0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","sha":"a0cc821c1beada4aa9ca0d5218664c5372720936"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","sha":"a655d0424135befd3a0d53f3f7eff2d1c754854f"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:32-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2469c6e1aeb7919126a8271f6980b555b167e8b0","message":"Merge branch 'topic/RestoreTests' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T12:01:32-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b88afa928c59940b2c88faa1a9a9826e50ea83ef","sha":"b88afa928c59940b2c88faa1a9a9826e50ea83ef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a655d0424135befd3a0d53f3f7eff2d1c754854f","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","sha":"ce62e91268aa34dad0ba0dbee4769933e3a71e50"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:49:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a655d0424135befd3a0d53f3f7eff2d1c754854f","message":"Improve integration tests coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:49:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b88afa928c59940b2c88faa1a9a9826e50ea83ef","sha":"b88afa928c59940b2c88faa1a9a9826e50ea83ef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"ce62e91268aa34dad0ba0dbee4769933e3a71e50","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","sha":"1c88ee221b7f995855a1fdfac7d0ba19db918739"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:37:57-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ce62e91268aa34dad0ba0dbee4769933e3a71e50","message":"Cosmetic change in integration test","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:37:57-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9e0956f8808d6a07d610e08ad585fb6593527f39","sha":"9e0956f8808d6a07d610e08ad585fb6593527f39"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1c88ee221b7f995855a1fdfac7d0ba19db918739","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd1a5dff3c547c634b2d89f5847218820e343883","sha":"bd1a5dff3c547c634b2d89f5847218820e343883"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:44-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c88ee221b7f995855a1fdfac7d0ba19db918739","message":"Commit replay data for integration test","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:44-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/14fa47c5e331f1ebdc164ff341c70fc7dcfd2d83","sha":"14fa47c5e331f1ebdc164ff341c70fc7dcfd2d83"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd1a5dff3c547c634b2d89f5847218820e343883","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"bd1a5dff3c547c634b2d89f5847218820e343883","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","sha":"b226b5b4e2f44107dde674e7a5d3e88d4e3518df"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:11-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bd1a5dff3c547c634b2d89f5847218820e343883","message":"Fix integration tests","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:35:11-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/0cedd1c9f1986fc05f5bbfaa689d5a7fa7c7f424","sha":"0cedd1c9f1986fc05f5bbfaa689d5a7fa7c7f424"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"b226b5b4e2f44107dde674e7a5d3e88d4e3518df","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25dbd4053e982402c7d92139f167dbe46008c932","sha":"25dbd4053e982402c7d92139f167dbe46008c932"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:17:26-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b226b5b4e2f44107dde674e7a5d3e88d4e3518df","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:17:26-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/35bac621cbeebac930faeb2a5d0ae01647027b57","sha":"35bac621cbeebac930faeb2a5d0ae01647027b57"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25dbd4053e982402c7d92139f167dbe46008c932","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"25dbd4053e982402c7d92139f167dbe46008c932","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","sha":"a0cc821c1beada4aa9ca0d5218664c5372720936"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:05:18-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/25dbd4053e982402c7d92139f167dbe46008c932","message":"Fix unit tests","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T11:05:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/21fa30dc9c099a96fb3d3018ca04934206702931","sha":"21fa30dc9c099a96fb3d3018ca04934206702931"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a0cc821c1beada4aa9ca0d5218664c5372720936","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","sha":"c1440bdf20bfeb62684c6d1779448719dce9d2df"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:45:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a0cc821c1beada4aa9ca0d5218664c5372720936","message":"Fix documentation","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:45:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/df309b8e8b9359740688f6ecdec4e16a946eedac","sha":"df309b8e8b9359740688f6ecdec4e16a946eedac"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"c1440bdf20bfeb62684c6d1779448719dce9d2df","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","sha":"1095d304b7fab3818dcb4c42093c8c56d3ac05e4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:36:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/c1440bdf20bfeb62684c6d1779448719dce9d2df","message":"Merge branch 'topic/CompleteImplementation' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:36:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/62acfc5826055bea7623e35982768674fb672bff","sha":"62acfc5826055bea7623e35982768674fb672bff"}}}] + +GET /repos/jacquev6/PyGithub/commits?last_sha=c1440bdf20bfeb62684c6d1779448719dce9d2df&top=master {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '44844'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"b1e58b63cf08fef49b20ee7682f4eadb"'), ('date', 'Sun, 27 May 2012 06:45:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1095d304b7fab3818dcb4c42093c8c56d3ac05e4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","sha":"bd39726f7cf86ea7ffb33b5718241fdab5fc8f53"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:28:03-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1095d304b7fab3818dcb4c42093c8c56d3ac05e4","message":"Repository.compare","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-19T09:28:03-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/62acfc5826055bea7623e35982768674fb672bff","sha":"62acfc5826055bea7623e35982768674fb672bff"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","sha":"1d2b27824d20612066d84be42d6691c66bb18ef4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:40:52-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/bd39726f7cf86ea7ffb33b5718241fdab5fc8f53","message":"AuthenticatedUser.get_issues","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:40:52-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e0cf809423855e97a1c418cd0574aceaea673e7c","sha":"e0cf809423855e97a1c418cd0574aceaea673e7c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1d2b27824d20612066d84be42d6691c66bb18ef4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","sha":"6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:32:34-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1d2b27824d20612066d84be42d6691c66bb18ef4","message":"Repository.get_git_tree with 'recursive'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-18T23:32:34-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/eece2904086e172c103a3f6c72d72577947d69af","sha":"eece2904086e172c103a3f6c72d72577947d69af"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a475d685d8ae709095d09094ea0962ac182d33f0","sha":"a475d685d8ae709095d09094ea0962ac182d33f0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T23:42:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297","message":"Optional parameter for Repository.create_git_tree","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T23:42:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a07df55d4e61292bfd4d344221a744bdeb837cef","sha":"a07df55d4e61292bfd4d344221a744bdeb837cef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a475d685d8ae709095d09094ea0962ac182d33f0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a475d685d8ae709095d09094ea0962ac182d33f0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","sha":"a85de99ea5b5e7b38bd68e076d09c49207b8687e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T00:11:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a475d685d8ae709095d09094ea0962ac182d33f0","message":"On the way to alternative inputs. Still needs unit and integration testing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-16T00:11:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/929c7826e4116ccc48860420e96448c0b2dba912","sha":"929c7826e4116ccc48860420e96448c0b2dba912"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"a85de99ea5b5e7b38bd68e076d09c49207b8687e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d24cf209ddd1758188c5f35344f76df818d09a46","sha":"d24cf209ddd1758188c5f35344f76df818d09a46"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:54:19-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a85de99ea5b5e7b38bd68e076d09c49207b8687e","message":"dos2unix","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:54:19-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/45ab612f324d934efd24d37ec8a1a829ae9c819c","sha":"45ab612f324d934efd24d37ec8a1a829ae9c819c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/d24cf209ddd1758188c5f35344f76df818d09a46","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"d24cf209ddd1758188c5f35344f76df818d09a46","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:53:33-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/d24cf209ddd1758188c5f35344f76df818d09a46","message":"Be explicit about argumentChecker object","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-15T23:53:33-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/1737a3881dfa9524447b8841f441efa4d57b2e57","sha":"1737a3881dfa9524447b8841f441efa4d57b2e57"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0909fec395bb1f97e2580d6a029cfc64b352aff9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","sha":"50ac55b25ceba555b84709839f80447552450697"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e421e9e85e12008758870bc046bc2c6120af72a","sha":"6e421e9e85e12008758870bc046bc2c6120af72a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:26:35-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0909fec395bb1f97e2580d6a029cfc64b352aff9","message":"Merge branch 'topic/MoveGithubObjects' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:26:35-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5e1db9b1002e45cbcde2f17253233b3cf50496ad","sha":"5e1db9b1002e45cbcde2f17253233b3cf50496ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6e421e9e85e12008758870bc046bc2c6120af72a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"6e421e9e85e12008758870bc046bc2c6120af72a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","sha":"32ed0ebc377efbed5b482b3d49ff54bf1715d55a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:24:49-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6e421e9e85e12008758870bc046bc2c6120af72a","message":"Separate the three distributed classes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:24:49-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5e1db9b1002e45cbcde2f17253233b3cf50496ad","sha":"5e1db9b1002e45cbcde2f17253233b3cf50496ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"32ed0ebc377efbed5b482b3d49ff54bf1715d55a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","sha":"8213df1d744f251aa8e52229643a9f6ce352f3c0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:13:37-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/32ed0ebc377efbed5b482b3d49ff54bf1715d55a","message":"Move GithubObject","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:13:37-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4836c31ec1b75e4b0145bae29cda338318b583a0","sha":"4836c31ec1b75e4b0145bae29cda338318b583a0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"8213df1d744f251aa8e52229643a9f6ce352f3c0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","sha":"69cc298fd159f19eb204dd09f17d31dc4abc3d41"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:07:21-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/8213df1d744f251aa8e52229643a9f6ce352f3c0","message":"Simplify internal imports","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T15:07:21-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e2cd74e9c3cf6ff69da96f8fad7e1e4120db56fb","sha":"e2cd74e9c3cf6ff69da96f8fad7e1e4120db56fb"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"69cc298fd159f19eb204dd09f17d31dc4abc3d41","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","sha":"85eef756353e13efcb24c726320cd2617c2a7bd8"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:55:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/69cc298fd159f19eb204dd09f17d31dc4abc3d41","message":"Make sure only three class definitions are distributed","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:56:12-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a1d3e1193b5eeb668b0a9e4ec0286adeee2bfc98","sha":"a1d3e1193b5eeb668b0a9e4ec0286adeee2bfc98"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"85eef756353e13efcb24c726320cd2617c2a7bd8","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","sha":"50ac55b25ceba555b84709839f80447552450697"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:31:32-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/85eef756353e13efcb24c726320cd2617c2a7bd8","message":"Move classes around","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-14T14:56:08-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b0eadbf0e94e5098c5e4324f92e1546b3fe97ae2","sha":"b0eadbf0e94e5098c5e4324f92e1546b3fe97ae2"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/50ac55b25ceba555b84709839f80447552450697","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"50ac55b25ceba555b84709839f80447552450697","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","sha":"767d75a580279e457f9bc52bc308a17ff8ea0509"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:26:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/50ac55b25ceba555b84709839f80447552450697","message":"Merge branch 'topic/SplitGithubObjects' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:26:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0","sha":"9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"767d75a580279e457f9bc52bc308a17ff8ea0509","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/75e72ffa3066693291f7da03070666e8f885097a","sha":"75e72ffa3066693291f7da03070666e8f885097a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:24:39-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/767d75a580279e457f9bc52bc308a17ff8ea0509","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:24:39-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0","sha":"9541dc30b6f7eb32a0eeb99661974efc2bc2b2e0"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/75e72ffa3066693291f7da03070666e8f885097a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"75e72ffa3066693291f7da03070666e8f885097a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/504047e218e6b34a3828ccc408431634f17b9504","sha":"504047e218e6b34a3828ccc408431634f17b9504"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:23:47-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/75e72ffa3066693291f7da03070666e8f885097a","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:23:47-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ef565463ba492225543f538ddc2ac31d93301a3e","sha":"ef565463ba492225543f538ddc2ac31d93301a3e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/504047e218e6b34a3828ccc408431634f17b9504","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"504047e218e6b34a3828ccc408431634f17b9504","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","sha":"960db1d5c9853e9f5fbbc9237c2c166ceef1f080"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:19:54-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/504047e218e6b34a3828ccc408431634f17b9504","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:19:54-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/64a98d6a5045debec1ab928d49989c7f0f666be2","sha":"64a98d6a5045debec1ab928d49989c7f0f666be2"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"960db1d5c9853e9f5fbbc9237c2c166ceef1f080","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","sha":"877dde23e140bbf038f9a2d8f0f07b4e3a965c61"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:18:02-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/960db1d5c9853e9f5fbbc9237c2c166ceef1f080","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:18:02-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/b16b7a597ab3aa1876b1797426367114d4421642","sha":"b16b7a597ab3aa1876b1797426367114d4421642"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"877dde23e140bbf038f9a2d8f0f07b4e3a965c61","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","sha":"1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:13:04-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/877dde23e140bbf038f9a2d8f0f07b4e3a965c61","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:13:04-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/307d8dc221f2a6097a520636f60238621e966f58","sha":"307d8dc221f2a6097a520636f60238621e966f58"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","sha":"99564c1cab139d1e4678f5f83f60d26f1210db7e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:11:37-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:11:37-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/26e23b86645628acb3f1764e8d81a213b9f3443f","sha":"26e23b86645628acb3f1764e8d81a213b9f3443f"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"99564c1cab139d1e4678f5f83f60d26f1210db7e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231926207709ceaa61e87b64e34e17d85adecd9c","sha":"231926207709ceaa61e87b64e34e17d85adecd9c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:04:42-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/99564c1cab139d1e4678f5f83f60d26f1210db7e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:04:42-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2824e5fdbb2811bb05eab1a225a9e64d4974b880","sha":"2824e5fdbb2811bb05eab1a225a9e64d4974b880"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231926207709ceaa61e87b64e34e17d85adecd9c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"231926207709ceaa61e87b64e34e17d85adecd9c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","sha":"fb722625dddb9a32f75190723f7da12683b7c4b2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:01:07-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/231926207709ceaa61e87b64e34e17d85adecd9c","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T12:01:07-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/54f99bd97e9223673a5947bdb8bd8dcafd9878d8","sha":"54f99bd97e9223673a5947bdb8bd8dcafd9878d8"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"fb722625dddb9a32f75190723f7da12683b7c4b2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","sha":"cab9d71603e127bdd1f600a759dccea1781fa1ab"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:59:48-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fb722625dddb9a32f75190723f7da12683b7c4b2","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:59:48-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/bd492ae3de0943fa17cf91c3840361855b38814d","sha":"bd492ae3de0943fa17cf91c3840361855b38814d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"cab9d71603e127bdd1f600a759dccea1781fa1ab","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","sha":"e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:42:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cab9d71603e127bdd1f600a759dccea1781fa1ab","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:42:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/3a4160a7930e855165662640ab9ac0b284930602","sha":"3a4160a7930e855165662640ab9ac0b284930602"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","sha":"4a5cf98e7f959f1b5d9af484760c25cd27d9180d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:40:44-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:40:44-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/860a56be6edc3335b3f1d7c05163ce6c88d86d97","sha":"860a56be6edc3335b3f1d7c05163ce6c88d86d97"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"4a5cf98e7f959f1b5d9af484760c25cd27d9180d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","sha":"5d1add448e0b0b1dadb8c6094a9e5e19b255f67e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:37:23-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4a5cf98e7f959f1b5d9af484760c25cd27d9180d","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:37:23-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/27c76f8754af9bfc0bd2f285a9034a2a267f3f6b","sha":"27c76f8754af9bfc0bd2f285a9034a2a267f3f6b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","sha":"0d9fc99a4b5d1ec6473c9c81c888917c132ffa65"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:36:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/5d1add448e0b0b1dadb8c6094a9e5e19b255f67e","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:36:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c220b5fe6708feed4646e08f66cbd191d3074318","sha":"c220b5fe6708feed4646e08f66cbd191d3074318"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b56aa09011378b014221f86dffb8304957a9e6bd","sha":"b56aa09011378b014221f86dffb8304957a9e6bd"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:35:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0d9fc99a4b5d1ec6473c9c81c888917c132ffa65","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:35:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/df0cf9d9d9db0389f96d0448baaea45528983486","sha":"df0cf9d9d9db0389f96d0448baaea45528983486"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b56aa09011378b014221f86dffb8304957a9e6bd","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"b56aa09011378b014221f86dffb8304957a9e6bd","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","sha":"3e8169c0a98ce1e2c6a32ae1256ae0f735065df5"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:26:13-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b56aa09011378b014221f86dffb8304957a9e6bd","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:26:13-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5683cd9759e70f12141fb579a729e1c5d72256ad","sha":"5683cd9759e70f12141fb579a729e1c5d72256ad"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"sha":"3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","sha":"378558f6cac6183b4a7100c0ce5eaad1cfff6717"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:18:28-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3e8169c0a98ce1e2c6a32ae1256ae0f735065df5","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:18:28-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/e9bced97139773dcfbbefc6a4091e4458ee1fe23","sha":"e9bced97139773dcfbbefc6a4091e4458ee1fe23"}}}] + +GET /repos/jacquev6/PyGithub/commits?last_sha=3e8169c0a98ce1e2c6a32ae1256ae0f735065df5&top=master {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4977'), ('content-length', '45317'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="first"'), ('etag', '"b341665cd46d642b2e6045772eb3278b"'), ('date', 'Sun, 27 May 2012 06:46:00 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"378558f6cac6183b4a7100c0ce5eaad1cfff6717","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:14:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/378558f6cac6183b4a7100c0ce5eaad1cfff6717","message":"Spliting GithubObjects.py","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-13T11:14:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/980bf3f66b3cbeec03a37db5263cbbc883b54681","sha":"980bf3f66b3cbeec03a37db5263cbbc883b54681"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"58b4396aa0e7cb72911b75cb035798143a06e0ee","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","sha":"a3be28756101370fbc689eec3a7825c4c385a6c9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T23:30:43-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/58b4396aa0e7cb72911b75cb035798143a06e0ee","message":"Remove todos, add them as github.com issues","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T23:30:43-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/202a101db80163b980fff6ae1ccebd8e985778e1","sha":"202a101db80163b980fff6ae1ccebd8e985778e1"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"a3be28756101370fbc689eec3a7825c4c385a6c9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","sha":"3d6bd49ce229243fea4bb46a937622d0ec7d4d1c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T15:09:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/a3be28756101370fbc689eec3a7825c4c385a6c9","message":"Publish version 0.4","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T15:09:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5c6e0289868fe3bc6bff49b0c33bd27c4dd07e2d","sha":"5c6e0289868fe3bc6bff49b0c33bd27c4dd07e2d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/636e6112deb72277b3bffcc3303cd7e8a7431a5d","sha":"636e6112deb72277b3bffcc3303cd7e8a7431a5d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","sha":"58cb0dbdef9765e0e913c726f923a47315aaf80e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:53:18-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3d6bd49ce229243fea4bb46a937622d0ec7d4d1c","message":"Merge branch 'develop'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:53:18-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"58cb0dbdef9765e0e913c726f923a47315aaf80e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","sha":"7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:37:15-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/58cb0dbdef9765e0e913c726f923a47315aaf80e","message":"Merge branch 'topic/FixBaseUrl' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:37:15-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/97f308e67383368a2d15788cac28e126c8528bb2","sha":"97f308e67383368a2d15788cac28e126c8528bb2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:36:59-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0","message":"Add a unit test with a changing _baseUrl","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:36:59-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2cabc3bd4e00227b053ddf867dec199b15503c41","sha":"2cabc3bd4e00227b053ddf867dec199b15503c41"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/97f308e67383368a2d15788cac28e126c8528bb2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"97f308e67383368a2d15788cac28e126c8528bb2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","sha":"fc33a6de4f0e08d7ff2de05935517ec3932d212e"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:31:09-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/97f308e67383368a2d15788cac28e126c8528bb2","message":"Restore integration test after bugfix","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:31:09-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/2905b7707c427bff575def862c26cb05507bfa9c","sha":"2905b7707c427bff575def862c26cb05507bfa9c"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"fc33a6de4f0e08d7ff2de05935517ec3932d212e","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:28:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/fc33a6de4f0e08d7ff2de05935517ec3932d212e","message":"Fix bug: _baseUrl is now a method\n\nThis handles modification of attributes creating the base url","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:28:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/7f985c8693602ccc884ecfd9fece11a2a7d3fdef","sha":"7f985c8693602ccc884ecfd9fece11a2a7d3fdef"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"cc6d0fc044eadf2e6fde5da699f61654c1e691f3","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","sha":"2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:12:06-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cc6d0fc044eadf2e6fde5da699f61654c1e691f3","message":"Merge branch 'topic/MergeMergeRequest' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:12:06-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4138e1bdfbc5130fe957589d9b68bb053c8305c5","sha":"4138e1bdfbc5130fe957589d9b68bb053c8305c5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","sha":"366ca58ca004b9129f9d435db8204ce0f5bc57c3"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:11:40-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:11:40-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/4138e1bdfbc5130fe957589d9b68bb053c8305c5","sha":"4138e1bdfbc5130fe957589d9b68bb053c8305c5"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"366ca58ca004b9129f9d435db8204ce0f5bc57c3","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","sha":"0d3b3ffd1e5c143af8725fdee808101f626f683d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:08:22-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/366ca58ca004b9129f9d435db8204ce0f5bc57c3","message":"PullRequest.is_merged and PullRequest.merge","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T14:08:22-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/cff64747ea7fc0957b502839f3a54cb8dd9b7002","sha":"cff64747ea7fc0957b502839f3a54cb8dd9b7002"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"0d3b3ffd1e5c143af8725fdee808101f626f683d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:51:50-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0d3b3ffd1e5c143af8725fdee808101f626f683d","message":"Improve coverage analysis","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:51:50-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/091f983c6aa0b097677a5b1d1e4a2b6417bb953d","sha":"091f983c6aa0b097677a5b1d1e4a2b6417bb953d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"157f9c13275738b6b39b8d7a874f5f0aee47cb18","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","sha":"924aef7d9f3a21145492ea165c9268ab0030cbab"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","sha":"b12b6ffdfa6f1cca89459438eff6d3420ed199e9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:47-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/157f9c13275738b6b39b8d7a874f5f0aee47cb18","message":"Merge branch 'topic/AddHooksAndEvents' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:47-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/014f6c1b5278352ba1bc974914e3a76c17590479","sha":"014f6c1b5278352ba1bc974914e3a76c17590479"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"b12b6ffdfa6f1cca89459438eff6d3420ed199e9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","sha":"236fcaead6addd284722e4b5fde2e24f6f4ae63b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:27-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/b12b6ffdfa6f1cca89459438eff6d3420ed199e9","message":"AuthenticatedUser.get_organization_events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:48:27-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/014f6c1b5278352ba1bc974914e3a76c17590479","sha":"014f6c1b5278352ba1bc974914e3a76c17590479"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"236fcaead6addd284722e4b5fde2e24f6f4ae63b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/43369be99710f4386d31daa87db9b5cc48f0544d","sha":"43369be99710f4386d31daa87db9b5cc48f0544d"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:28:26-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/236fcaead6addd284722e4b5fde2e24f6f4ae63b","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:28:26-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/484f40761d22be9a4a815e010c52e43c12e49f02","sha":"484f40761d22be9a4a815e010c52e43c12e49f02"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/43369be99710f4386d31daa87db9b5cc48f0544d","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"43369be99710f4386d31daa87db9b5cc48f0544d","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","sha":"07b6b437d741df9c94cf34e36045fc78868b63ba"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:22:10-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/43369be99710f4386d31daa87db9b5cc48f0544d","message":"Repository.get_issues_event + coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T13:22:10-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/656b268fdf8d0ce1e48037f8a546eecdf0dc5ef9","sha":"656b268fdf8d0ce1e48037f8a546eecdf0dc5ef9"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"07b6b437d741df9c94cf34e36045fc78868b63ba","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6d51a955d922e92dacf37106a3c52d185fb18423","sha":"6d51a955d922e92dacf37106a3c52d185fb18423"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T12:43:20-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/07b6b437d741df9c94cf34e36045fc78868b63ba","message":"Remove two 'MethodFromCallable'","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T12:43:20-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/fb26540cb902379e02897890f8e79df032fa4657","sha":"fb26540cb902379e02897890f8e79df032fa4657"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6d51a955d922e92dacf37106a3c52d185fb18423","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"6d51a955d922e92dacf37106a3c52d185fb18423","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/44911bf0906912d468cb88001907955ee318fdf7","sha":"44911bf0906912d468cb88001907955ee318fdf7"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T11:59:56-07:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6d51a955d922e92dacf37106a3c52d185fb18423","message":"Fix and add integration tests about events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-12T11:59:56-07:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c1619a5fa4c612b9d7455bbd4111e074c1110967","sha":"c1619a5fa4c612b9d7455bbd4111e074c1110967"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/44911bf0906912d468cb88001907955ee318fdf7","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"44911bf0906912d468cb88001907955ee318fdf7","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","sha":"01fa4d803b4a541759ba906d194f1fa9bc29faa9"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T12:54:56-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/44911bf0906912d468cb88001907955ee318fdf7","message":"Events: step 1","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T12:54:56-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/8e82325aa70d2d0c5dd15c138d44c729a097d7df","sha":"8e82325aa70d2d0c5dd15c138d44c729a097d7df"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"01fa4d803b4a541759ba906d194f1fa9bc29faa9","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","sha":"25c76b4b759173fa42cdf3ebd0214a5ce958b2e4"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T02:12:15-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/01fa4d803b4a541759ba906d194f1fa9bc29faa9","message":"Regenerate reference of classes","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T02:12:15-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/deae54c27d31b4d5f21daeb48451cdbed301d386","sha":"deae54c27d31b4d5f21daeb48451cdbed301d386"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/00a832e6d519dac96142f650d6363f24459f9145","sha":"00a832e6d519dac96142f650d6363f24459f9145"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T23:56:48-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/25c76b4b759173fa42cdf3ebd0214a5ce958b2e4","message":"Restore test coverage","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:20-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/9ad7d85371d98b8cc50686cc0591e98935d7917d","sha":"9ad7d85371d98b8cc50686cc0591e98935d7917d"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/00a832e6d519dac96142f650d6363f24459f9145","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"00a832e6d519dac96142f650d6363f24459f9145","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","sha":"f03d86c46e4d5b337514277620dc9adbdc68dba2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T04:44:54-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/00a832e6d519dac96142f650d6363f24459f9145","message":"Hook testing","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:19-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/88beba1a00e40bea9da1c02b613e3859df4105de","sha":"88beba1a00e40bea9da1c02b613e3859df4105de"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"f03d86c46e4d5b337514277620dc9adbdc68dba2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","sha":"0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-03T04:36:01-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f03d86c46e4d5b337514277620dc9adbdc68dba2","message":"Hooks: step 2","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:18-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/a2d2473d5b9f12020bcba798849206c4636fec2f","sha":"a2d2473d5b9f12020bcba798849206c4636fec2f"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2d89a565f5eb19af605d78762169daec9a701e0","sha":"f2d89a565f5eb19af605d78762169daec9a701e0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-01T08:35:13-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0b8ffcc14c6200dda4f9b11c47d6949b5cd3240b","message":"Hooks: step 1","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:17-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/122bf2a07918c500e15ae7b9a5ae6eba4c4abf34","sha":"122bf2a07918c500e15ae7b9a5ae6eba4c4abf34"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/f2d89a565f5eb19af605d78762169daec9a701e0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"f2d89a565f5eb19af605d78762169daec9a701e0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","sha":"924aef7d9f3a21145492ea165c9268ab0030cbab"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-02-23T13:32:44-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/f2d89a565f5eb19af605d78762169daec9a701e0","message":"Todos for hooks and events","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:46:16-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/6c010d7ccbfbb6a0f44c829c08753dc19b71c29e","sha":"6c010d7ccbfbb6a0f44c829c08753dc19b71c29e"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"924aef7d9f3a21145492ea165c9268ab0030cbab","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","sha":"cf3f792b16d2e9e56ba6562e9db55663d4443d87"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:45:59-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/924aef7d9f3a21145492ea165c9268ab0030cbab","message":"Typo...","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:45:59-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/c2d94eeeeb8eab5793762db56b9d6bdf3070c639","sha":"c2d94eeeeb8eab5793762db56b9d6bdf3070c639"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"cf3f792b16d2e9e56ba6562e9db55663d4443d87","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5c17275366efd3bc9414958d661d9a017022be6b","sha":"5c17275366efd3bc9414958d661d9a017022be6b"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a83cc0b1e40788483398eb89e3671b91d648251","sha":"3a83cc0b1e40788483398eb89e3671b91d648251"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:39:25-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/cf3f792b16d2e9e56ba6562e9db55663d4443d87","message":"Merge branch 'topic/Coverage' into develop","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:39:25-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1c6594a40331fca68b664d400269b343360fdd","sha":"ff1c6594a40331fca68b664d400269b343360fdd"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a83cc0b1e40788483398eb89e3671b91d648251","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"3a83cc0b1e40788483398eb89e3671b91d648251","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","sha":"e0c04877a9a00766d099251512a8bb512a1d37c2"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:38:09-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/3a83cc0b1e40788483398eb89e3671b91d648251","message":"RepositoryDetails","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:38:09-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/ff1c6594a40331fca68b664d400269b343360fdd","sha":"ff1c6594a40331fca68b664d400269b343360fdd"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"e0c04877a9a00766d099251512a8bb512a1d37c2","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","sha":"6b89c02872cbcb179d79cb4ceb2436fee02425d0"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:34:02-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/e0c04877a9a00766d099251512a8bb512a1d37c2","message":"AuthenticatedUserDetails","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:34:02-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/5f178bdb7fdd0f30d84b33e99e41b16a32fa0d9b","sha":"5f178bdb7fdd0f30d84b33e99e41b16a32fa0d9b"}}},{"author":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","committer":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"jacquev6","id":327146},"sha":"6b89c02872cbcb179d79cb4ceb2436fee02425d0","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/231ae0778e0bebaac3dc87fa8f602c1560b8164f","sha":"231ae0778e0bebaac3dc87fa8f602c1560b8164f"}],"commit":{"author":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:21:59-08:00"},"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/6b89c02872cbcb179d79cb4ceb2436fee02425d0","message":"Downloads","committer":{"email":"vincent@vincent-jacques.net","name":"Vincent Jacques","date":"2012-03-04T01:21:59-08:00"},"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/047599e78ad35674ee8b0ac51d232b2c71b40a6f","sha":"047599e78ad35674ee8b0ac51d232b2c71b40a6f"}}}] + diff --git a/test/ReplayData/Repository.testGetDownloads.txt b/test/ReplayData/Repository.testGetDownloads.txt new file mode 100644 index 00000000..19dbfc13 --- /dev/null +++ b/test/ReplayData/Repository.testGetDownloads.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/downloads {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '277'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"209ba3e85bfec4914fb88bb2d12b55e9"'), ('date', 'Sun, 27 May 2012 06:55:04 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"content_type":".py","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","size":1024,"name":"Hook.py","created_at":"2012-05-27T06:54:54Z","description":"","id":245143,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}] + diff --git a/test/ReplayData/Repository.testGetEvents.txt b/test/ReplayData/Repository.testGetEvents.txt new file mode 100644 index 00000000..264d068a --- /dev/null +++ b/test/ReplayData/Repository.testGetEvents.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/events {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '44412'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"a0d405b3f385bd0d26640c75b50c95dd"'), ('date', 'Sun, 27 May 2012 06:57:59 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"DownloadEvent","payload":{"download":{"name":"Hook.py","size":1024,"created_at":"2012-05-27T06:54:54Z","content_type":".py","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","download_count":0,"id":245143,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:54:55Z","id":"1556239111","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"htmlcov.zip","size":258048,"created_at":"2012-05-27T06:53:47Z","content_type":".zip","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245142","id":245142,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/htmlcov.zip"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:53:48Z","id":"1556239049","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"956279094a7383b6a8f00c93770ed02ca711f8e5","size":4,"push_id":80734053,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"8cb3e63e80f3ab741ca580eed791a85fb4e1b968","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3e63e80f3ab741ca580eed791a85fb4e1b968","distinct":true,"message":"Test Team"},{"sha":"e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","distinct":true,"message":"Test Organization members"},{"sha":"4169010f17cf66a9f1e43e476115485ed7cda90c","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4169010f17cf66a9f1e43e476115485ed7cda90c","distinct":true,"message":"Improve coverage of Organization"},{"sha":"956279094a7383b6a8f00c93770ed02ca711f8e5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","distinct":true,"message":"Test Repository.create_git_*"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T06:00:30Z","id":"1556235497","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":30,"created_at":"2012-05-27T05:40:15Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body created by PyGithub","comments":0,"title":"Issue also created by PyGithub","updated_at":"2012-05-27T05:40:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","id":4769659,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"due_on":"2012-06-04T07:00:00Z","created_at":"2012-03-08T12:22:28Z","title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":10,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/30","labels":[{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:40:15Z","id":"1556234207","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"MemberEvent","payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:34:29Z","id":"1556233923","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"MemberEvent","payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:33:44Z","id":"1556233882","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"ForkEvent","payload":{"forkee":{"name":"PyGithub","size":348,"has_wiki":false,"created_at":"2012-05-27T05:23:17Z","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-27T05:23:18Z","git_url":"git://github.com/BeaverSoftware/PyGithub.git","fork":true,"language":"Python","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","id":4460027,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-26T20:54:13Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"BeaverSoftware/PyGithub","has_issues":false,"homepage":"http://vincent-jacques.net/PyGithub","description":"Python library implementing the full Github API v3","forks":0,"html_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-27T05:23:18Z","id":"1556233222","actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}},{"type":"PushEvent","payload":{"head":"a39af6a0aae16a923f7be48a70fe1095b17280d2","size":2,"push_id":80709334,"commits":[{"sha":"60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","distinct":true,"message":"Heavy refactoring of integration tests"},{"sha":"a39af6a0aae16a923f7be48a70fe1095b17280d2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39af6a0aae16a923f7be48a70fe1095b17280d2","distinct":true,"message":"Improve test coverage"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T20:54:15Z","id":"1556182773","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T18:33:42Z","id":"1556168218","actor":{"gravatar_id":"1689abbd998128dbb3658698b429b022","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/michaelpedersen","id":22974,"login":"michaelpedersen"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body edited by PyGithub","title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-26T14:59:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":1,"created_at":"2012-03-08T12:22:10Z","due_on":"2012-03-13T07:00:00Z","title":"Version 0.4","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","id":93546,"open_issues":0,"closed_issues":3,"description":"","state":"closed"},"closed_at":"2012-05-26T14:59:33Z","html_url":"https://github.com/jacquev6/PyGithub/issues/28","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","color":"e10c02"},{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"},{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T14:59:34Z","id":"1556145515","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"36574ded89738a81f47f415017ba880d0cad839b","size":5,"push_id":80677260,"commits":[{"sha":"95cd6c507bdfbf3700a31bafbe26f72a1d684be1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/95cd6c507bdfbf3700a31bafbe26f72a1d684be1","distinct":true,"message":"Use setUp in test for NamedUser"},{"sha":"386bcde55e1744fa888b034d34ad9f167595d2cf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/386bcde55e1744fa888b034d34ad9f167595d2cf","distinct":true,"message":"Refactor tests of NamedUser"},{"sha":"1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","distinct":true,"message":"Restore coverage of Event"},{"sha":"ff8d87d5391b2ef8d10e89f77260a18440e88e25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ff8d87d5391b2ef8d10e89f77260a18440e88e25","distinct":true,"message":"Test NamedUser.create_gist withour description"},{"sha":"36574ded89738a81f47f415017ba880d0cad839b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/36574ded89738a81f47f415017ba880d0cad839b","distinct":true,"message":"Refactor tests of Repository"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T11:25:50Z","id":"1556126182","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-26T10:01:39Z","id":"1556114751","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940993","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:32:33Z","id":"1555940986","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936661","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DeleteEvent","payload":{"ref_type":"branch","ref":"topic/Authentication"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936660","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:48Z","id":"1555936659","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T17:19:47Z","id":"1555936657","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CreateEvent","payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:24:21Z","id":"1555833283","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssuesEvent","payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T12:02:48Z","id":"1555822981","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"IssueCommentEvent","payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:31:42Z","id":"1555742639","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"WatchEvent","payload":{"action":"started"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-25T06:05:21Z","id":"1555738288","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"PushEvent","payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:59:48Z","id":"1554729420","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:15:30Z","id":"1554712197","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T19:11:49Z","id":"1554710791","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"DownloadEvent","payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:58:32Z","id":"1554705673","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:53:25Z","id":"1554703698","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:50:02Z","id":"1554702296","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:49:34Z","id":"1554702087","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},{"type":"CommitCommentEvent","payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"public":true,"repo":{"url":"https://api.github.com/repos/jacquev6/PyGithub","id":3544490,"name":"jacquev6/PyGithub"},"created_at":"2012-05-22T18:40:18Z","id":"1554698320","actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}] + diff --git a/test/ReplayData/Repository.testGetForks.txt b/test/ReplayData/Repository.testGetForks.txt new file mode 100644 index 00000000..c331a299 --- /dev/null +++ b/test/ReplayData/Repository.testGetForks.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/forks {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '1141'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6f7c9361ed89e4c405627dba9e70b879"'), ('date', 'Sun, 27 May 2012 06:58:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"clone_url":"https://github.com/abersager/PyGithub.git","has_downloads":true,"watchers":2,"git_url":"git://github.com/abersager/PyGithub.git","updated_at":"2012-03-28T10:37:22Z","permissions":{"pull":true,"admin":false,"push":false},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/abersager/PyGithub","has_wiki":false,"has_issues":false,"fork":true,"forks":0,"mirror_url":null,"size":112,"private":false,"open_issues":0,"svn_url":"https://github.com/abersager/PyGithub","owner":{"url":"https://api.github.com/users/abersager","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351,"avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","ssh_url":"git@github.com:abersager/PyGithub.git","pushed_at":"2012-03-26T10:05:31Z","created_at":"2012-03-26T09:12:45Z","id":3831162,"html_url":"https://github.com/abersager/PyGithub","full_name":"abersager/PyGithub"}] + diff --git a/test/ReplayData/Repository.testGetGitRefs.txt b/test/ReplayData/Repository.testGetGitRefs.txt new file mode 100644 index 00000000..f4077950 --- /dev/null +++ b/test/ReplayData/Repository.testGetGitRefs.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/git/refs {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4956'), ('content-length', '3176'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"85c62d1ec1ea8966569c391d802d4f3f"'), ('date', 'Sun, 27 May 2012 07:00:43 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"ref":"refs/heads/develop","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/develop","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16"}},{"ref":"refs/heads/master","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/master","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7"}},{"ref":"refs/heads/topic/DependencyGraph","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/topic/DependencyGraph","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/05157f11f29a3ac057e35d2487880c5d08bd69af","sha":"05157f11f29a3ac057e35d2487880c5d08bd69af"}},{"ref":"refs/heads/topic/RewriteWithGeneratedCode","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/topic/RewriteWithGeneratedCode","object":{"type":"commit","url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","sha":"956279094a7383b6a8f00c93770ed02ca711f8e5"}},{"ref":"refs/tags/v0.1","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.1","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/fc28301862c0118b88cc94da678fb5104b249370","sha":"fc28301862c0118b88cc94da678fb5104b249370"}},{"ref":"refs/tags/v0.2","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.2","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/48cabc0fc3b1a9767d6f0db9f6058f24681cada7","sha":"48cabc0fc3b1a9767d6f0db9f6058f24681cada7"}},{"ref":"refs/tags/v0.3","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.3","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/4870747f5faf15ba38ece8211283ef87b25679c1","sha":"4870747f5faf15ba38ece8211283ef87b25679c1"}},{"ref":"refs/tags/v0.4","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.4","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/26fb28983636cb4773acb5581f4a443cd0aef808","sha":"26fb28983636cb4773acb5581f4a443cd0aef808"}},{"ref":"refs/tags/v0.5","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.5","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/c88b802b71cf19cfbc2e915dbb8a0e98f235a926","sha":"c88b802b71cf19cfbc2e915dbb8a0e98f235a926"}},{"ref":"refs/tags/v0.6","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.6","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c","sha":"f5f37322407b02a80de4526ad88d5f188977bc3c"}},{"ref":"refs/tags/v0.7","url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/tags/v0.7","object":{"type":"tag","url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/78ca479ac54294dabd16a6644bbe5e013fabf183","sha":"78ca479ac54294dabd16a6644bbe5e013fabf183"}}] + diff --git a/test/ReplayData/Repository.testGetHooks.txt b/test/ReplayData/Repository.testGetHooks.txt new file mode 100644 index 00000000..2cf4cae8 --- /dev/null +++ b/test/ReplayData/Repository.testGetHooks.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/hooks {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '295'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"07e5e1a2fafd1a5e2de62eb3afd007d5"'), ('date', 'Sun, 27 May 2012 07:02:25 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T06:00:32Z","last_response":{"status":"ok","message":"OK","code":200},"events":["push"],"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","active":true,"name":"web","config":{"url":"http://foobar.com"},"id":257993,"created_at":"2012-05-19T06:01:45Z"}] + diff --git a/test/ReplayData/Repository.testGetIssues.txt b/test/ReplayData/Repository.testGetIssues.txt new file mode 100644 index 00000000..6b606d59 --- /dev/null +++ b/test/ReplayData/Repository.testGetIssues.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/issues {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4950'), ('content-length', '28950'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41676dcfbbfc49368e60f758c3e1d36f"'), ('date', 'Sun, 27 May 2012 07:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4769659,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327442},"id":4639931,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":4452000,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":328726},"id":4356743,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},{"updated_at":"2012-03-19T19:08:18Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/20","comments":0,"milestone":null,"number":20,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework GitTree.recursive","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-19T19:08:18Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3716033,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/20"},{"updated_at":"2012-03-19T19:04:19Z","body":"In general, when you get a collection, you should get an iterable, and the pagination should be done only if needed. This is mandatory for Github.get_gists","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/19","comments":0,"milestone":null,"number":19,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework Github.get_gists","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-19T19:04:19Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3715946,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/19"},{"updated_at":"2012-03-14T06:49:31Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/18","comments":0,"milestone":null,"number":18,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Take care of _identity","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-14T06:49:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3643837,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/18"},{"updated_at":"2012-03-13T12:09:48Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/17","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":17,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Document issue reporting","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-13T12:09:48Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3628022,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/17"},{"updated_at":"2012-03-13T07:04:42Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/16","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":16,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Add copyright and license notice","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-13T06:25:31Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624595,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/16"},{"updated_at":"2012-03-13T06:23:35Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/14","comments":0,"milestone":null,"number":14,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Rework BaseUrl to use tuples instead of string concatenation","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-13T06:23:35Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624570,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/14"},{"updated_at":"2012-03-13T06:22:27Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/13","comments":0,"milestone":null,"number":13,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Remove the _repo hugly hack","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"}],"created_at":"2012-03-13T06:22:27Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624561,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/13"},{"updated_at":"2012-03-13T06:21:57Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/12","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":12,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Structure some InternalSimpleAttributes","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-13T06:21:57Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3624556,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/12"},{"updated_at":"2012-03-12T21:58:05Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/9","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":9,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Publish version 1.0","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-03-12T21:58:05Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3619973,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/9"},{"updated_at":"2012-03-08T12:23:29Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/4","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":4,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Review public interface homogeneity ","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-06T16:48:40Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527266,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/4"},{"updated_at":"2012-05-19T06:42:43Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/3","comments":0,"milestone":null,"number":3,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Deduce mandatory parameters","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-06T16:47:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527245,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/3"},{"updated_at":"2012-03-08T12:23:29Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/2","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_issues":2,"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":2,"assignee":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"closed_at":null,"title":"Use objects as parameters instead of shas, ids, etc.","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-06T16:46:49Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146},"id":3527231,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/2"}] + diff --git a/test/ReplayData/Repository.testGetIssuesEvents.txt b/test/ReplayData/Repository.testGetIssuesEvents.txt new file mode 100644 index 00000000..62ba8fca --- /dev/null +++ b/test/ReplayData/Repository.testGetIssuesEvents.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/issues/events {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4923'), ('content-length', '85910'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next", ; rel="last"'), ('etag', '"7ad8520585258c37864643b4719cbecc"'), ('date', 'Sun, 27 May 2012 07:11:23 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16347480","issue":{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4769659,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},"commit_id":null,"created_at":"2012-05-27T05:40:15Z","event":"assigned","id":16347480,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16347479","issue":{"updated_at":"2012-05-27T05:40:15Z","body":"Body created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":30,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Issue also created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-27T05:40:15Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4769659,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/30"},"commit_id":null,"created_at":"2012-05-27T05:40:15Z","event":"subscribed","id":16347479,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333959","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-26T14:59:34Z","event":"closed","id":16333959,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16333938","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-26T14:58:27Z","event":"assigned","id":16333938,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16292760","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T17:32:32Z","event":"closed","id":16292760,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16292758","issue":{"updated_at":"2012-05-25T17:32:31Z","body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":15,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:31Z","title":"Implement all authentication schemes","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"}],"created_at":"2012-03-13T06:24:05Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3624575,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/15"},"commit_id":null,"created_at":"2012-05-25T17:32:31Z","event":"closed","id":16292758,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16266502","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T11:47:59Z","event":"assigned","id":16266502,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/16266501","issue":{"updated_at":"2012-05-25T17:32:32Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","number":5,"title":"Version 0.7","due_on":"2012-05-26T07:00:00Z","closed_issues":2,"open_issues":0,"created_at":"2012-05-25T11:47:06Z","state":"closed","description":"","id":124045},"number":29,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-25T17:32:32Z","title":"Publish version 0.7","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-25T11:47:59Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4752048,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/29"},"commit_id":null,"created_at":"2012-05-25T11:47:59Z","event":"subscribed","id":16266501,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15883398","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-21T11:17:12Z","event":"closed","id":15883398,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15820048","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:42:25Z","event":"assigned","id":15820048,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15819975","issue":{"updated_at":"2012-05-26T14:59:33Z","body":"Body edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","number":1,"title":"Version 0.4","due_on":"2012-03-13T07:00:00Z","closed_issues":3,"open_issues":0,"created_at":"2012-03-08T12:22:10Z","state":"closed","description":"","id":93546},"number":28,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-26T14:59:33Z","title":"Issue created by PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-05-19T10:38:23Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4653757,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"},"commit_id":null,"created_at":"2012-05-19T10:38:23Z","event":"subscribed","id":15819975,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15756354","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T11:06:05Z","event":"subscribed","id":15756354,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15756353","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T11:06:05Z","event":"assigned","id":15756353,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15755561","issue":{"updated_at":"2012-05-18T11:06:11Z","body":"As per discussion in 6945921c529be14c3a8f566dd1e483674516d46d\n\nI have observed that autocompletion (using PyDev+Eclipse in my case) is pretty erratic.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to `NamedUsers`/`AuthenticatedUser`, really) does not show autocompletion to `g.get_user().get_repo()`.\n\nThis makes exploring the library/API a bit cumbersome. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/27","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":27,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Facilitate IDE autocompletion","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-18T10:52:29Z","state":"open","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4639931,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/27"},"commit_id":null,"created_at":"2012-05-18T10:52:29Z","event":"subscribed","id":15755561,"actor":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15741471","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-18T05:18:34Z","event":"subscribed","id":15741471,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15741470","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-18T05:18:34Z","event":"assigned","id":15741470,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/15675859","issue":{"updated_at":"2012-05-21T12:09:57Z","body":"Hi!\n\nI tried to find a function which returns the number of API requests I have remaining due to [rate limiting](http://developer.github.com/v3/#rate-limiting). Is this somewhere in the library and I can't find it? If not, I think it would be a great feature to have, to be able to keep track of how many requests certain actions use up.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/26","comments":4,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":26,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-21T11:17:12Z","title":"Rate limiting?","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-05-17T12:02:05Z","state":"closed","user":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442},"id":4622816,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/26"},"commit_id":null,"created_at":"2012-05-17T12:02:05Z","event":"subscribed","id":15675859,"actor":{"url":"https://api.github.com/users/bilderbuchi","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","login":"bilderbuchi","id":327442}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890679","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"referenced","id":14890679,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890678","issue":{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4452000,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"subscribed","id":14890678,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890677","issue":{"updated_at":"2012-05-07T10:49:06Z","body":"List known clients.\r\n\r\nFirst known client: http://pypi.python.org/pypi/tratihubis/ (cf #24)","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/25","comments":0,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":25,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"List project(s) using PyGithub","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"}],"created_at":"2012-05-07T10:49:06Z","state":"open","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":4452000,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/25"},"commit_id":null,"created_at":"2012-05-07T10:49:06Z","event":"assigned","id":14890677,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890532","issue":{"updated_at":"2012-05-07T10:45:58Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":6,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-07T10:45:58Z","title":"Review exceptions policy when receiving error HTTP status","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-12T19:45:51Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3617711,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/6"},"commit_id":null,"created_at":"2012-05-07T10:45:58Z","event":"closed","id":14890532,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14890531","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-07T10:45:58Z","event":"referenced","id":14890531,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14797847","issue":{"updated_at":"2012-05-07T10:45:58Z","body":"","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/6","comments":1,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":6,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-05-07T10:45:58Z","title":"Review exceptions policy when receiving error HTTP status","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-03-12T19:45:51Z","state":"closed","user":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"id":3617711,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/6"},"commit_id":null,"created_at":"2012-05-04T19:23:57Z","event":"referenced","id":14797847,"actor":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14550202","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-01T21:58:55Z","event":"subscribed","id":14550202,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14550200","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-05-01T21:58:55Z","event":"assigned","id":14550200,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/14466693","issue":{"updated_at":"2012-05-04T19:23:57Z","body":"Thanks for PyGithub, it is easy to use and very complete. I just successfully used it to convert Trac tickets to Guthub issues.\r\n\r\nBut I had to learn the hard way that `create_issue()` expectes the milestone as number instead of a title. To track this down, I added the following `print` statement to `Requester.py`:\r\n\r\n```python\r\ndef __statusCheckedRequest( self, verb, url, parameters, input ):\r\n status, headers, output = self.__rawRequest( verb, url, parameters, input )\r\n if status < 200 or status >= 300:\r\n print output # <--- Added by me.\r\n raise UnknownGithubObject() # <--- sadly lacks any error details\r\n return headers, output\r\n```\r\n\r\nAs `output` already contains all the information needed (as JSON dump), it would be helpful if the exception raised here would include this information in the exception message.","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/24","comments":2,"milestone":{"creator":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","closed_issues":2,"open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547},"number":24,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":null,"title":"Improve error messages on broken requests","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"}],"created_at":"2012-04-30T20:01:20Z","state":"open","user":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},"id":4356743,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/24"},"commit_id":null,"created_at":"2012-04-30T20:01:20Z","event":"subscribed","id":14466693,"actor":{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13988647","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-23T20:23:29Z","event":"closed","id":13988647,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13600012","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T21:10:30Z","event":"assigned","id":13600012,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13599998","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T21:10:15Z","event":"subscribed","id":13599998,"actor":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146}},{"url":"https://api.github.com/repos/jacquev6/PyGithub/issues/events/13589532","issue":{"updated_at":"2012-04-23T20:23:29Z","body":"This is probably user error (I don't really know what I'm doing) but if I execute ```repo.get_download(1)``` or ```repo.get_download('foobar')``` (I'm not sure what the proper id for a download is), I get the following error trace:\r\n\r\n Traceback (most recent call last):\r\n File \"/Applications/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py\", line 1, in \r\n # Used internally for debug sandbox under external interpreter\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 77, in \r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/List.py\", line 114, in __execute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/TypePolicies.py\", line 25, in createNonLazy\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 73, in __init__\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/GithubObject.py\", line 103, in __fetchAttribute\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/GithubObjects/GithubObject/Basic.py\", line 62, in updateAttributes\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Github.py\", line 10, in _dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 17, in dataRequest\r\n File \"/Library/Python/2.6/site-packages/PyGithub-0.6-py2.6.egg/github/Requester.py\", line 39, in __statusCheckedRequest\r\n github.Requester.UnknownGithubObject:\r\n\r\nAlso possibly related: ```repo.get_download()``` (what weird things users do, eh?) causes a shorter trace ending in Type Error. ","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/23","comments":2,"milestone":null,"number":23,"assignee":{"url":"https://api.github.com/users/jacquev6","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146},"closed_at":"2012-04-23T20:23:29Z","title":"UnknownGithubObject on get_download() with invalid key","labels":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}],"created_at":"2012-04-17T19:03:44Z","state":"closed","user":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},"id":4159230,"pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/23"},"commit_id":null,"created_at":"2012-04-17T19:03:45Z","event":"subscribed","id":13589532,"actor":{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018}}] + diff --git a/test/ReplayData/Repository.testGetKeys.txt b/test/ReplayData/Repository.testGetKeys.txt new file mode 100644 index 00000000..5aaeb281 --- /dev/null +++ b/test/ReplayData/Repository.testGetKeys.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/keys {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('content-length', '507'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c53f260d8e74caefe7af2efeeda39e98"'), ('date', 'Sun, 27 May 2012 07:04:34 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/user/keys/2626761","verified":true,"key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","title":"Key added through PyGithub","id":2626761}] + diff --git a/test/ReplayData/Repository.testGetLabels.txt b/test/ReplayData/Repository.testGetLabels.txt new file mode 100644 index 00000000..8988d11f --- /dev/null +++ b/test/ReplayData/Repository.testGetLabels.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/labels {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4944'), ('content-length', '695'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"a35ac34bf5089a20b90cd0bb34001fa3"'), ('date', 'Sun, 27 May 2012 07:05:48 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Refactoring","name":"Refactoring","color":"0b02e1"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Public+interface","name":"Public interface","color":"d7e102"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","name":"Functionalities","color":"e102d8"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","name":"Project management","color":"444444"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","name":"Bug","color":"e10c02"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","name":"Question","color":"02e10c"}] + diff --git a/test/ReplayData/Repository.testGetLanguages.txt b/test/ReplayData/Repository.testGetLanguages.txt new file mode 100644 index 00000000..8b4bf983 --- /dev/null +++ b/test/ReplayData/Repository.testGetLanguages.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/languages {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4941'), ('content-length', '29'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7d14a65f22f237036a50f0d982721206"'), ('date', 'Sun, 27 May 2012 07:06:51 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"Shell":673,"Python":127266} + diff --git a/test/ReplayData/Repository.testGetMilestones.txt b/test/ReplayData/Repository.testGetMilestones.txt new file mode 100644 index 00000000..9f1910d6 --- /dev/null +++ b/test/ReplayData/Repository.testGetMilestones.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/milestones {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4938'), ('content-length', '901'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ed668d7695f9e5259aa7d9660a875e03"'), ('date', 'Sun, 27 May 2012 07:07:35 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"creator":{"url":"https://api.github.com/users/jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","number":2,"title":"Version 1.0: coherent public interface","due_on":"2012-06-04T07:00:00Z","open_issues":10,"created_at":"2012-03-08T12:22:28Z","state":"open","description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","id":93547,"closed_issues":2}] + diff --git a/test/ReplayData/Repository.testGetNetworkEvents.txt b/test/ReplayData/Repository.testGetNetworkEvents.txt new file mode 100644 index 00000000..7f1f6753 --- /dev/null +++ b/test/ReplayData/Repository.testGetNetworkEvents.txt @@ -0,0 +1,5 @@ +GET /networks/jacquev6/PyGithub/events {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4929'), ('content-length', '44412'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('link', '; rel="next"'), ('etag', '"1e10e6d8994190bd053880e299e9b0b4"'), ('date', 'Sun, 27 May 2012 07:08:40 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Hook.py","size":1024,"created_at":"2012-05-27T06:54:54Z","content_type":".py","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245143","download_count":0,"id":245143,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/Hook.py"}},"id":"1556239111","created_at":"2012-05-27T06:54:55Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"htmlcov.zip","size":258048,"created_at":"2012-05-27T06:53:47Z","content_type":".zip","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/245142","id":245142,"description":"","html_url":"https://github.com/downloads/jacquev6/PyGithub/htmlcov.zip"}},"id":"1556239049","created_at":"2012-05-27T06:53:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"956279094a7383b6a8f00c93770ed02ca711f8e5","size":4,"push_id":80734053,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"8cb3e63e80f3ab741ca580eed791a85fb4e1b968","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/8cb3e63e80f3ab741ca580eed791a85fb4e1b968","distinct":true,"message":"Test Team"},{"sha":"e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/e7fe18b7dd3daa03a6ebb7f83a4f100c0f68e96b","distinct":true,"message":"Test Organization members"},{"sha":"4169010f17cf66a9f1e43e476115485ed7cda90c","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/4169010f17cf66a9f1e43e476115485ed7cda90c","distinct":true,"message":"Improve coverage of Organization"},{"sha":"956279094a7383b6a8f00c93770ed02ca711f8e5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/956279094a7383b6a8f00c93770ed02ca711f8e5","distinct":true,"message":"Test Repository.create_git_*"}]},"id":"1556235497","created_at":"2012-05-27T06:00:30Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"opened","issue":{"number":30,"created_at":"2012-05-27T05:40:15Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body created by PyGithub","comments":0,"title":"Issue also created by PyGithub","updated_at":"2012-05-27T05:40:15Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/30","id":4769659,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":2,"due_on":"2012-06-04T07:00:00Z","created_at":"2012-03-08T12:22:28Z","title":"Version 1.0: coherent public interface","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/2","id":93547,"open_issues":10,"closed_issues":2,"description":"Heavy rewrite to have:\r\n* a fully coherent public interface\r\n* usable stack-traces in case of exception\r\n* more explicit exceptions\r\n* more readable code (for library exploration, auto-completion in IDEs, etc.)\r\n\r\nSee working branch https://github.com/jacquev6/PyGithub/tree/topic/RewriteWithGeneratedCode","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/30","labels":[{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"open"}},"id":"1556234207","created_at":"2012-05-27T05:40:15Z"},{"type":"MemberEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"id":"1556233923","created_at":"2012-05-27T05:34:29Z"},{"type":"MemberEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"added","member":{"gravatar_id":"1517ed584458ccf83e03f5d77d9699d7","avatar_url":"https://secure.gravatar.com/avatar/1517ed584458ccf83e03f5d77d9699d7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/Lyloa","id":1131432,"login":"Lyloa"}},"id":"1556233882","created_at":"2012-05-27T05:33:44Z"},{"type":"ForkEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":1424031,"url":"https://api.github.com/users/BeaverSoftware","login":"BeaverSoftware"},"payload":{"forkee":{"name":"PyGithub","size":348,"has_wiki":false,"created_at":"2012-05-27T05:23:17Z","clone_url":"https://github.com/BeaverSoftware/PyGithub.git","public":true,"watchers":1,"private":false,"updated_at":"2012-05-27T05:23:18Z","git_url":"git://github.com/BeaverSoftware/PyGithub.git","fork":true,"language":"Python","url":"https://api.github.com/repos/BeaverSoftware/PyGithub","ssh_url":"git@github.com:BeaverSoftware/PyGithub.git","id":4460027,"svn_url":"https://github.com/BeaverSoftware/PyGithub","pushed_at":"2012-05-26T20:54:13Z","has_downloads":true,"mirror_url":null,"open_issues":0,"full_name":"BeaverSoftware/PyGithub","has_issues":false,"homepage":"http://vincent-jacques.net/PyGithub","description":"Python library implementing the full Github API v3","forks":0,"html_url":"https://github.com/BeaverSoftware/PyGithub","owner":{"gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","url":"https://api.github.com/users/BeaverSoftware","id":1424031,"login":"BeaverSoftware"}}},"id":"1556233222","created_at":"2012-05-27T05:23:18Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"a39af6a0aae16a923f7be48a70fe1095b17280d2","size":2,"push_id":80709334,"commits":[{"sha":"60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/60fb7a8ef56f46d3fe9ce6d008e6b58238a71d29","distinct":true,"message":"Heavy refactoring of integration tests"},{"sha":"a39af6a0aae16a923f7be48a70fe1095b17280d2","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/a39af6a0aae16a923f7be48a70fe1095b17280d2","distinct":true,"message":"Improve test coverage"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1556182773","created_at":"2012-05-26T20:54:15Z"},{"type":"WatchEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"1689abbd998128dbb3658698b429b022","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":22974,"url":"https://api.github.com/users/michaelpedersen","login":"michaelpedersen"},"payload":{"action":"started"},"id":"1556168218","created_at":"2012-05-26T18:33:42Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":28,"created_at":"2012-05-19T10:38:23Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"Body edited by PyGithub","title":"Issue created by PyGithub","comments":0,"updated_at":"2012-05-26T14:59:33Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/28","id":4653757,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":1,"created_at":"2012-03-08T12:22:10Z","due_on":"2012-03-13T07:00:00Z","title":"Version 0.4","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/1","id":93546,"open_issues":0,"closed_issues":3,"description":"","state":"closed"},"closed_at":"2012-05-26T14:59:33Z","html_url":"https://github.com/jacquev6/PyGithub/issues/28","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Bug","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Bug","color":"e10c02"},{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"},{"name":"Question","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Question","color":"02e10c"}],"state":"closed"}},"id":"1556145515","created_at":"2012-05-26T14:59:34Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"36574ded89738a81f47f415017ba880d0cad839b","size":5,"push_id":80677260,"commits":[{"sha":"95cd6c507bdfbf3700a31bafbe26f72a1d684be1","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/95cd6c507bdfbf3700a31bafbe26f72a1d684be1","distinct":true,"message":"Use setUp in test for NamedUser"},{"sha":"386bcde55e1744fa888b034d34ad9f167595d2cf","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/386bcde55e1744fa888b034d34ad9f167595d2cf","distinct":true,"message":"Refactor tests of NamedUser"},{"sha":"1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/1b3ca70ebe8724ab7d0d6ba9c8b20853a018eeec","distinct":true,"message":"Restore coverage of Event"},{"sha":"ff8d87d5391b2ef8d10e89f77260a18440e88e25","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ff8d87d5391b2ef8d10e89f77260a18440e88e25","distinct":true,"message":"Test NamedUser.create_gist withour description"},{"sha":"36574ded89738a81f47f415017ba880d0cad839b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/36574ded89738a81f47f415017ba880d0cad839b","distinct":true,"message":"Refactor tests of Repository"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1556126182","created_at":"2012-05-26T11:25:50Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"619eae8d51c5988f0d2889fc767fa677438ba95d","size":11,"push_id":80673538,"ref":"refs/heads/topic/RewriteWithGeneratedCode","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":false,"message":"Merge branch 'develop'"},{"sha":"3a3bf4763192ee1234eb0557628133e06f3dfc76","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/3a3bf4763192ee1234eb0557628133e06f3dfc76","distinct":true,"message":"Merge branch 'master' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\tgithub/Github.py\n\tgithub/Requester.py"},{"sha":"608f17794664f61693a3dc05e6056fea8fbef0ff","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/608f17794664f61693a3dc05e6056fea8fbef0ff","distinct":true,"message":"Restore some form of Authorization header in replay data"},{"sha":"2c04b8adbd91d38eef4f0767337ab7a12b2f684b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2c04b8adbd91d38eef4f0767337ab7a12b2f684b","distinct":true,"message":"Allow test without pre-set-up Github"},{"sha":"5b97389988b6fe43e15a079702f6f1671257fb28","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5b97389988b6fe43e15a079702f6f1671257fb28","distinct":true,"message":"Test three authentication schemes"},{"sha":"12747613c5ec00deccf296b8619ad507f7050475","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/12747613c5ec00deccf296b8619ad507f7050475","distinct":true,"message":"Test Issue.getComments"},{"sha":"2982fa96c5ca75abe717d974d83f9135d664232e","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/2982fa96c5ca75abe717d974d83f9135d664232e","distinct":true,"message":"Test the new Repository.full_name attribute"},{"sha":"619eae8d51c5988f0d2889fc767fa677438ba95d","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/619eae8d51c5988f0d2889fc767fa677438ba95d","distinct":true,"message":"Improve coverage of AuthenticatedUser"}]},"id":"1556114751","created_at":"2012-05-26T10:01:39Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","comments":0,"title":"Publish version 0.7","updated_at":"2012-05-25T17:32:32Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:32Z","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/29","state":"closed"}},"id":"1555940993","created_at":"2012-05-25T17:32:33Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"closed","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","comments":1,"title":"Implement all authentication schemes","updated_at":"2012-05-25T17:32:31Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"due_on":"2012-05-26T07:00:00Z","created_at":"2012-05-25T11:47:06Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"closed_issues":2,"open_issues":0,"description":"","state":"closed"},"closed_at":"2012-05-25T17:32:31Z","labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"closed"}},"id":"1555940986","created_at":"2012-05-25T17:32:33Z"},{"type":"CreateEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"master_branch":"master","ref_type":"tag","ref":"v0.7","description":"Python library implementing the full Github API v3"},"id":"1555936661","created_at":"2012-05-25T17:19:48Z"},{"type":"DeleteEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"ref_type":"branch","ref":"topic/Authentication"},"id":"1555936660","created_at":"2012-05-25T17:19:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","size":4,"push_id":80573368,"ref":"refs/heads/master","commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"},{"sha":"ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7","distinct":true,"message":"Merge branch 'develop'"}]},"id":"1555936659","created_at":"2012-05-25T17:19:48Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","size":3,"push_id":80573367,"commits":[{"sha":"5bb654d26dd014d36794acd1e6ecf3736f12aad7","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7","distinct":false,"message":"Implement the three authentication schemes"},{"sha":"cb0313157bf904f2d364377d35d9397b269547a5","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5","distinct":false,"message":"Merge branch 'topic/Authentication' into develop"},{"sha":"0cec0d25e606c023a62a4fc7cdc815309ebf6d16","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16","distinct":false,"message":"Publish version 0.7"}],"ref":"refs/heads/develop"},"id":"1555936657","created_at":"2012-05-25T17:19:47Z"},{"type":"CreateEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"master_branch":"master","ref":"topic/Authentication","description":"Python library implementing the full Github API v3","ref_type":"branch"},"id":"1555833283","created_at":"2012-05-25T12:24:21Z"},{"type":"IssuesEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"opened","issue":{"number":29,"created_at":"2012-05-25T11:47:59Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"","title":"Publish version 0.7","comments":0,"updated_at":"2012-05-25T11:47:59Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/29","id":4752048,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":{"number":5,"created_at":"2012-05-25T11:47:06Z","due_on":"2012-05-26T07:00:00Z","title":"Version 0.7","creator":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"url":"https://api.github.com/repos/jacquev6/PyGithub/milestones/5","id":124045,"open_issues":2,"closed_issues":0,"description":"","state":"open"},"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"html_url":"https://github.com/jacquev6/PyGithub/issues/29","labels":[{"name":"Project management","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Project+management","color":"444444"}],"state":"open"}},"id":"1555822981","created_at":"2012-05-25T12:02:48Z"},{"type":"IssueCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"created_at":"2012-05-25T06:31:42Z","body":"It means that there will be three ways to create an instance of the Github class:\n github = Github()\n github = Github( login, password )\n github = Github( oauth_token )\n","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/comments/5924198","id":5924198,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}},"action":"created","issue":{"number":15,"created_at":"2012-03-13T06:24:05Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"comments":1,"body":"One would want to use the API without authentication, with login+password, and with OAuth token. Let's cover these use-cases.","title":"Implement all authentication schemes","updated_at":"2012-05-25T06:31:42Z","url":"https://api.github.com/repos/jacquev6/PyGithub/issues/15","id":3624575,"assignee":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"milestone":null,"closed_at":null,"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"},"labels":[{"name":"Functionalities","url":"https://api.github.com/repos/jacquev6/PyGithub/labels/Functionalities","color":"e102d8"}],"html_url":"https://github.com/jacquev6/PyGithub/issues/15","state":"open"}},"id":"1555742639","created_at":"2012-05-25T06:31:42Z"},{"type":"WatchEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"action":"started"},"id":"1555738288","created_at":"2012-05-25T06:05:21Z"},{"type":"PushEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"head":"527ce7459a2e60d1536883f19b9bc6850d71127b","size":5,"push_id":79877715,"commits":[{"sha":"287bc541542f9d32339e7dd4b36a511cab2ebdae","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/287bc541542f9d32339e7dd4b36a511cab2ebdae","distinct":true,"message":"Generate more coverage information"},{"sha":"588a4a9a355096c00a2bb25f27664d2115e120ac","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/588a4a9a355096c00a2bb25f27664d2115e120ac","distinct":true,"message":"Test AuthenticatedUser watching"},{"sha":"815720f0deb376c34166c27b6e3b73e5c1f5b1a3","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/815720f0deb376c34166c27b6e3b73e5c1f5b1a3","distinct":true,"message":"Test Authorization"},{"sha":"473c92adcd8bbbd32003d9c65666ede66059551b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/473c92adcd8bbbd32003d9c65666ede66059551b","distinct":true,"message":"Test Download and CommitComment"},{"sha":"527ce7459a2e60d1536883f19b9bc6850d71127b","author":{"name":"Vincent Jacques","email":"vincent@vincent-jacques.net"},"url":"https://api.github.com/repos/jacquev6/PyGithub/commits/527ce7459a2e60d1536883f19b9bc6850d71127b","distinct":true,"message":"Merge commit 'c93f9cc8484b7' into topic/RewriteWithGeneratedCode\n\nConflicts:\n\ttest/IntegrationTest.py"}],"ref":"refs/heads/topic/RewriteWithGeneratedCode"},"id":"1554729420","created_at":"2012-05-22T19:59:48Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:15:29Z","content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242562","id":242562,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554712197","created_at":"2012-05-22T19:15:30Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","size":1024,"created_at":"2012-05-22T19:11:49Z","content_type":"text/richtext","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242556","id":242556,"description":"Download created by PyGithub","html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554710791","created_at":"2012-05-22T19:11:49Z"},{"type":"DownloadEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"download":{"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","size":1024,"content_type":"text/plain","url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","download_count":0,"id":242550,"description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt"}},"id":"1554705673","created_at":"2012-05-22T18:58:32Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":19,"created_at":"2012-05-22T18:53:25Z","line":211,"body":"Foobar","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:53:25Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362020","id":1362020,"path":"src/github/AuthenticatedUser.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362020","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554703698","created_at":"2012-05-22T18:53:25Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":3,"created_at":"2012-05-22T18:50:02Z","line":null,"body":"Comment also created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:50:02Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","id":1362001,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362001","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554702296","created_at":"2012-05-22T18:50:02Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":null,"created_at":"2012-05-22T18:49:34Z","line":26,"body":"Comment created by PyGithub","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:49:34Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362000","id":1362000,"path":"codegen/templates/GithubObject.MethodBody.UseResult.py","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1362000","user":{"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554702087","created_at":"2012-05-22T18:49:34Z"},{"type":"CommitCommentEvent","repo":{"id":3544490,"url":"https://api.github.com/repos/jacquev6/PyGithub","name":"jacquev6/PyGithub"},"public":true,"actor":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":327146,"url":"https://api.github.com/users/jacquev6","login":"jacquev6"},"payload":{"comment":{"position":null,"created_at":"2012-05-22T18:40:18Z","body":"Comment created by PyGithub","line":null,"commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","updated_at":"2012-05-22T18:40:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","id":1361949,"path":null,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/jacquev6","id":327146,"login":"jacquev6"}}},"id":"1554698320","created_at":"2012-05-22T18:40:18Z"}] + diff --git a/test/ReplayData/Repository.testGetTeams.txt b/test/ReplayData/Repository.testGetTeams.txt new file mode 100644 index 00000000..6804bf42 --- /dev/null +++ b/test/ReplayData/Repository.testGetTeams.txt @@ -0,0 +1,15 @@ +GET /orgs/BeaverSoftware {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4915'), ('content-length', '714'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"125496cfc78c073ab8bf69c9bc5129d9"'), ('date', 'Sun, 27 May 2012 07:15:54 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"public_repos":1,"type":"Organization","disk_usage":0,"blog":null,"url":"https://api.github.com/orgs/BeaverSoftware","plan":{"private_repos":0,"name":"free","space":307200},"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","total_private_repos":0,"public_gists":0,"company":null,"login":"BeaverSoftware","owned_private_repos":0,"private_gists":0,"collaborators":0,"email":null,"followers":0,"name":null,"created_at":"2012-02-09T19:20:12Z","location":"Paris, France","id":1424031,"billing_email":"BeaverSoftware@vincent-jacques.net","following":0,"html_url":"https://github.com/BeaverSoftware"} + +GET /repos/BeaverSoftware/FatherBeaver {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4914'), ('content-length', '1431'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"539a11d46b5bb0db8383306bad48fd1c"'), ('date', 'Sun, 27 May 2012 07:15:55 GMT'), ('content-type', 'application/json; charset=utf-8')] +{"organization":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"clone_url":"https://github.com/BeaverSoftware/FatherBeaver.git","git_url":"git://github.com/BeaverSoftware/FatherBeaver.git","has_downloads":true,"watchers":2,"updated_at":"2012-02-16T21:51:15Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"","url":"https://api.github.com/repos/BeaverSoftware/FatherBeaver","has_wiki":true,"has_issues":true,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/BeaverSoftware/FatherBeaver","owner":{"url":"https://api.github.com/users/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","gravatar_id":"d563e337cac2fdc644e2aaaad1e23266","login":"BeaverSoftware","id":1424031},"name":"FatherBeaver","language":null,"description":"","ssh_url":"git@github.com:BeaverSoftware/FatherBeaver.git","pushed_at":null,"created_at":"2012-02-09T19:32:21Z","id":3400397,"html_url":"https://github.com/BeaverSoftware/FatherBeaver","full_name":"BeaverSoftware/FatherBeaver"} + +GET /repos/BeaverSoftware/FatherBeaver/teams {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4913'), ('content-length', '76'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7da40fa4ce70d77b7cddef012cf24607"'), ('date', 'Sun, 27 May 2012 07:15:56 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/teams/141496","name":"Members","id":141496}] + diff --git a/test/ReplayData/Repository.testGetWatchers.txt b/test/ReplayData/Repository.testGetWatchers.txt new file mode 100644 index 00000000..3c4b7382 --- /dev/null +++ b/test/ReplayData/Repository.testGetWatchers.txt @@ -0,0 +1,5 @@ +GET /repos/jacquev6/PyGithub/watchers {'Authorization': 'Basic login_and_password_removed'} null +200 +[('status', '200 OK'), ('x-ratelimit-remaining', '4910'), ('content-length', '4422'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8e8c7e43110b3cb76b2e52cec4202ced"'), ('date', 'Sun, 27 May 2012 07:17:10 GMT'), ('content-type', 'application/json; charset=utf-8')] +[{"url":"https://api.github.com/users/Stals","avatar_url":"https://secure.gravatar.com/avatar/5341a13bb6125ce7c97cf91b35209e16?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5341a13bb6125ce7c97cf91b35209e16","login":"Stals","id":472089},{"url":"https://api.github.com/users/att14","avatar_url":"https://secure.gravatar.com/avatar/96e24bccec8300005c74a0d9cd096149?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"96e24bccec8300005c74a0d9cd096149","login":"att14","id":780132},{"url":"https://api.github.com/users/jardon-u","avatar_url":"https://secure.gravatar.com/avatar/1b4be24fa7e62eb508ca448da99e43d4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1b4be24fa7e62eb508ca448da99e43d4","login":"jardon-u","id":994192},{"url":"https://api.github.com/users/huxley","avatar_url":"https://secure.gravatar.com/avatar/16a037e47cf9737e037169cbd1d2bed6?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"16a037e47cf9737e037169cbd1d2bed6","login":"huxley","id":839},{"url":"https://api.github.com/users/mikofski","avatar_url":"https://secure.gravatar.com/avatar/98aa463dd3f869c195efc372c8d42c86?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"98aa463dd3f869c195efc372c8d42c86","login":"mikofski","id":1385621},{"url":"https://api.github.com/users/L42y","avatar_url":"https://secure.gravatar.com/avatar/4dc11d87759273f3466ab4f673bcecae?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"4dc11d87759273f3466ab4f673bcecae","login":"L42y","id":284820},{"url":"https://api.github.com/users/fanzeyi","avatar_url":"https://secure.gravatar.com/avatar/71de1870e298b3488d75c4cb805f4cf7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"71de1870e298b3488d75c4cb805f4cf7","login":"fanzeyi","id":409951},{"url":"https://api.github.com/users/abersager","avatar_url":"https://secure.gravatar.com/avatar/b2e096f2c016d8dc168a3a5e6281b07a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b2e096f2c016d8dc168a3a5e6281b07a","login":"abersager","id":1328351},{"url":"https://api.github.com/users/waylan","avatar_url":"https://secure.gravatar.com/avatar/5479425141d61976fd0875bea7dfd7e0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5479425141d61976fd0875bea7dfd7e0","login":"waylan","id":78846},{"url":"https://api.github.com/users/adericbourg","avatar_url":"https://secure.gravatar.com/avatar/5287a88d1c85f336fe494a694fac7635?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"5287a88d1c85f336fe494a694fac7635","login":"adericbourg","id":615743},{"url":"https://api.github.com/users/tallforasmurf","avatar_url":"https://secure.gravatar.com/avatar/61104afbd871dab22a702e7c1233d573?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"61104afbd871dab22a702e7c1233d573","login":"tallforasmurf","id":1137018},{"url":"https://api.github.com/users/pvicente","avatar_url":"https://secure.gravatar.com/avatar/c6733f16eb6fc13f79c6dcfd093b347a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c6733f16eb6fc13f79c6dcfd093b347a","login":"pvicente","id":471109},{"url":"https://api.github.com/users/roskakori","avatar_url":"https://secure.gravatar.com/avatar/b58d0f1ea06b8d5de5f02c53f747ac03?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"b58d0f1ea06b8d5de5f02c53f747ac03","login":"roskakori","id":328726},{"url":"https://api.github.com/users/michaelpedersen","avatar_url":"https://secure.gravatar.com/avatar/1689abbd998128dbb3658698b429b022?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1689abbd998128dbb3658698b429b022","login":"michaelpedersen","id":22974},{"url":"https://api.github.com/orgs/BeaverSoftware","avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png","login":"BeaverSoftware","id":1424031}] + diff --git a/test/Repository.py b/test/Repository.py index c7fa6ba1..67c243bd 100644 --- a/test/Repository.py +++ b/test/Repository.py @@ -10,7 +10,7 @@ class Repository( Framework.TestCase ): self.assertEqual( self.repo.created_at, "2012-02-25T12:53:47Z" ) self.assertEqual( self.repo.description, "Python library implementing the full Github API v3" ) self.assertEqual( self.repo.fork, False ) - self.assertEqual( self.repo.forks, 2 ) + self.assertEqual( self.repo.forks, 3 ) self.assertEqual( self.repo.full_name, "jacquev6/PyGithub" ) self.assertEqual( self.repo.git_url, "git://github.com/jacquev6/PyGithub.git" ) self.assertEqual( self.repo.has_downloads, True ) @@ -31,14 +31,14 @@ class Repository( Framework.TestCase ): self.assertEqual( self.repo.permissions.pull, True ) self.assertEqual( self.repo.permissions.push, True ) self.assertEqual( self.repo.private, False ) - self.assertEqual( self.repo.pushed_at, "2012-05-25T17:19:45Z" ) - self.assertEqual( self.repo.size, 184 ) + self.assertEqual( self.repo.pushed_at, "2012-05-27T06:00:28Z" ) + self.assertEqual( self.repo.size, 308 ) self.assertEqual( self.repo.source, None ) self.assertEqual( self.repo.ssh_url, "git@github.com:jacquev6/PyGithub.git" ) self.assertEqual( self.repo.svn_url, "https://github.com/jacquev6/PyGithub" ) - self.assertEqual( self.repo.updated_at, "2012-05-25T17:19:46Z" ) + self.assertEqual( self.repo.updated_at, "2012-05-27T06:55:28Z" ) self.assertEqual( self.repo.url, "https://api.github.com/repos/jacquev6/PyGithub" ) - self.assertEqual( self.repo.watchers, 13 ) + self.assertEqual( self.repo.watchers, 15 ) def testEditWithoutArguments( self ): self.repo.edit( "PyGithub" ) ### @todo Make name an optional parameter @@ -191,3 +191,128 @@ class Repository( Framework.TestCase ): self.assertListKeyEqual( self.repo.get_collaborators(), lambda u: u.login, [ "jacquev6", "Lyloa" ] ) self.repo.remove_from_collaborators( lyloa ) self.assertFalse( self.repo.has_in_collaborators( lyloa ) ) + + def testCompare( self ): + ### @todo Structure ComparisionResult + self.assertEqual( + self.repo.compare( "v0.6", "v0.7" ), + { + u'status': u'ahead', + u'files': [ + {u'status': u'modified', u'deletions': 1, u'raw_url': u'https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md', u'blob_url': u'https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/ReferenceOfClasses.md', u'filename': u'ReferenceOfClasses.md', u'sha': u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'additions': 1, u'patch': u"@@ -3,7 +3,7 @@ You obtain instances through calls to `get_` and `create_` methods.\n \n Class `Github`\n ==============\n-* Constructed from user's login and password\n+* Constructed from user's login and password or OAuth token\n * `get_user()`: `AuthenticatedUser`\n * `get_user( login )`: `NamedUser`\n * `get_organization( login )`: `Organization`", u'changes': 2}, + {u'status': u'modified', u'deletions': 2, u'raw_url': u'https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py', u'blob_url': u'https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Github.py', u'filename': u'github/Github.py', u'sha': u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'additions': 2, u'patch': u'@@ -2,8 +2,8 @@\n from GithubObjects import *\n \n class Github:\n- def __init__( self, login, password, debugFile = None ):\n- self.__requester = Requester( login, password )\n+ def __init__( self, login_or_token = None, password = None, debugFile = None ):\n+ self.__requester = Requester( login_or_token, password )\n self.__debugFile = debugFile\n \n def _dataRequest( self, verb, url, parameters, data ):', u'changes': 4}, + {u'status': u'modified', u'deletions': 3, u'raw_url': u'https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py', u'blob_url': u'https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/github/Requester.py', u'filename': u'github/Requester.py', u'sha': u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'additions': 14, u'patch': u'@@ -7,8 +7,15 @@ class UnknownGithubObject( Exception ):\n pass\n \n class Requester:\n- def __init__( self, login, password ):\n- self.__authorizationHeader = "Basic " + base64.b64encode( login + ":" + password ).replace( \'\\n\', \'\' )\n+ def __init__( self, login_or_token, password ):\n+ if password is not None:\n+ login = login_or_token\n+ self.__authorizationHeader = "Basic " + base64.b64encode( login + ":" + password ).replace( \'\\n\', \'\' )\n+ elif login_or_token is not None:\n+ token = login_or_token\n+ self.__authorizationHeader = "token " + token\n+ else:\n+ self.__authorizationHeader = None\n \n def dataRequest( self, verb, url, parameters, input ):\n if parameters is None:\n@@ -46,12 +53,16 @@ def statusRequest( self, verb, url, parameters, input ):\n def __rawRequest( self, verb, url, parameters, input ):\n assert verb in [ "HEAD", "GET", "POST", "PATCH", "PUT", "DELETE" ]\n \n+ headers = dict()\n+ if self.__authorizationHeader is not None:\n+ headers[ "Authorization" ] = self.__authorizationHeader\n+\n cnx = httplib.HTTPSConnection( "api.github.com", strict = True )\n cnx.request(\n verb,\n self.__completeUrl( url, parameters ),\n json.dumps( input ),\n- { "Authorization" : self.__authorizationHeader }\n+ headers\n )\n response = cnx.getresponse()\n ', u'changes': 17}, + {u'status': u'modified', u'deletions': 1, u'raw_url': u'https://github.com/jacquev6/PyGithub/raw/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py', u'blob_url': u'https://github.com/jacquev6/PyGithub/blob/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7/setup.py', u'filename': u'setup.py', u'sha': u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'additions': 9, u'patch': u'@@ -5,7 +5,7 @@\n \n setup(\n name = \'PyGithub\',\n- version = \'0.6\',\n+ version = \'0.7\',\n description = \'Use the full Github API v3\',\n author = \'Vincent Jacques\',\n author_email = \'vincent@vincent-jacques.net\',\n@@ -26,6 +26,14 @@\n print repo.name\n repo.edit( has_wiki = False )\n \n+ You can also create a Github instance without authentication::\n+\n+ g = Github( "user", "password" )\n+\n+ Or with an OAuth token::\n+\n+ g = Github( token )\n+\n Reference documentation\n =======================\n ', u'changes': 10} + ], + u'base_commit': { + u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, + u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, + u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495', + u'sha': u'4303c5b90e2216d927155e9609436ccb8984c495', + u'parents': [ + {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d', u'sha': u'936f4a97f1a86392637ec002bbf89ff036a5062d'}, + {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb', u'sha': u'2a7e80e6421c5d4d201d60619068dea6bae612cb'} + ], + u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495', u'committer': {u'date': u'2012-04-17T10:55:16-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u"Merge branch 'develop'", u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad', u'sha': u'f492784d8ca837779650d1fb406a1a3587a764ad'}, u'author': {u'date': u'2012-04-17T10:55:16-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}} + }, + u'ahead_by': 4, + u'url': u'https://api.github.com/repos/jacquev6/PyGithub/compare/v0.6...v0.7', + u'merge_base_commit': { + u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, + u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, + u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495', + u'sha': u'4303c5b90e2216d927155e9609436ccb8984c495', + u'parents': [ + {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/936f4a97f1a86392637ec002bbf89ff036a5062d', u'sha': u'936f4a97f1a86392637ec002bbf89ff036a5062d'}, + {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb', u'sha': u'2a7e80e6421c5d4d201d60619068dea6bae612cb'} + ], + u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495', u'committer': {u'date': u'2012-04-17T10:55:16-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u"Merge branch 'develop'", u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad', u'sha': u'f492784d8ca837779650d1fb406a1a3587a764ad'}, u'author': {u'date': u'2012-04-17T10:55:16-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}} + }, + u'html_url': u'https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7', + u'behind_by': 0, + u'patch_url': u'https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.patch', + u'commits': [ + {u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7', u'sha': u'5bb654d26dd014d36794acd1e6ecf3736f12aad7', u'parents': [{u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495', u'sha': u'4303c5b90e2216d927155e9609436ccb8984c495'}], u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7', u'committer': {u'date': u'2012-05-25T05:10:54-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u'Implement the three authentication schemes', u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b', u'sha': u'59d755d95bc2e2de4dcef70a7c73e81e677f610b'}, u'author': {u'date': u'2012-05-25T05:10:54-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}}}, + {u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5', u'sha': u'cb0313157bf904f2d364377d35d9397b269547a5', u'parents': [{u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495', u'sha': u'4303c5b90e2216d927155e9609436ccb8984c495'}, {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/5bb654d26dd014d36794acd1e6ecf3736f12aad7', u'sha': u'5bb654d26dd014d36794acd1e6ecf3736f12aad7'}], u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/cb0313157bf904f2d364377d35d9397b269547a5', u'committer': {u'date': u'2012-05-25T10:04:22-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u"Merge branch 'topic/Authentication' into develop", u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/59d755d95bc2e2de4dcef70a7c73e81e677f610b', u'sha': u'59d755d95bc2e2de4dcef70a7c73e81e677f610b'}, u'author': {u'date': u'2012-05-25T10:04:22-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}}}, + {u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16', u'sha': u'0cec0d25e606c023a62a4fc7cdc815309ebf6d16', u'parents': [{u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/cb0313157bf904f2d364377d35d9397b269547a5', u'sha': u'cb0313157bf904f2d364377d35d9397b269547a5'}], u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16', u'committer': {u'date': u'2012-05-25T10:13:33-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u'Publish version 0.7', u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e', u'sha': u'78735573611521bb3ade95921c668097e2a4dc5e'}, u'author': {u'date': u'2012-05-25T10:13:33-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}}}, + {u'committer': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'author': {u'url': u'https://api.github.com/users/jacquev6', u'login': u'jacquev6', u'avatar_url': u'https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png', u'id': 327146, u'gravatar_id': u'b68de5ae38616c296fa345d2b9df2225'}, u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'sha': u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'parents': [{u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/4303c5b90e2216d927155e9609436ccb8984c495', u'sha': u'4303c5b90e2216d927155e9609436ccb8984c495'}, {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/commits/0cec0d25e606c023a62a4fc7cdc815309ebf6d16', u'sha': u'0cec0d25e606c023a62a4fc7cdc815309ebf6d16'}], u'commit': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/commits/ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'committer': {u'date': u'2012-05-25T10:14:34-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}, u'message': u"Merge branch 'develop'", u'tree': {u'url': u'https://api.github.com/repos/jacquev6/PyGithub/git/trees/78735573611521bb3ade95921c668097e2a4dc5e', u'sha': u'78735573611521bb3ade95921c668097e2a4dc5e'}, u'author': {u'date': u'2012-05-25T10:14:34-07:00', u'email': u'vincent@vincent-jacques.net', u'name': u'Vincent Jacques'}}} + ], + u'total_commits': 4, + u'diff_url': u'https://github.com/jacquev6/PyGithub/compare/v0.6...v0.7.diff', + u'permalink_url': u'https://github.com/jacquev6/PyGithub/compare/jacquev6:4303c5b...jacquev6:ecda065' + } + ) + + def testGetComments( self ): + self.assertListKeyEqual( + self.repo.get_comments(), + lambda c: c.body, + [ + "probably a noob question: does this completion refer to autocompletion in IDE's/editors? \nI have observed that this is pretty erratic sometimes. I'm using PyDev+Eclipse.\nFor example, in the tutorial from the readme, `g.get_u` gets autocompleted correctly, but `g.get_user().get_r` (or any method or attribute applicable to NamedUsers/AuthenticatedUser, really) does not show autocompletion to `g.get_user().get_repo()`. Is that by design? It makes exploring the library/API a bit cumbersome. ", + "No, it has nothing to do with auto-completion in IDEs :D\n\nGithub API v3 sends only the main part of objects in reply to some requests. So, if the user wants an attribute that has not been received yet, I have to do another request to complete the object.\n\nYet, in version 1.0 (see the milesone), my library will be much more readable for IDEs and their auto-completion mechanisms, because I am giving up the meta-description that I used until 0.6, and I'm now generating much more traditional code, that you will be able to explore as if it was written manually.\n\nIf you want to take the time to open an issue about auto-completion in IDEs, I'll deal with it in milestone 1.0.\n\nThanks !", + "Ah, thanks for the clarification. :blush:\n\nI made issue #27 for the autocompletion. I already suspected something like this meta-description magic, since I tried to read some of the code and it was pretty arcane. I attributed that to my pythonic noobness, though. Thank you. ", + "Comment created by PyGithub" + ] + ) + + def testGetCommits( self ): + self.assertListKeyBegin( self.repo.get_commits(), lambda c: c.sha, [ u'ecda065e01876209d2bdf5fe4e91cee8ffaa9ff7', u'0cec0d25e606c023a62a4fc7cdc815309ebf6d16', u'cb0313157bf904f2d364377d35d9397b269547a5', u'5bb654d26dd014d36794acd1e6ecf3736f12aad7', u'4303c5b90e2216d927155e9609436ccb8984c495', u'2a7e80e6421c5d4d201d60619068dea6bae612cb', u'0af24499a98e85f8ab2191898e8b809e5cebd4c5', u'e5ae923a68a9ae295ce5aa20b1227253de60e918', u'2f64b625f7e2afc9bef61d0decb459e2ef65c550', u'590798d349cba7de6e83b43aa5d4f8b0a38e685d', u'e7dca9143a23b8e2045a4a910a4a329007b10086', u'ab3f9b422cb3043d35cf6002fc9c042f8ead8c2a', u'632d8b63c32a2b79e87eb3b93e1ad228724de4bd', u'64c6a1e975e61b9c1449bed016cd19f33ee4b1c5', u'99963536fc81db3b9986c761b9dd08de22089aa2', u'8d57522bbd15d1fb6b616fae795cd8721deb1c4d', u'1140a91f3e45d09bc15463724f178a7ebf8e3149', u'936f4a97f1a86392637ec002bbf89ff036a5062d', u'e10470481795506e2c232720e2a9ecf588c8b567', u'e456549e5265406f8090ae5145255c8ca9ea5e4e', u'a91131be42eb328ae030f584af500f56aa08424b', u'2469c6e1aeb7919126a8271f6980b555b167e8b0', u'a655d0424135befd3a0d53f3f7eff2d1c754854f', u'ce62e91268aa34dad0ba0dbee4769933e3a71e50', u'1c88ee221b7f995855a1fdfac7d0ba19db918739', u'bd1a5dff3c547c634b2d89f5847218820e343883', u'b226b5b4e2f44107dde674e7a5d3e88d4e3518df', u'25dbd4053e982402c7d92139f167dbe46008c932', u'a0cc821c1beada4aa9ca0d5218664c5372720936', u'c1440bdf20bfeb62684c6d1779448719dce9d2df', u'1095d304b7fab3818dcb4c42093c8c56d3ac05e4', u'bd39726f7cf86ea7ffb33b5718241fdab5fc8f53', u'1d2b27824d20612066d84be42d6691c66bb18ef4', u'6af2bfd0d46bc0eeb8c37b85c7b3003e0e4ae297', u'a475d685d8ae709095d09094ea0962ac182d33f0', u'a85de99ea5b5e7b38bd68e076d09c49207b8687e', u'd24cf209ddd1758188c5f35344f76df818d09a46', u'0909fec395bb1f97e2580d6a029cfc64b352aff9', u'6e421e9e85e12008758870bc046bc2c6120af72a', u'32ed0ebc377efbed5b482b3d49ff54bf1715d55a', u'8213df1d744f251aa8e52229643a9f6ce352f3c0', u'69cc298fd159f19eb204dd09f17d31dc4abc3d41', u'85eef756353e13efcb24c726320cd2617c2a7bd8', u'50ac55b25ceba555b84709839f80447552450697', u'767d75a580279e457f9bc52bc308a17ff8ea0509', u'75e72ffa3066693291f7da03070666e8f885097a', u'504047e218e6b34a3828ccc408431634f17b9504', u'960db1d5c9853e9f5fbbc9237c2c166ceef1f080', u'877dde23e140bbf038f9a2d8f0f07b4e3a965c61', u'1c95ddfa09ec0aa1f07ee9ad50a77be1dd74b55e', u'99564c1cab139d1e4678f5f83f60d26f1210db7e', u'231926207709ceaa61e87b64e34e17d85adecd9c', u'fb722625dddb9a32f75190723f7da12683b7c4b2', u'cab9d71603e127bdd1f600a759dccea1781fa1ab', u'e648e5aeb5edc1fbf83e9d37d2a3cb57c005019a', u'4a5cf98e7f959f1b5d9af484760c25cd27d9180d', u'5d1add448e0b0b1dadb8c6094a9e5e19b255f67e', u'0d9fc99a4b5d1ec6473c9c81c888917c132ffa65', u'b56aa09011378b014221f86dffb8304957a9e6bd', u'3e8169c0a98ce1e2c6a32ae1256ae0f735065df5', u'378558f6cac6183b4a7100c0ce5eaad1cfff6717', u'58b4396aa0e7cb72911b75cb035798143a06e0ee', u'a3be28756101370fbc689eec3a7825c4c385a6c9', u'3d6bd49ce229243fea4bb46a937622d0ec7d4d1c', u'58cb0dbdef9765e0e913c726f923a47315aaf80e', u'7b7ac20c6fa27f72a24483c73ab1bf4deffc89f0', u'97f308e67383368a2d15788cac28e126c8528bb2', u'fc33a6de4f0e08d7ff2de05935517ec3932d212e', u'cc6d0fc044eadf2e6fde5da699f61654c1e691f3', u'2dd71f3777b87f2ba61cb20d2c67f10401e3eb2c', u'366ca58ca004b9129f9d435db8204ce0f5bc57c3', u'0d3b3ffd1e5c143af8725fdee808101f626f683d', u'157f9c13275738b6b39b8d7a874f5f0aee47cb18' ] ) + + def testGetDownloads( self ): + self.assertListKeyEqual( self.repo.get_downloads(), lambda d: d.id, [ 245143 ] ) + + def testGetEvents( self ): + self.assertListKeyBegin( self.repo.get_events(), lambda e: e.type, [ "DownloadEvent", "DownloadEvent", "PushEvent", "IssuesEvent", "MemberEvent", "MemberEvent" ] ) + + def testGetForks( self ): + self.assertListKeyEqual( self.repo.get_forks(), lambda r: r.owner.login, [ "abersager" ] ) + + def testGetGitRefs( self ): + self.assertListKeyEqual( self.repo.get_git_refs(), lambda r: r.ref, [ "refs/heads/develop", "refs/heads/master", "refs/heads/topic/DependencyGraph", "refs/heads/topic/RewriteWithGeneratedCode", "refs/tags/v0.1", "refs/tags/v0.2", "refs/tags/v0.3", "refs/tags/v0.4", "refs/tags/v0.5", "refs/tags/v0.6", "refs/tags/v0.7" ] ) + + def testGetHooks( self ): + self.assertListKeyEqual( self.repo.get_hooks(), lambda h: h.id, [ 257993 ] ) + + def testGetIssues( self ): + self.assertListKeyEqual( self.repo.get_issues(), lambda i: i.id, [ 4769659, 4639931, 4452000, 4356743, 3716033, 3715946, 3643837, 3628022, 3624595, 3624570, 3624561, 3624556, 3619973, 3527266, 3527245, 3527231 ] ) + + def testGetKeys( self ): + self.assertListKeyEqual( self.repo.get_keys(), lambda k: k.title, [ "Key added through PyGithub" ] ) + + def testGetLabels( self ): + self.assertListKeyEqual( self.repo.get_labels(), lambda l: l.name, [ "Refactoring", "Public interface", "Functionalities", "Project management", "Bug", "Question" ] ) + + def testGetLanguages( self ): + ### @todo Structure ? + self.assertEqual( self.repo.get_languages(), { "Python": 127266, "Shell": 673} ) + + def testGetMilestones( self ): + self.assertListKeyEqual( self.repo.get_milestones(), lambda m: m.id, [ 93547 ] ) + + def testGetIssuesEvents( self ): + self.assertListKeyBegin( self.repo.get_issues_events(), lambda e: e.event, [ "assigned", "subscribed", "closed", "assigned", "closed" ] ) + + def testGetNetworkEvents( self ): + self.assertListKeyBegin( self.repo.get_network_events(), lambda e: e.type, [ "DownloadEvent", "DownloadEvent", "PushEvent", "IssuesEvent", "MemberEvent" ] ) + + def testGetTeams( self ): + repo = self.g.get_organization( "BeaverSoftware" ).get_repo( "FatherBeaver" ) + self.assertListKeyEqual( repo.get_teams(), lambda t: t.name, [ "Members" ] ) + + def testGetWatchers( self ): + self.assertListKeyEqual( self.repo.get_watchers(), lambda u: u.login, [ "Stals", "att14", "jardon-u", "huxley", "mikofski", "L42y", "fanzeyi", "abersager", "waylan", "adericbourg", "tallforasmurf", "pvicente", "roskakori", "michaelpedersen", "BeaverSoftware" ] ) + + # def testGet( self ): + # self.assertListKeyEqual( self.repo.get_(), lambda : ., [] ) + + # def testGet( self ): + # self.assertListKeyEqual( self.repo.get_(), lambda : ., [] ) + + # def testGet( self ): + # self.assertListKeyEqual( self.repo.get_(), lambda : ., [] ) + + # def testGet( self ): + # self.assertListKeyEqual( self.repo.get_(), lambda : ., [] ) + + # def testGet( self ): + # self.assertListKeyEqual( self.repo.get_(), lambda : ., [] )