@proelixir

Страница 848 из 1045
Evgeny
04.01.2018
15:59:38
да и вообще, очереди с приоритетами не такая уж редкая вещь

?
04.01.2018
16:22:25
Я запустил mix phx.server, потом случайно нажал ^Z. Теперь не могу снвова запустить эту команду, говорит, что адрес уже используется, и вообще. Как убить этот страшный фонвоый процесс7

Slava
04.01.2018
16:23:58
или просто глянь в top айдишник процесса и страшно его убей

Google
?
04.01.2018
16:23:59
Написать в терминале fg а потом ctrl-c?
вот это волшебство, спасибо!

Slava
04.01.2018
16:29:13
как-то так, да

?
04.01.2018
16:36:53
У меня есть рут get "/:year/:month", MonthController, :show. Под него, видимо, попадают все ассеты. На работоспособность программы не влияет, но терминал весь красный. Что делать?

Azat
04.01.2018
16:41:56
Поменять на что-нибудь вида /m/:year/:month ?

?
04.01.2018
16:42:15
не вариант. это было бы глупо

вся суть программы — календарь

Evgeny
04.01.2018
18:35:24
написать Plug, который будет в зависимости от year и month либо ничего не делать либо менять путь на /m/:year/:month.

Костыльно, но будет работать

Я вот даже любопытства ради накидал говна. В Endpoint добавляем plug-функцию: def calendar(%{path_info: [year, month]} = conn, _opts) do if Regex.match?(~r/[0-9]{4}/, year) && Regex.match?(~r/[0-9]{2}/, month) do %{conn | path_info: ["m" | conn.path_info] } else conn end end def calendar(conn, _opts) do conn end

Там же перед плагом роутера дописываем этот наш плаг: plug :calendar plug MyAppWeb.Router

Ну а затем уже в роутере пишем get "/m/:year/:month", MonthController, :show

даже наверное надо пихать это плаг вообще ближе к самому началу, до статики: plug :calendar plug Plug.Static, ...

Google
Dmitry
04.01.2018
18:51:47
@Virviil Это не антипаттерн и не косяк в архитектуре. Селективный receive используется очень много где в самом OTP, в особенности когда нужно обработать определённое конкретное сообщение, но при этом не трогать другие(да тот же GenServer.call так делает, ожидая ответ на свой запрос).

Dmitry
04.01.2018
18:56:03
@Virviil Конкретно такого там нет, но селективный receive используется.

Dmitry
04.01.2018
18:56:19
Dmitry
04.01.2018
18:56:26
Вначале это, а потом это, а потом может это

Dmitry
04.01.2018
18:56:43
Я имел ввиду антипаттерном вот этот вот подход

В лупе их можно в рядок выписать

Без ветвления

Тогда будет норм

Dmitry
04.01.2018
18:59:26
Зависит от ситуации.

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

В других случаях селективный receive удобнее

Any
05.01.2018
15:30:49
Парни, я деплою приложение с помощью edeliver. После билда идет загрузка релиза на прод (Uploading archive of release ххх from local release store). Я правильно понимаю, что сначала релиз скачивается ко мне с билд-сервера, а потом загружается на прод? Дело в том, что у меня билд и прод сервер - один и тот же, а вот скорость аплоада крайне низкая, из-за чего данный этап занимает очень долгое время и часто отваливается. Может есть способ как-то оптимизировать сей процесс, залив релиз на прод непосредственно с билд-сервера?

как вариант, может можно настроить полностью удаленную сборку приложения, чтоб я заливал только коммит, а дальше оно само билдилось?

Any
05.01.2018
18:21:55
Не в edeliver
а в чем лучше?

Dmitry
05.01.2018
18:24:02
а в чем лучше?
Никто не знает. Некоторые подозревают, что деплоить нужно в докер. Другие делают Bootleg. Третие собирают в CI релизы и пушат через Mina или Capistrano

Any
05.01.2018
18:26:38
Никто не знает. Некоторые подозревают, что деплоить нужно в докер. Другие делают Bootleg. Третие собирают в CI релизы и пушат через Mina или Capistrano
ясно, спасибо. Вроде как с докером та же история ожидается, пойду остальные варианты изучать

Google
Le
05.01.2018
18:27:51
Там 5 команд нужно выполнить

В коробке получишь микс на сервере, не придётся хуки для миграций делать

Any
05.01.2018
18:29:31
звучит весьма заманчиво

Le
05.01.2018
18:30:17
Если хочешь докером, то собирай образ на ci, на гитлабовском или циркл, потом запускай команду на сервере которая его с артефактов стащит и запустит

Если что могу конфигами и для первого и для второго способа поделиться

Any
05.01.2018
18:33:37
да, буду весьма признателен

btw, нашел решение в edeliver - https://github.com/edeliver/edeliver/issues/141#issuecomment-242731909

Алекс
06.01.2018
06:14:18
Кто нибудь в рамусе работал?

Den
06.01.2018
07:41:11


Возможно ли юзать Enum в custom guard?

Компилятор ругается, но все же)

Alexander
06.01.2018
11:56:54
это самый крутой "скриншот" что я видел

Alexander
06.01.2018
11:57:46
если это макбук - используй ctrl+cmd+shift+4

Admin
ERROR: S client not available

Alexander
06.01.2018
11:58:02
скриншот области сразу в слипборд

Maxim
06.01.2018
12:05:22
та по фото видно что это не макбук, могу предположить что это леново или асус, а там просто prtscreen и ctrl + v

Никита
06.01.2018
12:11:34
А потом открываешь Пуск-Стандартные-Paint и там контрл-в))

Buckler
06.01.2018
12:12:30
Hello, Timur! Please, calculate: 64+89=... If you don't answer - you'll get banned from the channel... Good luck!

Alex
06.01.2018
12:32:17
в след. Elixir появятся такие штуки https://hexdocs.pm/elixir/master/Kernel.html#defguard/1

Google
Aldar
06.01.2018
12:46:56
кастомные гарды? круто, обошли эрланг

Alexander
06.01.2018
12:49:08
кастомные гарды? круто, обошли эрланг
все равно в эрланг будет компиляция ?

Alex
06.01.2018
12:56:46
в след. Elixir появятся такие штуки https://hexdocs.pm/elixir/master/Kernel.html#defguard/1
"It raises at compile time if the definition uses expressions that aren’t allowed in guards"

То есть, это псевдонимы для гардов по сути

Alexey
06.01.2018
13:05:36
если это макбук - используй ctrl+cmd+shift+4
Cmd-shift-4 это вариант с выделением области

Aldar
06.01.2018
13:22:27
хотя очевидно что это нарушило бы работу паттерн матчинга эрланга

если б любые функции можно было туда вставлять

Alex
06.01.2018
13:29:06
Я подозреваю, что можно так собирать функции в время компиляции, чтобы в качестве гардов использовать что угодно, но это сложно и нужно будет перепахать заметную часть компилятора

Да и в конце концов, зачем

Dmitry
06.01.2018
16:39:51
если б любые функции можно было туда вставлять
В результате не появилось... ничего) Как было, так и осталось

Alexey
06.01.2018
17:23:45
Cmd-shift-4 это вариант с выделением области
Ctrl позволяет делать это без сохранения в файл, а кидает в буфер обмена

Ilja
06.01.2018
22:32:06
Про кастомные гуарды: наверно это просто позволяет собирать громоздкие гуард-конструкции во что-то именованное. Удобно. А ещё такие штуки можно тестировать.

Dany
06.01.2018
22:48:33
привет ребята

что нужно знать для вката в эликсир?

сорри за платиновый (наверное) вопрос

Евгений
06.01.2018
22:49:21
Просто берешь и вкатываешься.

Ну синтаксис надо. Про ОТП почитать можно.

Страница 848 из 1045