Skip to content

InvalidHeader: Invalid Retry-After header: 1m0s with github.com #1822

@ssbarnea

Description

@ssbarnea

Apparently retry logic inside urllib3 chokes when receiving 429 replies from github itself.

self = Retry(total=2, connect=None, read=None, redirect=None, status=None)
retry_after = '1m0s'

    def parse_retry_after(self, retry_after):
        # Whitespace: https://tools.ietf.org/html/rfc7230#section-3.2.4
        if re.match(r"^\s*[0-9]+\s*$", retry_after):
            seconds = int(retry_after)
        else:
            retry_date_tuple = email.utils.parsedate(retry_after)
            if retry_date_tuple is None:
>               raise InvalidHeader("Invalid Retry-After header: %s" % retry_after)
E               InvalidHeader: Invalid Retry-After header: 1m0s

Even more interesting, the parsedate is now no longer part of the stdlib,

retry_date_tuple = email.utils.parsedate(retry_after)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions