New submission from Serhiy Storchaka <storchaka+cpyt...@gmail.com>:
Documentation says that parsedate_to_datetime() performs the same function as parsedata(), but on success returns a datetime. parsedata() returns None when date cannot be parsed, but parsedate_to_datetime() raises TypeError. >>> email.utils.parsedate("0") >>> email.utils.parsedate_to_datetime("0") Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/serhiy/py/cpython/Lib/email/utils.py", line 198, in parsedate_to_datetime *dtuple, tz = _parsedate_tz(data) TypeError: cannot unpack non-iterable NoneType object The other use case is passing None as arguments. Although it is not documented, but I seen the following code in wild: parsedate(header.get('Date')) parsedate() and parsedate_tz() accept None, but parsedate_to_datetime() does not. ---------- components: Library (Lib), email messages: 379661 nosy: barry, maxking, r.david.murray, serhiy.storchaka priority: normal severity: normal status: open title: email.utils.parsedate_to_datetime() should return None when date cannot be parsed versions: Python 3.10 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue42155> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com