Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
check_diff
function rewrite #6390base: master
Are you sure you want to change the base?
check_diff
function rewrite #6390Changes from 1 commit
dc5d3a1
613dacb
1e048de
2670a61
aba3ce4
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this was in my suggestion when messaging on Zulip. I think this should be fine, but we could also consider returning a
diffy::Patch
or maybe even our own wrapper type.It would be really nice if the
diff::Patch
gave us some way to tell if the patch was empty, but I don't think it does so we probably need to roll our own way to figure that out.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we'll need to tweak this slightly. We want to pass the
code
to rustfmt viastdin
, and in order to do that we probably need to do something similar torust-analyzer
.Also, I think we could simplify creating the
config
arg above. We should probably abstract that into a standalone function.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we can call
WalkDir::new(".")
. We need to pass the path for the repository that we want to run thecheck_diff
function on. Remember that we're going to clone various 3rd party repos to run the check-diff on them. We should update the function parameters ofcheck_diff
to take the path we want to search in.Also, I still think it would be great if we abstracted the
.rs
file search into a function that returned an Iterator ofPath
orPathBuf
objects so thatcheck_diff
isn't responsible for that logic. Plus it'll be a lot easier to unit test that we're searching for all.rs
files within a directory if we break it out.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is what I was getting at earlier. We need a convenient way to check if the diff is empty. I haven't worked with the
diffy
crate before so I don't know what it outputs when there is no diff. Does it still include the diff header likeor is it just an empty string?
It would be great if you could investigate that / create a unit test for that behavior.