Skip to content
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

Commit a Cargo.lock file. #43

Merged
merged 1 commit into from
Feb 28, 2017
Merged

Commit a Cargo.lock file. #43

merged 1 commit into from
Feb 28, 2017

Conversation

frewsxcv
Copy link
Member

No description provided.

@Manishearth Manishearth merged commit 6b5abc9 into master Feb 28, 2017
@frewsxcv frewsxcv deleted the cargo-lock branch February 28, 2017 04:43
@nagisa
Copy link
Member

nagisa commented Feb 28, 2017

Why?! What purpose does this serve other than eventually resulting in regressions?

@Manishearth
Copy link
Member

Fair point.

@frewsxcv
Copy link
Member Author

cargo-fuzz is a binary crate (not a library crate). binary crates should have the lockfile committed, right?

@nagisa
Copy link
Member

nagisa commented Feb 28, 2017

I don’t see how it being a binary crate warrants a lockfile. Are the version bounds not tight enough in the Cargo.toml? Alternatively, who will take upon the task of updating the lockfile once in a while so the regression like I linked above doesn’t happen eventually?

@frewsxcv
Copy link
Member Author

@Manishearth
Copy link
Member

Binaries usually check in lockfiles.

However, cargo install doesn't respect these so it doesn't matter. If you don't install via cargo install, checking in a lockfile is a good idea.

@frewsxcv
Copy link
Member Author

However, cargo install doesn't respect these so it doesn't matter.

Ah, didn't know this. In that case, sure, we should remove it.

@frewsxcv frewsxcv mentioned this pull request Feb 28, 2017
@frewsxcv
Copy link
Member Author

I don’t see how it being a binary crate warrants a lockfile.

One example scenario: If I download a version a binary built via cargo, I want to have the exact dependencies I used to compile that binary committed to version control so I can easily go back and reproduce the issue. If I don't commit the lockfile, when I go back, I'm installing potentially different dependencies which could make it harder to reproduce the issue.

@nagisa
Copy link
Member

nagisa commented Mar 1, 2017 via email

@frewsxcv
Copy link
Member Author

frewsxcv commented Mar 1, 2017

I'm talking about stable Rust. If I ship a new release of a binary that just includes a bump of an upstream dependency (which is very common), it's good to have the git history reflect that bump, otherwise, it would look like nothing changed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants