commit 0a3340e95254597bc8a9feb250f2733b7d51edf8
parent 6b21ac3e67cb101255e8c3d9dbf076391a9eed8d
Author: Cameron Moore <moorereason@gmail.com>
Date: Mon, 15 Oct 2018 20:52:46 -0500
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)
```
Diffstat:
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git 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) {