From: Cameron Moore Date: Tue, 16 Oct 2018 01:52:46 +0000 (-0500) Subject: resource: Optimize integrity string generation X-Git-Tag: v0.50~59 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0a3340e95254597bc8a9feb250f2733b7d51edf8;p=brevno-suite%2Fhugo resource: Optimize integrity string generation Remove use of fmt.Sprintf for simple string concatenation. A simple change for a small perf boost. ``` name old time/op new time/op delta Integrity-4 525ns ± 2% 268ns ± 2% -48.92% (p=0.000 n=10+10) name old alloc/op new alloc/op delta Integrity-4 144B ± 0% 112B ± 0% -22.22% (p=0.000 n=10+10) name old allocs/op new allocs/op delta Integrity-4 5.00 ± 0% 3.00 ± 0% -40.00% (p=0.000 n=10+10) ``` --- diff --git a/resource/integrity/integrity.go b/resource/integrity/integrity.go index bbb21417..535c06a3 100644 --- a/resource/integrity/integrity.go +++ b/resource/integrity/integrity.go @@ -96,7 +96,7 @@ func (c *Client) Fingerprint(res resource.Resource, algo string) (resource.Resou func integrity(algo string, sum []byte) template.HTMLAttr { encoded := base64.StdEncoding.EncodeToString(sum) - return template.HTMLAttr(fmt.Sprintf("%s-%s", algo, encoded)) + return template.HTMLAttr(algo + "-" + encoded) } func digest(h hash.Hash) ([]byte, error) {