1919from github3 .users import User , Key
2020from github3 .decorators import requires_auth , requires_basic_auth
2121from github3 .notifications import Thread
22+ from github3 .utils import timestamp_parameter
2223
2324
2425class GitHub (GitHubCore ):
@@ -493,7 +494,7 @@ def iter_notifications(self, all=False, participating=False, number=-1,
493494
494495 @requires_auth
495496 def iter_org_issues (self , name , filter = '' , state = '' , labels = '' , sort = '' ,
496- direction = '' , since = '' , number = - 1 , etag = None ):
497+ direction = '' , since = None , number = - 1 , etag = None ):
497498 """Iterate over the organnization's issues if the authenticated user
498499 belongs to it.
499500
@@ -509,21 +510,24 @@ def iter_org_issues(self, name, filter='', state='', labels='', sort='',
509510 api-default: created
510511 :param str direction: accepted values: ('asc', 'desc')
511512 api-default: desc
512- :param str since: ISO 8601 formatted timestamp, e.g.,
513- 2012-05-20T23:10:27Z
513+ :param since: (optional), Only issues after this date will
514+ be returned. This can be a `datetime` or an `ISO8601` formatted
515+ date string, e.g., 2012-05-20T23:10:27Z
516+ :type since: datetime or string
514517 :param int number: (optional), number of issues to return. Default:
515518 -1, returns all available issues
516519 :param str etag: (optional), ETag from a previous request to the same
517520 endpoint
518521 :returns: generator of :class:`Issue <github3.issues.Issue>`
519522 """
520523 url = self ._build_url ('orgs' , name , 'issues' )
524+ # issue_params will handle the since parameter
521525 params = issue_params (filter , state , labels , sort , direction , since )
522526 return self ._iter (int (number ), url , Issue , params , etag )
523527
524528 @requires_auth
525529 def iter_issues (self , filter = '' , state = '' , labels = '' , sort = '' ,
526- direction = '' , since = '' , number = - 1 , etag = None ):
530+ direction = '' , since = None , number = - 1 , etag = None ):
527531 """List all of the authenticated user's (and organization's) issues.
528532
529533 :param str filter: accepted values:
@@ -537,21 +541,24 @@ def iter_issues(self, filter='', state='', labels='', sort='',
537541 api-default: created
538542 :param str direction: accepted values: ('asc', 'desc')
539543 api-default: desc
540- :param str since: ISO 8601 formatted timestamp, e.g.,
541- 2012-05-20T23:10:27Z
544+ :param since: (optional), Only issues after this date will
545+ be returned. This can be a `datetime` or an `ISO8601` formatted
546+ date string, e.g., 2012-05-20T23:10:27Z
547+ :type since: datetime or string
542548 :param int number: (optional), number of issues to return.
543549 Default: -1 returns all issues
544550 :param str etag: (optional), ETag from a previous request to the same
545551 endpoint
546552 :returns: generator of :class:`Issue <github3.issues.Issue>`
547553 """
548554 url = self ._build_url ('issues' )
555+ # issue_params will handle the since parameter
549556 params = issue_params (filter , state , labels , sort , direction , since )
550557 return self ._iter (int (number ), url , Issue , params , etag )
551558
552559 @requires_auth
553560 def iter_user_issues (self , filter = '' , state = '' , labels = '' , sort = '' ,
554- direction = '' , since = '' , number = - 1 , etag = None ):
561+ direction = '' , since = None , number = - 1 , etag = None ):
555562 """List only the authenticated user's issues. Will not list
556563 organization's issues
557564
@@ -566,15 +573,18 @@ def iter_user_issues(self, filter='', state='', labels='', sort='',
566573 api-default: created
567574 :param str direction: accepted values: ('asc', 'desc')
568575 api-default: desc
569- :param str since: ISO 8601 formatted timestamp, e.g.,
570- 2012-05-20T23:10:27Z
576+ :param since: (optional), Only issues after this date will
577+ be returned. This can be a `datetime` or an `ISO8601` formatted
578+ date string, e.g., 2012-05-20T23:10:27Z
579+ :type since: datetime or string
571580 :param int number: (optional), number of issues to return.
572581 Default: -1 returns all issues
573582 :param str etag: (optional), ETag from a previous request to the same
574583 endpoint
575584 :returns: generator of :class:`Issue <github3.issues.Issue>`
576585 """
577586 url = self ._build_url ('user' , 'issues' )
587+ # issue_params will handle the since parameter
578588 params = issue_params (filter , state , labels , sort , direction , since )
579589 return self ._iter (int (number ), url , Issue , params , etag )
580590
@@ -598,8 +608,10 @@ def iter_repo_issues(self, owner, repository, milestone=None,
598608 api-default: created
599609 :param str direction: accepted values: ('asc', 'desc')
600610 api-default: desc
601- :param str since: ISO 8601 formatted timestamp, e.g.,
602- 2012-05-20T23:10:27Z
611+ :param since: (optional), Only issues after this date will
612+ be returned. This can be a `datetime` or an `ISO8601` formatted
613+ date string, e.g., 2012-05-20T23:10:27Z
614+ :type since: datetime or string
603615 :param int number: (optional), number of issues to return.
604616 Default: -1 returns all issues
605617 :param str etag: (optional), ETag from a previous request to the same
0 commit comments