Мерль
Зачем?
потому что именно на ранних этапах всё регулярно ломают
и хочется уметь обновлять часть зависимостей, точно зная что ничего при этом не сломается
Мерль
по крайней мере когда есть развесистая логика и/или много моделей
Daniel
Daniel
Мерль
опять же, я думаю что когда логики немного или нет связности, то заморочки с версиями нет никакой конечно
Daniel
Почему gopkg.lock не работает?
Мерль
Почему gopkg.lock не работает?
да он работает
просто когда делаешь мажорное обновление зависимости, то это по-хорошему надо делать выставляя новую версию в gopkg/toml
"~v1.0.0" -> "~v2.0.0"
Daniel
А! Ну да, если есть требования по версии - их придется указывать :)
Только откуда взяться требованиям по версии на этапе бурной разработки?
Мерль
Daniel
Может, просто не надо слишком рано начинать фиксировать версии? :)
Мерль
То есть это не про соблюдение внешнего контракта по API, во всяком случае не внешнего по отношению ко всему проекту в целом
Мерль
Имхо
Daniel
Разве?
Daniel
От тегов еще туда-сюда, но от версий?
Daniel
Нет же плана поддерживать несколько ранних версий, так?
Daniel
Значит - в рельности есть только последняя, и к ней надо все тянуть
Антон
Антон
А, она не на го
Daniel
Нет никакой первой версии, она не поддерживается. Новый прод надо или с тем же коммитом собирать, или до последней тянуть
Dmitry
нужна простенькая либа чтобы переменные окружения и флаги и дефолтовые значения попроще цеплять (т.е нужен приоритет дефаулт->окружение->флаги прозрачно и просто)
Daniel
Viper?
Антон
Daniel
Или как там его...
Мерль
Мерль
И то и то живёт слишком бурной жизнью
Dmitry
Viper?
да. наверно подойдет, если не придется кучу документации перелопачивать чтобы встроить
Мерль
Daniel
Daniel
Мерль
Daniel
Dmitry
Dmitry
в данный момент я не вижу примеров как sflags поддерживает переменные окружения.
Dmitry
это печально
Dmitry
а не. нашел `SSL bool `env:"HTTP_SSL_VALUE"`` . хм а флаг можно определить для этой же переменной
Dmitry
Daniel
you got it all wrong
Daniel
коллеги, кто gometalinter пользуется, вы успели заценить https://github.com/golangci/golangci-lint?
Daniel
я вот рекомендую весьма
Мерль
Мерль
go-critic/go-critic: The most opinionated Go source code linter
https://github.com/go-critic/go-critic
Michael
а кто пользуется vscode, встроенных тулзовин не хватает?
Мерль
Michael
Там gometalinter
нашёл в коммите месячной давности
Lint-on-save (using golint or gometalinter or megacheck or golangci-lint or revive)
🏁Александр
а что есть для нормализации html?
🏁Александр
у меня что-то крутиться, где то была опция автоисправления синтаксиса
Koz@k
Народ не в курсе случаем есть каналы по java в телеге ?
Dmitry
https://t.me/javarush
Koz@k
Спасибо
Dmitry
помогите с viper. не цепляет переменные окружения почему то
Dmitry
https://github.com/RedSkotina/xrich/blob/b0dc456f17cdd8befb83a7dbbf92f7f6852141d9/cmd/xrich_telebot/main.go#L37
Dmitry
почему то пустая строка в viper.GetString("token")
Dmitry
хотя на os.GetEnv все нормально получает
Dmitry
Anonymous
cfg := viper.New()
cfg.SetEnvPrefix(envPrefix)
cfg.AutomaticEnv()
cfg.SetEnvKeyReplacer(strings.NewReplacer(".", "_"))
Anonymous
у меня так все работает
Anonymous
replacer это при необходимости
Dmitry
блин а обязательно норвый обект cfg делать?
Dmitry
я просто через глобальные все вызываю
Dmitry
как в примерах
Dmitry
я попробовал методом научного тыка viper.AutomaticEnv() куда попало вставлять.ю ни один вариант не работает
Dmitry
сраный документация сраного опенсорса
Billyfbrain
подскажите чем можно побенчмаркать сервисы на бинарном протоколе?