Size: a a a

2021 May 11

ЛА

Локоть Анатолий... in Go-go!
причина, по которой я от него отказался, это геморой при работе с енв  (потребность в файле), а еще огромный вес его и его зависимостей, которые существенно влияют на бинарник. Ну оно и понятно - у него огромный функционал, который целиком в моем кейсе не нужен.
источник

ЛА

Локоть Анатолий... in Go-go!
Чтобы считать что-то из env, а потом распарсить именно JSON, то используются только встроенные в го библиотеки...
источник

H

Hiroki Fujisawa in Go-go!
Справедливости ради, чтобы считать что-то из файла и распарсить в JSON стандартной библиотеки вполне достаточно.
источник

Z

Zver in Go-go!
Можно и то и другое. Если конфиг в ямле лежит, то конвертите в JSON и анмаршилите. Кстати, так кубер делает.
источник

H

Hiroki Fujisawa in Go-go!
Но зачем, если JSON - это валидный YAML?
источник

Z

Zver in Go-go!
json пакет умеет парсить в ЯМЛ?
источник

H

Hiroki Fujisawa in Go-go!
Наоборот
источник

Z

Zver in Go-go!
Дело в том что анмаршалеров для YAML для встроенных даже типов нет, а json есть, так же и с кастомными типами или сторонними библиотеками. Проще наделать анмаршалеров только под json и не мучится.
источник

Z

Zver in Go-go!
Кубер пошел этим путем. И в другом пакете такое же решение видел.
источник

H

Hiroki Fujisawa in Go-go!
Изначально k8s использовали как раз YAML :)
источник

Z

Zver in Go-go!
Но внутри парсится в json и анмаршалеры подвешены json и теги в структурах соответственно json только.
источник

H

Hiroki Fujisawa in Go-go!
Да, сейчас так
источник

Z

Zver in Go-go!
источник

N

Nikita in Go-go!
'
for _, val := range all {


     item := APICallBack{Result: "OK"}
     
     item.Debug = reply.String()
     item.Message = val
     jitem, err := json.Marshal(item)
     if err != nil {
       fmt.Println(err.Error())
       return
     }
     fmt.Println(string(jitem))  
'
источник

N

Nikita in Go-go!
подскажите как item запихнуть в массив?
источник

VK

Vadik Karmanov in Go-go!
Создаешь массив типа итем с длиной как у all
источник

N

Nikita in Go-go!
tt := []string{}
     tt = append(tt, item)
источник

VK

Vadik Karmanov in Go-go!
потом запихиваешь туда данные
источник

VK

Vadik Karmanov in Go-go!
не обязательно
источник

N

Nikita in Go-go!
cannot use item (type APICallBack) as type string in append
источник