Repository navigation
Conversation
✅ All Checks Passed — Ready for Review
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🎉 All checks passed! This PR is ready for review. |
7ede1eb to
7322520
Compare
tony-davis
left a comment
There was a problem hiding this comment.
Nice fix, thanks for tracking down the root cause and reproducing the actual 1,484-file diff to validate it. Ran the updated pre_commit_helper_test.py locally and all 6 tests pass, including the new one that generates a >128KB path list to reproduce the original failure. Good regression coverage.
One small nit, not blocking: the grep_status=$? bit in pre-commit.yml is correct (it distinguishes "no match" from "file unreadable"), but it's a little subtle for a future reader. A one-line comment above it explaining why would help:
else
# grep exits 1 for "no match" (fine) vs >1 for a real error (e.g. unreadable file).
grep_status=$?Take it or leave it. Approving either way.
TheRock Submodule Bump ActivityNewest first
|
JIRA ID : AIHPBLAS-3989
Motivation
The pre-commit workflow computes changed paths to select sparse-checkout directories and determine whether a project needs optional hook dependencies. PR #12150 changes 1,484 files and produces a 148,368-byte path list. When the workflow copied that list into the
CHANGED_FILESenvironment variable, the Linux runner could not start Bash and reportedArgument list too long.Technical Details
pre_commit_helper.pyto a temporary file underRUNNER_TEMP.Test Plan
Exercise the helper with a changed-path list larger than Linux's per-environment-entry limit, run the complete
.github/scriptstest suite, run the repository pre-commit hooks for the changed files, and check project detection against the actual 1,484-file namespace diff.Test Result
Argument list too long.python -m pytest .github/scripts/tests -q:136 passed,8 xfailed, and34 subtests passed.hipblaslt_changed=trueandhipdnn_changed=false; an unreadable file exited with status2.Submission Checklist
Risk level
Medium (3/5): this changes dependency detection in the repository's pre-commit validation path. It does not change product or GPU behavior.