8000 Added Collaborator, Contributor and Repository.collaborators(affiliat… · admdev8/github3.py@17de8b8 · GitHub
[go: up one dir, main page]

Skip to content

Commit 17de8b8

Browse files
committed
Added Collaborator, Contributor and Repository.collaborators(affiliation).
See sigmavirus24#730 for some background information. Note that I have currently put the named parameter `affiliation` at the front of the arguments in `Repository.collaborators`. I did this to be in line with the other similar iterators. This can be moved to the back, but I assume some backwards-incompatible changes are fine for 1.0.0? This uses separate classes for the specific User object uses as I understood the idea was from sigmavirus24#670.
1 parent f963db2 commit 17de8b8

File tree

6 files changed

+93
-32
lines changed

6 files changed

+93
-32
lines changed

github3/repos/repo.py

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -280,21 +280,35 @@ def code_frequency(self, number=-1, etag=None):
280280
url = self._build_url('stats', 'code_frequency', base_url=self._api)
281281
return self._iter(int(number), url, list, etag=etag)
282282

283-
def collaborators(self, number=-1, etag=None):
283+
def collaborators(self, affiliation='all', number=-1, etag=None):
284284
"""Iterate over the collaborators of this repository.
285285
286+
:param str affiliation:
287+
(optional), affiliation of the collaborator to the repository.
288+
Default: "all" returns contributors with all affiliations
286289
:param int number:
287290
(optional), number of collaborators to return.
288291
Default: -1 returns all comments
289292
:param str etag:
290293
(optional), ETag from a previous request to the same endpoint
291294
:returns:
292-
generator of collaborator users
295+
generator of collaborators
293296
:rtype:
294-
:class:`~github3.users.ShortUser`
297+
:class:`~github3.users.Collaborator`
295298
"""
296299
url = self._build_url('collaborators', base_url=self._api)
297-
return self._iter(int(number), url, users.ShortUser, etag=etag)
300+
affiliations = {'outside', 'direct', 'all'}
301+
if affiliation not in affiliations:
302+
raise ValueError(
303+
(
304+
"Invalid affiliation value {!r} parameter passed, must "
305+
"be 'outside', 'direct', or 'all' (defaults to 'all')."
306+
).format(affiliation)
307+
)
308+
params = {'affiliation': affiliation}
309+
return self._iter(
310+
int(number), url, users.Collaborator, params, etag=etag
311+
)
298312

299313
def comments(self, number=-1, etag=None):
300314
"""Iterate over comments on all commits in the repository.

github3/users.py

Lines changed: 54 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -505,30 +505,6 @@ def delete(self):
505505
return self._boolean(self._delete(url), 204, 403)
506506

507507

508-
class Contributor(_User):
509-
"""Object for the specialized representation of a contributor.
510-
511-
When retrieving a repository's contributors, GitHub returns the same
512-
information as a :class:`~github3.users.ShortUser` with an additional
513-
attribute:
514-
515-
.. versionadded:: 1.0.0
516-
517-
This class was added in version 1.0.0
518-
519-
.. attribute:: contributions_count
520-
521-
The number of contributions a contributor has made to the repository
522-
523-
"""
524-
525-
class_name = 'Contributor'
526-
527-
def _update_attributes(self, contributor):
528-
super(Contributor, self)._update_attributes(contributor)
529-
self.contributions = contributor['contributions']
530-
531-
532508
class User(_User):
533509
"""Object for the full representation of a User.
534510
@@ -765,3 +741,57 @@ def _update_attributes(self, user):
765741
self.plan = user.get('plan')
766742
if self.plan is not None:
767743
self.plan = Plan(self.plan, self)
744+
745+
746+
class Collaborator(_User):
747+
"""Object for the representation of a collaborator.
748+
749+
When retrieving a repository's contributors, GitHub returns the same
750+
information as a :class:`~github3.users.ShortUser` with an additional
751+
attribute:
752+
753+
.. versionadded:: 1.0.3
754+
755+
This class was added in version 1.0.3
756+
757+
.. attribute:: permissions
758+
759+
Admin, push, and pull permissions of a collaborator
760+
"""
761+
762+
class_name = 'Collaborator'
763+
_refresh_to = User
764+
765+
def _update_attributes(self, user):
766+
super(Collaborator, self)._update_attributes(user)
767+
768+
self.permissions = user['permissions']
769+
770+
771+
class Contributor(_User):
772+
"""Object for the specialized representation of a contributor.
773+
774+
When retrieving a repository's contributors, GitHub returns the same
775+
information as a :class:`~github3.users.ShortUser` with an additional
776+
attribute:
777+
778+
.. versionadded:: 1.0.0
779+
780+
This class was added in version 1.0.0
781+
782+
.. versionadded:: 1.0.3
783+
784+
Refresh was implemented in version 1.0.3.
785+
786+
.. attribute:: contributions_count
787+
788+
The number of contributions a contributor has made to the repository
789+
790+
"""
791+
792+
class_name = 'Contributor'
793+
_refresh_to = User
794+
795+
def _update_attributes(self, contributor):
796+
super(Contributor, self)._update_attributes(contributor)
797+
self.contributions = contributor['contributions']
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"http_interactions": [{"request": {"body": {"encoding": "utf-8", "string": ""}, "headers": {"User-Agent": "github3.py/1.0.0a4", "Accept-Encoding": "gzip, deflate", "Accept": "application/vnd.github.drax-preview+json", "Connection": "keep-alive", "Accept-Charset": "utf-8", "Content-Type": "application/json", "Authorization": "token <AUTH_TOKEN>"}, "method": "GET", "uri": "https://api.github.com/repos/sigmavirus24/github3.py"}, "response": {"body": {"encoding": "utf-8", "base64_string": "H4sIAAAAAAAAA62YQXPqNhDHvwrjawnGmDyIZzqvPbU99R3SSy+MsAVWY1uuJEOJJ9+9/5VssHlTSKJeGGNrf1qtdle7agORBUm8iuarKJoGFSt5kAR7YfJmG8/qUzANdk1RbLoPWuxLdhCq0YtlOBoljxVXQdIGhdyLCozhUFBomsVyvo7n04AdmGFq06gC43Jjap2EoXup45nDNpqrVFaGV2aWyjJsQif99fDjEri96iDEDfDiClaLjuOEAdPhlUa5KYsrHdzUVuRq8E4WhTyCcq31vYnCsySZ0lJEtf8kBZJtKE3OYTws6Y0MIbT5uFJWqsUOarMRGXE0dkTx7MOKdXJQixzgrQ0Vr6UFNludKlEbIauPKziSBk2qPavEK/scDdIaEFLt46pYKUjzA3zx4+JOrA1rJQ4sPZFpFE+5OMDYn0ReyYNoTjXF7R9wCjK9MHzDspLicMcKzd+mgZ3eYJB9MUXYvdf7x3Ge8fOuYsJvJ5PLalKIrWLqNNlJNRGIWbVjKXx1ckQemcBdJ78I82uznfz87bdDDAUx7uWsyc3ItcYfBeNYHSLd2ZObCIQnAFDphZ+8OCTfhvjt4ilFqLOtVMzIe0njtoIjUBsO/5IvGc5KL8UtAKBcSj9LWgBAQuuGv8u1by/ccnTYx0/VlFuX8t4TNbfRjgBdmUaerzj3suAZ0oZ9VkY4VGnuh+0Zbeie7G6zvZeqJA/MtpBbLw4OytBC2lDnzJ1DZuOrHVGJMYIqvvNWlRhnqFGe+23VJMgZiUPQYOu99OwZYdtZtGDVvmF7P+oZgl2no3rPXu8WMbdj50IBkio0JbaNf5K7cEhTVzsg3v1MesFcoLYguV3m3DHAoLCxJihLca8uuE3sECO3/x+w5KfXaPp/v4y5ry4x2vCSk13S7+g+1u2yfq/ncI6uHfByiZ4Rtj/UzOSUuTBVzRT3UbpDhO2WodiazWZtzpktq0uuPCPYEYBiKs1RNfro2fYMVD0lM7Za35GaGar3QrLMy7ZnCIBuG310dYTh/tdoRL0UtIAhsRQF10ZWfjn2QhmyK2nETqTv6Vhuh9sI1H7Vokr5lBXFFF5rRCrgx6i1aRdRcHI/CzkCloF7ANepFBwu7WV1xR2jDV2nmfG6kCfvLDTAUBArju4m2zCDrmQxjxYP8/ghip+jp+RxnTzGf2JMU2ejMasHDFusn+fL5PFLsrRj6kbnA4wb8vQcxfieRF9oCNJq59d4wsUFfnFZ8t2lwaBPoasICGqdXwR/uogl/3Gr0omlBRz0KpLeP+fh+qy7LwpVc1nyGrXH4H7GycX1aQZTZ2jqMpnqmZC0MPGKkdF6FT2NqoxUNhX2Y7VcToMjMyiIcZ4PX/bVybmTpKmZ3rjYDxKjGmpV8aZW8i+eGj18d8k3g4FH8SIuTS5JUgl1fuP6xU6HxWqNDC2Ukt1lVIUEcU60uFjqemVZ86rTqVc/mseIN5HySmPpLbWPWIS9msEautuy37u/us7+QVsYJI5vG156RFvu2s/EajKYBtakCXqjdTbM+I41hdm4fgDzZWhkClmT33JVwmp010LqdM2/sx/5dG83SoHuGZMjicjjRv/dMHimPWf6Ye6LfYUVU4Ez/qI4nXRjmYqbI5rp3kJ2ScNCrjN6vHz7F5xWtG51FAAA", "string": ""}, "headers": {"Server": "GitHub.com", "Date": "Mon, 01 Jan 2018 21:12:31 GMT", "Content-Type": "application/json; charset=utf-8", "Transfer-Encoding": "chunked", "Status": "200 OK", "X-RateLimit-Limit": "5000", "X-RateLimit-Remaining": "4997", "X-RateLimit-Reset": "1514844517", "Cache-Control": "private, max-age=60, s-maxage=60", "Vary": "Accept, Authorization, Cookie, X-GitHub-OTP", "ETag": "W/\"5c2f068ff35b0394135666262d04ca26\"", "Last-Modified": "Thu, 28 Dec 2017 04:56:43 GMT", "X-OAuth-Scopes": "admin:gpg_key, admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user", "X-Accepted-OAuth-Scopes": "repo", "X-GitHub-Media-Type": "github.v3; param=drax-preview; format=json", "Access-Control-Expose-Headers": "ETag, Link, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval", "Access-Control-Allow-Origin": "*", "Content-Security-Policy": "default-src 'none'", "Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload", "X-Content-Type-Options": "nosniff", "X-Frame-Options": "deny", "X-XSS-Protection": "1; mode=block", "X-Runtime-rack": "0.043314", "Content-Encoding": "gzip", "X-GitHub-Request-Id": "A918:04CE:2DACDD:611CE0:5A4AA43F"}, "status": {"code": 200, "message": "OK"}, "url": "https://api.github.com/repos/sigmavirus24/github3.py"}, "recorded_at": "2018-01-01T21:12:31"}, {"request": {"body": {"encoding": "utf-8", "string": ""}, "headers": {"User-Agent": "github3.py/1.0.0a4", "Accept-Encoding": "gzip, deflate", "Accept": "application/vnd.github.v3.full+json", "Connection": "keep-alive", "Accept-Charset": "utf-8", "Content-Type": "application/json", "Authorization": "token <AUTH_TOKEN>"}, "method": "GET", "uri": "https://api.github.com/repos/sigmavirus24/github3.py/collaborators?per_page=100"}, "response": {"body": {"encoding": "utf-8", "base64_string": "H4sIAAAAAAAAA73VXW/aMBQG4P/ia9SEAC0gTfsVu5omZIKbeM2X/JGqi/jvO07czDYlneOoVyA475uDyQM/O1TUGa3QEXHSEszRCtELOiZx/Lg9rBBuscDsJFkBE7kQDT9G0fAi3zxkVOTyLDlhaV0JUomHtC4jGQ3p7+23LdRlTJeoXgQvOGUN1T1DGMp4NO6Si7Jwrj5ctB8ex57roqhfIeluer88GjOw0vCcVpl3HjJdVIucwCHB6lf1gSkXPov0812kHk70oho4nDkjF49ldAJWea1giy5ipKn7KnnmKaONoHXls5SVg56aZbiif7BvD+TUPaXW8bl8Pw85uCcrr8McAl3UMNri9E0dASMpoS0cp3eZk4Qu8dYQuIt/wFetDpcKcsKXUvkRTJIVaggrKefqsNGxQ/q9Z1xw9abk+TgoCyClQtfrykBIsxK3lEmeKDs9xW2838SzKfbpEIr2Rp+AtIf9WBrZAJy3LUFEzbowqGbTglytWhP7LLRmmzddMzwDsBlfiLG9kfUzMIn5HeyHmrX0zzHXZfa7eNGMd8km2T9NM07u/qMO6QDG4y7TgMcxL7pDaj5aKx/CVRcFQdUdyxF9LwzFqXt8WeqYP0gdXIbiuMVCCP//L5VwnArywvFZS3zcH3aH9bTE+K7EIR0g0dpnWqM16iXyX3K+ypuOEJlGWZBOo2c5oWZpqFKjy1eqEfXXaoSXEWtt8+VqqeAlKbEQaS6rTMt92uz26ziZpru+S1fHA+zebDXt92bcy7Cdnu/4w54Qy05hkGenaznTbnGoa6fP17YT9/ftFCxj/Garr3H+6y+0rQ/udxIAAA==", "string": ""}, "headers": {"Server": "GitHub.com", "Date": "Mon, 01 Jan 2018 21:12:31 GMT", "Content-Type": "application/json; charset=utf-8", "Transfer-Encoding": "chunked", "Status": "200 OK", "X-RateLimit-Limit": "5000", "X-RateLimit-Remaining": "4996", "X-RateLimit-Reset": "1514844517", "Cache-Control": "private, max-age=60, s-maxage=60", "Vary": "Accept, Authorization, Cookie, X-GitHub-OTP", "ETag": "W/\"bfbd076a8fe1b22274427e648ee8ab8e\"", "X-OAuth-Scopes": "admin:gpg_key, admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user", "X-Accepted-OAuth-Scopes": "", "X-GitHub-Media-Type": "github.v3; param=full; format=json", "Access-Control-Expose-Headers": "ETag, Link, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval", "Access-Control-Allow-Origin": "*", "Content-Security-Policy": "default-src 'none'", "Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload", "X-Content-Type-Options": "nosniff", "X-Frame-Options": "deny", "X-XSS-Protection": "1; mode=block", "X-Runtime-rack": "0.046608", "Content-Encoding": "gzip", "X-GitHub-Request-Id": "A918:04CE:2DACE1:611CE8:5A4AA43F"}, "status": {"code": 200, "message": "OK"}, "url": "https://api.github.com/repos/sigmavirus24/github3.py/collaborators?per_page=100"}, "recorded_at": "2018-01-01T21:12:31"}], "recorded_with": "betamax/0.8.0"}
1+
{"http_interactions": [{"request": {"body": {"encoding": "utf-8", "string": ""}, "headers": {"User-Agent": ["github3.py/1.0.2"], "Accept-Encoding": ["gzip, deflate"], "Accept": ["application/vnd.github.v3.full+json"], "Connection": ["keep-alive"], "Accept-Charset": ["utf-8"], "Content-Type": ["application/json"], "Authorization": ["token <AUTH_TOKEN>"]}, "method": "GET", "uri": "https://api.github.com/repos/sigmavirus24/github3.py"}, "response": {"body": {"encoding": "utf-8", "base64_string": "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", "string": ""}, "headers": {"Server": ["GitHub.com"], "Date": ["Sun, 08 Apr 2018 11:38:33 GMT"], "Content-Type": ["application/json; charset=utf-8"], "Transfer-Encoding": ["chunked"], "Status": ["200 OK"], "X-RateLimit-Limit": ["5000"], "X-RateLimit-Remaining": ["4995"], "X-RateLimit-Reset": ["1523190898"], "Cache-Control": ["private, max-age=60, s-maxage=60"], "Vary": ["Accept, Authorization, Cookie, X-GitHub-OTP"], "ETag": ["W/\"4f6acd3d29a3cdb30850a23edb7b9fc7\""], "Last-Modified": ["Wed, 22 Jun 2016 15:53:36 GMT"], "X-OAuth-Scopes": ["repo"], "X-Accepted-OAuth-Scopes": ["repo"], "X-GitHub-Media-Type": ["github.v3; param=full; format=json"], "Access-Control-Expose-Headers": ["ETag, Link, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval"], "Access-Control-Allow-Origin": ["*"], "Strict-Transport-Security": ["max-age=31536000; includeSubdomains; preload"], "X-Frame-Options": ["deny"], "X-Content-Type-Options": ["nosniff"], "X-XSS-Protection": ["1; mode=block"], "Referrer-Policy": ["origin-when-cross-origin, strict-origin-when-cross-origin"], "Content-Security-Policy": ["default-src 'none'"], "X-Runtime-rack": ["0.062171"], "Content-Encoding": ["gzip"], "X-GitHub-Request-Id": ["DA83:5063:D35324:1E0841C:5AC9FF39"]}, "status": {"code": 200, "message": "OK"}, "url": "https://api.github.com/repos/sigmavirus24/github3.py"}, "recorded_at": "2018-04-08T11:38:33"}, {"request": {"body": {"encoding": "utf-8", "string": ""}, "headers": {"User-Agent": ["github3.py/1.0.2"], "Accept-Encoding": ["gzip, deflate"], "Accept": ["application/vnd.github.v3.full+json"], "Connection": ["keep-alive"], "Accept-Charset": ["utf-8"], "Content-Type": ["application/json"], "Authorization": ["token <AUTH_TOKEN>"]}, "method": "GET", "uri": "https://api.github.com/repos/sigmavirus24/github3.py/collaborators?affiliation=all&per_page=100"}, "response": {"body": {"encoding": "utf-8", "base64_string": "H4sIAAAAAAAAA52TwUrEMBCG3yXnZcPiKloQ0XfwJFKy7Ww7mCYhM+m6ln13J20V7EW6pw5Jvi9/J8nboKxv0KlCPbs6gqEXU318qo3CWhW724eb/f3dRpnesIllilYWtsyBCq2nQdptG+Q2HRJBrLxjcLytfKeTnvGn/nEvwibOlmxWMrCwBZxFEy020otMLXd2EWLae0QWi4/eWn8SyzL2fxvpX1JCTjW65kqLkIP23IJ0T37pkhuBxOtDjdSg86fEOntIjiRCvTrYzEmsk5NEg44Q/ChMB6oiBkbv1gf8Q4vNx8Y4/DLX2YQmkeRo66OMlNDQy2Vcj0/YoEPE3lTn3JoIFWAvzb5SueDFyOcA8g5e5VLk1iNDaeouv8SjsQQbFSB2SJTPQhWDmic5pjyXqFXFT23lVeb6cnn/BsNEj4LQAwAA", "string": ""}, "headers": {"Server": ["GitHub.com"], "Date": ["Sun, 08 Apr 2018 11:38:33 GMT"], "Content-Type": ["application/json; charset=utf-8"], "Transfer-Encoding": ["chunked"], "Status": ["200 OK"], "X-RateLimit-Limit": ["5000"], "X-RateLimit-Remaining": ["4994"], "X-RateLimit-Reset": ["1523190898"], "Cache-Control": ["private, max-age=60, s-maxage=60"], "Vary": ["Accept, Authorization, Cookie, X-GitHub-OTP"], "ETag": ["W/\"3c163e26de769d11ae1efcf77efcc274\""], "X-OAuth-Scopes": ["repo"], "X-Accepted-OAuth-Scopes": [""], "X-GitHub-Media-Type": ["github.v3; param=full; format=json"], "Access-Control-Expose-Headers": ["ETag, Link, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval"], "Access-Control-Allow-Origin": ["*"], "Strict-Transport-Security": ["max-age=31536000; includeSubdomains; preload"], "X-Frame-Options": ["deny"], "X-Content-Type-Options": ["nosniff"], "X-XSS-Protection": ["1; mode=block"], "Referrer-Policy": ["origin-when-cross-origin, strict-origin-when-cross-origin"], "Content-Security-Policy": ["default-src 'none'"], "X-Runtime-rack": ["0.043074"], "Content-Encoding": ["gzip"], "X-GitHub-Request-Id": ["DA83:5063:D35325:1E08424:5AC9FF39"]}, "status": {"code": 200, "message": "OK"}, "url": "https://api.github.com/repos/sigmavirus24/github3.py/collaborators?affiliation=all&per_page=100"}, "recorded_at": "2018-04-08T11:38:33"}], "recorded_with": "betamax/0.8.1"}

0 commit comments

Comments
 (0)
0