OpenSSL has platform-specific asm, and the SHA-256 x86-64
implementation is nearly twice as fast as the portable C
implementation in Perl5.  SHA-1 is a tad faster, too.

We still need to use Digest::SHA in a few places for
->clone to to bifurcate state.

Eric Wong (2):
  use Net::SSLeay (OpenSSL) for SHA-(1|256) if installed
  content_digest_dbg: convert to arrayref and limit to lei

 MANIFEST                            |  2 +
 lib/PublicInbox/ContentDigestDbg.pm | 12 +++---
 lib/PublicInbox/ContentHash.pm      | 11 +++---
 lib/PublicInbox/Fetch.pm            |  4 +-
 lib/PublicInbox/Git.pm              |  4 +-
 lib/PublicInbox/LeiDedupe.pm        |  6 +--
 lib/PublicInbox/LeiMirror.pm        |  2 +-
 lib/PublicInbox/LeiSavedSearch.pm   |  4 +-
 lib/PublicInbox/LeiSucks.pm         | 12 +++---
 lib/PublicInbox/Linkify.pm          |  2 +-
 lib/PublicInbox/MID.pm              |  8 ++--
 lib/PublicInbox/MailDiff.pm         |  5 +--
 lib/PublicInbox/MdirReader.pm       |  4 +-
 lib/PublicInbox/NNTP.pm             |  2 +-
 lib/PublicInbox/SHA.pm              | 58 +++++++++++++++++++++++++++++
 lib/PublicInbox/WwwAtomStream.pm    |  2 +-
 t/clone-coderepo.t                  |  2 +-
 t/httpd-corner.psgi                 |  4 +-
 t/httpd-corner.t                    |  2 +-
 t/ipc.t                             |  6 +--
 t/nntpd.t                           |  4 +-
 t/sha.t                             | 25 +++++++++++++
 t/www_listing.t                     |  2 +-
 xt/git_async_cmp.t                  | 10 ++---
 xt/imapd-validate.t                 |  5 ++-
 xt/nntpd-validate.t                 |  5 ++-
 26 files changed, 145 insertions(+), 58 deletions(-)
 create mode 100644 lib/PublicInbox/SHA.pm
 create mode 100644 t/sha.t

Reply via email to