@scala_ru

Страница 648 из 1499
Oleg
10.05.2017
17:15:08
Например? Мускуль жив, жаба тоже, Coherence развивается, только опен офис пострадал.
Мускуль сдох, жаба сдыхает, coherence никто не знает что это, ещё 50 тайтлов в могильнике

KrivdaTheTriewe
10.05.2017
17:15:24
судебные тяжбы против Гугла популярности платформе не дают

Alexey
10.05.2017
17:17:49
Жаба сдыхает с момента покупки, всё никак не сдохнет, прям как microsoft

Google
KrivdaTheTriewe
10.05.2017
17:18:17
Alexey
10.05.2017
17:22:39
Рост бывает разный, зато никто не пишет, в каком билде что отвалилось, фичи просто очень медленно едут. Я за прогресс и всё такое, но надо понимать, что для многих отсутствие еженедельных билдов - это преимущество, а не недостаток. Именно из-за этого многие технологии приходят и уходят, а некоторые остаются надолго.

Dmitry
10.05.2017
17:24:06
уже 10 лет как

Oleg
10.05.2017
17:24:25
Жаба сдыхает?
канеш. Дейкстру не читал?

Alexandr
10.05.2017
17:25:33
Дейкстру о завершении -- нет...

Или это сарказм?

Oleg
10.05.2017
17:27:14
Дейкстру о завершении -- нет...
http://chrisdone.com/posts/dijkstra-haskell-java

Oleksandr
10.05.2017
17:27:47
@fomkin https://twitter.com/xeno_by/status/860378404444487680

Alexandr
10.05.2017
17:30:07
Спасибо, Oleg

Mikhail
10.05.2017
17:49:10
https://twitter.com/den_sh/status/857191968283217920

Alexander
11.05.2017
07:19:25
LGBT = leiningen gradle build tool
Смотри, уже кто-то вышел из чатика.

Nick
11.05.2017
07:35:16
Замеры божественны

Google
Anatoliy
11.05.2017
08:16:28
Всем привет. Народ, кто play использует - может кто подсказать - надо "что-то" сделать после того как файл который отдает play закачается полностью, как это можно провернуть? Т.е. я хочу что бы play уже после того как файл полностью закачают что-то сотворил. Есть варианты?

Diemust
11.05.2017
08:25:30
for { _ <- uploadFileFuture _ <- something } yield {} ?

Anatoliy
11.05.2017
08:30:54
Эм... а оно сработает?

Тогда спасибо большое)

Sergey
11.05.2017
08:31:20
а почему нет?)

Denis
11.05.2017
08:31:39
for { _ <- uploadFileFuture _ <- something } yield {} ?
вопрос в другом мне кажется

Sergey
11.05.2017
08:32:03
специальная олимпиада - угадывать вопросы :) обожаю))

Denis
11.05.2017
08:32:15
есть сервер на play, на сервер загружают файл, после загрузки файла надо выполнить действие.

Sergey
11.05.2017
08:32:25
щас ему компилятор поругается, он поймет что же он хочет на самом деле, и переформулирует, бжди

Denis
11.05.2017
08:32:26
на стороне сервера

Anatoliy
11.05.2017
08:32:29
не, не на сервер

сервер отдать должен

Denis
11.05.2017
08:32:36
а

Anatoliy
11.05.2017
08:32:38
и после выполнить

скачать и выполнить - не вижу проблемы

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

Denis
11.05.2017
08:33:36
там же akka stream под капотом?

Anatoliy
11.05.2017
08:34:42
если подробнее - получается так, play формирует файл, после сообщает клиенту1 что файл готов, клиент1 начинает его качать, когда докачал play должен это увидеть и дать команду этому клиенту1 что бы он что-то сделал с этим файлом. Т.е. сам файл к этому моменту уже у него должен быть. Сам клиент1 не может сообщить play что он файл скачал

Nikolay
11.05.2017
08:35:45
Со стороны клиента можно сделать запрос по завершению скачивания файла

Google
Anatoliy
11.05.2017
08:35:52
нельзя

я же специально это написал

Сам клиент1 не может сообщить play что он файл скачал

Denis
11.05.2017
08:36:18
fileBytes.concat(Source.single(NotUsed).mapAsync(1)(_ => doYourStuff).drop(1))

это надо засунуть в тело ответа

Nikolay
11.05.2017
08:37:11
А как ты предполагаешь play даст команду клиенту?

Anatoliy
11.05.2017
08:37:14
эм... а можно пояснить что оно делает? а то не понимаю как связана mapAsync и skip

Nikolay
11.05.2017
08:37:16
У тебя websocket?

Anatoliy
11.05.2017
08:37:26
telnet

Denis
11.05.2017
08:38:17
эм... а можно пояснить что оно делает? а то не понимаю как связана mapAsync и skip
Ну сначала клиенту отдаются все байты файла. После этого выполнится твое дейстивие, при этом результат действия игнорируется и ответ завершается

Anatoliy
11.05.2017
08:39:23
Хм... спасибо большое, пошел пробовать

ага, и там не скип а дроп в итоге?

Denis
11.05.2017
08:39:52
да

Я не помню оператор который бы превращал пустой сорс в сорс любого типа. В таком виде как есть не соберется у тебя )

Но смысл понятен

Anatoliy
11.05.2017
08:41:35
Я не помню оператор который бы превращал пустой сорс в сорс любого типа. В таком виде как есть не соберется у тебя )
всмысле не соберется? мне надо просто дернуть событие которое покажет что файл докачался, всё

Denis
11.05.2017
08:41:53
типы )

Denis
11.05.2017
08:45:09
вот так будет работать val fileBytes: Source[Array[Byte], NotUsed] = ... val callback: Source[Array[Byte], NotUsed] = Source.single(NotUsed).mapAsync(1)(_ => doYourStuff) .map(_ => Array.empty[Byte]) val out = fileBytes.concat(callback)

Oleg
11.05.2017
08:45:10
Когда "файл докачается", совершенно не факт, что все его куски, которые сервер получал до этого будут где-то в пределах видимости.

Google
Anatoliy
11.05.2017
08:46:25
Когда "файл докачается", совершенно не факт, что все его куски, которые сервер получал до этого будут где-то в пределах видимости.
ну так подождать секунду после этого - не такая и большая проблема. а для меня - тем более, там два устройства на расстоянии в 1 хоп

ну ладно, 2 хопа

Diemust
11.05.2017
08:47:29
тогда Thread.sleep(1000)

Oleg
11.05.2017
08:47:38
ну так подождать секунду после этого - не такая и большая проблема. а для меня - тем более, там два устройства на расстоянии в 1 хоп
Ещё раз. Это стрим. Файл прибывает на сервер кусочками, отдельными событиями. Никакой стрим сам по себе не будет склеивать их или сохранять. Для этого нужно подключить соответствующий синк. Но это я так, теоретически. Помогать практически всё равно не собирался

Kirill
11.05.2017
09:05:19
lul toxic community

Dmitry
11.05.2017
09:20:50
Кто нибудь https://github.com/krasserm/streamz юзал?

Admin
ERROR: S client not available

Юрий
11.05.2017
09:24:56
выглядит как простой эксперимент, а не как production ready проект

Oleg
11.05.2017
09:28:26
выглядит как простой эксперимент, а не как production ready проект
выглядит как личное мнение, а не как community ready заявление

Aleksey
11.05.2017
09:30:08
Когда уже наконец выработают критерии для определения что продакшн-реди, а что нет? А то юзаешь библиотеку на 500 loc полтора года, она не ломается, API хороший, и тут приходит кто-нибудь и заявляет, мол давайте возьмем *названием интерпрайз говна на 100500 loc* а то ваша библиотека велосипед и вообще не ынтерпрайз продакшон рэди.

Grigory
11.05.2017
09:30:53
думаю в данном контексте продакшн реди было про то наскок зрелый проект

и типа 80 коммитов маловато для реди проекта

Denis
11.05.2017
09:31:24
TOXIC COMMUNITY READY

Grigory
11.05.2017
09:31:58
как-то недостаточно токсично, теряется хватка рибята

Denis
11.05.2017
09:32:01
и типа 80 коммитов маловато для реди проекта
не говоря уже о количестве звезд

Oleg
11.05.2017
09:32:23
https://pbs.twimg.com/media/Co8UV3xWgAALxmN.jpg

Grigory
11.05.2017
09:32:46
не говоря уже о количестве звезд
ну колво коммитов норм тема - интенсивнсть развития проекта прослеживать это полезная метрика.

Google
Grigory
11.05.2017
09:33:27
Aleksey
11.05.2017
09:33:45
Ну вот Jawn. https://github.com/non/jawn На мой взгляд лучши json-ast парсер эва. 240 всего.

Grigory
11.05.2017
09:34:02
ну это эрик

Denis
11.05.2017
09:34:23
ооо, пол года назад обновлялся, надо на что то новое переходить

Grigory
11.05.2017
09:34:33
я сливаюсь короче и ухожу боком

https://i.ytimg.com/vi/4wGs6Zhv6kw/hqdefault.jpg

Daniel
11.05.2017
09:34:40
ну колво коммитов норм тема - интенсивнсть развития проекта прослеживать это полезная метрика.
Хм, а если проект активно юзает squash and merge в pr? И условные 80 коммитов это ~50 вмердженных pr?

Oleg
11.05.2017
09:35:44
fix README typo

Vladimir
11.05.2017
09:35:59
Кто нибудь https://github.com/krasserm/streamz юзал?
да, оно работает и даже без бубна, производительность хз, не критичное место

Grigory
11.05.2017
09:36:23
да и 3 года либе уже

Dmitry
11.05.2017
09:37:15
Хз что делать

Куда копать

Vladimir
11.05.2017
09:37:33
а откуда куда конверсия? Я из fs2 в akka

Страница 648 из 1499