问题标签 [lockfile]
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.
npm - Yarn:使用 yarn.lock 的依赖
我使用 yarn 直接从公司的 GitLab 安装软件包:
yarn add git+ssh://<user>@<host>:<repo>
对于一级依赖,我yarn --pure-lockfile
使用node_modules
根据yarn.lock
.
然而,对于二级依赖,yarn 似乎总是安装最新版本。
因此,假设我取决于A
使用特定版本的B
. 在 A 中package.json
,我没有指定版本,但它包含在yarn.lock
.
当我现在安装包时,A
纱线将获得最新版本,B
尽管进入A/yarn.lock
我知道我可以通过传入一个特定的版本来解决这个问题A/package.json
(至少我认为)。
但是有没有一个选项可以告诉 yarn 查看yarn.lock
依赖项?
javascript - 如何使用 JSPM 锁定整个依赖关系树?
我正在开发一个具有许多前端依赖项的项目。该项目同时使用 NPM 和 JSPM 来管理这些依赖项。
根据jspm 文档:
所有安装范围都保存在 package.json 文件中,确切的版本解决方案保存在 config.js 中。这两个文件都应该检查到版本控制中。
要将 package.json 的安装复制到 config.js 文件中的确切版本范围,请
jspm install
不带参数使用:
但是,即使 package.json 设置了明确的版本,存在 package-lock.json 文件和存在 config.js 文件(应该确保一致的 jspm_packages 文件夹),我仍然看到浮动版本运行时显示的信息jspm install
- 示例:
任何前端大师都可以告诉我为什么会这样吗?
kubernetes - prometheus 2.0.0 error msg="Opening storage failed" err="open DB in /home/prometheus: Lockfile created, but doesn't exist"
背景:尝试在k8s上使用prometheus 1.10.2
,使用azure文件存储作为持久化存储介质
问题:将azurefile
存储与普罗米修斯一起使用给了我以下信息error
:
注意:我不想--storage.tsdb.no-lockfile
在 prometheus deploymenet 上使用标志
有没有其他方法可以解决这个问题?
感谢您提供有关如何解决此问题的任何意见。
flutter - 等待另一个flutter命令释放启动锁
当我运行我的颤振应用程序时,它显示
等待另一个flutter命令释放启动锁
此消息,而不是进一步。
node.js - 在 NodeJS 中锁定文件
我有一个包含文件的目录。每次触发发生时,这些文件都由一个进程创建。另一个 NodeJS 进程尝试列出添加的新文件并解析其内容并将其推送到远程数据库。
NodeJS 应用程序尝试访问其中一个文件时仍被另一个进程锁定并导致我的节点应用程序抛出异常的问题
现在我正在尝试添加一个检查以检查文件是否被另一个进程锁定。如果没有,那么我将继续处理其内容。
我尝试使用 lockfile 和 proper-lockfile npm 模块,但仍然遇到同样的错误。
如果有任何其他方法可以检查文件是否被NodeJS中的另一个进程锁定,请告诉我?
bash - 读写两个进程的同一个文件是否需要lockfile
我正在使用 Bash 脚本并遇到这种情况:
一个 bash 脚本会将内容写入文件,而另一个 bash 脚本将从同一个文件中读取内容。
在这种情况下,是否需要lockfile?我想我不需要使用lockfile,因为只有一个读取过程和一个写入过程,但我不确定。
bash write.sh:
重击读取.sh:
顺便说一句,write.sh
可以写几个关键词,例如success
,fail
等。
python - python - 如何在python Django框架中只强制一个进程的运行实例?
我有一个 python Django 管理命令,应该在接收到输入文件时调用,但是这个命令对于并行调用是不安全的。因此,只有当没有其他文件正在处理时,才应该处理输入文件。
我拥有的一种解决方案是使用锁定文件。基本上,在进程开始时创建一个锁定文件并在结束时将其删除。
我担心如果进程崩溃,锁定文件将不会被删除,因此在我们手动删除该锁定文件之前不会处理任何其他文件。
该解决方案不需要特定于 Django 甚至 python,但是强制只运行此进程的一个实例的最佳实践是什么?
npm - NPM lockfiles/shrinkwrap 获取附加到“已解析”URL 的随机“dl”参数
我们公司使用 Artifactory 存储库来存储内部发布的包并作为 NPM 注册表的代理。有时resolved
lockfiles/shrinkwrap 文件中的字段与预期的一样,包含我们内部存储库的 URL,但有时它们会显示为这样的内容(为清楚起见,添加了换行符):
然后,从拉取请求到拉取请求,这些dl
参数会根据哪个开发人员执行某个操作而不断波动以存在或删除npm install
,从而导致大量拉取请求和提交噪音。
我猜是 Artifactory 添加了这个dl
参数,因为我在 npm 代码库的代码搜索中看不到它。
为什么会这样?我们可以禁用此行为吗?将这个参数作为postshrinkwrap
脚本解决方法剥离是否安全?
npm - npm 等效于 yarn install --check-files (或 yarn check)
2020 年更新
这个问题最初是指yarn check
命令,但文档声明它在 v1 中已弃用,并在 v2 中删除,yarn install --check-files
应改为使用。
不幸的是,显然,--check-files
在npm install
!
作为我的开发构建的一部分,我想根据中指定的内容和 lockfile检查依赖项的版本node_modules
是否符合预期。package.json
package-lock.json
在纱线中,您可以使用(或v1 中不推荐使用yarn install --check-files
的旧命令)来执行此操作 yarn check
我正在尝试使用 npm 来实现相同的目标。
目前我正在使用npm ci
(请参阅此处的文档),它确实有效,因为它完全从锁定文件中的内容重新安装,然后如果版本不匹配node_modules
则出错。package.json
但是,这有点重量级和缓慢。我想知道是否有一种纯粹的静态方式来使用 npm 运行这些检查,而不涉及清理和重新安装磁盘上的所有内容?
javascript - 在 NodeJS 中使用文本文件时如何有效地锁定它?
我有几个独立的脚本从相同的文本文件中读取和写入。我试图在模块读取/写入文本文件时锁定文本文件。目前我正在使用 lockfile 包,但它似乎没有工作。例如
但是,当许多模块正在运行时,它有时会抛出一个错误,使一切都停止。该错误表明 .lock 文件已存在。这似乎违反直觉 - 如果 .lock 文件已经存在,那么模块应该等到它不存在。使用上面的选项,模块应该重试访问锁 1000 次,但这似乎不起作用。
关于如何防止这种情况的任何想法?
这是一个抛出的示例错误: