Fix check command stale todos with supplied files #415
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.
What are you trying to accomplish?
Because the
PackageTodo
class didn't know what files had been supplied it would erroneously suspect files had been deleted if you only passed a single file on the command line.We do this in a pre-commit hook with
bundle exec packwerk check $(git diff --name-only)
and it was causing issues; the tool would assert there were stale todos when there are not.Happy to make any adjustments. This addresses #369
What approach did you choose and why?
This changes the method signature of
OffenseFormatter#show_stale_violations
to accept aFilesForProcessing
instance instead ofSet[String]
and plumbs theFilesForProcessing
through toPackageTodo#stale_violations?
so that it can call#files_specified?
on it. If there were files specified in the command invocation it skips the#deleted_files_for call
.What should reviewers focus on?
Code style and alternative approaches that could be taken
Type of Change
Additional Release Notes
I'm not sure. Probably because I've changed the method signature of a public method on
OffenseFormatter
Checklist