8000 Merge remote-tracking branch 'github/pr/80' into develop · davidmoss/github3.py@a0b2c1d · GitHub
[go: up one dir, main page]

Skip to content

Commit a0b2c1d

Browse files
committed
Merge remote-tracking branch 'github/pr/80' into develop
2 parents 8232935 + bc0c381 commit a0b2c1d

File tree

4 files changed

+17
-3
lines changed

4 files changed

+17
-3
lines changed

AUTHORS.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,6 @@ Contributors
3636

3737
- Malcolm Box (@mbox)
3838

39-
- Tom Petr (@tpetr)
39+
- Tom Petr (@tpetr)
40+
41+
- David Pachura (@detenebrator)

github3/github.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -327,17 +327,20 @@ def issue(self, owner, repository, number):
327327
return repo.issue(number)
328328
return None
329329

330-
def iter_all_repos(self, number=-1, etag=None):
330+
def iter_all_repos(self, number=-1, since=None, etag=None):
331331
"""Iterate over every repository in the order they were created.
332332
333333
:param int number: (optional), number of repositories to return.
334334
Default: -1, returns all of them
335+
:param int since: (optional), last repository id seen (allows
336+
restarting this iteration)
335337
:param str etag: (optional), ETag from a previous request to the same
336338
endpoint
337339
:returns: generator of :class:`Repository <github3.repos.Repository>`
338340
"""
339341
url = self._build_url('repositories')
340-
return self._iter(int(number), url, Repository, etag=etag)
342+
params = {'since': since} if since else None
343+
return self._iter(int(number), url, Repository, params=params, etag=etag)
341344

342345
def iter_all_users(self, number=-1, etag=None):
343346
"""Iterate over every user in the order they signed up for GitHub.

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"github3",
1111
"github3.gists",
1212
"github3.repos",
13+
"github3.issues",
1314
]
1415

1516
try:

tests/test_github.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,14 @@ def test_iter_all_repos(self):
212212
expect(repo).isinstance(github3.repos.Repository)
213213
self.mock_assertions()
214214

215+
self.response('repo', _iter=True)
216+
self.get('https://api.github.com/repositories')
217+
self.conf.update(params={'since': 100000})
218+
repo = next(self.g.iter_all_repos(since=100000))
219+
expect(repo).isinstance(github3.repos.Repository)
220+
assert(repo.id > 100000)
221+
self.mock_assertions()
222+
215223
def test_iter_all_users(self):
216224
self.response('user', _iter=True)
217225
self.get('https://api.github.com/users')

0 commit comments

Comments
 (0)
0