defaults to the :data:`hashlib.md5` constructor.
.. versionchanged:: 3.4
- Parameter *key* can be a bytes or bytearray object. Parameter *msg* can
- be of any type supported by :mod:`hashlib`.
-
+ Parameter *key* can be a bytes or bytearray object.
+ Parameter *msg* can be of any type supported by :mod:`hashlib`.
Paramter *digestmod* can be the name of a hash algorithm.
.. deprecated:: 3.4
accepts any type supported by the :mod:`hashlib` module. (Contributed
by Jonas Borgström in :issue:`18240`.)
+The *digestmod* argument to the :func:`hmac.new` function may now be any hash
+digest name recognized by :mod:`hashlib`. In addition, the current behavior in
+which the value of *digestmod* defaults to ``MD5`` is deprecated: in a
+future version of Python there will be no default value. (Contributed by
+Christian Heimes in :issue:`17276`.)
+
html
----
* The *strict* argument of :class:`~html.parser.HTMLParser` is deprecated.
+* The :func:`hmac.new` *digestmod* keyword having a default value (currently
+ ``MD5``) is deprecated.
+
Deprecated Functions and Types in the C API
-------------------------------------------
currently defaults to ``False`` for backward compatibility, but will
eventually be changed to default to ``True``. It is recommended that you add
this keyword, with the appropriate value, to any
- :class:`~html.parser.HTMLParser` calls in your code.
+ :class:`~html.parser.HTMLParser` calls in your code (:issue:`13633`).
+
+* Since the *digestmod* argument to the :func:`hmac.new` function will in the
+ future have no default, all calls to :func:`hmac.new` should be changed to
+ explicitly specify a *digestmod*. (:issue:`17276`).
Changes in the C API