问题标签 [zio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
652 浏览

scala - 为什么无法在 ZIO 测试中提取变量中的图层

在为我的测试提供图层时,我偶然发现了这种奇怪的行为,即无法提取值中的图层。

此代码编译:

当我现在像这样提取图层时:

我得到以下编译异常:

这是ZIO Test的限制还是我错过了什么?

0 投票
2 回答
589 浏览

scala - 从 ZIO (Scala) 获取 ZManaged 的​​类型转换

我需要帮助将 ZIO[WsConfig, Throwable, A] 类型的值转换为 ZManaged[A] 有下一个代码(我可以在 IDEA 中构建它,没有与类型相关的错误,根本没有),但我有 ??? 就在原地。

可能会有所帮助-我用来生成 ZLayer 的这种方法 poolCache

我将任何 ZLayers(带 confLayer)与 ++ 水平组合,并通过 >>> 传递到 poolCache。

0 投票
0 回答
605 浏览

scala - Scala,ZIO - ZIO 中层的一些奇怪问题

我创建了简单的自己的类型: type MyEnv = ZEnv with Clock with MyRepository

并有Main方法:

但是我在run方法中遇到了编译错误:

我不知道如何解决它。我也有与隐式相关的错误server.provideCustomLayer(live)

我试图找到一个解决方案,但是ZIO文档太没用了,其他地方也没有好的解决方案。

0 投票
1 回答
353 浏览

scala - scala (spark) zio 将 future 转换为 zio

我的目标是在一个数据集上运行多个 spark ml 回归模型(1000 次),我想使用 zio 而不是 future,因为它运行得太慢了。下面是使用 Future 的工作示例。不同的键列表用于过滤键上的分区数据集并在其上运行模型。我已经建立了一个有 8 个执行器的线程池来管理它,但是它的性能很快就会下降。

我试图在 zio 中实现这一点,但我不知道如何实现队列并设置执行器的限制,就像在期货中一样。

以下是我迄今为止失败的尝试......

在zio中处理计算的最佳方法是什么?

0 投票
1 回答
371 浏览

scala - 使用 ZIO Test 模拟任何值作为输入参数

我模拟以下功能:

对于结果,我不在乎输入。所以我的问题是,有没有办法用zio.test.mock.

就像是:

deployment是输出)

0 投票
0 回答
261 浏览

scala - 在 ZIO 测试中使用空参数列表模拟函数

我有以下要模拟的功能:

def deployments(): Task[Seq[Deployment]]

我的 envBuilder 看起来像:

我该如何设定对此的期望?

按照文档(GetStrLn returns value("42"))我试过:

但这给了我:

这是如何正确完成的?

0 投票
2 回答
1032 浏览

scala - Scala, ZIO - 将 Future 转换为 ZIO 或 ZIO 转换为 Future。可能吗?

我创建了两个版本的服务。第一个使用Futures,另一个ZIO用作效果。

我有一个简单的方法,它使用Future结果效果:

我还有一些其他版本使用ZIO[SomeEnv, SomeError, Data]

现在,我需要创建某种适配器,它将从一个版本或另一个版本返回数据:

这里的问题是返回类型。我不知道如何转换ZIO为未来或Future转换ZIO为具有共同的返回类型。我尝试使用ZIO.fromFuture{...}ortoFuture()但它没有帮助。我的问题是 - 如何创建此returnDataFromServiceVersion方法以将其与两种服务一起使用?我需要在这里有共同的返回类型。

或者也许有另一种方法来解决这个问题?

0 投票
2 回答
933 浏览

scala - scala ZIO foreachPar

我是并行编程和 ZIO 的新手,我正在尝试通过并行请求从 API 获取数据。

当我按顺序执行程序时,如果我尝试并行运行,它会按预期工作,方法是更改ZIO.foreach​​为ZIO.foreachPar. 该程序过早终止,我明白了,我在这里缺少一些基本的东西,任何帮助都可以帮助我解决问题。

0 投票
1 回答
1118 浏览

zio - Convert ZIO Task to IO

I have the next code:

but this code does not compile, because compiler says result type is:

ZIO[Any, Throwable, Int]

How to convert from Task (where I call method) to IO?

0 投票
1 回答
427 浏览

scala - 是否可以对返回 ZIO 的方法进行尾递归?

例如:

似乎不可能,因为最后一行是映射函数