字母数字值在 elixir 混合锁定文件中意味着什么?
What does the alphanumeric value mean in an elixir mix lock file?
您好,我很好奇 "d42e20054116c49d5242d3ff9e1913acccebe6015f449d6e312a5bc160e79a62" 值在上面的锁定文件的切片中代表什么。我试过阅读混合源代码,感觉它与git有关,但我无法准确指出它。
mix源码中锁相关模块有读写锁方法(https://github.com/elixir-lang/elixir/blob/5984c6cc29a41d5bc78d49427730c8786d75e2c9/lib/mix/lib/mix/dep/lock.ex#L13) but doesn't say much about the map it deals with. The tests don't seem to hint at what this value represents either: https://github.com/elixir-lang/elixir/blob/9e40b8f786625b2f036ce9c2467cd0a8ade35ce6/lib/mix/test/mix/dep/lock_test.exs.
我认为它可能是一个 git 提交哈希(由我的机器在本地生成或从依赖项的存储库中提取。我在任何地方都没有找到该哈希。
感谢任何帮助。谢谢!
这是一个散列,用于依赖收敛过程。粗略地说,Mix.Dep.Converger
builds a :digraph
的依赖关系,并使用拓扑排序来确定依赖关系是否已经发散。
您将无法在 Elixir/Mix 源代码中找到它,因为它是 delegating to the external converger, which depends on what type of dependency is it. In the case of :hex
type of dependency, remote is Hex.RemoteConverger
.
也就是说,这个值完全 Hex.RemoteConverger
负责,mix
对此一无所知。如果你想为 mix
提供另一个依赖源,你可以实现 @behaviour Mix.RemoteConverger
并且在依赖收敛过程中,你的转换器实现将使用你想要的任何参数调用。
您好,我很好奇 "d42e20054116c49d5242d3ff9e1913acccebe6015f449d6e312a5bc160e79a62" 值在上面的锁定文件的切片中代表什么。我试过阅读混合源代码,感觉它与git有关,但我无法准确指出它。
mix源码中锁相关模块有读写锁方法(https://github.com/elixir-lang/elixir/blob/5984c6cc29a41d5bc78d49427730c8786d75e2c9/lib/mix/lib/mix/dep/lock.ex#L13) but doesn't say much about the map it deals with. The tests don't seem to hint at what this value represents either: https://github.com/elixir-lang/elixir/blob/9e40b8f786625b2f036ce9c2467cd0a8ade35ce6/lib/mix/test/mix/dep/lock_test.exs.
我认为它可能是一个 git 提交哈希(由我的机器在本地生成或从依赖项的存储库中提取。我在任何地方都没有找到该哈希。
感谢任何帮助。谢谢!
这是一个散列,用于依赖收敛过程。粗略地说,Mix.Dep.Converger
builds a :digraph
的依赖关系,并使用拓扑排序来确定依赖关系是否已经发散。
您将无法在 Elixir/Mix 源代码中找到它,因为它是 delegating to the external converger, which depends on what type of dependency is it. In the case of :hex
type of dependency, remote is Hex.RemoteConverger
.
也就是说,这个值完全 Hex.RemoteConverger
负责,mix
对此一无所知。如果你想为 mix
提供另一个依赖源,你可以实现 @behaviour Mix.RemoteConverger
并且在依赖收敛过程中,你的转换器实现将使用你想要的任何参数调用。