]> git.maquefel.me Git - brevno-suite/hugo/commit
Replace the MD5 hashing of images with xxHash
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Tue, 30 Jul 2024 10:52:54 +0000 (12:52 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Wed, 31 Jul 2024 14:44:06 +0000 (16:44 +0200)
commitd5eda13cb2e57998210b66e080dc96e95b38e5f0
treeb52bc254cf9d6dcb768a491d73c725d7104dd9cd
parent8b5d796989cf0798ee61003159ba8b332675bdf2
Replace the MD5 hashing of images with xxHash

Note that we only use this for change detection.

The previous implementation invoked `MD5FromReaderFast` that created a MD5 has from 8 64 bytes chunks in the file, which is obviously very fast. The new implementation creates the hash from the entire file and ... seems to be even more effective:

```
name          old time/op    new time/op    delta
HashImage-10    9.45µs ±21%   10.89µs ± 1%     ~     (p=0.343 n=4+4)

name          old alloc/op   new alloc/op   delta
HashImage-10      144B ± 0%        8B ± 0%  -94.44%  (p=0.029 n=4+4)

name          old allocs/op  new allocs/op  delta
HashImage-10      4.00 ± 0%      1.00 ± 0%  -75.00%  (p=0.029 n=4+4)
```
common/hashing/hashing.go [new file with mode: 0644]
common/hashing/hashing_test.go [new file with mode: 0644]
helpers/general.go
resources/image.go
resources/resource.go
tpl/hash/hash.go
tpl/tplimpl/template_ast_transformers.go