There's also the fact that I'd expect a fuzzer that knows about Unicode and UTF-8 strings to have a known list of weird behavior hardcoded as seed values, and certainly two-byte runes would be on that list.
Of course, this is only the first release with the fuzzer, and it already looks really amazing - all I'm really saying here is that I can't wait for these to be features of the fuzzer in the future!
I know the goal of 1.18 was to get the UX down, so I'm interested to see how it improves for 1.19.
[0] https://github.com/golang/go/blob/master/src/internal/fuzz/m...
The algorithm has similar complexity as binary search, but is a bit smarter on deciding how to split the test input at each iteration.
I’ve been studying this in my masters, and we’ve recently had to write a Java implementation. I’m keen to start on a Go package soon that might work well with fuzz testing.