
Александр
11.08.2018
08:44:01
из готового

Daniel
11.08.2018
08:44:11
возможно, просто не узнал
но если нет - нам же лучше, можно запилить и прославиться
(сам я пилить не буду - мне генерики не были ни разу нужны за последние 5 лет)

Google

Александр
11.08.2018
08:46:25
на самом деле я сталкивался несколько раз
когда много однотипных сущностей
аля "персонал" и "клиенты"
приходится много копипастить ?
они оба люди и сразу например фио и дата рождения идут в дубль

Bohdan
11.08.2018
08:50:48

Daniel
11.08.2018
08:51:22
не, не помогает. копипаста проще оказывается, и легче поддерживается

Александр
11.08.2018
08:53:35

Subbotin
11.08.2018
08:55:03

Daniel
11.08.2018
08:55:40
по кодогенерации ide, конечно же, навигируется нормально

Bohdan
11.08.2018
08:55:40
если есть Employee и Client, у которых есть имя и почта - можно сделать структуру ContactData, которая будет и у Employee, и у Client

Daniel
11.08.2018
08:56:16
и сойти с ума, когда окажется, что структура типов разработана с ошибками

Bohdan
11.08.2018
08:56:23
это, конечно, не самое гибкое решение в плане кастомизации, но если данные одинаковые/опциональные - почему нет?

Google

Yuriy
11.08.2018
09:52:05

Kirill
11.08.2018
09:52:52

Yuriy
11.08.2018
09:55:51
У меня проект на гошке :(
Гошный graphql-go очень кривой - нет возможности нормально описать кастомные директивы/скаляры для хендлера, хотя 80% работы связано именно с этим.

Daniel
11.08.2018
09:56:40
помимо graphql есть swagger и grpc
я бы выбрал grpc

Yuriy
11.08.2018
09:59:25
помимо graphql есть swagger и grpc
swagger… эм ну пока документировать лучше в raml’e, т.к. вышла 1.0 спека.
Для простых вещей вполне покатит.
GRPC не везде подходит, да и я не думаю что у людей будет желание protobuf гонять/генерить.

Kirill
11.08.2018
10:01:33

Yuriy
11.08.2018
10:02:18

Daniel
11.08.2018
10:19:10

Yuriy
11.08.2018
10:20:52
а расскажите - чем лучше документировать в raml?
Нету костылей с JSON-Schema, есть поддержка RBAC авторизации и аутентификации в рамках OAuth / JWT, есть Trait’ы… code reuse получается больше.
Ну и с raml’a 1.0 можно нормально сгенерить swagger, но не наоборот.

Daniel
11.08.2018
10:21:54
если из raml можно сгенерить swagger - они эквивалентны по фичам

Yuriy
11.08.2018
10:23:53
если из raml можно сгенерить swagger - они эквивалентны по фичам
Нет, конкретно фичей по code reuse у Raml’a больше… они хотя бы есть ?
Говорю же у raml’a переиспользование кода гораздо больше и нету костылей с json-schema.
При генерации с raml’a получаем в 2-3 раза больше swagger спеки… потому что там code reuse хромает.
Но естественно при генерации raml’a со swagger’a, получаем такой же толстый raml, потому что генераторы не умеют идентифицировать повторяющиеся куски и запихнуть их в trait’ы, правила или схему.

Daniel
11.08.2018
10:25:25
переиспользование и "костыли с json-schema" (не знаю, о чем вы) - это не про фичи, это про способы описания фич
code reuse - это единственное преймущество, с вашей точки зрения?

Yuriy
11.08.2018
10:26:08
whatever

Daniel
11.08.2018
10:26:22
угу
стоит оно того, что на каждый raml проект приходится 5 swagger проектов?
в смысле - стоит ли тратить врем] на изучение?

Yuriy
11.08.2018
10:29:12

Google

Yuriy
11.08.2018
10:29:44

Daniel
11.08.2018
10:30:26
технологию мы выбираем не по отсутствию изъянов в дизаайне обычно.
вот у go есть несколько серьезнейших проблем, но нам пофиг

Yuriy
11.08.2018
10:32:20
raml теперь тоже openapi :)
У них есть совместимость на уровне генераторов swagger’a .
Т.е. кому нужен swagger - могут нормально сгенерировать и это поддерживается mulesoft’ом.
На этом их вовлечение в OpenAPI заканчивается.

Daniel
11.08.2018
10:32:44
а поправить?

Yuriy
11.08.2018
10:33:30
а поправить?
Нет, нужен single source of truth - нет смысла мешать пару спек в кучу…

Subbotin
11.08.2018
12:08:39
народ, а напомните быстро, а то гуглить с телефона неудобно. деферы выполняются в порядке указания или в обратном?

Лемур
11.08.2018
12:09:14
В обратном

Subbotin
11.08.2018
12:10:03
спасибо

?
11.08.2018
13:40:40

Combot
11.08.2018
13:40:40
Constantine (0) увеличил репутацию Daniel Podolsky (3)

Roman
11.08.2018
14:02:25
это только мне так везет или кажется Единорогов стали показывать чаще на Гитхабе после покупки его Microfost'ом?

Oleh
11.08.2018
14:03:32
не видел

Roman
11.08.2018
14:05:26
да некоторые репозитории случайным образом вываливаются на заглушку https://pbs.twimg.com/media/DiPmlKUUwAEFKU4.jpg:large

Oleh
11.08.2018
14:07:54
кек
какой то агресивный единорог

Andrey
11.08.2018
14:16:11
Помогите разобраться. Не понимаю, почему поле меняет тип.
https://dev.to/pauljlucas/go-tcha-when-assigning-via-pointer-changes-your-type-2b3g

Roman
11.08.2018
14:37:53

Winterhold
11.08.2018
14:40:50

Google

Yuriy
11.08.2018
14:49:35
эм, что?!
Простой вопрос: зачем в GraphQL парсере AST если в самом GraphQL нет ассоциативности ?

Daniel
11.08.2018
14:49:54

Roman
11.08.2018
14:50:14

Yuriy
11.08.2018
14:50:52

Roman
11.08.2018
14:51:54

Yuriy
11.08.2018
14:53:12

Roman
11.08.2018
14:54:23

Человек
11.08.2018
15:14:51
Здравствуйте, я не пойму че за приколы вытворяет Golang. Файл cf.txt есть, директория под него тоже созданна. Файл создает, но не хочет копировать информацию... У меня такое впервые. Уже сижу час всё проверяю, всё досконально проверил, всё верно. Кстати с другими директориями тоже не работает. Вот код: https://pastebin.com/TLxqFY1G

undiabler
11.08.2018
15:18:35
а закрывать созданный файл кто будет?

Roman
11.08.2018
15:20:31

Человек
11.08.2018
15:22:43
аааааааааааааа, я понял, я неправильно указал аргументы в io.Copy
вернее перепутал

Daniel
11.08.2018
15:38:29

Oleh
11.08.2018
15:53:43
А на го уже можна использовать https прокси?
А то как то давно пробовал, была ошибка с tls

Ilia
11.08.2018
16:00:17
ребят, ай нид хелп. Как засунуть в докер приложение с go-reform ? использую dep
ткните пожалуйста в какую сторону думать

Roman
11.08.2018
17:07:52
ребят, не подскажете где найти графы данных для тестов (в любом человеко-читаемом виде)?

Google

Roman
11.08.2018
17:08:38
мне удалось на данный момент найти только https://schema.org но это не совсем графы и в конце концов приходится самому граф из описанных метаданных придумывать

Yuriy
11.08.2018
17:11:06

Roman
11.08.2018
17:11:58

Ilia
11.08.2018
20:15:38

Yuriy
11.08.2018
22:22:49

Roman
11.08.2018
22:27:06
в самом низу даже привёл пример как context’ы хорошо вписываются в случае GraphQL библиотеки


Yuriy
11.08.2018
23:19:12
в самом низу даже привёл пример как context’ы хорошо вписываются в случае GraphQL библиотеки
Мне проще допустим для парсера написать кастомный контекст и проверять discard state на atomic fence, допустим, раз в 50 байт - это на мнооого шустрее того же контекста, и без гемора с каскадированием (пробросом вглубь) и каналами.
Rule of thumb: на один I/O Reader/Writer буферизированный - один контекст, можно и без каналов если хочется вот прям high-availability.
Я просто graphql либу с кастомными фичами (скалярами/директивами/failfast’ом/msgpack’ом etc) пилю - приходится сталкиваться с этим всем делом.
Особенно весело когда fb внезапно правит спеку без какой-либо errat’ы и возникает эффект «Воу, что-то новенькое!». Ведь Ли Байрон уже с фб эвакуировался…. и х его знает чем они там орудуют и что употребляют в промежутках.