Go 1.26 Interactive Tour

19 days ago (antonz.org)

> Optimized fmt.Errorf — With the new Go release, this debate should finally be settled. For unformatted strings, fmt.Errorf now allocates less and generally matches the allocations for errors.New. Specifically, fmt.Errorf goes from 2 allocations to 0 allocations for a non-escaping error, and from 2 allocations to 1 allocation for an escaping error […]

Thank you so much!!! I used to always take an extra second to decide which one to use based on the function’s parameter(s), and now I feel like I’m getting that time back, no sarcasm at all. This is a genuinely great improvement.

Oh wow the changes to new() are an enormous ergonomics unlock. ErrAsType will also replace a similar package for me (too bad value errors will still be a thing though, and beginning new type errors still so wordy).

Anton's interactive tour is the best way to read the release notes IMO! As mentioned on Cup o' Go.

  • Cup ‘o Go? The name is familiar. If yes, love the show and listen to every episode even though I rarely use Go!

This was a great read, even without having been working with Go for some time. It was well written, the examples demonstrated nearly everything, and being able to edit samples to test everything else, all on my phone, is quite delightful. Cheers to the author

  https://antonz.org/go-1-26/#httptest-example

> To fix this issue, the HTTP client returned by httptest.Server.Client now redirects requests for example.com and its subdomains to the test server

I'm really conflicted about the idea that the https client should silently hijack requests to example.com in order to make a dummy certificate work... or am I just really misunderstanding?