Merge branch 'topic/ConnectToGithubEnterprise' into develop

This commit is contained in:
Vincent Jacques
2012-08-04 07:50:53 +02:00
262 changed files with 716 additions and 600 deletions
+6 -1
View File
@@ -17,7 +17,7 @@ You can also clone it on [Github](http://github.com/jacquev6/PyGithub).
Tutorial
========
First create a Gihub instance:
First create a Gihtub instance:
from github import Github
@@ -53,6 +53,11 @@ Projects using PyGithub
History
=======
[Version 1.4](https://github.com/jacquev6/PyGithub/issues?milestone=8&state=closed) (July 29th, 2012)
-----------------------------------------------------------------------------------------------------
* Allow connection to a custom Github URL, for Github Enterprise, thank you very much [engie](https://github.com/engie) for the merge request
[Version 1.3](https://github.com/jacquev6/PyGithub/issues?milestone=7&state=closed) (July 13th, 2012)
-----------------------------------------------------------------------------------------------------
+2
View File
@@ -17,6 +17,8 @@ Constructed from user's login and password or OAuth token or nothing:
g = Github( token )
g = Github()
You can add an argument `base_url = "http://my.enterprise.com:8080/path/to/github"` to connect to a local install of Github (ie. Github Enterprise).
Attributes
----------
* `rate_limiting`: tuple of two integers: remaining and limit, as explained in [Rate Limiting](http://developer.github.com/v3/#rate-limiting)
+30 -30
View File
@@ -159,7 +159,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters = emails
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/user/emails",
"/user/emails",
None,
post_parameters
)
@@ -168,7 +168,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( following, NamedUser.NamedUser ), following
headers, data = self._requester.requestAndCheck(
"PUT",
"https://api.github.com/user/following/" + following._identity,
"/user/following/" + following._identity,
None,
None
)
@@ -177,7 +177,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( watched, Repository.Repository ), watched
headers, data = self._requester.requestAndCheck(
"PUT",
"https://api.github.com/user/watched/" + watched._identity,
"/user/watched/" + watched._identity,
None,
None
)
@@ -195,7 +195,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters[ "note_url" ] = note_url
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/authorizations",
"/authorizations",
None,
post_parameters
)
@@ -205,7 +205,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( repo, Repository.Repository ), repo
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/repos/" + repo.owner.login + "/" + repo.name + "/forks",
"/repos/" + repo.owner.login + "/" + repo.name + "/forks",
None,
None
)
@@ -223,7 +223,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters[ "description" ] = description
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/gists",
"/gists",
None,
post_parameters
)
@@ -238,7 +238,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
}
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/user/keys",
"/user/keys",
None,
post_parameters
)
@@ -269,7 +269,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters[ "has_downloads" ] = has_downloads
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/user/repos",
"/user/repos",
None,
post_parameters
)
@@ -300,7 +300,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters[ "bio" ] = bio
headers, data = self._requester.requestAndCheck(
"PATCH",
"https://api.github.com/user",
"/user",
None,
post_parameters
)
@@ -310,7 +310,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( id, int ), id
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/authorizations/" + str( id ),
"/authorizations/" + str( id ),
None,
None
)
@@ -319,7 +319,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_authorizations( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/authorizations",
"/authorizations",
None,
None
)
@@ -333,7 +333,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_emails( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/emails",
"/user/emails",
None,
None
)
@@ -342,7 +342,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_events( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/events",
"/events",
None,
None
)
@@ -356,7 +356,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_followers( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/followers",
"/user/followers",
None,
None
)
@@ -370,7 +370,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_following( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/following",
"/user/following",
None,
None
)
@@ -384,7 +384,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_gists( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/gists",
"/gists",
None,
None
)
@@ -398,7 +398,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_issues( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/issues",
"/issues",
None,
None
)
@@ -413,7 +413,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( id, int ), id
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/keys/" + str( id ),
"/user/keys/" + str( id ),
None,
None
)
@@ -422,7 +422,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_keys( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/keys",
"/user/keys",
None,
None
)
@@ -437,7 +437,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( org, Organization.Organization ), org
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/users/" + self.login + "/events/orgs/" + org.login,
"/users/" + self.login + "/events/orgs/" + org.login,
None,
None
)
@@ -451,7 +451,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_orgs( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/orgs",
"/user/orgs",
None,
None
)
@@ -466,7 +466,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( name, ( str, unicode ) ), name
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/repos/" + self.login + "/" + name,
"/repos/" + self.login + "/" + name,
None,
None
)
@@ -485,7 +485,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
url_parameters[ "direction" ] = direction
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/repos",
"/user/repos",
url_parameters,
None
)
@@ -499,7 +499,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_starred_gists( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/gists/starred",
"/gists/starred",
None,
None
)
@@ -513,7 +513,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
def get_watched( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/user/watched",
"/user/watched",
None,
None
)
@@ -528,7 +528,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( following, NamedUser.NamedUser ), following
status, headers, data = self._requester.requestRaw(
"GET",
"https://api.github.com/user/following/" + following._identity,
"/user/following/" + following._identity,
None,
None
)
@@ -538,7 +538,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( watched, Repository.Repository ), watched
status, headers, data = self._requester.requestRaw(
"GET",
"https://api.github.com/user/watched/" + watched._identity,
"/user/watched/" + watched._identity,
None,
None
)
@@ -549,7 +549,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
post_parameters = emails
headers, data = self._requester.requestAndCheck(
"DELETE",
"https://api.github.com/user/emails",
"/user/emails",
None,
post_parameters
)
@@ -558,7 +558,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( following, NamedUser.NamedUser ), following
headers, data = self._requester.requestAndCheck(
"DELETE",
"https://api.github.com/user/following/" + following._identity,
"/user/following/" + following._identity,
None,
None
)
@@ -567,7 +567,7 @@ class AuthenticatedUser( GithubObject.GithubObject ):
assert isinstance( watched, Repository.Repository ), watched
headers, data = self._requester.requestAndCheck(
"DELETE",
"https://api.github.com/user/watched/" + watched._identity,
"/user/watched/" + watched._identity,
None,
None
)
+1 -1
View File
@@ -150,7 +150,7 @@ class Gist( GithubObject.GithubObject ):
assert isinstance( id, int ), id
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/gists/comments/" + str( id ),
"/gists/comments/" + str( id ),
None,
None
)
+13 -11
View File
@@ -23,9 +23,11 @@ import Repository
import Legacy
import GithubObject
DEFAULT_BASE_URL = "https://api.github.com"
class Github( object ):
def __init__( self, login_or_token = None, password = None ):
self.__requester = Requester( login_or_token, password )
def __init__( self, login_or_token = None, password = None, base_url = DEFAULT_BASE_URL ):
self.__requester = Requester( login_or_token, password, base_url )
@property
def rate_limiting( self ):
@@ -34,11 +36,11 @@ class Github( object ):
def get_user( self, login = GithubObject.NotSet ):
assert login is GithubObject.NotSet or isinstance( login, ( str, unicode ) ), login
if login is GithubObject.NotSet:
return AuthenticatedUser.AuthenticatedUser( self.__requester, { "url": "https://api.github.com/user" }, completed = False )
return AuthenticatedUser.AuthenticatedUser( self.__requester, { "url": "/user" }, completed = False )
else:
headers, data = self.__requester.requestAndCheck(
"GET",
"https://api.github.com/users/" + login,
"/users/" + login,
None,
None
)
@@ -48,7 +50,7 @@ class Github( object ):
assert isinstance( login, ( str, unicode ) ), login
headers, data = self.__requester.requestAndCheck(
"GET",
"https://api.github.com/orgs/" + login,
"/orgs/" + login,
None,
None
)
@@ -58,14 +60,14 @@ class Github( object ):
assert isinstance( id, ( str, unicode ) ), id
headers, data = self.__requester.requestAndCheck(
"GET",
"https://api.github.com/gists/" + id,
"/gists/" + id,
None,
None
)
return Gist.Gist( self.__requester, data, completed = True )
def get_gists( self ):
headers, data = self.__requester.requestAndCheck( "GET", "https://api.github.com/gists/public", None, None )
headers, data = self.__requester.requestAndCheck( "GET", "/gists/public", None, None )
return PaginatedList.PaginatedList(
Gist.Gist,
self.__requester,
@@ -78,7 +80,7 @@ class Github( object ):
assert language is GithubObject.NotSet or isinstance( language, ( str, unicode ) ), language
args = {} if language is GithubObject.NotSet else { "language": language }
return Legacy.PaginatedList(
"https://api.github.com/legacy/repos/search/" + urllib.quote( keyword ),
"/legacy/repos/search/" + urllib.quote( keyword ),
args,
self.__requester,
"repositories",
@@ -89,7 +91,7 @@ class Github( object ):
def legacy_search_users( self, keyword ):
assert isinstance( keyword, ( str, unicode ) ), keyword
return Legacy.PaginatedList(
"https://api.github.com/legacy/user/search/" + urllib.quote( keyword ),
"/legacy/user/search/" + urllib.quote( keyword ),
{},
self.__requester,
"users",
@@ -101,7 +103,7 @@ class Github( object ):
assert isinstance( email, ( str, unicode ) ), email
headers, data = self.__requester.requestAndCheck(
"GET",
"https://api.github.com/legacy/user/email/" + email,
"/legacy/user/email/" + email,
None,
None
)
@@ -118,7 +120,7 @@ class Github( object ):
post_parameters[ "context" ] = context._identity
status, headers, data = self.__requester.requestRaw(
"POST",
"https://api.github.com/markdown",
"/markdown",
None,
post_parameters
)
+3 -3
View File
@@ -49,7 +49,7 @@ def convertUser( attributes ):
login = attributes[ "login" ]
return {
"login": login,
"url": "https://api.github.com/users/" + login,
"url": "/users/" + login,
}
def convertRepo( attributes ):
@@ -58,7 +58,7 @@ def convertRepo( attributes ):
return {
"owner": { "login": owner },
"name": name,
"url": "https://api.github.com/repos/" + owner + "/" + name,
"url": "/repos/" + owner + "/" + name,
}
def convertIssue( attributes ):
@@ -66,7 +66,7 @@ def convertIssue( attributes ):
title = attributes[ "title" ]
html_url = attributes[ "html_url" ]
assert html_url.startswith( "https://github.com/" )
url = html_url.replace( "https://github.com/", "https://api.github.com/repos/" )
url = html_url.replace( "https://github.com/", "/repos/" )
return {
"title": title,
"number": number,
+1 -1
View File
@@ -290,7 +290,7 @@ class NamedUser( GithubObject.GithubObject ):
assert isinstance( name, ( str, unicode ) ), name
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/repos/" + self.login + "/" + name,
"/repos/" + self.login + "/" + name,
None,
None
)
+3 -3
View File
@@ -160,7 +160,7 @@ class Organization( GithubObject.GithubObject ):
}
headers, data = self._requester.requestAndCheck(
"POST",
"https://api.github.com/repos/" + repo.owner.login + "/" + repo.name + "/forks",
"/repos/" + repo.owner.login + "/" + repo.name + "/forks",
url_parameters,
None
)
@@ -293,7 +293,7 @@ class Organization( GithubObject.GithubObject ):
assert isinstance( name, ( str, unicode ) ), name
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/repos/" + self.login + "/" + name,
"/repos/" + self.login + "/" + name,
None,
None
)
@@ -321,7 +321,7 @@ class Organization( GithubObject.GithubObject ):
assert isinstance( id, int ), id
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/teams/" + str( id ),
"/teams/" + str( id ),
None,
None
)
+2 -2
View File
@@ -903,7 +903,7 @@ class Repository( GithubObject.GithubObject ):
def get_network_events( self ):
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/networks/" + self.owner.login + "/" + self.name + "/events",
"/networks/" + self.owner.login + "/" + self.name + "/events",
None,
None
)
@@ -1008,7 +1008,7 @@ class Repository( GithubObject.GithubObject ):
assert isinstance( keyword, ( str, unicode ) ), keyword
headers, data = self._requester.requestAndCheck(
"GET",
"https://api.github.com/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + urllib.quote( keyword ),
"/legacy/issues/search/" + self.owner.login + "/" + self.name + "/" + state + "/" + urllib.quote( keyword ),
{},
None
)
+28 -7
View File
@@ -14,6 +14,7 @@
import httplib
import base64
import urllib
import urlparse
try:
import json
@@ -23,7 +24,7 @@ except ImportError: #pragma no cover: only for Python 2.5
import GithubException
class Requester:
def __init__( self, login_or_token, password ):
def __init__( self, login_or_token, password, base_url ):
if password is not None:
login = login_or_token
self.__authorizationHeader = "Basic " + base64.b64encode( login + ":" + password ).replace( '\n', '' )
@@ -32,6 +33,19 @@ class Requester:
self.__authorizationHeader = "token " + token
else:
self.__authorizationHeader = None
self.__base_url = base_url
o = urlparse.urlparse( base_url )
self.__hostname = o.hostname
self.__port = o.port
self.__prefix = o.path
if o.scheme == "https":
self.__connection_class = httplib.HTTPSConnection
elif o.scheme == "http":
self.__connection_class = httplib.HTTPConnection
else:
assert( False ) #pragma no cover
self.rate_limiting = ( 5000, 5000 )
def requestAndCheck( self, verb, url, parameters, input ):
@@ -43,14 +57,21 @@ class Requester:
def requestRaw( self, verb, url, parameters, input ):
assert verb in [ "HEAD", "GET", "POST", "PATCH", "PUT", "DELETE" ]
assert url.startswith( "https://api.github.com" )
url = url[ len( "https://api.github.com" ) : ]
#URLs generated locally will be relative to __base_url
#URLs returned from the server will start with __base_url
if url.startswith( self.__base_url ):
url = url[ len(self.__base_url): ]
elif url.startswith( "/" ):
url = url
else:
assert( False ) #pragma no cover
headers = dict()
if self.__authorizationHeader is not None:
headers[ "Authorization" ] = self.__authorizationHeader
cnx = httplib.HTTPSConnection( "api.github.com", strict = True )
cnx = self.__connection_class( host = self.__hostname, port = self.__port, strict = True )
cnx.request(
verb,
self.__completeUrl( url, parameters ),
@@ -73,9 +94,9 @@ class Requester:
def __completeUrl( self, url, parameters ):
if parameters is None or len( parameters ) == 0:
return url
return self.__prefix + url
else:
return url + "?" + urllib.urlencode( parameters )
return self.__prefix + url + "?" + urllib.urlencode( parameters )
def __structuredFromJson( self, data ):
if len( data ) == 0:
+3 -3
View File
@@ -7,9 +7,9 @@ cd test
coverage erase
coverage run --branch IntegrationTest.py
echo "=============="
echo "|| Coverage ||"
echo "=============="
echo "=============================="
echo "|| Coverage (shall be 100%) ||"
echo "=============================="
coverage report -m --include=../github/*
+36
View File
@@ -0,0 +1,36 @@
# Copyright 2012 Vincent Jacques
# vincent@vincent-jacques.net
# This file is part of PyGithub. http://vincent-jacques.net/PyGithub
# PyGithub is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License
# as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see <http://www.gnu.org/licenses/>.
import github
import Framework
# Replay data for this test case is forged, because I don't have access to a real Github Enterprise install
class Enterprise( Framework.BasicTestCase ):
def testHttps( self ):
g = github.Github( self.login, self.password, base_url = "https://my.enterprise.com" )
self.assertListKeyEqual( g.get_user().get_repos(), lambda r: r.name, [ "TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE" ] )
def testHttp( self ):
g = github.Github( self.login, self.password, base_url = "http://my.enterprise.com" )
self.assertListKeyEqual( g.get_user().get_repos(), lambda r: r.name, [ "TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE" ] )
def testLongUrl( self ):
g = github.Github( self.login, self.password, base_url = "http://my.enterprise.com/path/to/github" )
repos = g.get_user().get_repos()
self.assertListKeyEqual( repos, lambda r: r.name, [ "TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE" ] )
self.assertEqual( repos[ 0 ].owner.name, "Vincent Jacques" )
def testSpecificPort( self ):
g = github.Github( self.login, self.password, base_url = "http://my.enterprise.com:8080" )
self.assertListKeyEqual( g.get_user().get_repos(), lambda r: r.name, [ "TestPyGithub", "django", "PyGithub", "developer.github.com", "acme-public-website", "C4Planner", "Hacking", "vincent-jacques.net", "Contests", "Candidates", "Tests", "DrawTurksHead", "DrawSyntax", "QuadProgMm", "Boost.HierarchicalEnum", "ViDE" ] )
+34 -10
View File
@@ -42,18 +42,19 @@ def fixAuthorizationHeader( headers ):
else:
del headers[ "Authorization" ] # Do not let sensitive info in git :-p
class RecordingHttpsConnection:
__realHttpsConnection = httplib.HTTPSConnection
def __init__( self, file, *args, **kwds ):
class RecordingConnection:
def __init__( self, file, protocol, host, port, *args, **kwds ):
self.__file = file
self.__cnx = self.__realHttpsConnection( *args, **kwds )
self.__protocol = protocol
self.__host = host
self.__port = str( port )
self.__cnx = self._realConnection( host, port, *args, **kwds )
def request( self, verb, url, input, headers ):
print verb, url, input, headers,
self.__cnx.request( verb, url, input, headers )
fixAuthorizationHeader( headers )
self.__file.write( verb + " " + url + " " + str( headers ) + " " + input + "\n" )
self.__file.write( self.__protocol + " " + verb + " " + self.__host + " " + self.__port + " " + url + " " + str( headers ) + " " + input + "\n" )
def getresponse( self ):
res = self.__cnx.getresponse()
@@ -73,15 +74,30 @@ class RecordingHttpsConnection:
self.__file.write( "\n" )
return self.__cnx.close()
class ReplayingHttpsConnection:
def __init__( self, testCase, file ):
class RecordingHttpConnection( RecordingConnection ):
_realConnection = httplib.HTTPConnection
def __init__( self, file, host, port, *args, **kwds ):
RecordingConnection.__init__( self, file, "http", host, port, *args, **kwds )
class RecordingHttpsConnection( RecordingConnection ):
_realConnection = httplib.HTTPSConnection
def __init__( self, file, host, port, *args, **kwds ):
RecordingConnection.__init__( self, file, "https", host, port, *args, **kwds )
class ReplayingConnection:
def __init__( self, testCase, file, protocol, host, port, *args, **kwds ):
self.__testCase = testCase
self.__file = file
self.__protocol = protocol
self.__host = host
self.__port = str( port )
def request( self, verb, url, input, headers ):
fixAuthorizationHeader( headers )
expectation = self.__file.readline().strip()
self.__testCase.assertEqual( verb + " " + url + " " + str( headers ) + " " + input, expectation )
self.__testCase.assertEqual( self.__protocol + " " + verb + " " + self.__host + " " + self.__port + " " + url + " " + str( headers ) + " " + input, expectation )
def getresponse( self ):
status = int( self.__file.readline().strip() )
@@ -93,6 +109,12 @@ class ReplayingHttpsConnection:
def close( self ):
self.__file.readline()
def ReplayingHttpConnection( testCase, file, *args, **kwds ):
return ReplayingConnection( testCase, file, "http", *args, **kwds )
def ReplayingHttpsConnection( testCase, file, *args, **kwds ):
return ReplayingConnection( testCase, file, "https", *args, **kwds )
class BasicTestCase( unittest.TestCase ):
recordMode = False
@@ -102,12 +124,14 @@ class BasicTestCase( unittest.TestCase ):
self.__file = None
if self.recordMode:
httplib.HTTPSConnection = lambda *args, **kwds: RecordingHttpsConnection( self.__openFile( "wb" ), *args, **kwds )
httplib.HTTPConnection = lambda *args, **kwds: RecordingHttpConnection( self.__openFile( "wb" ), *args, **kwds )
import GithubCredentials
self.login = GithubCredentials.login
self.password = GithubCredentials.password
self.oauth_token = GithubCredentials.oauth_token
else:
httplib.HTTPSConnection = lambda *args, **kwds: ReplayingHttpsConnection( self, self.__openFile( "r" ) )
httplib.HTTPSConnection = lambda *args, **kwds: ReplayingHttpsConnection( self, self.__openFile( "r" ), *args, **kwds )
httplib.HTTPConnection = lambda *args, **kwds: ReplayingHttpConnection( self, self.__openFile( "r" ), *args, **kwds )
self.login = "login"
self.password = "password"
self.oauth_token = "oauth_token"
+1
View File
@@ -55,5 +55,6 @@ from Issue33 import *
from Issue50 import *
from Issue54 import *
from Exceptions import *
from Enterprise import *
Framework.main()
@@ -1,4 +1,4 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"79f748546e5fc4492505a70de6542183"'), ('date', 'Tue, 08 May 2012 09:51:20 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"public_repos":10,"type":"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","followers":13,"bio":"","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","disk_usage":16692,"plan":{"private_repos":5,"space":614400,"name":"micro","collaborators":1},"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","login":"jacquev6","email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","total_private_repos":5,"public_gists":1,"following":24,"name":"Vincent Jacques","id":327146,"owned_private_repos":5,"private_gists":5,"collaborators":0,"hireable":false}
@@ -1,4 +1,4 @@
POST /authorizations {'Authorization': 'Basic login_and_password_removed'} {"note": "Note created by PyGithub", "scopes": ["repo"], "note_url": "http://vincent-jacques.net/PyGithub"}
https POST api.github.com None /authorizations {'Authorization': 'Basic login_and_password_removed'} {"note": "Note created by PyGithub", "scopes": ["repo"], "note_url": "http://vincent-jacques.net/PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4991'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"41f3600b4ddb741cd59a00a88321af92"'), ('date', 'Tue, 22 May 2012 18:27:36 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/authorizations/372294')]
{"scopes":["repo"],"updated_at":"2012-05-22T18:27:36Z","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"url":"https://api.github.com/authorizations/372294","token":"b7fd2a0346d9d590b1fad5e10971e8d29637a4ce","note":"Note created by PyGithub","note_url":"http://vincent-jacques.net/PyGithub","created_at":"2012-05-22T18:27:36Z","id":372294}
@@ -1,4 +1,4 @@
POST /authorizations {'Authorization': 'Basic login_and_password_removed'} {}
https POST api.github.com None /authorizations {'Authorization': 'Basic login_and_password_removed'} {}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4987'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4a48781fcd24441dade6248aab748487"'), ('date', 'Tue, 22 May 2012 18:03:17 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/authorizations/372259')]
{"scopes":[],"updated_at":"2012-05-22T18:03:17Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","note_url":null,"id":372259}
@@ -1,14 +1,14 @@
GET /users/nvie {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /users/nvie {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '598'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"75740284d989e9a492e32f435cff48ac"'), ('date', 'Sat, 26 May 2012 20:23:33 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","public_gists":19,"url":"https://api.github.com/users/nvie","hireable":false,"bio":null,"company":"3rd Cloud","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","blog":"http://nvie.com","email":"vincent@3rdcloud.com","public_repos":62,"followers":299,"name":"Vincent Driessen","created_at":"2009-05-12T21:19:38Z","location":"Netherlands","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":83844,"following":41,"html_url":"https://github.com/nvie"}
GET /repos/nvie/gitflow {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/nvie/gitflow {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4959'), ('content-length', '1182'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b96ea8f5f6ac24b533e2a5dc5ea2479d"'), ('date', 'Sat, 26 May 2012 20:23:34 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","full_name":"nvie/gitflow","has_wiki":true,"has_issues":true,"updated_at":"2012-05-26T19:46:41Z","forks":330,"mirror_url":null,"homepage":"http://nvie.com/posts/a-successful-git-branching-model/","ssh_url":"git@github.com:nvie/gitflow.git","open_issues":92,"fork":false,"svn_url":"https://github.com/nvie/gitflow","pushed_at":"2012-02-14T13:11:04Z","size":4602,"html_url":"https://github.com/nvie/gitflow","private":false,"url":"https://api.github.com/repos/nvie/gitflow","clone_url":"https://github.com/nvie/gitflow.git","owner":{"gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/nvie","login":"nvie","id":83844},"name":"gitflow","has_downloads":true,"language":"Shell","watchers":3973,"git_url":"git://github.com/nvie/gitflow.git","id":481366,"permissions":{"admin":false,"pull":true,"push":false},"master_branch":"develop","created_at":"2010-01-20T23:14:12Z"}
POST /repos/nvie/gitflow/forks {'Authorization': 'Basic login_and_password_removed'} null
https POST api.github.com None /repos/nvie/gitflow/forks {'Authorization': 'Basic login_and_password_removed'} null
202
[('status', '202 Accepted'), ('x-ratelimit-remaining', '4958'), ('content-length', '3486'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"92f5b171559bccda47d7ebb598ba4f73"'), ('date', 'Sat, 26 May 2012 20:23:35 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"parent":{"clone_url":"https://github.com/nvie/gitflow.git","has_downloads":true,"watchers":3973,"updated_at":"2012-05-26T20:23:35Z","master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/nvie/gitflow","has_wiki":true,"has_issues":true,"fork":false,"forks":331,"size":4602,"private":false,"open_issues":92,"svn_url":"https://github.com/nvie/gitflow","owner":{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2010-01-20T23:14:12Z","id":481366,"mirror_url":null,"html_url":"https://github.com/nvie/gitflow","full_name":"nvie/gitflow"},"clone_url":"https://github.com/jacquev6/gitflow.git","has_downloads":true,"watchers":1,"updated_at":"2012-05-26T20:23:35Z","source":{"clone_url":"https://github.com/nvie/gitflow.git","has_downloads":true,"watchers":3973,"updated_at":"2012-05-26T20:23:35Z","master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/nvie/gitflow","has_wiki":true,"has_issues":true,"fork":false,"forks":331,"size":4602,"private":false,"open_issues":92,"svn_url":"https://github.com/nvie/gitflow","owner":{"url":"https://api.github.com/users/nvie","avatar_url":"https://secure.gravatar.com/avatar/c5a7f21b46df698f3db31c37ed0cf55a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"c5a7f21b46df698f3db31c37ed0cf55a","login":"nvie","id":83844},"name":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:nvie/gitflow.git","git_url":"git://github.com/nvie/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2010-01-20T23:14:12Z","id":481366,"mirror_url":null,"html_url":"https://github.com/nvie/gitflow","full_name":"nvie/gitflow"},"permissions":{"pull":true,"admin":true,"push":true},"master_branch":"develop","homepage":"http://nvie.com/posts/a-successful-git-branching-model/","url":"https://api.github.com/repos/jacquev6/gitflow","has_wiki":true,"has_issues":false,"fork":true,"forks":0,"size":4602,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/gitflow","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":"gitflow","language":"Shell","description":"Git extensions to provide high-level repository operations for Vincent Driessen's branching model.","ssh_url":"git@github.com:jacquev6/gitflow.git","git_url":"git://github.com/jacquev6/gitflow.git","pushed_at":"2012-02-14T13:11:04Z","created_at":"2012-05-26T20:23:35Z","id":4457584,"mirror_url":null,"html_url":"https://github.com/jacquev6/gitflow","full_name":"jacquev6/gitflow"}
@@ -1,4 +1,4 @@
POST /gists {'Authorization': 'Basic login_and_password_removed'} {"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true, "description": "Gist created by PyGithub"}
https POST api.github.com None /gists {'Authorization': 'Basic login_and_password_removed'} {"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true, "description": "Gist created by PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4967'), ('content-length', '1446'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4099af9b70c91fb9c1c8dc72bf773c33"'), ('date', 'Sat, 19 May 2012 07:00:58 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2729810')]
{"updated_at":"2012-05-19T07:00:58Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","git_push_url":"git@gist.github.com:2729810.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","user":{"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},"description":"Gist created by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"change_status":{"deletions":0,"additions":1,"total":1},"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","committed_at":"2012-05-19T07:00:58Z","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","user":{"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}}]}
@@ -1,4 +1,4 @@
POST /gists {'Authorization': 'Basic login_and_password_removed'} {"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true}
https POST api.github.com None /gists {'Authorization': 'Basic login_and_password_removed'} {"files": {"foobar.txt": {"content": "File created by PyGithub"}}, "public": true}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4981'), ('content-length', '1424'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7abbb6858d17ad64e3d5874676725694"'), ('date', 'Sat, 26 May 2012 09:50:03 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2793179')]
{"updated_at":"2012-05-26T09:50:02Z","url":"https://api.github.com/gists/2793179","comments":0,"public":true,"forks":[],"git_pull_url":"git://gist.github.com/2793179.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793179/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"user":{"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"},"description":null,"created_at":"2012-05-26T09:50:02Z","git_push_url":"git@gist.github.com:2793179.git","id":"2793179","history":[{"url":"https://api.github.com/gists/2793179/069e7c0041c34619b5aebf0e918536cb3bfeff9a","change_status":{"deletions":0,"additions":1,"total":1},"version":"069e7c0041c34619b5aebf0e918536cb3bfeff9a","committed_at":"2012-05-26T09:50:03Z","user":{"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"}}],"html_url":"https://gist.github.com/2793179"}
@@ -1,4 +1,4 @@
POST /user/keys {'Authorization': 'Basic login_and_password_removed'} {"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE", "title": "Key added through PyGithub"}
https POST api.github.com None /user/keys {'Authorization': 'Basic login_and_password_removed'} {"key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw== vincent@IDEE", "title": "Key added through PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4984'), ('content-length', '505'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7261ec55c886d6bf42e48d5bf9544586"'), ('date', 'Sat, 26 May 2012 19:49:30 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/user/keys/2626650')]
{"url":"https://api.github.com/user/keys/2626650","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA2Mm0RjTNAYFfSCtUpO54usdseroUSIYg5KX4JoseTpqyiB/hqewjYLAdUq/tNIQzrkoEJWSyZrQt0ma7/YCyMYuNGd3DU6q6ZAyBeY3E9RyCiKjO3aTL2VKQGFvBVVmGdxGVSCITRphAcsKc/PF35/fg9XP9S0anMXcEFtdfMHz41SSw+XtE+Vc+6cX9FuI5qUfLGbkv8L1v3g4uw9VXlzq4GfTA+1S7D6mcoGHopAIXFlVr+2RfDKdSURMcB22z41fljO1MW4+zUS/4FyUTpL991es5fcwKXYoiE+x06VJeJJ1Krwx+DZj45uweV6cHXt2JwJEI9fWB6WyBlDejWw==","verified":true,"title":"Key added through PyGithub","id":2626650}
@@ -1,4 +1,4 @@
POST /user/repos {'Authorization': 'Basic login_and_password_removed'} {"name": "TestPyGithub"}
https POST api.github.com None /user/repos {'Authorization': 'Basic login_and_password_removed'} {"name": "TestPyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4996'), ('content-length', '1035'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0dee1203022ede8b8374b387ba479ffd"'), ('date', 'Thu, 10 May 2012 19:17:12 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/TestPyGithub')]
{"mirror_url":null,"homepage":null,"clone_url":"https://github.com/jacquev6/TestPyGithub.git","html_url":"https://github.com/jacquev6/TestPyGithub","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_downloads":true,"watchers":1,"git_url":"git://github.com/jacquev6/TestPyGithub.git","permissions":{"admin":true,"pull":true,"push":true},"has_wiki":true,"has_issues":true,"fork":false,"forks":1,"language":null,"size":0,"description":null,"private":false,"created_at":"2012-05-10T19:17:12Z","open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","owner":{"url":"https://api.github.com/users/jacquev6","login":"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","id":327146},"name":"TestPyGithub","pushed_at":"2012-05-10T19:17:12Z","id":4288693,"ssh_url":"git@github.com:jacquev6/TestPyGithub.git","updated_at":"2012-05-10T19:17:12Z"}
@@ -1,4 +1,4 @@
POST /user/repos {'Authorization': 'Basic login_and_password_removed'} {"has_wiki": false, "name": "TestPyGithub", "has_downloads": false, "private": false, "has_issues": false, "homepage": "http://foobar.com", "description": "Repo created by PyGithub"}
https POST api.github.com None /user/repos {'Authorization': 'Basic login_and_password_removed'} {"has_wiki": false, "name": "TestPyGithub", "has_downloads": false, "private": false, "has_issues": false, "homepage": "http://foobar.com", "description": "Repo created by PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4979'), ('content-length', '1111'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1c6473a60481c33b28a926041f763fce"'), ('date', 'Sat, 26 May 2012 09:55:27 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/TestPyGithub')]
{"clone_url":"https://github.com/jacquev6/TestPyGithub.git","has_downloads":false,"watchers":1,"git_url":"git://github.com/jacquev6/TestPyGithub.git","updated_at":"2012-05-26T09:55:27Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://foobar.com","url":"https://api.github.com/repos/jacquev6/TestPyGithub","has_wiki":false,"has_issues":false,"fork":false,"forks":1,"mirror_url":null,"size":0,"private":false,"open_issues":0,"svn_url":"https://github.com/jacquev6/TestPyGithub","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":"TestPyGithub","language":null,"description":"Repo created by PyGithub","ssh_url":"git@github.com:jacquev6/TestPyGithub.git","pushed_at":"2012-05-26T09:55:27Z","created_at":"2012-05-26T09:55:27Z","id":4454027,"html_url":"https://github.com/jacquev6/TestPyGithub","full_name":"jacquev6/TestPyGithub"}
@@ -1,4 +1,4 @@
PATCH /user {'Authorization': 'Basic login_and_password_removed'} {"bio": "Bio edited by PyGithub", "name": "Name edited by PyGithub", "company": "Company edited by PyGithub", "blog": "Blog edited by PyGithub", "location": "Location edited by PyGithub", "hireable": true, "email": "Email edited by PyGithub"}
https PATCH api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} {"bio": "Bio edited by PyGithub", "name": "Name edited by PyGithub", "company": "Company edited by PyGithub", "blog": "Blog edited by PyGithub", "location": "Location edited by PyGithub", "hireable": true, "email": "Email edited by PyGithub"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '858'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4695e7d2dc3084a322fe83f342448a79"'), ('date', 'Tue, 08 May 2012 10:04:55 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"private_gists":5,"type":"User","hireable":true,"following":24,"company":"Company edited by PyGithub","blog":"Blog edited by PyGithub","bio":"Bio edited by PyGithub","html_url":"https://github.com/jacquev6","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,"public_repos":10,"url":"https://api.github.com/users/jacquev6","owned_private_repos":5,"login":"jacquev6","collaborators":0,"email":"Email edited by PyGithub","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","disk_usage":16692,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Name edited by PyGithub","public_gists":1,"followers":13,"id":327146,"location":"Location edited by PyGithub"}
@@ -1,4 +1,4 @@
PATCH /user {'Authorization': 'Basic login_and_password_removed'} {}
https PATCH api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} {}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"811fb4d5df8bae5b1ef7d63537891a1c"'), ('date', 'Tue, 08 May 2012 10:05:35 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"private_gists":5,"collaborators":0,"type":"User","bio":"","url":"https://api.github.com/users/jacquev6","public_repos":10,"followers":13,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"disk_usage":16692,"plan":{"collaborators":1,"space":614400,"name":"micro","private_repos":5},"html_url":"https://github.com/jacquev6","owned_private_repos":5,"login":"jacquev6","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","following":24,"name":"Vincent Jacques","public_gists":1,"hireable":false,"id":327146}
@@ -1,24 +1,24 @@
GET /user/emails {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user/emails {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4934'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:39 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","github.com@vincent-jacques.net"]
POST /user/emails {'Authorization': 'Basic login_and_password_removed'} ["1@foobar.com", "2@foobar.com"]
https POST api.github.com None /user/emails {'Authorization': 'Basic login_and_password_removed'} ["1@foobar.com", "2@foobar.com"]
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4933'), ('content-length', '94'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:40 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"]
GET /user/emails {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user/emails {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('content-length', '94'), ('x-ratelimit-remaining', '4932'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8efae10ea5e433b0d68201389058e4ee"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","1@foobar.com","2@foobar.com","github.com@vincent-jacques.net"]
DELETE /user/emails {'Authorization': 'Basic login_and_password_removed'} ["1@foobar.com", "2@foobar.com"]
https DELETE api.github.com None /user/emails {'Authorization': 'Basic login_and_password_removed'} ["1@foobar.com", "2@foobar.com"]
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4931'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sun, 20 May 2012 12:41:41 GMT')]
GET /user/emails {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user/emails {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4930'), ('content-length', '64'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ea6dacf29569317ccf460b4bb07075e5"'), ('date', 'Sun, 20 May 2012 12:41:42 GMT'), ('content-type', 'application/json; charset=utf-8')]
["vincent@vincent-jacques.net","github.com@vincent-jacques.net"]
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /authorizations {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /authorizations {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '384'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f6052ad2b9941ba0829e326bd76377a3"'), ('date', 'Tue, 22 May 2012 18:31:38 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"scopes":["repo"],"updated_at":"2012-05-22T18:27:36Z","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"url":"https://api.github.com/authorizations/372294","token":"b7fd2a0346d9d590b1fad5e10971e8d29637a4ce","note_url":"http://vincent-jacques.net/PyGithub","note":"Note created by PyGithub","created_at":"2012-05-22T18:27:36Z","id":372294}]
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /gists {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '4507'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"868b9c31808f738e0f03284a2e538a41"'), ('date', 'Sat, 26 May 2012 20:14:40 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"updated_at":"2012-05-26T11:08:22Z","url":"https://api.github.com/gists/2793505","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2793505.git","git_push_url":"git@gist.github.com:2793505.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793505/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","language":"Text"}},"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},"description":null,"created_at":"2012-05-26T11:08:22Z","id":"2793505","html_url":"https://gist.github.com/2793505"},{"updated_at":"2012-05-26T10:09:33Z","url":"https://api.github.com/gists/2793179","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2793179.git","git_push_url":"git@gist.github.com:2793179.git","files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2793179/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","language":"Text"}},"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},"description":"Gist created by PyGithub","created_at":"2012-05-26T09:50:02Z","id":"2793179","html_url":"https://gist.github.com/2793179"},{"updated_at":"2012-04-26T13:20:53Z","url":"https://api.github.com/gists/11cb445f8197e17d303d","comments":0,"public":false,"git_pull_url":"git://gist.github.com/11cb445f8197e17d303d.git","git_push_url":"git@gist.github.com:11cb445f8197e17d303d.git","files":{"FairThreadPoolPool.cpp":{"type":"text/plain","raw_url":"https://gist.github.com/raw/11cb445f8197e17d303d/0f72c6fe50eb011eacb4e39fa613bdfe2f7a0c51/FairThreadPoolPool.cpp","size":7779,"filename":"FairThreadPoolPool.cpp","language":"C++"}},"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},"description":"FairThreadPoolPool.cpp","created_at":"2012-04-26T13:20:53Z","id":"11cb445f8197e17d303d","html_url":"https://gist.github.com/11cb445f8197e17d303d"},{"updated_at":"2012-02-29T16:47:12Z","url":"https://api.github.com/gists/1942384","comments":0,"public":true,"git_pull_url":"git://gist.github.com/1942384.git","git_push_url":"git@gist.github.com:1942384.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/1942384/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","language":"Python"}},"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},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"1942384","html_url":"https://gist.github.com/1942384"},{"updated_at":"2012-02-28T19:44:42Z","url":"https://api.github.com/gists/dcb7de17e8a52b74541d","comments":1,"public":false,"git_pull_url":"git://gist.github.com/dcb7de17e8a52b74541d.git","git_push_url":"git@gist.github.com:dcb7de17e8a52b74541d.git","files":{"cadfael.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/dcb7de17e8a52b74541d/48ca696645682d7430d73180814434e0284796b2/cadfael.txt","size":585,"filename":"cadfael.txt","language":"Text"}},"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},"description":"Cadfael: order of episodes in French DVD edition","created_at":"2012-02-28T19:44:42Z","id":"dcb7de17e8a52b74541d","html_url":"https://gist.github.com/dcb7de17e8a52b74541d"}]
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /user/keys {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user/keys {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4963'), ('content-length', '1968'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"753b62ed1eedc0d39ebd312719104dd1"'), ('date', 'Sat, 26 May 2012 20:18:14 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"url":"https://api.github.com/user/keys/688586","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC262QAZ3rvJ7KySFEHUQYGfntylusL03x/ULKdVaSltc3Z2xvWm4zQSLHrWrdUbRN9z9kMpHWZZ2G+pvUPcY/qijbqtwg9FwBHNZoviq65LujKyQeegFXQKhGGaesDeKKC+jTXbg2NJY6+u5HLe4Je8q45VVHyAfltcuSE2QoCim50toyGUGWhcIDz/2mQYpy1wtkehQA6TeC55UE00TSU06E9glnqVi8hjDlsA7DABqyctG/sjP79OwUMBppiXYX2B0RJMtRHZ+5chsHx8oqavux1oG/tdTw9ZSAfKUHfDrN97x9PB38F3j8s60S2udRwLEYuErlF1JizTF4XOZhD","verified":true,"title":"vincent@home","id":688586},{"url":"https://api.github.com/user/keys/688598","key":"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA3CG7CI2EKMS6xeHgj1lC9tkjDJRotG9ZB7E/YbMy0l15I+ReiM5cQvYhivK2myJh7uiMBPa/VjowhZb7DvitZF8aUa99zHCygKDvN/XBl2nMEY8A01BmG6/JGlP1fgU1HdbULn1E6j0a+mYIFlpDzOFKTJqR25OzngOFC4VYiPVnoyH+uPZWWeOMPgdiJxAEWKs267OjXeikYfYE2xQN9M3a1EHitkwWOeVNKIqDTxoAU8f+Ifl4Cchq4mF56pWETSsj4hQ9YhXtzI8Grun0ZoYZM/cLPLo5rSi++FAJNU2T9yc/0G75DKEYH9UroLSQBua7KF+ixrIEtD6hI4gxDQ==","verified":true,"title":"vincent@gandi","id":688598},{"url":"https://api.github.com/user/keys/2403448","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDK+jbASXi+PhE7GpBuKEH0qC+02J8L20A9CscleT5GUXKpZSbvxmsU0XLz95kYIBVUfrmTdn3PBn6FMK2OTWpxF9gt9DKclidkv2xfA1RkqnNVpMvZbzBMDmJcWo/lae+arQVJ26O1pbZjPH56c0cYvhblsoZnI1kCFatiJ3MOUeD2zCDylsfQ8zgLKA5yj0HRC3n5cPe9nIVWXnJQ1two4GHmxE7zue+hikYB7PQvaldGKTmHX04ODyZpyFOd86cvjiftN3G39POr2vh52jBwj4oLAiF89SC3QxQes8+zF00jOmnFUlONup0nLvJg4t/ij0M2kr5cqca7pMP+QfZp","verified":true,"title":"vincent@aws","id":2403448},{"url":"https://api.github.com/user/keys/2427679","key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNQS4cnMOsGKJXBZ7DQ+6dzAHXwNYjw9W5aoonjr4pK7C9xvRPqA7QyQHub8fiYD6uj7OM8FLQgoMH1ewQULuQdH1JPkzjxPw5UpFn8eQaKOVlBkfGCiNaUOTejt5gxMrNZfPJmh2PnhsU+WXAyNNARor8CDnAmdgzHmaKKtMnRpVUJeIqKmgXhjx9lON5dZFyQGY9KIiR5gA/GWE9dFRHULoc+0gLEAR7AJ3emh55x4pqsURJpc2cdZ/X213l4Qk7HP2s7QIcihlbuxDJG9UTwjWlcIwjlQzarzhiRSyH9F3YmlT3THAdtDYX9imiBpEP52CPYNfDGrzzhbUqYj3r","verified":true,"title":"vincent@macbook","id":2427679}]
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /user/orgs {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user/orgs {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4962'), ('content-length', '262'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1534f44ae64c7b70fb520ea37de4328d"'), ('date', 'Sat, 26 May 2012 20:18:49 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"url":"https://api.github.com/orgs/BeaverSoftware","login":"BeaverSoftware","id":1424031,"avatar_url":"https://secure.gravatar.com/avatar/d563e337cac2fdc644e2aaaad1e23266?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png"}]
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /gists/starred {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/starred {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4965'), ('content-length', '1871'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6fe6eaa71614e18ab69868eb20639534"'), ('date', 'Sat, 26 May 2012 20:15:28 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"git_push_url":"git@gist.github.com:1942384.git","updated_at":"2012-02-29T16:47:12Z","url":"https://api.github.com/gists/1942384","comments":0,"public":true,"files":{"fail_github.py":{"type":"application/python","size":1636,"raw_url":"https://gist.github.com/raw/1942384/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","filename":"fail_github.py","language":"Python"}},"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},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","git_pull_url":"git://gist.github.com/1942384.git","id":"1942384","html_url":"https://gist.github.com/1942384"},{"git_push_url":"git@gist.github.com:dcb7de17e8a52b74541d.git","updated_at":"2012-02-28T19:44:42Z","url":"https://api.github.com/gists/dcb7de17e8a52b74541d","comments":1,"public":false,"files":{"cadfael.txt":{"type":"text/plain","size":585,"raw_url":"https://gist.github.com/raw/dcb7de17e8a52b74541d/48ca696645682d7430d73180814434e0284796b2/cadfael.txt","filename":"cadfael.txt","language":"Text"}},"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},"description":"Cadfael: order of episodes in French DVD edition","created_at":"2012-02-28T19:44:42Z","git_pull_url":"git://gist.github.com/dcb7de17e8a52b74541d.git","id":"dcb7de17e8a52b74541d","html_url":"https://gist.github.com/dcb7de17e8a52b74541d"}]
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /users/jacquev6 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /users/jacquev6 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f1a68180387d296f308d6a01917e1799"'), ('date', 'Sat, 26 May 2012 09:34:28 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","disk_usage":16852,"public_repos":11,"url":"https://api.github.com/users/jacquev6","hireable":false,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"public_gists":1,"bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","private_gists":5,"collaborators":0,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","total_private_repos":5,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","owned_private_repos":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"}
@@ -1,4 +1,4 @@
GET /users/jacquev6 {} null
https GET api.github.com None /users/jacquev6 {} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b81320548394cb55b7e97fb1636d2898"'), ('date', 'Sat, 26 May 2012 09:34:28 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","public_repos":11,"url":"https://api.github.com/users/jacquev6","hireable":false,"public_gists":1,"bio":"","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","blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"}
@@ -1,4 +1,4 @@
GET /users/jacquev6 {'Authorization': 'token private_token_removed'} null
https GET api.github.com None /users/jacquev6 {'Authorization': 'token private_token_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '623'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e3990a84c08ccd728a27dbe549d4f86"'), ('date', 'Sat, 26 May 2012 09:34:29 GMT'), ('x-oauth-scopes', ''), ('content-type', 'application/json; charset=utf-8'), ('x-accepted-oauth-scopes', 'user')]
{"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","followers":13,"html_url":"https://github.com/jacquev6","url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","public_repos":11,"public_gists":1,"email":"vincent@vincent-jacques.net","id":327146,"created_at":"2010-07-09T06:10:06Z"}
+1 -1
View File
@@ -1,4 +1,4 @@
GET /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e15ef91b6fe4705f493fca75475b763b"'), ('date', 'Tue, 22 May 2012 18:03:49 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"scopes":[],"note_url":null,"updated_at":"2012-05-22T18:03:17Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4992'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 18:25:53 GMT')]
+5 -5
View File
@@ -1,24 +1,24 @@
PATCH /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {}
https PATCH api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '328'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"39fec03a7cbd97abde96cccbd1921277"'), ('date', 'Tue, 22 May 2012 18:24:09 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"scopes":[],"updated_at":"2012-05-22T18:24:09Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259}
PATCH /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"scopes": ["user"]}
https PATCH api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"scopes": ["user"]}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4997'), ('content-length', '334'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6476c8dce7e66cb43e71317294fd5b42"'), ('date', 'Tue, 22 May 2012 18:24:09 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"scopes":["user"],"updated_at":"2012-05-22T18:24:09Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259}
PATCH /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"add_scopes": ["repo"]}
https PATCH api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"add_scopes": ["repo"]}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4996'), ('content-length', '341'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"aef23fb8f728fcd7acf751015c21661a"'), ('date', 'Tue, 22 May 2012 18:24:10 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"scopes":["user","repo"],"updated_at":"2012-05-22T18:24:10Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"note_url":null,"created_at":"2012-05-22T18:03:17Z","id":372259}
PATCH /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"remove_scopes": ["repo"]}
https PATCH api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"remove_scopes": ["repo"]}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4995'), ('content-length', '334'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"dff7e491f5d3c779385b9f3a41694a32"'), ('date', 'Tue, 22 May 2012 18:24:11 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"scopes":["user"],"updated_at":"2012-05-22T18:24:11Z","app":{"url":"http://developer.github.com/v3/oauth/#oauth-authorizations-api","name":"GitHub API"},"note_url":null,"url":"https://api.github.com/authorizations/372259","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","note":null,"created_at":"2012-05-22T18:03:17Z","id":372259}
PATCH /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"note": "Note created by PyGithub", "note_url": "http://vincent-jacques.net/PyGithub"}
https PATCH api.github.com None /authorizations/372259 {'Authorization': 'Basic login_and_password_removed'} {"note": "Note created by PyGithub", "note_url": "http://vincent-jacques.net/PyGithub"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '382'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5881b7d6eaa13e3b8539ca6ffc334be1"'), ('date', 'Tue, 22 May 2012 18:24:11 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"note_url":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/authorizations/372259","app":{"url":"http://vincent-jacques.net/PyGithub","name":"Note created by PyGithub (API)"},"scopes":["user"],"note":"Note created by PyGithub","token":"82459c4500086f8f0cc67d2936c17d1e27ad1c33","created_at":"2012-05-22T18:03:17Z","updated_at":"2012-05-22T18:24:11Z","id":372259}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /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
https GET api.github.com None /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
https GET api.github.com None /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"}}]
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /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
https GET api.github.com None /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
https GET api.github.com None /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- # @toto 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 #@toto 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"}]}
+1 -1
View File
@@ -1,4 +1,4 @@
POST /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub"}
https POST api.github.com None /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4982'), ('content-length', '714'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"bd72e3550c9b90814f0be2b54ab2cc8e"'), ('date', 'Tue, 22 May 2012 18:40:18 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1361949')]
{"updated_at":"2012-05-22T18:40:18Z","position":null,"body":"Comment created by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","created_at":"2012-05-22T18:40:18Z","path":null,"line":null,"user":{"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","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1361949,"html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1361949"}
@@ -1,4 +1,4 @@
POST /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "line": 26}
https POST api.github.com None /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "line": 26}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4970'), ('content-length', '764'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d2cb361ce6c53a0fc986e74f8547088f"'), ('date', 'Tue, 22 May 2012 18:49:34 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1362000')]
{"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":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1362000,"html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1362000"}
@@ -1,4 +1,4 @@
POST /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment also created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "position": 3}
https POST api.github.com None /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment also created by PyGithub", "path": "codegen/templates/GithubObject.MethodBody.UseResult.py", "position": 3}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4966'), ('content-length', '768'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b3d062ed01b92c31d072c7177113c0b1"'), ('date', 'Tue, 22 May 2012 18:50:02 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/repos/jacquev6/PyGithub/comments/1362001')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1362001","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","body":"Comment also created by PyGithub","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1362001","created_at":"2012-05-22T18:50:02Z","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","position":3,"updated_at":"2012-05-22T18:50:02Z","id":1362001,"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}}
+1 -1
View File
@@ -1,4 +1,4 @@
GET /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a/comments {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '4322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9000a379c4d5eba3527a002d2bbc2e0c"'), ('date', 'Fri, 18 May 2012 20:12:18 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":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347033","created_at":"2012-05-18T08:46:09Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":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":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347083","created_at":"2012-05-18T08:59:28Z","path":null,"line":null,"user":{"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},"id":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":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1347397","created_at":"2012-05-18T10:54:23Z","path":null,"line":null,"user":{"url":"https://api.github.com/users/bilderbuchi","gravatar_id":"2aed663a62fa8bf9f7aebe603d3998bb","avatar_url":"https://secure.gravatar.com/avatar/2aed663a62fa8bf9f7aebe603d3998bb?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"bilderbuchi","id":327442},"id":1347397},{"updated_at":"2012-05-18T20:11:17Z","position":3,"body":"This comment is here only to test PyGithub...","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1349654","commit_id":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a","html_url":"https://github.com/jacquev6/PyGithub/commit/1292bf0e22c796e91cc3d6e24b544aece8c21f2a#commitcomment-1349654","created_at":"2012-05-18T20:11:17Z","path":"codegen/templates/GithubObject.MethodBody.UseResult.py","line":25,"user":{"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},"id":1349654}]
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /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
https GET api.github.com None /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/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('content-length', '714'), ('x-ratelimit-remaining', '4979'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eebb2ebe0274fc6672c9e7bad74e5f39"'), ('date', 'Tue, 22 May 2012 18:43:13 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","path":null,"body":"Comment created by PyGithub","html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949","created_at":"2012-05-22T18:40:18Z","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","position":null,"updated_at":"2012-05-22T18:40:18Z","id":1361949,"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}}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /repos/jacquev6/PyGithub/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /repos/jacquev6/PyGithub/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4974'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 18:44:06 GMT')]
+1 -1
View File
@@ -1,4 +1,4 @@
PATCH /repos/jacquev6/PyGithub/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment edited by PyGithub"}
https PATCH api.github.com None /repos/jacquev6/PyGithub/comments/1361949 {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment edited by PyGithub"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '713'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"97ffd9ff8370f4f284873a6397d7cafd"'), ('date', 'Tue, 22 May 2012 18:43:17 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-22T18:43:17Z","position":null,"body":"Comment edited by PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub/comments/1361949","commit_id":"6945921c529be14c3a8f566dd1e483674516d46d","created_at":"2012-05-22T18:40:18Z","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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"id":1361949,"html_url":"https://github.com/jacquev6/PyGithub/commit/6945921c529be14c3a8f566dd1e483674516d46d#commitcomment-1361949"}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e1a1f6f825326642be4ed8e6f8427437"'), ('date', 'Tue, 22 May 2012 19:15:57 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","disk_usage":16849,"bio":"","url":"https://api.github.com/users/jacquev6","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"public_repos":11,"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","login":"jacquev6","email":"vincent@vincent-jacques.net","private_gists":5,"collaborators":0,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","html_url":"https://github.com/jacquev6","created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","id":327146,"followers":13,"following":24,"hireable":false}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"c26fc3fce8f52d05f1adf2025bfe34ab"'), ('date', 'Tue, 22 May 2012 19:15:58 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"pushed_at":"2012-05-21T13:48:43Z","updated_at":"2012-05-22T19:15:29Z","homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"pull":true,"admin":true,"push":true},"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"size":181,"private":false,"forks":2,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","language":"Python","description":"Python library implementing the full Github API v3","clone_url":"https://github.com/jacquev6/PyGithub.git","ssh_url":"git@github.com:jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","created_at":"2012-02-25T12:53:47Z","id":3544490,"open_issues":17,"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git"}
GET /repos/jacquev6/PyGithub/downloads/242550 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/downloads/242550 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4960'), ('content-length', '290'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"6d8a8b9509b1686543a96ec3c58b0293"'), ('date', 'Tue, 22 May 2012 19:03:36 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"content_type":"text/plain","download_count":0,"url":"https://api.github.com/repos/jacquev6/PyGithub/downloads/242550","size":1024,"name":"Foobar.txt","created_at":"2012-05-22T18:58:32Z","description":null,"html_url":"https://github.com/downloads/jacquev6/PyGithub/Foobar.txt","id":242550}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /repos/jacquev6/PyGithub/downloads/242550 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /repos/jacquev6/PyGithub/downloads/242550 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4950'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Tue, 22 May 2012 19:16:03 GMT')]
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
401
[('status', '401 Unauthorized'), ('content-length', '29'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"ca6a3702f840b6bff0bb1bca6be0337c"'), ('date', 'Sat, 02 Jun 2012 12:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"message":"Bad credentials"}
@@ -1,4 +1,4 @@
POST /user/keys {'Authorization': 'Basic login_and_password_removed'} {"key": "xxx", "title": "Bad key"}
https POST api.github.com None /user/keys {'Authorization': 'Basic login_and_password_removed'} {"key": "xxx", "title": "Bad key"}
422
[('status', '422 Unprocessable Entity'), ('x-ratelimit-remaining', '4995'), ('content-length', '221'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"73f756ef75655dd74463eb1bf4cfefe1"'), ('date', 'Wed, 30 May 2012 07:00:27 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"message":"Validation Failed","errors":[{"field":"key","resource":"PublicKey","message":"key is invalid. It must begin with 'ssh-rsa' or 'ssh-dss'. Check that you're copying the public half of the key","code":"custom"}]}
@@ -1,9 +1,9 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"0e6c8f1cbb0c4f0eae96d8a76de9a43f"'), ('date', 'Sat, 02 Jun 2012 12:11:46 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","total_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","public_gists":3,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","private_gists":5,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","blog":"http://vincent-jacques.net","location":"Paris, France","url":"https://api.github.com/users/jacquev6","following":24,"disk_usage":16988,"public_repos":10,"name":"Vincent Jacques","hireable":false,"followers":13,"html_url":"https://github.com/jacquev6","id":327146,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"bio":""}
GET /repos/jacquev6/Xxx {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/Xxx {'Authorization': 'Basic login_and_password_removed'} null
404
[('status', '404 Not Found'), ('x-ratelimit-remaining', '4970'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 02 Jun 2012 12:11:47 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"message":"Not Found"}
@@ -1,4 +1,4 @@
GET /users/ThisUserShouldReallyNotExist {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /users/ThisUserShouldReallyNotExist {'Authorization': 'Basic login_and_password_removed'} null
404
[('status', '404 Not Found'), ('x-ratelimit-remaining', '4968'), ('content-length', '23'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e66a7a6c91e2c26803f3f49feb7a883f"'), ('date', 'Sat, 02 Jun 2012 12:24:43 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"message":"Not Found"}
+1 -1
View File
@@ -1,4 +1,4 @@
GET /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"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},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"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}}]}
+1 -1
View File
@@ -1,4 +1,4 @@
POST /gists/2729810/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub"}
https POST api.github.com None /gists/2729810/comments {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment created by PyGithub"}
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4992'), ('content-length', '479'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"77456eabf6ebaafc2808cfbd4dfa5904"'), ('date', 'Sat, 19 May 2012 07:07:57 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/comments/323629')]
{"updated_at":"2012-05-19T07:07:57Z","body":"Comment created by PyGithub","url":"https://api.github.com/gists/comments/323629","created_at":"2012-05-19T07:07:57Z","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":323629}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4965'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:26:55 GMT')]
@@ -1,4 +1,4 @@
PATCH /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} {"files": {"barbaz.txt": {"content": "File also created by PyGithub"}}, "description": "Description edited by PyGithub"}
https PATCH api.github.com None /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} {"files": {"barbaz.txt": {"content": "File also created by PyGithub"}}, "description": "Description edited by PyGithub"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4994'), ('content-length', '2759'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"14d4466c0580c6f8e9be17f81eb1c3b0"'), ('date', 'Sat, 19 May 2012 07:06:10 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T07:06:10Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"barbaz.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/92be1df4e473d2541c5c166ad145a39d0324de8b/barbaz.txt","size":29,"filename":"barbaz.txt","content":"File also created by PyGithub","language":"Text"},"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","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},"description":"Description edited by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/67524fb6eb4883d979e8b4cf133003fa81a6a472","change_status":{"deletions":0,"additions":0,"total":0},"committed_at":"2012-05-19T07:06:10Z","version":"67524fb6eb4883d979e8b4cf133003fa81a6a472","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}},{"url":"https://api.github.com/gists/2729810/e730170a9599696a9d776f8bb5028b35f937b6de","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:04:31Z","version":"e730170a9599696a9d776f8bb5028b35f937b6de","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}},{"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:00:58Z","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","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}}]}
@@ -1,4 +1,4 @@
PATCH /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} {}
https PATCH api.github.com None /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} {}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4998'), ('content-length', '1446'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9d90688efdf43c600be9c6c068f007dd"'), ('date', 'Sat, 19 May 2012 07:03:55 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T07:00:58Z","git_push_url":"git@gist.github.com:2729810.git","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"files":{"foobar.txt":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729810/73a1c7f17aa0ad5d7cbb5a8ca033ce47d3d23197/foobar.txt","size":24,"filename":"foobar.txt","content":"File created by PyGithub","language":"Text"}},"html_url":"https://gist.github.com/2729810","user":{"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},"description":"Gist created by PyGithub","created_at":"2012-05-19T07:00:58Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/35deb29ab1caf4c68c03d8244ad674b56de01a5c","version":"35deb29ab1caf4c68c03d8244ad674b56de01a5c","change_status":{"deletions":0,"additions":1,"total":1},"committed_at":"2012-05-19T07:00:58Z","user":{"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}}],"git_pull_url":"git://gist.github.com/2729810.git"}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /gists/2729818 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729818 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '2576'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fda4eb92e9b9a245bccf9efd47857766"'), ('date', 'Sat, 19 May 2012 07:25:30 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"git_push_url":"git@gist.github.com:2729818.git","updated_at":"2012-05-19T07:06:08Z","forks":[],"url":"https://api.github.com/gists/2729818","comments":0,"public":true,"files":{"ror.markdown":{"type":"text/plain","raw_url":"https://gist.github.com/raw/2729818/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown","size":1076,"filename":"ror.markdown","content":"## create user\n\nsudo useradd -m username\nvisudo\n\n## delete default user\n\nsudo userdel ubuntu\nsudo rm -Rf ubuntu\n\n## setup ssh\n\nmkdir ~/.ssh\nvi /etc/ssh/authorized_keys\nsudo vi /etc/ssh/sshd_config\n\n\n## install packages\n\nsudo apt-get update\n\nsudo apt-get install sysv-rc-init git-core apache2-utils wget vim\nsudo apt-get install mysql-client mysql-server libmysqld-dev\nsudo apt-get install g++ openssl zlib1g readline-common libyaml-dev libssl-dev zlib1g-dev libxml2-dev libxslt1-dev libjson0-dev libgcc1 libreadline-dev\n\n\n## install nginx\n\nwget http://nginx.org/keys/nginx_signing.key\nsudo apt-key add nginx_signing.key\n\n### add /etc/sources.list\n> \"deb http://nginx.org/packages/ubuntu/ lucid nginx\ndeb-src http://nginx.org/packages/ubuntu/ lucid nginx\"\n\napt-get update\napt-get install nginx\n\n\n## setup system\n\nsudo sysv-rc-init\n\n\n## install ruby\n\ncd /usr/local/src\nsudo wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz\nsudo tar zxvf ruby-1.9.3-p194.tar.gz\ncd ruby-1.9.3-p194\nsudo ./configure\nsudo make && make install\n\n\n## install RoR\n\nsudo gem install rails","language":"Markdown"}},"html_url":"https://gist.github.com/2729818","user":{"url":"https://api.github.com/users/Kechol","gravatar_id":"f2a6400b393749ccd9ad3f24d4995f77","login":"Kechol","avatar_url":"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":625489},"description":"RoR setup in AWS EC2(Ubuntu 12.04 LTS)","created_at":"2012-05-19T07:06:08Z","git_pull_url":"git://gist.github.com/2729818.git","id":"2729818","history":[{"url":"https://api.github.com/gists/2729818/a655d19a12233e5e5615deb714eae95c433eed57","version":"a655d19a12233e5e5615deb714eae95c433eed57","change_status":{"deletions":0,"additions":57,"total":57},"committed_at":"2012-05-19T07:06:08Z","user":{"url":"https://api.github.com/users/Kechol","gravatar_id":"f2a6400b393749ccd9ad3f24d4995f77","login":"Kechol","avatar_url":"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","id":625489}}]}
POST /gists/2729818/fork {'Authorization': 'Basic login_and_password_removed'} null
https POST api.github.com None /gists/2729818/fork {'Authorization': 'Basic login_and_password_removed'} null
201
[('status', '201 Created'), ('x-ratelimit-remaining', '4969'), ('content-length', '873'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"502531cd2afdff81b572c8565b17f601"'), ('date', 'Sat, 19 May 2012 07:25:30 GMT'), ('content-type', 'application/json; charset=utf-8'), ('location', 'https://api.github.com/gists/2729865')]
{"updated_at":"2012-05-19T07:25:30Z","url":"https://api.github.com/gists/2729865","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729865.git","files":{"ror.markdown":{"raw_url":"https://gist.github.com/raw/2729865/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown","type":"text/plain","size":1076,"filename":"ror.markdown","language":"Markdown"}},"html_url":"https://gist.github.com/2729865","user":{"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},"description":"RoR setup in AWS EC2(Ubuntu 12.04 LTS)","created_at":"2012-05-19T07:25:30Z","git_push_url":"git@gist.github.com:2729865.git","id":"2729865"}
GET /gists/2729865 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729865 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '3460'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"e829012f18db493a69740de762186eb5"'), ('date', 'Sat, 19 May 2012 07:26:54 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"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},"description":"RoR setup in AWS EC2(Ubuntu 12.04 LTS)","comments":0,"updated_at":"2012-05-19T07:25:30Z","public":true,"git_pull_url":"git://gist.github.com/2729865.git","history":[{"user":{"url":"https://api.github.com/users/Kechol","avatar_url":"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f2a6400b393749ccd9ad3f24d4995f77","login":"Kechol","id":625489},"change_status":{"total":57,"deletions":0,"additions":57},"committed_at":"2012-05-19T07:06:08Z","version":"a655d19a12233e5e5615deb714eae95c433eed57","url":"https://api.github.com/gists/2729865/a655d19a12233e5e5615deb714eae95c433eed57"}],"git_push_url":"git@gist.github.com:2729865.git","url":"https://api.github.com/gists/2729865","fork_of":{"user":{"url":"https://api.github.com/users/Kechol","avatar_url":"https://secure.gravatar.com/avatar/f2a6400b393749ccd9ad3f24d4995f77?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f2a6400b393749ccd9ad3f24d4995f77","login":"Kechol","id":625489},"description":"RoR setup in AWS EC2(Ubuntu 12.04 LTS)","comments":0,"updated_at":"2012-05-19T07:06:08Z","public":true,"git_pull_url":"git://gist.github.com/2729818.git","git_push_url":"git@gist.github.com:2729818.git","url":"https://api.github.com/gists/2729818","html_url":"https://gist.github.com/2729818","id":"2729818","created_at":"2012-05-19T07:06:08Z","files":{"ror.markdown":{"type":"text/plain","size":1076,"filename":"ror.markdown","raw_url":"https://gist.github.com/raw/2729818/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown","language":"Markdown"}}},"html_url":"https://gist.github.com/2729865","id":"2729865","forks":[],"created_at":"2012-05-19T07:25:30Z","files":{"ror.markdown":{"content":"## create user\n\nsudo useradd -m username\nvisudo\n\n## delete default user\n\nsudo userdel ubuntu\nsudo rm -Rf ubuntu\n\n## setup ssh\n\nmkdir ~/.ssh\nvi /etc/ssh/authorized_keys\nsudo vi /etc/ssh/sshd_config\n\n\n## install packages\n\nsudo apt-get update\n\nsudo apt-get install sysv-rc-init git-core apache2-utils wget vim\nsudo apt-get install mysql-client mysql-server libmysqld-dev\nsudo apt-get install g++ openssl zlib1g readline-common libyaml-dev libssl-dev zlib1g-dev libxml2-dev libxslt1-dev libjson0-dev libgcc1 libreadline-dev\n\n\n## install nginx\n\nwget http://nginx.org/keys/nginx_signing.key\nsudo apt-key add nginx_signing.key\n\n### add /etc/sources.list\n> \"deb http://nginx.org/packages/ubuntu/ lucid nginx\ndeb-src http://nginx.org/packages/ubuntu/ lucid nginx\"\n\napt-get update\napt-get install nginx\n\n\n## setup system\n\nsudo sysv-rc-init\n\n\n## install ruby\n\ncd /usr/local/src\nsudo wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz\nsudo tar zxvf ruby-1.9.3-p194.tar.gz\ncd ruby-1.9.3-p194\nsudo ./configure\nsudo make && make install\n\n\n## install RoR\n\nsudo gem install rails","type":"text/plain","size":1076,"filename":"ror.markdown","raw_url":"https://gist.github.com/raw/2729865/1284e70f4c16550ef32a26aa4f5f0c78edaa7008/ror.markdown","language":"Markdown"}}}
+1 -1
View File
@@ -1,4 +1,4 @@
GET /gists/2729810/comments {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810/comments {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '473'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ed0bedf32cc0d6f8dfe93e85ffa951cc"'), ('date', 'Sat, 19 May 2012 07:20:33 GMT'), ('content-type', 'application/json; charset=utf-8')]
[{"updated_at":"2012-05-19T07:19:02Z","body":"Some random comment","url":"https://api.github.com/gists/comments/323637","created_at":"2012-05-19T07:19:02Z","user":{"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},"id":323637}]
+5 -5
View File
@@ -1,24 +1,24 @@
GET /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
404
[('status', '404 Not Found'), ('x-ratelimit-remaining', '4975'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"99914b932bd37a50b983c5e7c90ae93b"'), ('date', 'Sat, 19 May 2012 07:22:29 GMT'), ('content-type', 'application/json; charset=utf-8')]
{}
PUT /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
https PUT api.github.com None /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4974'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:29 GMT')]
GET /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4973'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:30 GMT')]
DELETE /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4972'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:22:30 GMT')]
GET /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810/star {'Authorization': 'Basic login_and_password_removed'} null
404
[('status', '404 Not Found'), ('x-ratelimit-remaining', '4971'), ('content-length', '2'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"99914b932bd37a50b983c5e7c90ae93b"'), ('date', 'Sat, 19 May 2012 07:22:31 GMT'), ('content-type', 'application/json; charset=utf-8')]
{}
+2 -2
View File
@@ -1,9 +1,9 @@
GET /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/2729810 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '3280'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b01fb6ac81527f99db9f6f586b048ee3"'), ('date', 'Sat, 19 May 2012 06:58:15 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-02-29T16:47:12Z","forks":[],"url":"https://api.github.com/gists/2729810","comments":0,"public":true,"git_pull_url":"git://gist.github.com/2729810.git","files":{"fail_github.py":{"type":"application/python","raw_url":"https://gist.github.com/raw/2729810/2fb3aa84e0efa50dc0f4c18b5df5b7b9ab27076b/fail_github.py","size":1636,"filename":"fail_github.py","content":"import httplib\nimport base64\nimport json\n\nlogin = \"\"\npassword = \"\"\norgName = \"\"\nrepoName = \"FailGithubApi\"\n\ndef doRequest( verb, url, input ):\n input = json.dumps( input )\n cnx = httplib.HTTPSConnection( \"api.github.com\", strict = True )\n cnx.request( verb, url, input, { \"Authorization\" : \"Basic \" + base64.b64encode( login + \":\" + password ).replace( '\\n', '' ) } )\n response = cnx.getresponse()\n status = response.status\n output = response.read()\n cnx.close()\n print verb, url, input, \"=>\", status, output\n print\n if status < 200 or status >= 300:\n exit( 1 )\n return json.loads( output )\n\n# Create a repo\ndoRequest( \"POST\", \"/user/repos\", { \"name\": repoName } )\n\n# Create a blob, a tree, a commit and the master branch\nb = doRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( login, repoName ),\n { \"content\": \"Content of the blob\", \"encoding\": \"latin1\" }\n)\nt = doRequest(\n \"POST\", \"/repos/%s/%s/git/trees\" % ( login, repoName ),\n { \"tree\" : [ { \"path\": \"foo.bar\", \"type\": \"blob\", \"mode\": \"100644\", \"sha\": b[\"sha\"] } ] }\n)\nc = doRequest(\n \"POST\", \"/repos/%s/%s/git/commits\" % ( login, repoName ),\n { \"parents\": [], \"message\": \"Message of the commit\", \"tree\": t[\"sha\"] }\n)\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/refs\" % ( login, repoName ),\n { \"ref\": \"refs/heads/master\", \"sha\": c[\"sha\"] }\n)\n\n# Fork the repo\ndoRequest( \"POST\", \"/repos/%s/%s/forks?org=%s\" % ( login, repoName, orgName ), None )\n\n# Create a new blob => BOOM error 500\ndoRequest(\n \"POST\", \"/repos/%s/%s/git/blobs\" % ( orgName, repoName ),\n { \"content\": \"Content of the new blob\", \"encoding\": \"latin1\" }\n)\n","language":"Python"}},"html_url":"https://gist.github.com/2729810","git_push_url":"git@gist.github.com:2729810.git","user":{"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},"description":"How to error 500 Github API v3, as requested by Rick (GitHub Staff)","created_at":"2012-02-29T16:47:12Z","id":"2729810","history":[{"url":"https://api.github.com/gists/2729810/a40de483e42ba33bda308371c0ef8383db73be9e","change_status":{"deletions":0,"additions":52,"total":52},"committed_at":"2012-02-29T16:47:12Z","version":"a40de483e42ba33bda308371c0ef8383db73be9e","user":{"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}}]}
GET /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('content-length', '479'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4988'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"c2581153865c9b18a576589587e1fb98"'), ('date', 'Sat, 19 May 2012 07:12:31 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/gists/comments/323629","body":"Comment created by PyGithub","created_at":"2012-05-19T07:07:57Z","updated_at":"2012-05-19T07:07:57Z","id":323629,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146}}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 07:14:33 GMT')]
+1 -1
View File
@@ -1,4 +1,4 @@
PATCH /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment edited by PyGithub"}
https PATCH api.github.com None /gists/comments/323629 {'Authorization': 'Basic login_and_password_removed'} {"body": "Comment edited by PyGithub"}
200
[('status', '200 OK'), ('content-length', '478'), ('x-ratelimit-limit', '5000'), ('x-ratelimit-remaining', '4987'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('etag', '"cea8090368993f1fb95c32cdcf4245d3"'), ('date', 'Sat, 19 May 2012 07:12:32 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/gists/comments/323629","body":"Comment edited by PyGithub","created_at":"2012-05-19T07:07:57Z","updated_at":"2012-05-19T07:12:32Z","id":323629,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146}}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4971'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"cae303fffd852767651ae178cc25c7be"'), ('date', 'Thu, 10 May 2012 19:05:12 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"public_gists":1,"html_url":"https://github.com/jacquev6","type":"User","url":"https://api.github.com/users/jacquev6","private_gists":5,"disk_usage":16676,"collaborators":0,"plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"blog":"http://vincent-jacques.net","hireable":false,"login":"jacquev6","public_repos":10,"email":"vincent@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","bio":"","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}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"156b4bd24ab7a88fd5e1c851f71eea20"'), ('date', 'Thu, 10 May 2012 19:05:13 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"svn_url":"https://github.com/jacquev6/PyGithub","owner":{"url":"https://api.github.com/users/jacquev6","login":"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","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"mirror_url":null,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"}
GET /repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('content-length', '1987'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"4b96ab346d46fbc2a409711500d54f42"'), ('date', 'Thu, 10 May 2012 19:05:16 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667","encoding":"base64","content":"IyEvdXNyL2Jpbi9lbnYgcHl0aG9uCgpmcm9tIGRpc3R1dGlscy5jb3JlIGlt\ncG9ydCBzZXR1cAppbXBvcnQgdGV4dHdyYXAKCnNldHVwKAogICAgbmFtZSA9\nICdQeUdpdGh1YicsCiAgICB2ZXJzaW9uID0gJzAuNicsCiAgICBkZXNjcmlw\ndGlvbiA9ICdVc2UgdGhlIGZ1bGwgR2l0aHViIEFQSSB2MycsCiAgICBhdXRo\nb3IgPSAnVmluY2VudCBKYWNxdWVzJywKICAgIGF1dGhvcl9lbWFpbCA9ICd2\naW5jZW50QHZpbmNlbnQtamFjcXVlcy5uZXQnLAogICAgdXJsID0gJ2h0dHA6\nLy92aW5jZW50LWphY3F1ZXMubmV0L1B5R2l0aHViJywKICAgIGxvbmdfZGVz\nY3JpcHRpb24gPSB0ZXh0d3JhcC5kZWRlbnQoICIiIlwKICAgICAgICBUdXRv\ncmlhbAogICAgICAgID09PT09PT09CgogICAgICAgIEZpcnN0IGNyZWF0ZSBh\nIEdpaHViIGluc3RhbmNlOjoKCiAgICAgICAgICAgIGZyb20gZ2l0aHViIGlt\ncG9ydCBHaXRodWIKCiAgICAgICAgICAgIGcgPSBHaXRodWIoICJ1c2VyIiwg\nInBhc3N3b3JkIiApCgogICAgICAgIFRoZW4gcGxheSB3aXRoIHlvdXIgR2l0\naHViIG9iamVjdHM6OgoKICAgICAgICAgICAgZm9yIHJlcG8gaW4gZy5nZXRf\ndXNlcigpLmdldF9yZXBvcygpOgogICAgICAgICAgICAgICAgcHJpbnQgcmVw\nby5uYW1lCiAgICAgICAgICAgICAgICByZXBvLmVkaXQoIGhhc193aWtpID0g\nRmFsc2UgKQoKICAgICAgICBSZWZlcmVuY2UgZG9jdW1lbnRhdGlvbgogICAg\nICAgID09PT09PT09PT09PT09PT09PT09PT09CgogICAgICAgIFNlZSBodHRw\nOi8vdmluY2VudC1qYWNxdWVzLm5ldC9QeUdpdGh1YiIiIiApLAogICAgcGFj\na2FnZXMgPSBbCiAgICAgICAgJ2dpdGh1YicsCiAgICAgICAgJ2dpdGh1Yi5H\naXRodWJPYmplY3RzJywKICAgICAgICAnZ2l0aHViLkdpdGh1Yk9iamVjdHMu\nR2l0aHViT2JqZWN0JywKICAgIF0sCiAgICBjbGFzc2lmaWVycz1bCiAgICAg\nICAgIkRldmVsb3BtZW50IFN0YXR1cyA6OiA0IC0gQmV0YSIsCiAgICAgICAg\nIkVudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCIsCiAgICAgICAgIklu\ndGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMiLAogICAgICAgICJMaWNl\nbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIg\nR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCkiLAogICAgICAgICJPcGVy\nYXRpbmcgU3lzdGVtIDo6IE9TIEluZGVwZW5kZW50IiwKICAgICAgICAiUHJv\nZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIiwKICAgICAgICAiVG9waWMg\nOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQiLAogICAgXSwKKQo=\n","size":1295,"sha":"53bce9fa919b4544e67275089b3ec5b44be20667"}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"55f0187d26f5ca2e7103006d9837865c"'), ('date', 'Thu, 10 May 2012 19:05:23 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"total_private_repos":5,"html_url":"https://github.com/jacquev6","type":"User","url":"https://api.github.com/users/jacquev6","owned_private_repos":5,"disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"public_gists":1,"avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","blog":"http://vincent-jacques.net","private_gists":5,"login":"jacquev6","public_repos":10,"email":"vincent@vincent-jacques.net","collaborators":0,"created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","hireable":false,"followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","bio":"","id":327146}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4967'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"72a84ed8ad0d83f6a4c09dcd388c20a1"'), ('date', 'Thu, 10 May 2012 19:05:27 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","git_url":"git://github.com/jacquev6/PyGithub.git","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"}
GET /repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4966'), ('content-length', '910'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"eabd190c639b57d447ea6d3463da7aae"'), ('date', 'Thu, 10 May 2012 19:05:28 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","message":"Merge branch 'develop'\n","committer":{"email":"vincent@vincent-jacques.net","date":"2012-04-17T10:55:16-07:00","name":"Vincent Jacques"},"sha":"4303c5b90e2216d927155e9609436ccb8984c495","parents":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/936f4a97f1a86392637ec002bbf89ff036a5062d","sha":"936f4a97f1a86392637ec002bbf89ff036a5062d"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/2a7e80e6421c5d4d201d60619068dea6bae612cb","sha":"2a7e80e6421c5d4d201d60619068dea6bae612cb"}],"tree":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad"},"author":{"email":"vincent@vincent-jacques.net","date":"2012-04-17T10:55:16-07:00","name":"Vincent Jacques"}}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4989'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fc8367028bd9046f0b52929ea8657756"'), ('date', 'Thu, 10 May 2012 18:49:18 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","owned_private_repos":5,"public_repos":10,"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","collaborators":0,"following":24,"company":"Criteo","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","public_gists":1,"followers":13,"url":"https://api.github.com/users/jacquev6","private_gists":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Vincent Jacques","bio":"","id":327146,"total_private_repos":5,"location":"Paris, France"}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4988'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"82dfa2c767e249ed2a1703529101f0aa"'), ('date', 'Thu, 10 May 2012 18:49:18 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:14:23Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:14:23Z"}
GET /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '336'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ef55032f07a176e09c65b2ac524c2ecf"'), ('date', 'Thu, 10 May 2012 14:38:00 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/1292bf0e22c796e91cc3d6e24b544aece8c21f2a","type":"commit","sha":"1292bf0e22c796e91cc3d6e24b544aece8c21f2a"},"ref":"refs/heads/BranchCreatedByPyGithub"}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4984'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Thu, 10 May 2012 18:49:22 GMT')]
+1 -1
View File
@@ -1,4 +1,4 @@
PATCH /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} {"sha": "04cde900a0775b51f762735637bd30de392a2793"}
https PATCH api.github.com None /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} {"sha": "04cde900a0775b51f762735637bd30de392a2793"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"ced480ad69948233f6520f7cd945eb34"'), ('date', 'Thu, 10 May 2012 18:49:20 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/04cde900a0775b51f762735637bd30de392a2793","type":"commit","sha":"04cde900a0775b51f762735637bd30de392a2793"},"ref":"refs/heads/BranchCreatedByPyGithub"}
+1 -1
View File
@@ -1,4 +1,4 @@
PATCH /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} {"sha": "4303c5b90e2216d927155e9609436ccb8984c495", "force": true}
https PATCH api.github.com None /repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub {'Authorization': 'Basic login_and_password_removed'} {"sha": "4303c5b90e2216d927155e9609436ccb8984c495", "force": true}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '322'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fb39f29de1defbab14def8a331d00c69"'), ('date', 'Thu, 10 May 2012 18:49:21 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/refs/heads/BranchCreatedByPyGithub","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","type":"commit","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},"ref":"refs/heads/BranchCreatedByPyGithub"}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4980'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"fc8367028bd9046f0b52929ea8657756"'), ('date', 'Thu, 10 May 2012 19:03:17 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"type":"User","owned_private_repos":5,"public_repos":10,"html_url":"https://github.com/jacquev6","blog":"http://vincent-jacques.net","collaborators":0,"following":24,"company":"Criteo","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","public_gists":1,"followers":13,"url":"https://api.github.com/users/jacquev6","private_gists":5,"hireable":false,"login":"jacquev6","email":"vincent@vincent-jacques.net","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"created_at":"2010-07-09T06:10:06Z","name":"Vincent Jacques","bio":"","id":327146,"total_private_repos":5,"location":"Paris, France"}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4979'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"b297a1eb78f994e828d8b625dae93910"'), ('date', 'Thu, 10 May 2012 19:03:18 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"homepage":"http://vincent-jacques.net/PyGithub","clone_url":"https://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","has_downloads":true,"watchers":13,"permissions":{"admin":true,"pull":true,"push":true},"mirror_url":null,"git_url":"git://github.com/jacquev6/PyGithub.git","has_wiki":false,"has_issues":true,"fork":false,"forks":2,"language":"Python","size":196,"description":"Python library implementing the full Github API v3","private":false,"created_at":"2012-02-25T12:53:47Z","open_issues":15,"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","login":"jacquev6","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146},"name":"PyGithub","pushed_at":"2012-05-10T18:49:21Z","id":3544490,"ssh_url":"git@github.com:jacquev6/PyGithub.git","updated_at":"2012-05-10T18:49:21Z"}
GET /repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4978'), ('content-length', '487'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"1dd282b50e691f8f162ef9355dad8771"'), ('date', 'Thu, 10 May 2012 19:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/tags/f5f37322407b02a80de4526ad88d5f188977bc3c","tag":"v0.6","message":"Version 0.6\n","object":{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/commits/4303c5b90e2216d927155e9609436ccb8984c495","type":"commit","sha":"4303c5b90e2216d927155e9609436ccb8984c495"},"tagger":{"email":"vincent@vincent-jacques.net","date":"2012-05-10T11:14:15-07:00","name":"Vincent Jacques"},"sha":"f5f37322407b02a80de4526ad88d5f188977bc3c"}
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4983'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"87bbafa72e82fd0e23eca263d0939cbc"'), ('date', 'Thu, 10 May 2012 19:03:05 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"html_url":"https://github.com/jacquev6","type":"User","hireable":false,"url":"https://api.github.com/users/jacquev6","disk_usage":16676,"plan":{"private_repos":5,"collaborators":1,"space":614400,"name":"micro"},"bio":"","public_gists":1,"total_private_repos":5,"login":"jacquev6","private_gists":5,"email":"vincent@vincent-jacques.net","owned_private_repos":5,"public_repos":10,"collaborators":0,"created_at":"2010-07-09T06:10:06Z","company":"Criteo","location":"Paris, France","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","followers":13,"following":24,"name":"Vincent Jacques","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","id":327146,"blog":"http://vincent-jacques.net"}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4982'), ('content-length', '1097'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"80c85d7120a6d887a451a951adbfbe8e"'), ('date', 'Thu, 10 May 2012 19:03:08 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-10T18:49:21Z","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"homepage":"http://vincent-jacques.net/PyGithub","forks":2,"git_url":"git://github.com/jacquev6/PyGithub.git","open_issues":15,"fork":false,"svn_url":"https://github.com/jacquev6/PyGithub","ssh_url":"git@github.com:jacquev6/PyGithub.git","url":"https://api.github.com/repos/jacquev6/PyGithub","pushed_at":"2012-05-10T18:49:21Z","language":"Python","size":196,"private":false,"clone_url":"https://github.com/jacquev6/PyGithub.git","created_at":"2012-02-25T12:53:47Z","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","mirror_url":null,"has_downloads":true,"watchers":13,"description":"Python library implementing the full Github API v3","id":3544490,"permissions":{"admin":true,"pull":true,"push":true}}
GET /repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '2588'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d37c2285c7bc31e9c29a9e36808b12bc"'), ('date', 'Thu, 10 May 2012 19:03:09 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/f492784d8ca837779650d1fb406a1a3587a764ad","sha":"f492784d8ca837779650d1fb406a1a3587a764ad","tree":[{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","type":"blob","size":53,"sha":"8a9af1462c3f4e3358315c2d2e6ef1e7334c59dd","path":".gitignore","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","type":"blob","size":1832,"sha":"7863d93a3ef3700fd05d2e0e6b9c1b5161c4572b","path":"Design.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/82be8f1b97c4cfb005ad9ce8b8215c2f71470630","type":"blob","size":28643,"sha":"82be8f1b97c4cfb005ad9ce8b8215c2f71470630","path":"IntegrationTest.py","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/8da6802f0b9d4acd1945440053dfd6be3ee80c95","type":"blob","size":3153,"sha":"8da6802f0b9d4acd1945440053dfd6be3ee80c95","path":"ReadMe.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/3ee24565835d6a352e0ce37b1f2413572f55e368","type":"blob","size":12687,"sha":"3ee24565835d6a352e0ce37b1f2413572f55e368","path":"ReferenceOfApis.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","type":"blob","size":15967,"sha":"af9d09559eb6dae86af23b81e6ddcebfa4dc37e6","path":"ReferenceOfClasses.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/60b4602b2c2070246c5df078fb7a5150b45815eb","type":"tree","sha":"60b4602b2c2070246c5df078fb7a5150b45815eb","path":"ReplayDataForIntegrationTest","mode":"040000"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/61cfa6bc84a562c134770b1e10445e7b810dbc26","type":"blob","size":320,"sha":"61cfa6bc84a562c134770b1e10445e7b810dbc26","path":"RoadMap.md","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/trees/929f19535e74d80fb117aa021742ce2556ddc9a2","type":"tree","sha":"929f19535e74d80fb117aa021742ce2556ddc9a2","path":"github","mode":"040000"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","type":"blob","size":673,"sha":"9532bcaa5fcc0a9d3678b3e4fd05688e32d2a321","path":"run_tests.sh","mode":"100644"},{"url":"https://api.github.com/repos/jacquev6/PyGithub/git/blobs/53bce9fa919b4544e67275089b3ec5b44be20667","type":"blob","size":1295,"sha":"53bce9fa919b4544e67275089b3ec5b44be20667","path":"setup.py","mode":"100644"}]}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,9 +1,9 @@
GET /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4999'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f225d9662153996a309db055598b3c8b"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"user":{"email":"vincent@vincent-jacques.net","blog":"http://vincent-jacques.net","name":"Vincent Jacques","location":"Paris, France","created_at":"2010-07-08T23:10:06-07:00","followers_count":13,"company":"Criteo","type":"User","permission":null,"public_repo_count":11,"public_gist_count":3,"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","id":327146,"following_count":24}}
GET /users/jacquev6 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /users/jacquev6 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('content-length', '801'), ('x-ratelimit-limit', '5000'), ('vary', 'Accept, Authorization, Cookie'), ('x-ratelimit-remaining', '4998'), ('server', 'nginx/1.0.13'), ('last-modified', 'Fri, 15 Jun 2012 15:37:06 GMT'), ('connection', 'keep-alive'), ('etag', '"41ade9c2e4794dd5214bb5f497af92cb"'), ('cache-control', 'private, max-age=60'), ('date', 'Fri, 29 Jun 2012 11:37:11 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"following":24,"created_at":"2010-07-09T06:10:06Z","type":"User","hireable":false,"private_gists":5,"collaborators":0,"public_repos":11,"followers":13,"company":"Criteo","bio":"","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","plan":{"collaborators":1,"private_repos":5,"space":614400,"name":"micro"},"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","total_private_repos":5,"disk_usage":16812,"location":"Paris, France","owned_private_repos":5,"login":"jacquev6","html_url":"https://github.com/jacquev6","name":"Vincent Jacques","url":"https://api.github.com/users/jacquev6","id":327146,"public_gists":3,"blog":"http://vincent-jacques.net","email":"vincent@vincent-jacques.net"}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
GET /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /legacy/user/email/vincent@vincent-jacques.net {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4981'), ('content-length', '395'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"baf55235e157428f731c446efe6d6cba"'), ('cache-control', 'max-age=0, private, must-revalidate'), ('date', 'Thu, 28 Jun 2012 20:58:11 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"user":{"gravatar_id":"b68de5ae38616c296fa345d2b9df2225","type":"User","location":"Paris, France","blog":"http://vincent-jacques.net","name":"Vincent Jacques","permission":null,"public_repo_count":11,"login":"jacquev6","email":"vincent@vincent-jacques.net","public_gist_count":3,"created_at":"2010-07-08T23:10:06-07:00","id":327146,"followers_count":13,"following_count":24,"company":"Criteo"}}
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4954'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"7af2c1dbdce8b064d8e1c1cee90fe416"'), ('date', 'Tue, 29 May 2012 19:04:12 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"total_private_repos":5,"collaborators":0,"html_url":"https://github.com/jacquev6","type":"User","company":"Criteo","location":"Paris, France","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","owned_private_repos":5,"public_repos":10,"public_gists":3,"private_gists":5,"following":24,"blog":"http://vincent-jacques.net","followers":13,"disk_usage":17092,"hireable":false,"url":"https://api.github.com/users/jacquev6","name":"Vincent Jacques","login":"jacquev6","email":"vincent@vincent-jacques.net","bio":"","id":327146,"plan":{"collaborators":1,"private_repos":5,"name":"micro","space":614400},"created_at":"2010-07-09T06:10:06Z","avatar_url":"https://secure.gravatar.com/avatar/b68de5ae38616c296fa345d2b9df2225?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png"}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4953'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d574405822696c3387860e1e0f104059"'), ('date', 'Tue, 29 May 2012 19:04:13 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"mirror_url":null,"clone_url":"https://github.com/jacquev6/PyGithub.git","has_downloads":true,"watchers":17,"updated_at":"2012-05-29T18:49:46Z","permissions":{"pull":true,"admin":true,"push":true},"homepage":"http://vincent-jacques.net/PyGithub","url":"https://api.github.com/repos/jacquev6/PyGithub","html_url":"https://github.com/jacquev6/PyGithub","has_wiki":false,"has_issues":true,"fork":false,"forks":3,"git_url":"git://github.com/jacquev6/PyGithub.git","size":480,"private":false,"open_issues":12,"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-29T18:49:46Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"full_name":"jacquev6/PyGithub"}
GET /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4952'), ('content-length', '293'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"36d23f2fb8cd26bc14f28b609f2aa3a3"'), ('date', 'Tue, 29 May 2012 19:04:14 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-29T18:49:47Z","events":["push"],"url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com"},"last_response":{"status":"ok","message":"OK","code":200},"active":true,"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993}
+1 -1
View File
@@ -1,4 +1,4 @@
DELETE /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} null
https DELETE api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4986'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 05:09:01 GMT')]
@@ -1,19 +1,19 @@
PATCH /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com"}, "name": "web", "events": ["fork", "push"]}
https PATCH api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com"}, "name": "web", "events": ["fork", "push"]}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4987'), ('content-length', '305'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"43f8b86dbc2f5bbfde20abb9d9142206"'), ('date', 'Sat, 19 May 2012 06:03:18 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T06:03:18Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["fork","push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993}
PATCH /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com"}, "name": "web", "add_events": ["push"]}
https PATCH api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com"}, "name": "web", "add_events": ["push"]}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4986'), ('content-length', '305'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"f372cc9359ed1d3b3fb8d484a09b36d7"'), ('date', 'Sat, 19 May 2012 06:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T06:03:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["fork","push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993}
PATCH /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"remove_events": ["fork"], "config": {"url": "http://foobar.com"}, "name": "web"}
https PATCH api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"remove_events": ["fork"], "config": {"url": "http://foobar.com"}, "name": "web"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4985'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"223ecc83a014738547fd99c826e3f125"'), ('date', 'Sat, 19 May 2012 06:03:19 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T06:03:19Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com"},"active":true,"last_response":{"status":"unused","message":null,"code":null},"events":["push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993}
PATCH /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"active": true, "config": {"url": "http://foobar.com"}, "name": "web"}
https PATCH api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"active": true, "config": {"url": "http://foobar.com"}, "name": "web"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4984'), ('content-length', '298'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"711cf06c29a923c290e1af74dc3e019d"'), ('date', 'Sat, 19 May 2012 06:03:20 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"updated_at":"2012-05-19T06:03:20Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","last_response":{"status":"unused","message":null,"code":null},"config":{"url":"http://foobar.com"},"active":true,"events":["push"],"name":"web","created_at":"2012-05-19T06:01:45Z","id":257993}
@@ -1,4 +1,4 @@
PATCH /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com/hook"}, "name": "web"}
https PATCH api.github.com None /repos/jacquev6/PyGithub/hooks/257993 {'Authorization': 'Basic login_and_password_removed'} {"config": {"url": "http://foobar.com/hook"}, "name": "web"}
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4990'), ('content-length', '303'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"8628a600a78bd5171c9e8d23b1ec22de"'), ('date', 'Sat, 19 May 2012 05:08:16 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"last_response":{"status":"unused","message":null,"code":null},"updated_at":"2012-05-19T05:08:16Z","url":"https://api.github.com/repos/jacquev6/PyGithub/hooks/257993","config":{"url":"http://foobar.com/hook"},"active":true,"events":["push"],"name":"web","created_at":"2012-05-19T05:03:14Z","id":257993}
+1 -1
View File
@@ -1,4 +1,4 @@
POST /repos/jacquev6/PyGithub/hooks/257993/test {'Authorization': 'Basic login_and_password_removed'} null
https POST api.github.com None /repos/jacquev6/PyGithub/hooks/257993/test {'Authorization': 'Basic login_and_password_removed'} null
204
[('status', '204 No Content'), ('x-ratelimit-remaining', '4980'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"d41d8cd98f00b204e9800998ecf8427e"'), ('date', 'Sat, 19 May 2012 06:04:06 GMT')]
+3 -3
View File
@@ -1,14 +1,14 @@
GET /user {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /user {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4993'), ('content-length', '801'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"9459b6e1e4805aad5e10d13344d6ffbf"'), ('date', 'Sat, 26 May 2012 14:59:39 GMT'), ('content-type', 'application/json; charset=utf-8')]
{"public_repos":11,"type":"User","hireable":false,"disk_usage":17080,"blog":"http://vincent-jacques.net","bio":"","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","total_private_repos":5,"plan":{"private_repos":5,"collaborators":1,"name":"micro","space":614400},"owned_private_repos":5,"company":"Criteo","gravatar_id":"b68de5ae38616c296fa345d2b9df2225","login":"jacquev6","collaborators":0,"public_gists":3,"email":"vincent@vincent-jacques.net","followers":13,"name":"Vincent Jacques","private_gists":5,"created_at":"2010-07-09T06:10:06Z","location":"Paris, France","id":327146,"following":24,"html_url":"https://github.com/jacquev6"}
GET /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4992'), ('content-length', '1129'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"5dc65a168cf4d957347ea04221cd5102"'), ('date', 'Sat, 26 May 2012 14:59:39 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-26T11:25:48Z","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":2,"size":412,"private":false,"open_issues":15,"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-26T11:25:48Z","created_at":"2012-02-25T12:53:47Z","id":3544490,"git_url":"git://github.com/jacquev6/PyGithub.git","html_url":"https://github.com/jacquev6/PyGithub","full_name":"jacquev6/PyGithub"}
GET /repos/jacquev6/PyGithub/issues/28 {'Authorization': 'Basic login_and_password_removed'} null
https GET api.github.com None /repos/jacquev6/PyGithub/issues/28 {'Authorization': 'Basic login_and_password_removed'} null
200
[('status', '200 OK'), ('x-ratelimit-remaining', '4991'), ('content-length', '2258'), ('server', 'nginx/1.0.13'), ('connection', 'keep-alive'), ('x-ratelimit-limit', '5000'), ('etag', '"071cb2b8bfef81f56b94d7d9397e6aa4"'), ('date', 'Sat, 26 May 2012 14:59:40 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","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/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,"closed_issues":3},"number":28,"closed_by":{"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"},"assignee":{"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"},"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","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"},"id":4653757,"pull_request":{"patch_url":null,"diff_url":null,"html_url":null},"html_url":"https://github.com/jacquev6/PyGithub/issues/28"}

Some files were not shown because too many files have changed in this diff Show More