]>
git.maquefel.me Git - brevno-suite/hugo/commit
Replace to gopkg.in/yaml with github.com/goccy/go-yaml (note)
This commit also adds validation to prevent the "Billion Laughs" attack (see https://github.com/goccy/go-yaml/issues/461). The limit of non-scalar aliases to the same node is set to 10,000. See benchmarks below.
``` │ sec/op │
UnmarshalBillionLaughs/Billion_Laughs_no_validation-10 125.2µ ± ∞ ¹
UnmarshalBillionLaughs/Billion_Laughs_with_validation-10 655.8µ ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_no_validation-10 9.223µ ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_with_validation-10 9.443µ ± ∞ ¹
geomean 51.71µ
¹ need >= 6 samples for confidence interval at level 0.95
│ fix-goyaml-8822.bench │
│ B/op │
UnmarshalBillionLaughs/Billion_Laughs_no_validation-10 177.0Ki ± ∞ ¹
UnmarshalBillionLaughs/Billion_Laughs_with_validation-10 177.0Ki ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_no_validation-10 11.67Ki ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_with_validation-10 11.67Ki ± ∞ ¹
geomean 45.45Ki
¹ need >= 6 samples for confidence interval at level 0.95
│ fix-goyaml-8822.bench │
│ allocs/op │
UnmarshalBillionLaughs/Billion_Laughs_no_validation-10 3.302k ± ∞ ¹
UnmarshalBillionLaughs/Billion_Laughs_with_validation-10 3.305k ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_no_validation-10 253.0 ± ∞ ¹
UnmarshalBillionLaughs/YAML_Front_Matter_with_validation-10 253.0 ± ∞ ¹
````
Fixes #8822
Fixes #13043
Fixes #14053
Fixes ##8427
21 files changed: