sprig
sprig copied to clipboard
chore: remove mitchellh/copystructure dependency
Replace dependency on mitchellh/copystructure
Closes: https://github.com/Masterminds/sprig/issues/456
The implementation in github.com/mitchellh/copystructure has many features which we were not using, so I expected and got better performance
go test -bench=. -benchmem ./internal/copystructure/
goos: darwin
goarch: arm64
pkg: helm.sh/helm/v4/internal/copystructure
cpu: Apple M1
BenchmarkInternalCopy-8 271351 4429 ns/op 5264 B/op 111 allocs/op
BenchmarkMitchellhCopy-8 61238 19645 ns/op 15008 B/op 433 allocs/op
BenchmarkInternalCopyLargeMap-8 1364 889158 ns/op 808347 B/op 19022 allocs/op
BenchmarkMitchellhCopyLargeMap-8 315 3784941 ns/op 2130339 B/op 75045 allocs/op
BenchmarkInternalCopyDeepNested-8 44197 27205 ns/op 27648 B/op 651 allocs/op
BenchmarkMitchellhCopyDeepNested-8 5334 226008 ns/op 95231 B/op 2696 allocs/op
PASS
Benchmark that is not included in PR https://gist.github.com/TerryHowe/f53f97016389c6d9cc849f573487d44c
Thanks for updating this package! Is there a timeline as to when this change will get merged please?
Ping