Slach
https://play.golang.org/p/ZQvOzsfxLU вот посмотри тут код пожалуйста запусти вот я тоже понять хочу что в этом коде не так два вопроса 1) почему JSON.Unmarshal не находит коментарии которые я расставил? и парсит json целиком? 2) почему после того как он распарсил, результат нельзя сохранить его в начальной структуре тут я понимаю, что надо как то изголяться и сделать передачу по ссылке, но я считал что слайс это блин и есть передача по ссылке и изменение слайса, переданого в параметрах должно менять родительский слайс, но похоже тут алокация слайса на стеке идет... и надо как то сделать так чтобы передавался *interface{} вместо interface{}, но так нельзя, golang уже не может типы скастовать...
Slach
https://gist.github.com/kousik93/6d95c4c4d37d8c731d7b неужели чтобы "частично распарсить JSON" придется городить вот такое жуткое убожество с type casting ?
Oleg
какой сейчас самый модный web-фреймворк?
Kirill
Джанго
Michael
rails, yii etc
Michael
но оно не сравнится с gramework!
Anton
но оно не сравнится с gramework!
Кирилл доплачивает? ;)
dev_sheep
😁
Michael
если у вас есть что показать, то почему бы это и не показать
Anton
https://gist.github.com/kousik93/6d95c4c4d37d8c731d7b неужели чтобы "частично распарсить JSON" придется городить вот такое жуткое убожество с type casting ?
что зачит "частично распарсить"? когда передался как cfg interface{} - считай вся информация о типах "утеряна" и тебя анмаршалит в map[string]interface и в твой слайс это ну никак не ложится.. может с кодом нагляднее будет.. https://play.golang.org/p/9_6G5z3jBP вот если бы у тебя в кач-ве аргумента твоего parseJSONIds был указатель на тип.. а не интерфейс, то все бы было хорошо ;)
Slach
"частично распарсить", означает получить на выходе структуру которая содержит только часть данных из JSON я понял что для того чтобы это сделать придется объявить какую то структуру, которая описывает путь до твоих данных, относительно корня документа вот так https://play.golang.org/p/puFPGB0BQN
Slach
и про указатель на тип, я тоже понял, спасибо за разьяснения
Anton
и про указатель на тип, я тоже понял, спасибо за разьяснения
не за что. эх, надо было мне начать утро с прочтения другого чатика :) вижу там сообщения о том, что вы разобрались уже
Slach
=) ну не до конца разобрался... но в целом да, все равно спасибо
Sheldhur
какие в го соглашения о именовании переменных\методов\etc?
Sheldhur
я чёт найти не могу
Mr.Napcae
как проверить пустой ли элемент в струкруте ?
Chebyrash
Mr.Napcae
Data.Response.Items[1].Attachments
Mr.Napcae
нулейвой есть единицы нет
Daniel
какие в го соглашения о именовании переменных\методов\etc?
Camel case, регистр первой буквы имеет сакральное значение
Sheldhur
какое же?
Daniel
См доку, а?
Sheldhur
ну она большая
Sheldhur
куда конкретно смотреть?
Zver
какое же?
От регистра первой буквы зависит публичность.
Daniel
Экспорт из пакета
aadz
какие в го соглашения о именовании переменных\методов\etc?
https://golang.org/doc/effective_go.html#names Finally, the convention in Go is to use MixedCaps or mixedCaps rather than underscores to write multiword names.
Sheldhur
спсб
Мерль
А кто-нибудьиз чатика монгу сейчас использует?
Мерль
mgo почил в бозе, а нового как-то не предвидится
Danil Á.
Мерль
В смысле почил? Все с ним норм
А, ну да, я просто смотрел на официальном сайте 🤔
engelbart
Читали кстати что boltdb заморозили
engelbart
как жить будем
Stanislav
на него положили болт?)
Stanislav
ну и говорят, что есть https://github.com/coreos/bbolt
engelbart
в гитхабушке
Anton
а.. ну там видели, да.. еще неделю назад что ли было я думал может где еще какие подробности всплыли
Kirill
Всем привет! Имею следующий код: https://play.golang.org/p/h6Y6iBhMF2 Суть в том, что я создаю tcp слушатель, который затем принимает все входящие соединения и обрабатывает их Вопрос в том, как можно реализовать прием входящих сообщений без такого вечного цикла? Т.к. у меня по сути все остальное приложение в это время встает
aadz
Всем привет! Имею следующий код: https://play.golang.org/p/h6Y6iBhMF2 Суть в том, что я создаю tcp слушатель, который затем принимает все входящие соединения и обрабатывает их Вопрос в том, как можно реализовать прием входящих сообщений без такого вечного цикла? Т.к. у меня по сути все остальное приложение в это время встает
Ничего вставать не должно (без веской на то причины). Слушатель дожидается нового соединения и в горутине запускает обработчик, которому соединение передает, а сам ждет дальше. Сам слушатель может прекрасно слушать тоже из горутины, чтобы паралелльно с этим и еще что-то работать могло.
Kirill
Ничего вставать не должно (без веской на то причины). Слушатель дожидается нового соединения и в горутине запускает обработчик, которому соединение передает, а сам ждет дальше. Сам слушатель может прекрасно слушать тоже из горутины, чтобы паралелльно с этим и еще что-то работать могло.
У меня этот код находится в функции, которая вызывается из main В main после вызова этой функции стоит fmt.Println, который не срабатывает Я правильно понимаю, что мне надо вынести цикл с Accept() в отдельную рутину?
aadz
Да, из main надо просто просто в горутине запустить фнкцию, где будет Accept
aadz
можно отдельную функцию и не делать, а просто сказать go func() { ln, _ := net.ListenTCP("tcp", laddr) for { ... } ..... }()
Kirill
можно отдельную функцию и не делать, а просто сказать go func() { ln, _ := net.ListenTCP("tcp", laddr) for { ... } ..... }()
https://play.golang.org/p/AhkdPGdwjJ Теперь приложение делает вывод в консоль и завершается
aadz
Ну, сделай канал, который будет ждать пока твоя безымянная функция в него что-то напишет, а напишет она тогда, когда решит закончить работу
Kirill
Благодарю за помощь, сейчас попробую
Мерль
Maintained mgo fork #Mongodb #golang driver https://github.com/globalsign/mgo/blob/master/README.md
Sheldhur
dep юзает кто? чё он от меня хочет, я не пойму C:\Users\Sheldhur\GoglandProjects\TrackerGrabber>dep init ctx.DetectProjectGOPATH: C:\Users\Sheldhur\GoglandProjects\TrackerGrabber is not within a known GOPATHset GOPATH =C:\Users\Sheldhur\GoglandProjects\TrackerGrabbe C:\Users\Sheldhur\GoglandProjects\TrackerGrabber>dep init root project import: C:\Users\Sheldhur\GoglandProjects\TrackerGrabber not in GOPATH
Sheldhur
всё, разобрался вроде
Sheldhur
скомпилиный dep можно в C:\Go\bin закинуть? или не стоит?
aadz
стоит, как и любую гошную утилиту
Oleg
есть нормальный docker-compose для разработки golang с инкрементальной компиляцией, перезапуском, дебагом?
Oleg
кто использует https://github.com/tockins/realize?
Мерль
Да они охренели! https://caddyserver.com/pricing
Alexander
да кому он нужен ?
Anonymous
Действительно зачем
Valentin
Чот в первый раз о нем слышу. Это какой то аналог nginx?
Мерль
да кому он нужен ?
Очень удобная хрень с простой настройкой Просто воткнул и работает
Мерль
была
Мерль
Сразу с lets encrypt и прочим фаршем
Alexander
С lents encrypt и так проблем нет
Alexander
Рядом ставишь и работаешь
Alexander
Nginx в любом случае понадежней будет
Oleg
ну как, написал код, сохранил, произошла инкрементальная компиляция если все ок - сервер перезапустился
Alexander
Ну это больше похоже на фичи IDE
Oleg
не, IDE это подстветка, рефакторинг, дебаг, интроспекция.
Oleg
glide vs gopkg?
Alexander
Ну проверку изменений кода проще через ide и запуск перекомпиляции. Или подразумевается внешний сервис который мониторит изменения кода как в gulp верстальщики используют?
Alexander
Если да то это не про docker-compose