In go1.21 the go std has a new SHANI accelerated rountine (just like minio's sha256). See golang/go#50543.
Reduce the code surface by dropping what is now a redondent librairy.
Benchmarks using go1.21 and go1.20 shows no significant difference between minio and the std for sha256:
dlb-sha2-256 quadrupled in speed because it was never wired to use minio's sha256 implementation and thus
was brought back up to speed by crypto/sha256's improvement.
I think we should remove github.com/multiformats/go-multihash/register/miniosha256 one go1.22 is released (~1 year) since it would be purposeless, we could also stub it to github.com/multiformats/go-multihash/register/sha256 for all versions but no one imports it directly.
In go1.21 the go std has a new SHANI accelerated rountine (just like minio's sha256). See golang/go#50543. Reduce the code surface by dropping what is now a redondent librairy.
Benchmarks using go1.21 and go1.20 shows no significant difference between minio and the std for sha256:
dlb-sha2-256
quadrupled in speed because it was never wired to use minio's sha256 implementation and thus was brought back up to speed bycrypto/sha256
's improvement.I think we should remove
github.com/multiformats/go-multihash/register/miniosha256
one go1.22 is released (~1 year) since it would be purposeless, we could also stub it to github.com/multiformats/go-multihash/register/sha256 for all versions but no one imports it directly.