@@ -25,6 +25,8 @@ class GithubCore(object):
2525 _rate_limit = None
2626 _rate_limit_remaining = None
2727
28+ def __init__ (self ):
29+ self .session = requests .session ()
2830
2931 @staticmethod
3032 def _resource_serialize (o ):
@@ -70,7 +72,7 @@ def _requests_post_hook(self, r):
7072 return r
7173
7274
73- def _http_resource (self , verb , endpoint , params = None , authed = True ):
75+ def _http_resource (self , verb , endpoint , params = None , authed = True , ** etc ):
7476
7577 url = self ._generate_url (endpoint )
7678
@@ -80,7 +82,9 @@ def _http_resource(self, verb, endpoint, params=None, authed=True):
8082 args = (verb , url )
8183 kwargs = {'params' : params }
8284
83- r = requests .request (* args , ** kwargs )
85+ kwargs .update (etc )
86+
87+ r = self .session .request (* args , ** kwargs )
8488 r = self ._requests_post_hook (r )
8589
8690 # print self._ratelimit_remaining
@@ -97,6 +101,12 @@ def _get_resource(self, resource, obj, authed=True, **kwargs):
97101
98102 return obj .new_from_dict (item , gh = self )
99103
104+ def _patch_resource (self , resource , data , authed = True , ** kwargs ):
105+ r = self ._http_resource ('PATCH' , resource , data = data , params = kwargs , authed = authed )
106+ msg = self ._resource_deserialize (r .content )
107+
108+ return msg
109+
100110
101111 def _get_resources (self , resource , obj , authed = True , ** kwargs ):
102112
0 commit comments