The Only Overview of Go 1.27 You Really Need!
Go 1.27 is here, and in this video, I will give you an overview of all its new features! If you're looking for a 15-minute crash course, check out this video: https://youtu.be/P7dCWOjRwJA 📝 Description Catch up on one of Go’s most packed releases in recent years: Go 1.27. In this practical summary, we walk through the language, library, and performance changes that actually matter, with short code examples instead of a full changelog dump. We will break down generic methods, the new UUID package, JSON v2, struct-literal field selectors, and more, plus the gotchas that can bite you if you upgrade on autopilot. By the end, you will know what landed in Go 1.27, how it looks in real code, and which features deserve a deeper follow-up. Here's what you will learn: • Understand generic methods that declare their own type parameters, separate from the receiver, and why they still cannot live on interfaces. • Replace third-party UUID modules with the new standard `uuid` package for v4, time-ordered v7, parsing, Nil, Max, and comparable IDs. • See how `encoding/json` now runs on the v2 engine by default, and what you get from `encoding/json/v2`: stricter defaults, faster unmarshaling, and unsorted map keys unless you ask. • Write struct literals with promoted field names instead of nesting embedded types, even through deep embedding. • Prepare for post-quantum signatures on long-lived keys, and why those signatures are much larger. • Use the shared `Hasher[T]` interface in `hash/maphash` so Bloom filters, custom sets, and “equal ignoring X” maps all speak the same language. • Split strings and bytes on the last separator with `CutLast`, the missing counterpart to `strings.Cut`. • Get a tour of the rest of the release: portable SIMD, function type inference, `math/big` rounding, `Rand.N`, `synctest.Sleep`, in-memory `httptest` servers, always-unbuffered timer channels, plus tooling upgrades like `go fix` modernizers and a simpler `go mod tidy`. ⏳ Timestamps: 00:00 - Introduction 00:45 - Generic Methods 05:04 - uuid package 08:00 - JSON v2 11:39 - Struct Literal 14:04 - Post-quantum Signatures 14:36 - Portable SIMD 15:01 - Generic Hashing 20:33 - String Cutting 22:44 - Other Changes 24:41 - Outro 🔗 Links: hasher.go: https://github.com/golang/go/blob/master/src/hash/maphash/hasher.go uuid.go: https://github.com/golang/go/blob/master/src/uuid/uuid.go 👋 Hey there! If you are new to this channel: Hey 👋 my name is Flo and I am a professional software engineer with a passion for coding in Golang, TypeScript, JavaScript, and Rust. This channel is where I share that passion and dive into the exciting world of software engineering. 📨 Support and Connect! Become a member. https://www.youtube.com/@FloWoelki/membership Discord: https://discord.gg/TnA7drJ X / Twitter: https://x.com/FlorianWoelki LinkedIn: https://www.linkedin.com/in/florian-woelki/ GitHub: https://github.com/FlorianWoelki 📝 Copyright Notice The original Go Gopher was designed by Renée French (Source: https://go.dev/blog/gopher License details: https://creativecommons.org/licenses/by/4.0/). The gopher appearing in this video and thumbnail has been modified from the original design and is based on an illustration from Maria Letta's free-gophers-pack (Source: https://github.com/MariaLetta/free-gophers-pack License: CC0 1.0 Public Domain https://creativecommons.org/publicdomain/zero/1.0/). #go #go127 #new #features




Join the discussion
Sign in to join the discussion
Sign in