classification
Title: Default hmac.new() digestmod has not been removed from documentation
Type: Stage: patch review
Components: Documentation Versions: Python 3.9, Python 3.8
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: docs@python Nosy List: Alex.Willmer, docs@python
Priority: normal Keywords: patch

Created on 2019-06-10 21:02 by Alex.Willmer, last changed 2019-06-10 21:46 by Alex.Willmer.

Pull Requests
URL Status Linked Edit
PR 13947 open Alex.Willmer, 2019-06-10 21:46
Messages (2)
msg345144 - (view) Author: Alex Willmer (Alex.Willmer) * Date: 2019-06-10 21:02
Until Python 3.8 hmc.new() defaulted the digestmod argument to 'hmac-md5'. This was deperecated, to be removed in Python 3.8. In Python 3.8.0b1 it is gone, e.g.

Python 3.8.0b1 (default, Jun  6 2019, 03:44:52) 
[GCC 7.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hmac
>>> hmac.new(b'qwertyuiop').name
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.8/hmac.py", line 146, in new
    return HMAC(key, msg, digestmod)
  File "/usr/lib/python3.8/hmac.py", line 49, in __init__
    raise ValueError('`digestmod` is required.')
ValueError: `digestmod` is required.

but the deprecation note, and the documented signature haven't been updated.

PR incoming
msg345145 - (view) Author: Alex Willmer (Alex.Willmer) * Date: 2019-06-10 21:20
Scratch the part about documented signature, it's still `hmac.new(... digestmod=None)`, the check happens in the body of the function
History
Date User Action Args
2019-06-10 21:46:07Alex.Willmersetkeywords: + patch
stage: patch review
pull_requests: + pull_request13814
2019-06-10 21:20:37Alex.Willmersetmessages: + msg345145
2019-06-10 21:02:15Alex.Willmercreate