Size: a a a

Scala User Group

2020 August 18

GP

Grigory Pomadchin in Scala User Group
источник

AM

Abdulkhamid ハミデ Mümi... in Scala User Group
λoλegΥch
а потом придет с вопросами про докер
🗿
источник

λ

λoλegΥch in Scala User Group
к счастью докер в жаба-экосистеме не нужен
источник

GP

Grigory Pomadchin in Scala User Group
λoλegΥch
к счастью докер в жаба-экосистеме не нужен
сейчас не тебя хейтеры накинутся, ну что за провокация
источник

λ

λoλegΥch in Scala User Group
время такое
источник

λ

λoλdog in Scala User Group
как это не нужен
источник

VS

Vasily Shapenko in Scala User Group
Nixos
источник

VS

Vasily Shapenko in Scala User Group
Лучший докер
источник

λ

λoλegΥch in Scala User Group
никс к сожалению тоже поделка
источник

λ

λoλegΥch in Scala User Group
по дефолту нет версий
источник

λ

λoλdog in Scala User Group
зачем там версии
источник

λ

λoλdog in Scala User Group
ты ж на конкретный снепшот ссылаешься
источник

λ

λoλegΥch in Scala User Group
одна версия на все зависимости это профанация
источник

EB

Eugene Bosiakov in Scala User Group
λoλegΥch
к счастью докер в жаба-экосистеме не нужен
Почему?
источник

NV

Nikita Vilunov in Scala User Group
докер и экосистема языка — вещи ортогональные
источник

R

R in Scala User Group
Sergey
Всем привет
Пробую использовать Alpakka (akka-stream-alpakka-s3) для аплоада медиа файлов на AWS S3
Картинки приходят в пост реквесте (http4s) в request body (EntityBody[F])
Загоняю в инпут стрим, который загружаю альпаккой на S3.

Немного упрощенно:
def uploadToS3_example(req: Request[IO], attributes: Attributes) = {

   val bucketName = "bucketName"
   val key = "key"
   val contentType = ContentType.parse("image/jpeg").right.get
   val metaData = MetaHeaders(Map("Content-Type" -> "image/jpeg", "Cache-Control" -> "max-age = 3600"))
   val accessControlList = CannedAcl.PublicRead

   req.body
     .through(toInputStream)
     .evalMap(inputStream => IO(
       
       StreamConverters
         .fromInputStream(() => inputStream)
         .runWith(
           S3.multipartUpload(bucketName, key, contentType, metaData, accessControlList)
             .withAttributes(attributes)
         )

     ))
     .compile
     .drain
 }


Картинка на S3 успешно создается, но с размером 0 байт.
При этом точно такая же загрузка на S3 альпаккой инпут стрима, созданного из URL картинки выполняется без проблем.

Тип инпут стрима
для http4s - fs2.io.JavaInputOutputStream$$anon$1@23ce62b7
для URL - sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@119bc58a

Может в этом проблема? Альпакка не дружит с JavaInputOutputStream?
Или что-то не так делаю?

С aws sdk все работает.

Буду благодарен за идеи и подсказки
У меня что-то похожее было когда я не считывал http респонз на аплод в s3. Похоже что дело в этом
источник

R

R in Scala User Group
Правда у меня был напрямую пресайнед урл
источник

VS

Vladimir Sapronov in Scala User Group
Добрый день, любезные!
Возник вопрос из области Akka, Play - не могу сообразить никак.
Хочу в виде эксперимента изнутри Future запустить другое Future, но чтобы оно не было привязано к тому Future в котором все это происходит, а выполнялось паралельно, в то время когда даже . Что-то вот такое:

def anotherWork(): Future[Unit] = { .... }

def doSomething(): Future[String] = {
 // Хочу запустить anotherWork в фоне, чтобы doSomething не ожидал его завершения
 Future.successful("Main work is complete")
}


Доступ к
ActorSystem
есть.
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Vladimir Sapronov
Добрый день, любезные!
Возник вопрос из области Akka, Play - не могу сообразить никак.
Хочу в виде эксперимента изнутри Future запустить другое Future, но чтобы оно не было привязано к тому Future в котором все это происходит, а выполнялось паралельно, в то время когда даже . Что-то вот такое:

def anotherWork(): Future[Unit] = { .... }

def doSomething(): Future[String] = {
 // Хочу запустить anotherWork в фоне, чтобы doSomething не ожидал его завершения
 Future.successful("Main work is complete")
}


Доступ к
ActorSystem
есть.
То есть, фактически, хочется 2 фьючи запустить параллельно?
источник

VS

Vladimir Sapronov in Scala User Group
Юрий Бадальянц
То есть, фактически, хочется 2 фьючи запустить параллельно?
Но второе именно запустить во время фактического выполнения первого
источник