—
go get github.com/fatih/color
Позволяет использовать простые функции с набором уже предопределенных цветов.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤2🥰1🤩1
—
go get -u github.com/doug-martin/goqu/v9
Без проблем поддерживает Postgres, MySQL, SQLite3, SQLServer и кастомные диалекты
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤4😁4🔥3
Telegraf – это не только MQTT клиент. Telegraf – это серверный агент для сбора, обработки, агрегирования и записи метрик из различных стеков, датчиков и систем в InfluxDB.
Полезный инструмент для работы с IoT и не только
Быстрый старт с помощью Docker:
docker run --rm --volume $PWD/config.toml:/etc/telegraf/telegraf.conf telegraf
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤3🔥2
—
brew install tfsec
tfsec опирается на статический анализ кода terraform для выявления потенциальных ошибок в конфигурации.
Особенности tfsec:
— Проверяет неправильные конфигурации у всех крупных (и некоторых мелких) облачных провайдеров.
— Сотни встроенных правил
— Сканирование модулей (локальных и удаленных)
— Оценивает HCL-выражения, а также буквенные значения
— Оценивает функции Terraform, например,
concat()
— Поддерживает несколько форматов вывода: lovely (по умолчанию), JSON, SARIF, CSV, CheckStyle, JUnit, text, Gif.
— Легко настраивается (с помощью флагов CLI и/или файла конфигурации).
— Очень быстрый, способен быстро сканировать огромные репозитории
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤2👍2
—
go get github.com/cilium/ebpf
ebpf-go - это библиотека на чистом Go, которая предоставляет утилиты для загрузки, компиляции и отладки программ eBPF
ebpf-go имеет минимум внешних зависимостей и предназначена для использования в длительно работающих процессах
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3❤2
В этой статье научимся генерировать Protobuf файлы через плагин Buf. Настроим зависимости сторонних proto нотаций, такие как googleapis, grpc-gateway и protovalidate.
├╼
Подготовительные работы├╼
Установка зависимостей├╼
Структура api├╼
Генерируем код╰╼
Запускаем gRPC и REST сервер@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤2🥰2
—
go install goa.design/goa/v3/cmd/goa@v3
Goa использует такой подход к созданию сервисов — позволяет описать дизайн API сервиса с помощью простого DSL языка Go.
Goa расширяется с помощью плагинов, например, плагин
goakit
генерирует код, использующий библиотеку Go kit
.Goa DSL состоит из Go-функций, поэтому его можно легко развивать.
Для распространения можно использовать естественный механизм импорта в Go, что очень удобно.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤5🔥3😁2😢1
git clone "https://github.com/caddyserver/caddy.git"
cd caddy/cmd/caddy/
go build
Быстрый и расширяемый многоплатформенный веб-сервер HTTP/1-2-3 с автоматическим HTTPS
Также Caddy предоставляет полнофункциональный пакет PKI для создания собственной полностью автоматизированной внутренней PKI и частных центров сертификации.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤7🤔3😢1
This media is not supported in your browser
VIEW IN TELEGRAM
—
curl -fsSL https://get.jetify.com/devbox | bash
Devbox не требует использование Docker или Nix.
Всё начинается с определения списка пакетов, необходимых для проекта, а Devbox создает изолированную, воспроизводимую среду с установленными пакетами.
Devbox работает аналогично пакетному менеджеру вроде yarn — за исключением того, что пакеты, которыми он управляет, находятся на уровне операционной системы (как если установить их с помощью brew или apt-get)
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🤔8❤4🔥3
PTerm позволяет отображать графики, прогресс-бары, таблицы, текстовый ввод, меню выбора и многое другое.
Очень настраиваемый и на 100% кроссплатформенный.
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤27🔥5🤔4
Компилятор Go не просто черный ящик, который берет на входе код и выдает бинарник. Он скорее похож на хорошо отлаженный конвейер, где каждый этап выполняет свою роль.
Классически, компилятор делится на две большие части: frontend, который занимается пониманием и анализом вашего кода, и backend, который отвечает за генерацию машинного кода.
В части фронтенда исходный код проходит через несколько этапов. Лексический анализ разбивает ваш код на токены, как если бы вы разрезали строку на слова и знаки пунктуации. Синтаксический анализ берет эти токены и строит из них абстрактное синтаксическое дерево (AST).
Подробнее об этом и не только — в этом туториале:
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥5❤1