Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Свежая подборка новостей и материалов.
Новости, события
Выпущены Go 1.20.1 и 1.19.6 - эти выпуски включают исправления безопасности
path/filepath: В Windows функция filepath.Clean может преобразовать недопустимый путь, например a/../c:/b, в допустимый путь c:\b. Такое преобразование относительного (если недопустимого) пути в абсолютный путь может привести к атаке с обходом каталога. Теперь функция filepath.Clean преобразует этот путь в относительный (но все еще недопустимый) путь .\c:\b.
net/http, mime/multipart: отказ в обслуживании из-за чрезмерного потребления ресурсов
crypto/tls: большие записи рукопожатий могут вызвать панику
net/http: cозданный поток HTTP/2 может привести к чрезмерной нагрузке на ЦП в декодере HPACK, достаточной для отказа в обслуживании из-за небольшого количества запросов
TinyGlobo: Воздушный шар дальнего радиуса действия с питанием
Все ваши сопоставимые типы
Полное руководство по OpenTelemetry в Go
Solitaire TUI: Пасьянс клондайк в терминале
Awesome
https://awesome-go.com/
https://github.com/guardrailsio/awesome-golang-security
https://github.com/Binject/awesome-go-security
https://gist.github.com/hbt/d6ab942b882d5b94f331c5257076d05e
https://github.com/avelino/awesome-go
Материалы для обучения
Уроки для изучения Golang
Gopherlings - изучайте Go, исправляя неправильные программы
Алгоритмы, реализованные в Go (для обучения)
LearnGo: большая коллекция примеров, упражнений
Статьи
Введение в оптимизацию на основе профиля в Go
Создание Conc: улучшенный структурированный параллелизм для Go
Пять шагов, чтобы сделать ваш код на Go быстрее и эффективнее
Быстрое и динамическое кодирование буферов протоколов
Работа на битовом уровне в Go
Тестирование сгенерированного HTML с goquery
Динамический способ вызова функций C из Go Without Cgo
Структурированное логирование с помощью slog
Создание средства сокращения URL-адресов с использованием Go, SQLite и GORM
Встраивание типов: фальшивое «наследование» Go.
Выводы за шесть месяцев использования «govulncheck» в CI
Go тесты и параллелизм
Как публиковать бинарные файлы Go с помощью Goreleaser
Полиморфизм: подавать холодным
Путь миграции с go build на Bazel
Брифинг по дженерикам Go 1.18
Fitter — сшиватель API/Website's, часть личного проекта которую хотел опенсорснуть
Сказ о том как pet-project превратился в небольшой пассивный доход (часть 1)
Микросервисные приложения на GoMicro
Schema Registry с Protobuf в Kafka — зачем оно надо?
Hashmap(map) по версии Golang. Часть 2
Оптимизация доступа к элементам слайса в Go
Шаблон backend сервера на Golang — часть 3 (Docker, Docker Compose, Kubernetes (kustomize)
Обезопасить, удержать, сохранить. Выгрузка трафика анонимной сети как свойство отложенной маршрутизации в HLT
Стеклянная луковица dns внутри k8s
За что мы любим Go, Ruby, React Native, ReactJS и Redux
История победы в VK Cup'22/23:Go
Разбираемся с рекурсией на примере связных списков
Выпускайте Кракена: опыт использования KrakenD
Генератор случайных чисел на базе неопределённого поведения состояния гонки
Генерация Swagger для сервера Echo
Выявляем волков в овечьей шкуре среди пользователей сайта
Инструменты
conc 0.3.0 — Более структурированный параллелизм.
vald 1.7.2 - Распределенная векторная поисковая система
imagor 1.4.2 — сервер обработки изображений с поддержкой Docker.
ebitengine 2.4.18 — игровой движок с открытым исходным кодом 2D-игр.
mirrord 3.30.0 — инструмент для запуска локальной службы в облачном (Kubernetes) контексте.
zitadel 2.21 — система управления пользователями, которая быстро настраивается, мультитенантность с настройкой фирменного стиля, безопасный вход в систему, самообслуживание, OpenID Connect, OAuth2.x, SAML2, беспарольный доступ с FIDO2 (включая пароли), OTP, U2F и неограниченный контрольный журнал
phoneinfoga 2.10.3 — инструмент для сканирования международных телефонных номеров. Это позволяет вам сначала собрать базовую информацию, такую как страна, регион, оператор связи и тип линии, а затем использовать различные методы, чтобы попытаться найти провайдера VoIP или идентифицировать владельца
tproxy 0.7.1 — Инструмент командной строки для прокси и анализа TCP-соединений
Yaegi 0.15 — интерпретатор Go
Noti 3.7 — Мониторинг процесса и запуск уведомления.
ZincSearch 0.4.1 — Альтернатива Elasticsearch на платформе Go.
q 0.9 — DNS-клиент командной строки с поддержкой UDP, TCP, DoT, DoH, DoQ и ODoH.
Opossum — веб-браузер, написанный на Go
Gin 1.9 — популярный веб-фреймворк
HoverFly 1.5.1 — Легкий инструмент моделирования API.
Define 0.3 — Словарь командной строки и тезаурус.
pgweb 0.14 — кроссплатформенный клиент для баз данных PostgreSQL