Serialize GitReference::Branch("master") as GitReference::DefaultBranch#8475
Serialize GitReference::Branch("master") as GitReference::DefaultBranch#8475est31 wants to merge 1 commit intorust-lang:masterfrom
Conversation
|
r? @Eh2406 (rust_highfive has picked a reviewer for you, use r? to override) |
Fixes rust-lang#8468 which was a regression of rust-lang#8364 .
|
I think there's a number of issues with this approach, for example this makes it pretty uncomfortable in Cargo to figure out what to do when you have dependencies on the default branch and the master branch. More pressing, though, is that if you add a dependency: libc = { git = 'https://github.com/rust-lang/libc', branch = 'master' }then |
What happens when you have dependencies on two different crates at different paths but named the same way? This would be the same situation. The code I'm changing is the same code that's stripping the path away so that it doesn't appear in
Hmm that's bad. Will have a look. |
So I tested it out and apparently it's an issue. This happens: Same error happens when you have In other words, this PR is fixing a bug where Cargo.lock is silently overwritten by cargo and introduces a build failure breakage where cargo can't compile something any more that used to compile just fine... a much worse breakage. So that's another issue the PR would have to address, and ultimately, it adds more and more complexity. In particular, it stops being a quick fix to buy time for a proper solution, e.g. version numbers. Time on that is better spent :). |
Fixes #8468 which was a regression of #8364 .