@proGO

Страница 1210 из 1674
Slach
07.02.2018
16:03:32
в коде в одной из веток if ... err!=nil есть вызов log.Fatal() как в тестах это грамотно отработать ?

https://stackoverflow.com/questions/30688554/how-to-test-go-function-containing-log-fatal мнда, чето как то черезжопно немного

Mykyta
07.02.2018
16:11:02
в коде в одной из веток if ... err!=nil есть вызов log.Fatal() как в тестах это грамотно отработать ?
Никак, потому, что логика с фаталом должна лежать в composition root, а его тестировать как бы не надо

Google
Ivan
07.02.2018
16:11:51
Всем привет

Demuz
07.02.2018
16:13:07
Проблема, что может оказаться 0:38 - 0:59 надо нарезать по 5 мин
Блин, времени нет )))) Смотрите. Просто диапазон времени возьмите. Откройте цикл, затем у вас будет нулевой индекс как стартовая точка отсчета. К этой точке отсчета прибавляйте N минут, на которые вам нужно порезать диапазон. Прибавляйте до тех пор, пока последнее время+Nминут не станет > (больше) последнего индекса.

Ivan
07.02.2018
16:14:36




Demuz
07.02.2018
16:25:07
Придет три минуты, надо будет нарезать по три минуты, будет 10, надо будет порезать по 10, те 0:10; 0:20; 0:30 ...
func RezatelVremeni3000(intervalMinut time.Duration) []time.Time { time1, time2, time3, time4 := time.Now(), time.Now(), time.Now(), time.Now() times := []time.Time{ time1, time2, time3, time4, } var newTimeArray []time.Time for _, timeUnit := range times { newTimeUnit := timeUnit.Add(intervalMinut*time.Minute) newTimeArray = append(newTimeArray, newTimeUnit) if newTimeUnit.Unix() > timeUnit.Unix() { return newTimeArray } } return nil }

Slach
07.02.2018
16:27:11
Никак, потому, что логика с фаталом должна лежать в composition root, а его тестировать как бы не надо
непонятно что такое composition root ? в смысле log.Fatal() должен быть только в main.go ? ;)

Mykyta
07.02.2018
16:44:05
непонятно что такое composition root ? в смысле log.Fatal() должен быть только в main.go ? ;)
Ну если объяснять на пальцах для тех, кто не знает, что такое composition root, то да.

Slach
07.02.2018
17:00:00
Ну если объяснять на пальцах для тех, кто не знает, что такое composition root, то да.
A Composition Root is a (preferably) unique location in an application where modules are composed together. ну и каким образом это относится к log.Fatal() ? и почему? ну из разных же кусков может приложение выходить то... почему это bad design ? непонятно, можете пояснить глупому?

Rival
07.02.2018
19:41:27
Всем привет, друг собирает статистику для статьи на хабре по теме "взаимосвязь стека технологий с кожными заболеваниями", просьба уделить 30 секунд заполнению анонимной формы https://goo.gl/forms/32ab6JXcEjPg864t2

Rival
07.02.2018
20:11:55
Нет, не троллинг

Marlik
07.02.2018
20:16:38
Нет, не троллинг
Там в анкете есть неточность, там предлагается указать болезнь. Но нет пункта, отсутствие болезни.

Google
vktr
07.02.2018
20:23:23
Всем здрасьте

Не знаю, правильное ли место спрашивать тут, но у меня есть вопрос про oauth2. Точнее про https://github.com/ory/hydra (оно на go и авторизация у меня на go). Есть тут желающие, пообсуждать такой топик? Если да - задам вопросец ?

vktr
07.02.2018
20:36:11
что в этом что во втором чате можно задавать вопросы без желания обсуждать.
Так если никто не заинтересован, то что толку задавать? - а так, спросил, прощупали интерес

Aleksandr
07.02.2018
20:41:50
Так если никто не заинтересован, то что толку задавать? - а так, спросил, прощупали интерес
ну вот видишь, я помогаю тебе получить ответ, хотя интереса в этом никакого нет

значит можно даже без интереса

vktr
07.02.2018
20:43:11
Но вопрос таков: в oauth2 есть такой флоу как resource owner password credentials grant (ROPC). И это очень удобно для first party клиентов. В Hydra этот флоу игнорируется https://github.com/ory/hydra/pull/297#issuecomment-294282671 . Таким образом остаётся либо обычный auth code grant, либо client credentials grant. А надо всего лишь для first party клиентов сделать login форму, после сабмита которой получается access_token. В случае client credentials grant не авторизуется конечный пользователь, и его надо хранить как-то иначе чем в access_token, а в случае с auth code grant надо проходить уйму редиректов. Вопрос в том, как бы это сделать так чтобы не плеваться от наколеночности решения.

Aleksandr
07.02.2018
20:44:02
вот

@schors по-моему вертел гидру

vktr
07.02.2018
20:47:33
Phil
07.02.2018
20:47:35
На хую

Aleksandr
07.02.2018
20:47:57
онт ответил на твой вопрос?

Phil
07.02.2018
20:49:11
Это так скажем правильное академические решение в экосистеме oauth2. Вообще там напрашивается oauth3 с выпиливанием костылей и этой дурной привязки к кросссервисной авторизации

Что нужно знать про oauth2 - он вообще не задуман для общего api. Но часть его задумок оказалась настолько удобной, что таки это стали использовать

vktr
07.02.2018
20:53:48
Oauth честно говоря недоделка страшная. Короче. Password grant - это костыль. Делай отдельный /login с выдачей authcode. И уже дальше токен по коду
Проблема в compatibility. Есть рабочая single page app, которая тупо зовёт login с именем и паролем и ожидает куку с авторизацией (оно сессию ждало, но токен ей плюнуть - это не вопрос). Так вот, в том то и вопрос, можно ли ей как-то такую куку соорудить не скрывая весть code grant flow в backed. Ибо переделать это SAP прямо сейчас рук нет, а концепт с oauth2 надо выкатывать

Phil
07.02.2018
20:55:30
Делай этот кусок отдельным от гидры

vktr
07.02.2018
20:56:13
Что нужно знать про oauth2 - он вообще не задуман для общего api. Но часть его задумок оказалась настолько удобной, что таки это стали использовать
В том то и засада, что интеграции задуманы, и oauth для сторонних клиентов - это что доктор прописал. А быстро прикрутить к старому - проблема

vktr
07.02.2018
20:59:16
Делай этот кусок отдельным от гидры
А как отдельно? гидра ж токены выдает, а чтоб выдала, надо ей consent flow пройти. А чтоб его пройти, надо весь флоу спрятать в бэкенде. Просто неприятно это. Сегодня рефакторил и тестами покрывал и прям чувствую что костыль. Оч неприятно. Вот и ищу совета, может кто лучше придумал чем тупо code flow в Backend прятать

Google
vktr
07.02.2018
21:01:43
Хотя я не вижу проблемы и прокладку сделать с полным flow в ней
Я именно так и сделал, но решение прям воняет: user agent и client - два в одном, выражаясь в терминах oauth ?

vktr
07.02.2018
21:03:36
Так вклейся в базу параллельно
Тоже норм костыль, но лучше уж прятать флоу - легче выпилить будет, когда таки переделают SPA

Phil
07.02.2018
21:06:01
Тоже норм костыль, но лучше уж прятать флоу - легче выпилить будет, когда таки переделают SPA
Например. Я бы предложил выписывать поверх гидры код, а дальше флоу спрятанный

Phil
07.02.2018
21:07:43
Что значит "выписывать код"?
А гле ты возьмешьauthcode?

vktr
07.02.2018
21:09:09
А гле ты возьмешьauthcode?
Так я и сам oauth2/auth.... в бэкенде спрятал пока, и код я в этом же хелпере получаю и state валидирую.

@schors Это был скорее крик боли, с надеждой на альтернативный решения. Но и просто увидеть подтверждение правильности решения тоже много стоит. Спасибо

Aleksandr
07.02.2018
21:43:33
We have just released Go 1.8.7, Go 1.9.4, and Go 1.10rc2, to address a recently-reported security issue. We recommend that all users update to one of these releases (if you’re not sure which, choose Go 1.9.4). https://golang.org/dl/

Alexey
08.02.2018
05:07:33
Я симлинком переключаю версии, папки со старыми постепенно удаляю, когда точно с новыми нет проблем

Marlik
08.02.2018
05:14:31
Так-то конечно лёгкий геморой, када не стандартно ставил, но вроде обновился по этой доке https://golang.org/doc/install?download=go1.9.4.linux-amd64.tar.gz

Andrey
08.02.2018
06:47:56
Доброго всем! Кто какой библиотечкой на go пользуется для тележечных ботов ?

Slach
08.02.2018
07:31:07
Не наброса для, а просто если придет в чатег очередной "питонщик" прочитал тут вот это https://nim-lang.org/docs/manual.html#parallel-spawn и вот это https://nim-lang.org/docs/manual.html#exception-handling-try-statement блин, всегда хотелось иметь возможность писать на Python Но генерировать нормальные бинарники и нормально писать мультитредовые приложения ;) golang выглядел как некий сурогат, богатый на ПИАР, но простой и рабочий =) https://github.com/kostya/benchmarks а тут вон получается, что код похоже не будет сильно кривым блин, может перестать на golang писать? ;)

Никита
08.02.2018
07:37:37
Спорная штука все эти бенчи
По другому определить что быстрее - никак

Google
Admin
ERROR: S client not available

Zver
08.02.2018
07:41:40
Жаль, что нет постоянной ссылки для последнего релиза, чтобы автоматом скачивать и ставить.

Demuz
08.02.2018
07:43:20


Launch Android Studio. File > Import Project... to import the reference project from $GOPATH/src/golang.org/x/mobile/example/bind/android. Open hello/build.gradle to edit the absolute path to GOPATH and GO. Build and deploy the application to the device.

Alexander
08.02.2018
07:46:12
Для рассылок смс кто чем пользуется?

Roman
08.02.2018
07:47:38
По другому определить что быстрее - никак
Ну python-версию я могу неплохо ускорить

Demuz
08.02.2018
07:47:42
Для рассылок смс кто чем пользуется?
Для любительских и тестовых, python + qpython3. Учень уж все просто там.

Alexander
08.02.2018
07:48:24
Alex
08.02.2018
07:48:38
twilio

Demuz
08.02.2018
07:49:04
Мне сервис с апи из go юзать
У нас маловато смс рассылается. Поэтому через простой меизу м1 рассылаю через питон.

Slach
08.02.2018
08:24:09
если конкретно о Nim, ставили , пробовали, зарепортили баги компилятора, живём спокойно с Go
спасибо, буду иметь ввиду =( блин правда жаль что не взлетает... идея все таки здравая

Виктория
08.02.2018
08:28:34
всем привет)

Александр
08.02.2018
08:29:11
привет

Виктория
08.02.2018
08:30:24
кто откуда7))

Google
Александр
08.02.2018
08:30:57
Москва

Виктория
08.02.2018
08:31:10
я с Тулы

Eldar
08.02.2018
08:31:12
тут все из голандии

Александр
08.02.2018
08:42:14
я с Тулы
а вы из HR? Или просто познакомится?

Alexey
08.02.2018
08:47:03
а вы из HR? Или просто познакомится?
вот они... вот они пуганные программисты

Vlad
08.02.2018
08:48:10
Daniel
08.02.2018
08:48:35
а чем плохо "просто познакомиться"?

John
08.02.2018
08:48:37
а вы из HR? Или просто познакомится?
А какая разница ? Одно другому не мешает )

Igor
08.02.2018
08:48:40
А ты правда HR...

Daniel
08.02.2018
08:48:56
не тиндером же единым

Страница 1210 из 1674