Size: a a a

Scala User Group

2021 July 05

λ

λoλcat in Scala User Group
Прокопецкий хорватский диплом
источник

AC

Andrew Chernysh in Scala User Group
Интересно, Unused expression without side effects вот такую штуку сейчас получил в Ide
источник

N

Nikolai in Scala User Group
Для какого выражения появляется такое предупреждение?
источник

AC

Andrew Chernysh in Scala User Group
Код скрином залить или лучше ссылку?
источник

N

Nikolai in Scala User Group
Лучше ссылку на scastie
источник

AC

Andrew Chernysh in Scala User Group
источник

AC

Andrew Chernysh in Scala User Group
на тело иф елса
источник

M

Mikhail in Scala User Group
но ведь оно и правда unused. ты с этой строкой ничего не делаешь. не принтишь, не кладешь в переменную, не возвращаешь через for yield
источник

N

Nikolai in Scala User Group
Вы хотите получить коллекцию строк?
источник

AC

Andrew Chernysh in Scala User Group
я хочу что бы эта строка выполнилась
источник

N

Nikolai in Scala User Group
Что это значит? Результатом выполнения if каждый раз будет строка
источник

N

Nikolai in Scala User Group
Смотрите.
s"""Moved ..."""
конструирует строку, которую вы не записываете ни в какую переменную и никак не используете. Значит она "проваливается" дальше и становится значением if. Вы можете в этом месте написать
val str = if(...) {...} else {...}
и потом использовать этот str в теле цикла (например напечатать) или дать строчке "провалиться" дальше. Однако, когда цикл написан как
for (...) {...}
, он воспринимает своё тело как не имеющее значения и использующееся только для побочных эффектов (изменение каких-то полей, io и так далее). Вы можете изменить это поведение, поменяв выражение на
for (...) yield {...}
. Тогда for будет возвращать значение типа ArraySeq[String]
источник

N

Nikolai in Scala User Group
Что-нибудь из этого подходит?
источник

AC

Andrew Chernysh in Scala User Group
Ага, я просто через println вывел сроку и вроде все заработало,спасибо за помощь!
источник
2021 July 06

IF

Ivan Filippov in Scala User Group
Добрый день, вопрос кто знаком с Silhouette.
Пишу applicationLoader в связки с micwire, не могу понять как подключить cache
bind[CacheLayer].to[PlayCacheLayer]

Так например через DI подключают его, как через CI не получается, знает кто?
источник

Igor  Master in Scala User Group
Всем привет! Изучаю по боевому ZIO. В проекте все сервисы обернуты в лееры и старт аппки происходит:
`
...
unsafeRun(appRun).provideCustomLayer( ourLayers)
...
`
Все сервисы инициализируются на старте аппки
Мейн класс - наследуется от BootstrapRuntime.
Я вот подумал а не проще ли было бы свой рантайм создать и в в нем переопределить environment метод?
Может кто подсказать в чем отличие zio.Runtime / ZLayer
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
А зачем ансейф Ран?
источник

S

Simon in Scala User Group
action.provideLayer(...) - эффект, который сначала создает ресурсы, затем выполняет action, затем освобождает ресурсы.
Так что ресурсы будут освобождены в ходе "нормального" выполнения.

Runtime.unsafeFromLayer(layer) - создает ресурсы и держит их до завершения jvm. Так что ресурсы освобождаются через Platform.addShutdownHook ( https://github.com/zio/zio/blob/a53fb07d9bb78629e9564b8da92a824b9e2f6d09/core/shared/src/main/scala/zio/Runtime.scala#L304 )

Это может быть проблемой. Например в scastie вы println в таком освобождении просто не увидите: https://scastie.scala-lang.org/WsqA9BICRX2EiqY4a9cGAg
источник

Igor  Master in Scala User Group
Хз, думаю чтобы перехватить все ошибки и запринтить
источник
2021 July 07

ИШ

Илья Шайдуллин... in Scala User Group
Добрый день!

Пробую описать загрузку файла мультипартом в s3-сервис
Получаю такую ошибку


could not find implicit value for parameter compiler: fs2.Stream.Compiler[[x]Any,G]
       } yield ()).compile.drain


Не могу понять какой implicit в данном кейсе нужно подключить или описать
источник