
🎉 Первый релиз кандидат Go 1.27Вышел релиз-кандидат Go 1.27, финал ждут в августе 2026. Команда просит прогнать на нём свои тесты и нагрузку, пока есть время поймать регрессии. Что в нём интересного.➡️ Дженерик-методыГлавная новость, которую ждали годами. Теперь метод может объявлять собственные параметры типа, а не только функция уровня пакета. Раньше дженерик-функцию, привязанную к типу, приходилось выносить в область видимости всего пакета. Теперь так:type Box[T any] struct{ v T }func (b Box[T]) Map[U any](f func(T) U) Box[U] { return Box[U]{f(b.v)}}Методы интерфейсов параметры типа объявлять не могут, и дженерик-методом интерфейс не реализуешь.➡️ JSON переписалиПоявились пакеты encoding/json/v2 и encoding/json/jsontext. Старый encoding/json теперь работает поверх v2. Поведение сохранили, но разбор JSON стал заметно быстрее, а кодирование осталось примерно на том же уровне. v2 строже по умолчанию, отвергает битый UTF-8 и дублирующиеся ключи в объекте. Если что-то сломалось, есть аварийный тормоз GOEXPERIMENT=nojsonv2.➡️ UUID в стандартной библиотекеНовый пакет uuid генерирует и парсит UUID. Можно выкинуть одну внешнюю зависимость из проекта.➡️ Что ещёМелкие аллокации до 80 байт стали дешевле примерно на 30 процентов за счёт специализированных по размеру функций выделения памяти. Профиль утечек горутин goroutineleak доехал из эксперимента в стабильную версию и ловит горутины, навсегда заблокированные на канале или мьютексе. Добавили экспериментальный пакет simd для портируемых векторных операций, включается через GOEXPERIMENT=simd. Завезли постквантовые подписи crypto/mldsa по FIPS 204 и поддержку их в crypto/tls и crypto/x509. В strings и bytes появилась CutLast, в net/url методы Clone. Каналы из пакета time теперь всегда небуферизованные, настройку asynctimerchan убрали навсегда. И минимум для macOS поднялся до Ventura 13.Поставить и попробовать.go install golang.org/dl/go1.27rc1@latestgo1.27rc1 download➡️ Источник📍 Навигация: Вакансии • Задачи • Собесы🐸 Б









