Golang Дайджест
7.99K subscribers
36 photos
1 file
168 links
Самое интересное из мира Go: новости, статьи, проекты, сервисы, изменения в языке и др.

Посты публикуются не часто - только самое важное, с чем я лично ознакомился.

Поэтому можно не мьютить канал =)

Обратная связь: @justskiv
Download Telegram
Clean Env - минималистичная библиотека для работы с конфигурацией

https://github.com/ilyakaznacheev/cleanenv

Чаще всего для конфигурации в Go используют spf13/viper, наверняка вы о нём слышали.

Но если вам хочется минималистичности и простоты, Clean Env вам понравится. Тут нет ничего лишнего, а значит легко разобраться, сложно сломать. При этом, всё необходимое тут имеется, в том числе поддержка популярных форматов конфига: yaml, json, toml, env.

Особенно мне понравилась работа с тегами структуры, в которую будет парситься конфиг:

- env-default - дефолтные значения для параметров
- yaml / json / env - имена параметров для парсинге из разных источников
- env-required - отмечает поле как обязательное
- и др.

У Viper не все из этого есть, а для задания имени параметров нужно использовать неочевидный тег - mapstructure.

————
Кстати, если вам вдруг не понравился ни Viper, ни Clean Env, можете посмотреть в сторону koanf, тоже интересный и популярный вариант.

————
💻 Расскажите в комментариях, какими библиотеками для конфигурации вы пользовались, какие вам больше понравились и почему

#package #configuration
Please open Telegram to view this post
VIEW IN TELEGRAM
👍36🔥53