From d51badb9a0d6c046ec83e3f1b439c55d783d26e9 Mon Sep 17 00:00:00 2001 From: Andrew Svetlov Date: Fri, 18 Oct 2019 16:02:17 +0300 Subject: [PATCH] [3.6] add more types to LooseCookies #4205 (#4218) (#4222) * add more types to LooseCookies #4205 * predefine the Union types for LooseCookies * add CHANGES fragment (cherry picked from commit e0489342) Co-authored-by: Adam Bannister --- CHANGES/4218.misc | 1 + aiohttp/cookiejar.py | 2 +- aiohttp/typedefs.py | 16 +++++++++++++--- 3 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 CHANGES/4218.misc diff --git a/CHANGES/4218.misc b/CHANGES/4218.misc new file mode 100644 index 00000000000..1cb60297f81 --- /dev/null +++ b/CHANGES/4218.misc @@ -0,0 +1 @@ +Add two more types to LooseCookies. diff --git a/aiohttp/cookiejar.py b/aiohttp/cookiejar.py index 94705138ac8..14c27160c2f 100644 --- a/aiohttp/cookiejar.py +++ b/aiohttp/cookiejar.py @@ -125,7 +125,7 @@ def update_cookies(self, return if isinstance(cookies, Mapping): - cookies = cookies.items() # type: ignore + cookies = cookies.items() for name, cookie in cookies: if not isinstance(cookie, Morsel): diff --git a/aiohttp/typedefs.py b/aiohttp/typedefs.py index 3c42f6abe30..d96f69d2e28 100644 --- a/aiohttp/typedefs.py +++ b/aiohttp/typedefs.py @@ -29,7 +29,7 @@ _CIMultiDictProxy = CIMultiDictProxy[str] _MultiDict = MultiDict[str] _MultiDictProxy = MultiDictProxy[str] - from http.cookies import BaseCookie # noqa + from http.cookies import BaseCookie, Morsel # noqa else: _CIMultiDict = CIMultiDict _CIMultiDictProxy = CIMultiDictProxy @@ -43,8 +43,18 @@ _CIMultiDictProxy] RawHeaders = Tuple[Tuple[bytes, bytes], ...] StrOrURL = Union[str, URL] -LooseCookies = Union[Iterable[Tuple[str, 'BaseCookie[str]']], - Mapping[str, 'BaseCookie[str]'], 'BaseCookie[str]'] + +StrBaseCookieTuples = Iterable[Tuple[str, 'BaseCookie[str]']] +StrMorselTuples = Iterable[Tuple[str, 'Morsel[str]']] +StrToBaseCookieMapping = Mapping[str, 'BaseCookie[str]'] +StrToMorselMapping = Mapping[str, 'Morsel[Any]'] +LooseCookies = Union[ + StrBaseCookieTuples, + StrMorselTuples, + StrToBaseCookieMapping, + StrToMorselMapping, + 'BaseCookie[str]', +] if sys.version_info >= (3, 6):