Open
Description
I recently rewrote the _blake2
module. I want to the same for other modules where I can align the naming of functions across the different modules. The reason why I'm doing this is because it's becoming harder to make "similar" changes everywhere. In general, if I need to change something in MD5, then I also need to change it in SHA1/SHA2/SHA3, and it's easier if the code looks similar elsewhere.
There are some places that need to be updated because they are dead code, e.g.:
/*[clinic input]
module _sha2
class SHA256Type "SHA256object *" "&PyType_Type"
class SHA512Type "SHA512object *" "&PyType_Type"
[clinic start generated code]*/
should be
/*[clinic input]
module _sha2
class SHA256Type "SHA256object *" "clinic_state()->sha256_type"
class SHA512Type "SHA512object *" "clinic_state()->sha512_type"
[clinic start generated code]*/
Linked PRs
- gh-135532: module-wide cleanup for HACL*-based extension modules #135536
- gh-135532: use
_Py_strhex
in_md5.md5.hexdigest
#135742 - gh-135532: optimize calls to
PyMem_Malloc
in SHAKE digest computation #135744
Bug fixes (3.14+)
- gh-135532: update
python_hacl_namespaces.h
#135741 - [3.14] gh-135532: update
Modules/_hacl/python_hacl_namespaces.h
(GH-135741) #135745