identity: Upgrade to github.com/mitchellh/hashstructure/v2 v2.0.2

```
name                 old time/op    new time/op    delta
HashString/n28-10       131ns ± 7%     133ns ±19%   ~     (p=0.343 n=4+4)
HashString/n112-10      237ns ± 5%     241ns ± 3%   ~     (p=0.229 n=4+4)
HashString/n448-10      688ns ± 3%     687ns ± 1%   ~     (p=0.886 n=4+4)
HashString/n1792-10    2.51µs ± 3%    2.56µs ± 3%   ~     (p=0.200 n=4+4)
HashString/n7168-10    10.1µs ± 2%    10.0µs ± 4%   ~     (p=0.686 n=4+4)

name                 old alloc/op   new alloc/op   delta
HashString/n28-10       80.0B ± 0%     80.0B ± 0%   ~     (all equal)
HashString/n112-10       160B ± 0%      160B ± 0%   ~     (all equal)
HashString/n448-10       496B ± 0%      496B ± 0%   ~     (all equal)
HashString/n1792-10    1.84kB ± 0%    1.84kB ± 0%   ~     (all equal)
HashString/n7168-10    8.24kB ± 0%    8.24kB ± 0%   ~     (all equal)

name                 old allocs/op  new allocs/op  delta
HashString/n28-10        4.00 ± 0%      4.00 ± 0%   ~     (all equal)
HashString/n112-10       4.00 ± 0%      4.00 ± 0%   ~     (all equal)
HashString/n448-10       4.00 ± 0%      4.00 ± 0%   ~     (all equal)
HashString/n1792-10      4.00 ± 0%      4.00 ± 0%   ~     (all equal)
HashString/n7168-10      4.00 ± 0%      4.00 ± 0%   ~     (all equal)
```

Closes #11644
This commit is contained in:
Bjørn Erik Pedersen
2024-07-30 10:08:19 +02:00
parent 3140e0b994
commit 78db8aebca
9 changed files with 20 additions and 24 deletions

View File

@@ -19,7 +19,7 @@ import (
"reflect"
"github.com/gohugoio/hugo/common/types"
"github.com/mitchellh/hashstructure"
"github.com/gohugoio/hugo/identity"
)
var (
@@ -47,14 +47,9 @@ func numberToFloat(v reflect.Value) (float64, error) {
// to make them comparable
func normalize(v reflect.Value) any {
k := v.Kind()
switch {
case !v.Type().Comparable():
h, err := hashstructure.Hash(v.Interface(), nil)
if err != nil {
panic(err)
}
return h
return identity.HashUint64(v.Interface())
case isNumber(k):
f, err := numberToFloat(v)
if err == nil {