GOLANG_DIGEST Telegram 70
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
👍35🔥53



tgoop.com/golang_digest/70
Create:
Last Update:

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

BY Golang Дайджест




Share with your friend now:
tgoop.com/golang_digest/70

View MORE
Open in Telegram


Telegram News

Date: |

Click “Save” ; Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. How to create a business channel on Telegram? (Tutorial) How to Create a Private or Public Channel on Telegram? To upload a logo, click the Menu icon and select “Manage Channel.” In a new window, hit the Camera icon.
from us


Telegram Golang Дайджест
FROM American