如何识别阻止其他包更新版本的 julia 包?

How to identify julia packages that hold back newer versions of other packages?

是否有内置方法可以知道哪些依赖项导致其他软件包落后于当前版本?

最近我遇到了这个问题: https://github.com/FluxML/Flux.jl/issues/246#issuecomment-384943473

Pkg.update() 之后我希望看到所有当前版本:

Pkg.available("Flux")
14-element Array{VersionNumber,1}:
 v"0.1.0"
 v"0.1.1"
 v"0.2.0"
 v"0.2.1"
 v"0.2.2"
 v"0.3.0"
 v"0.3.1"
 v"0.3.2"
 v"0.3.3"
 v"0.3.4"
 v"0.4.0"
 v"0.4.1"
 v"0.5.0"
 v"0.5.1"

但刚刚能够 select 来自(v"0.5.1" 尚未发布):

julia> Pkg.available("Flux")
12-element Array{VersionNumber,1}:
 v"0.1.0"
 v"0.1.1"
 v"0.2.0"
 v"0.2.1"
 v"0.2.2"
 v"0.3.0"
 v"0.3.1"
 v"0.3.2"
 v"0.3.3"
 v"0.3.4"
 v"0.4.0"
 v"0.4.1"

我从 sratch 开始使用一个新的空 JULIA_PKGDIR,但由于不同的原因,这很烦人:

有没有更简单的方法?

据我所知,目前还没有完全正确的方法,但在 Discourse 上发布的脚本可能会有所帮助:https://discourse.julialang.org/t/how-to-find-package-preventing-others-from-updating/8235

Pkg.update("Flux") 经常会告诉您哪些软件包阻碍了更新。