Skip to content

Commit 2772d68

Browse files
committed
WIP
1 parent ec808a7 commit 2772d68

File tree

1 file changed

+58
-25
lines changed

1 file changed

+58
-25
lines changed

.github/workflows/comment_coverage.yaml

+58-25
Original file line numberDiff line numberDiff line change
@@ -31,20 +31,21 @@ jobs:
3131
- name: Checkout PR branch
3232
uses: actions/checkout@v2
3333

34-
- name: Missing docs warnings (PR)
35-
id: missing_docs_warnings_pr
36-
run: |
37-
cargo -q clippy --message-format=short -- \
38-
-Aclippy::all \
39-
-Wclippy::missing_errors_doc \
40-
-Wclippy::missing_panics_doc \
41-
-Wclippy::missing_safety_doc \
42-
-Wclippy::missing_docs_in_private_items \
43-
-Wmissing_docs \
44-
2>&1 \
45-
| awk -F"[\` ]" \
46-
'/warning: `.+?` \(lib\) generated [0-9]+ warning[s]?/ { print $3 ": " $7 }' \
47-
| sort
34+
#- name: Missing docs warnings (PR)
35+
# id: missing_docs_warnings_pr
36+
# run: |
37+
# cargo -q clippy --message-format=short -- \
38+
# -Aclippy::all \
39+
# -Wclippy::missing_errors_doc \
40+
# -Wclippy::missing_panics_doc \
41+
# -Wclippy::missing_safety_doc \
42+
# -Wclippy::missing_docs_in_private_items \
43+
# -Wmissing_docs \
44+
# 2>&1 \
45+
# | awk -F"[\` ]" \
46+
# '/warning: `.+?` \(lib\) generated [0-9]+ warning[s]?/ { print $3 ": " $7 }' \
47+
# | sort \
48+
# | echo
4849

4950
- name: Checkout target branch
5051
uses: actions/checkout@v2
@@ -54,20 +55,52 @@ jobs:
5455
- name: Missing docs warnings (Target)
5556
id: missing_docs_warnings_target
5657
run: |
57-
cargo -q clippy --message-format=short -- \
58-
-Aclippy::all \
59-
-Wclippy::missing_errors_doc \
60-
-Wclippy::missing_panics_doc \
61-
-Wclippy::missing_safety_doc \
62-
-Wclippy::missing_docs_in_private_items \
63-
-Wmissing_docs \
64-
2>&1 \
65-
| awk -F"[\` ]" \
66-
'/warning: `.+?` \(lib\) generated [0-9]+ warning[s]?/ { print $3 ": " $7 }' \
67-
| sort
58+
# use a random EOF, as per GitHub security recommendations
59+
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64)
60+
WARNINGS0=$(\
61+
cargo -q clippy --message-format=short -- \
62+
-Aclippy::all \
63+
-Wclippy::missing_errors_doc \
64+
-Wclippy::missing_panics_doc \
65+
-Wclippy::missing_safety_doc \
66+
-Wclippy::missing_docs_in_private_items \
67+
-Wmissing_docs \
68+
2>&1)
69+
AWKSTR='/warning: `.+`/ { print $0 }'
70+
WARNINGS1=$(echo "$WARNINGS0" | awk "$AWKSTR")
71+
WARNINGS="$(\
72+
cargo -q clippy --message-format=short -- \
73+
-Aclippy::all \
74+
-Wclippy::missing_errors_doc \
75+
-Wclippy::missing_panics_doc \
76+
-Wclippy::missing_safety_doc \
77+
-Wclippy::missing_docs_in_private_items \
78+
-Wmissing_docs \
79+
2>&1 \
80+
| awk -F"[\` ]" \
81+
'/warning: `.+` \(lib\) generated [0-9]+ warnings?/ { print $3 ": " $7 }' \
82+
| sort)"
83+
echo "TARGET_WARNINGS<<$EOF" >> "$GITHUB_OUTPUT"
84+
echo "$WARNINGS" >> "$GITHUB_OUTPUT"
85+
echo "$EOF" >> "$GITHUB_OUTPUT"
86+
echo "abc"
87+
echo "${WARNINGS}"
88+
echo "$WARNINGS"
89+
WARNINGS="ABCDEF"
90+
echo "${WARNINGS}"
91+
echo "$WARNINGS"
92+
echo "${WARNINGS0}"
93+
echo "$AWKSTR"
94+
echo "${WARNINGS1}"
95+
echo "0000"
96+
echo "$WARNINGS0" | awk "$AWKSTR"
6897
6998
- name: Compare comment coverage
7099
run: |
100+
echo "test abc"
101+
echo "${{ env.target_warnings }}"
102+
echo "${{ env.TARGET_WARNINGS }}"
103+
echo "${{ steps.missing_docs_warnings_target.outputs.TARGET_WARNINGS }}"
71104
IFS=$'\n' read -rd '' -a missing_docs_warnings_pr_arr <<< "${{steps.missing_docs_warnings_pr.outcome}}"
72105
IFS=$'\n' read -rd '' -a missing_docs_warnings_target_arr <<< "${{steps.missing_docs_warnings_target.outcome}}"
73106
for pr_warnings_line in "${missing_docs_warnings_pr_arr[@]}"

0 commit comments

Comments
 (0)