问题标签 [spago]
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.
purescript - 如何使用 Spago 安装特定的软件包版本?
使用npm
我们可以安装特定版本的工具
如何使用 安装特定版本spago install
?
build - packages.dhall 和 spago.dhall 文件有什么区别?
spago
文档状态:
packages.dhall
:此文件旨在包含您的项目可用的全部包(即,您可能要导入的任何包)。实际上,它以官方包集为基础,然后您可以添加任何可能不在包集中的包,或覆盖现有的包。
spago.dhall
: 这是你的项目配置。它包括上述包集、依赖项列表、将用于构建的源路径以及 spago 将使用的任何其他项目范围的设置。(我的重点)
为什么这两个文件都有 的概念/概念dependencies
?示例:packages.dhall
来自spago.dhall
电子书。
spago.dhall
可以在项目.spago
文件夹中找到依赖项。但我无法找到来自packages.dhall
. 其他的都很常见aff
。不同的视角:
[...] 您选择的是“快照”,它是所有可用包的某些版本的集合,这些包保证可以编译和协同工作。
快照在您的
packages.dhall
文件中定义,然后您指定要在spago.dhall
. 每个包的版本来自快照。
听起来,就像spago.dhall
是来自 .The 包的摘录packages.dhall
。关于版本的注释有点令人困惑,因为两个文件中都没有版本说明符。
那么,为什么是两个文件?来自 npm 生态系统的人的心智模型是什么package.json
(也可能存在)?
javascript - 如何更改 spago 的节点堆栈限制?
我正在使用 PureScript 开发一个项目,该项目通过spago test
功能运行大量庞大且堆栈广泛的测试。在大多数情况下,递归是如此之深,以至于我达到了极限并且测试失败了RangeError: Maximum call stack size exceeded
。
通常我只会node
使用--stack-size=$ALOT
标志运行,但在这里我无法直接访问 JavaScript 评估器(有吗?)。在另一种情况下,我会使用NODE_OPTIONS
env 变量,但这里不可能,如错误消息中所述:
node: --stack-size= is not allowed in NODE_OPTIONS
有没有办法以任何其他方式访问node
标志spago
或绕过此问题?另外,我的情况无法通过 TCO 解决。
purescript - 如何使用 spago 卸载软件包?
什么是 spago 等价物yarn remove
or npm uninstall
?
有没有办法像 Haskell stack 一样删除包?如果是这样,手动删除包的步骤是什么?
purescript - purescript spago 有包范围吗?
npm 有类似@somescope/somepackagename
这样的作用域,可以很好地避免包名冲突,spago 也有吗?
(也许不是 spago 应该有什么但是package-sets
?)