Skip to content

Commit

Permalink
Add check to ensure error code explanations are not removed anymore e…
Browse files Browse the repository at this point in the history
…ven if not emitted
  • Loading branch information
GuillaumeGomez committed Jul 2, 2021
1 parent 1aa6c7c commit 13bdc5c
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/ci/docker/host-x86_64/mingw-check/Dockerfile
Expand Up @@ -28,6 +28,7 @@ COPY scripts/sccache.sh /scripts/
RUN sh /scripts/sccache.sh

COPY host-x86_64/mingw-check/validate-toolstate.sh /scripts/
COPY host-x86_64/mingw-check/validate-error-codes.sh /scripts/

ENV RUN_CHECK_WITH_PARALLEL_QUERIES 1
ENV SCRIPT python3 ../x.py --stage 2 test src/tools/expand-yaml-anchors && \
Expand All @@ -37,6 +38,7 @@ ENV SCRIPT python3 ../x.py --stage 2 test src/tools/expand-yaml-anchors && \
python3 ../x.py test --stage 2 src/tools/tidy && \
python3 ../x.py doc --stage 0 library/test && \
/scripts/validate-toolstate.sh && \
/scripts/validate-error-codes.sh && \
# Runs checks to ensure that there are no ES5 issues in our JS code.
es-check es5 ../src/librustdoc/html/static/*.js && \
eslint ../src/librustdoc/html/static/*.js
15 changes: 15 additions & 0 deletions src/ci/docker/host-x86_64/mingw-check/validate-error-codes.sh
@@ -0,0 +1,15 @@
#!/bin/bash
# Checks that no error code explanation is removed.

set -euo pipefail

echo "Check if an error code explanation was removed..."

if (git diff "$BASE_COMMIT" --name-status | grep '^D' \
| grep --quiet "compiler/rustc_error_codes/src/error_codes/"); then
echo "Error code explanations should never be removed!"
echo "Take a look at E0001 to see how to handle it."
exit 1
fi

echo "No error code explanation was removed!"
5 changes: 5 additions & 0 deletions src/ci/docker/run.sh
Expand Up @@ -219,6 +219,10 @@ else
command="/checkout/src/ci/run.sh"
fi

# Get some needed information for $BASE_COMMIT
git fetch "https://github.com/$GITHUB_REPOSITORY" "$GITHUB_BASE_REF"
BASE_COMMIT="$(git merge-base FETCH_HEAD HEAD)"

docker \
run \
--workdir /checkout/obj \
Expand All @@ -237,6 +241,7 @@ docker \
--env TOOLSTATE_PUBLISH \
--env RUST_CI_OVERRIDE_RELEASE_CHANNEL \
--env CI_JOB_NAME="${CI_JOB_NAME-$IMAGE}" \
--env BASE_COMMIT="$BASE_COMMIT" \
--init \
--rm \
rust-ci \
Expand Down

0 comments on commit 13bdc5c

Please sign in to comment.