Auto merge of #4583 - alexcrichton:unstable, r=matklad
authorbors <bors@rust-lang.org>
Thu, 5 Oct 2017 22:54:59 +0000 (22:54 +0000)
committerbors <bors@rust-lang.org>
Thu, 5 Oct 2017 22:54:59 +0000 (22:54 +0000)
commit787ed8e14f8ca5d4c88e58378c756a9d22f702c1
tree3ad7df64f38b2472eba270260b76005741ee7ba9
parent5b0bf5459d296c3e49b22d66c5a3870d42597d25
parente4bf48e9ecc4a255855c3e7a95867ce61be6e0e1
Auto merge of #4583 - alexcrichton:unstable, r=matklad

Fix [patch] causing updates with a virtual manifest

This commit fixes the [patch] implementation to avoid causing spurious updates
of the registry when specified inside of a virtual manifest via a path
dependency that was otherwise outside of the workspace.

Cargo previously attempted to learn about path dependencies through the
configuration of the workspace by looking at members, their path dependencies,
and their replace sections. The replace/patch sections, however, only matter at
the root of the workspace and those weren't looked at! This commit fixes this
problem by explicitly looking at the workspace's replace/patch sections and
avoiding looking at other manifest replace/patch which shouldn't matter.

Closes #4552