Open flavono123 opened 1 year ago
a suggestion for https://github.com/joelparkerhenderson/architecture-decision-record/pull/69#issuecomment-1804542664 by just creating this PR
Good idea. A few questions....
Can this kind of proofreading and changing have more capabilities?
Can the code be minimized in shell, by calling on installed software, such as installed on a CI server and/or GitHub actions and/or the developer's system?
Do you foresee what you're aiming for generally heading along the direction of a formatter and/or linter?
A few questions about the shell code...
Should this be ACMR?
--diff-filter=ACM
I believe that stripspace
is intended mostly for metadata, and there's a different whitespace=fix for committed files...?
git stripspace
Ideally can a successful run be silent, akin to the Unix convention of silent success?
-if [ "$NEEDS_CLEANUP" = false ]; then
- echo "no need to cleanup"
-fi
Can it run with guard flags, such as set -euf
? Such as this:
Can you trap the mktemp
? Because it's a good idea to trap an exception, such as this:
Could it be worthwhile to look for a longer-term larger-scope solution to make your idea even more powerful and valuable? Here are some that turned up when I looked... do any of these look like they can give you more capabilities?
Overall, my opinion is your code is fine to commit and use. I favor bias for action, and you're doing action. I appreciate you!
thank you for valuable and various points. but by answering the last one, that would resolve others too i think. and totally agree with the idea, using "a longer-term larger-scope solution", open-source standards, in other words, rather than the custom code snippet should be maintained.
in a nutshell, in advance, i prefer/think the choice is github action + megalinter:
i'm familiar with github action.
but not for megalinter; actually knowing that this time, though:
dismissed:
prettier
is not a linter(https://prettier.io/docs/en/comparison) and we want that, such as removing trailing spaces, i thinksuper-linter
is beaten by megalinter? 👆 pre-commit
is another git hook. as a workflow, we should maintain that trunk
; no good experience in person, as a vscode extensionthe matter is pricing, no for megalinter but github action. but personal free tier is enough i guess: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#included-storage-and-minutes
Excellent research! Yes GitHub Action + MegaLinter sounds good. And I expect that the pricing on the free tier is OK.
If you want to try it, go ahead on this whole repo.
Goal
Descriptions
Requirements
git config core.hooksPath .githooks
to activate the hookgit config core.quotepath false
for non-ascii pathsTest
+# Temporary file to store the list of files that need cleanup +TEMP_FILE=$(mktemp)
+# Collect staged files with potential whitespace issues +git diff --cached --name-only --diff-filter=ACM > "$TEMP_FILE"
+# Check if any of these files have whitespace issues +NEEDS_CLEANUP=false +while read -r FILE; do
+# Cleanup process +if [ "$NEEDS_CLEANUP" = true ]; then
Loop through the files and apply git-stripspace
Inform the user
+# Clean up - remove the temporary file +rm "$TEMP_FILE"
+if [ "$NEEDS_CLEANUP" = false ]; then
-### 제출자 +### 제출자
ADR 제출자를 나열합니다.