$ meteor list
foo 0.9*
...
$ meteor update foo
Your packages are at their latest compatible versions.
如何判断哪个包具有阻止foo
更新的依赖项?
答案 0 :(得分:5)
没有一个小脚本不能为我们做的事情:
meteor list | grep ^[a-z] | tr -s ' ' | cut -d ' ' -f1,2 | tr -d '\*\+' | tr ':' '_' \
| while read X Y; do \
cat ~/.meteor/packages/$X/$Y/web.browser.json \
| xargs -0 node -e "X = JSON.parse(process.argv[1]); \
X.uses.forEach(function(d) { \
console.log(\"$X\", \"$Y\", d.package, d.constraint); \
})"; \
done | sort
这将查找您使用的所有软件包及其版本,然后进入软件包存储以检查依赖项。在这种形式中,它只列出按依赖项排序的内容,例如,您可能会看到:
ryw_blog 0.5.7 iron:router 0.9.1
这意味着您使用的是ryw_blog版本0.5.7,它需要使用iron:router 0.9.1版本。
如果您真的只想检查foo,只需在排序后添加| grep foo
。
当然,这是假设你不在Windows上。我在osx上测试了这个,但是linux也应该可以工作。
PS:这似乎很有用,所以我从中创建了一个要点:https://gist.github.com/chfritz/63dbf792d22563e5d0c0