-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't use a bare checkout of the index #4060
Conversation
r? @matklad |
r? @brson (rust_highfive has picked a reviewer for you, use r? to override) |
Are there any benefits in creating a bare repository? If there are, we might want to add |
It's at least more explicit to our intent, but yeah I'll leave a comment, we'll just need to wait a number of releases to change this. We could also just change the folder we store the index in (there's a hash there anyway), but I figure we don't need to do that just yet. As for benefits... Unsure! I figure that if you don't check anything out you get basically the same benefits. |
Both old and new Cargo share the same index, so be sure to maintain compatibility by initializing a non-bare repository for the index. Note that a nightly Cargo still won't check out the index, but when an older Cargo comes along and tries to check it out then it'll work. Closes rust-lang#4058
Ok, updated with a comment. |
@bors r+ |
📌 Commit 00e5f95 has been approved by |
Don't use a bare checkout of the index Both old and new Cargo share the same index, so be sure to maintain compatibility by initializing a non-bare repository for the index. Note that a nightly Cargo still won't check out the index, but when an older Cargo comes along and tries to check it out then it'll work. Closes #4058
☀️ Test successful - status-appveyor, status-travis |
Cargo uses no checkouts any more [1], but only bare clones of the index repo. That means that more recent cargo doesn't update the checkout any more, and one day the cargo team might consider dropping the non-bare checkout entirely. We therefore need to switch to using libgit2 to obtain the newest index contents. Also, we start using the failure now. [1]: rust-lang/cargo#4060
Both old and new Cargo share the same index, so be sure to maintain
compatibility by initializing a non-bare repository for the index. Note that
a nightly Cargo still won't check out the index, but when an older Cargo comes
along and tries to check it out then it'll work.
Closes #4058