Size: a a a

2020 October 08

VT

Valentyn Troyan in Go-go!
https://play.golang.org/p/IBrXuBgnFZD

Подскажите пожалуйста, почему ошибка при объявлении вложенных struct
источник

RS

Rusty Shackleford in Go-go!
Valentyn Troyan
https://play.golang.org/p/IBrXuBgnFZD

Подскажите пожалуйста, почему ошибка при объявлении вложенных struct
Определите тип Data до JsonMessage
источник

VT

Valentyn Troyan in Go-go!
Rusty Shackleford
Определите тип Data до JsonMessage
спасибо, помогло!
источник

⌬C

⌬ Richard Cooper in Go-go!
Господа у нас есть проблема:

кто сталкивался с тестирование декодеров бинарных данных? У нас возникла неприятная ситуация, что декодер в какой-то момент то ли сбивается, то ли не те данные принимает, короче не может декодировать длинные сообщения. Логику отловить не получается.

Полное описание проблемы:
https://github.com/xelaj/mtproto/issues/13
источник

⌬C

⌬ Richard Cooper in Go-go!
@zelenin может знаешь с чем может быть связано?
источник

⌬C

⌬ Richard Cooper in Go-go!
либо как тесты написать
источник

ЛА

Локоть Анатолий... in Go-go!
⌬ Richard Cooper
Господа у нас есть проблема:

кто сталкивался с тестирование декодеров бинарных данных? У нас возникла неприятная ситуация, что декодер в какой-то момент то ли сбивается, то ли не те данные принимает, короче не может декодировать длинные сообщения. Логику отловить не получается.

Полное описание проблемы:
https://github.com/xelaj/mtproto/issues/13
Я бы предложил с дебаггером запустить код, ну и посмотреть что там не так. Goland очень удобно отображает даже бинарные данные, ну и текст паники написать бы
источник

AS

Alexey Shumkin in Go-go!
Локоть Анатолий
Я бы предложил с дебаггером запустить код, ну и посмотреть что там не так. Goland очень удобно отображает даже бинарные данные, ну и текст паники написать бы
+
источник

⌬C

⌬ Richard Cooper in Go-go!
Локоть Анатолий
Я бы предложил с дебаггером запустить код, ну и посмотреть что там не так. Goland очень удобно отображает даже бинарные данные, ну и текст паники написать бы
весь день так сижу дебажу
источник

⌬C

⌬ Richard Cooper in Go-go!
не ищется
источник

DP

Daniel Podolsky in Go-go!
а тесты написали?
источник

RS

Rusty Shackleford in Go-go!
Там точно нет гонки? Ну типо байтовый слайс который где-то снаружи меняется....
источник

⌬C

⌬ Richard Cooper in Go-go!
Daniel Podolsky
а тесты написали?
вот мне как раз интересно как правильно писать тесты под декодирование бинарных данных
источник

⌬C

⌬ Richard Cooper in Go-go!
Rusty Shackleford
Там точно нет гонки? Ну типо байтовый слайс который где-то снаружи меняется....
хороший вопрос кстати
источник

⌬C

⌬ Richard Cooper in Go-go!
Rusty Shackleford
Там точно нет гонки? Ну типо байтовый слайс который где-то снаружи меняется....
неа, прогнал и билды и тесты через -race, ничего нет (хотя может это не четкий показатель). меняться может offset в bytes.Reader, но ридер вообще невозможно раскидать на две горутины или вообще в канал утащить (всмысле в имплементации которую я делал)

Причем самое странное — то заработает, то упадет. как построить архитектуру декодера так, что бы он хотя бы в виде дерева показывал где некорректные данные — я хз (мтпрото так устроен, что либо есть ошибка, либо нет)
источник

⌬C

⌬ Richard Cooper in Go-go!
Daniel Podolsky
а тесты написали?
под базовые типы тесты есть, под объекты нет, но там хоть миллиард тестов напиши, смысла не будет — может у ответов есть какая-то такая специфика, которая не описана в доках. мы поэтому и 3 недели сидели писали все это, потому что документация невероятно конченая и целиком не описывает что надо
источник

DP

Daniel Podolsky in Go-go!
Обычно такие проблемы становятся явными при написании тестов
источник

⌬C

⌬ Richard Cooper in Go-go!
источник

АП

Александр Попов... in Go-go!
хм, вот вопрос такой - а зачем народ заморачивается с очередью каллбеков если можно просто вызвать сохраненные в свойствах функции?
источник

АП

Александр Попов... in Go-go!
ну конечно получается не сейф, но и пофиг в принципе
источник