Fix several problems in stubtest unused (#5401)

This commit is contained in:
Akuli
2021-05-10 19:50:37 +03:00
committed by GitHub
parent 24532a101e
commit 272d70cdd2
2 changed files with 9 additions and 6 deletions

View File

@@ -3,7 +3,7 @@ name: Remove unused stubtest whitelist entries
on:
workflow_dispatch:
schedule:
- cron: '0 4 * * SAT'
- cron: '0 4 * * *'
permissions:
contents: read
@@ -32,7 +32,7 @@ jobs:
pip install -U git+git://github.com/python/mypy@master
- name: Run stubtest
shell: bash
run: ./tests/stubtest_unused.py | tee stubtest-output-${{ matrix.os }}-${{ matrix.python-version }} || true
run: ./tests/stubtest_unused.py | tee stubtest-output-${{ matrix.os }}-${{ matrix.python-version }}
- name: Store output
uses: actions/upload-artifact@v2
with:
@@ -50,6 +50,9 @@ jobs:
uses: actions/download-artifact@v2
with:
name: stubtest-output
# TODO: maybe mypy_primer should always output forward slashes
- name: Fix slashes
run: sed -i 's:\\:/:g' stubtest-output-windows-*
- name: Collate duplicates
run: cat stubtest-output-* | sort -u | tee stubtest-output
- name: Remove entries from whitelists
@@ -61,3 +64,4 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Remove unused stubtest whitelist entries
title: "[gh-action] Remove unused stubtest whitelist entries"
base: master

View File

@@ -11,18 +11,17 @@ _UNUSED_NOTE = "note: unused allowlist entry "
_WHITELIST_PATH = os.path.join("tests", "stubtest_whitelists")
def main() -> int:
def main() -> None:
unused = run_stubtest()
with_filenames = []
for uu in unused:
with_filenames.extend(unused_files(uu))
for file, uu in with_filenames:
print(file + ":" + uu)
return 1 if with_filenames else 0
def run_stubtest() -> List[str]:
proc = subprocess.run(["./tests/stubtest_test.py"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
proc = subprocess.run([sys.executable, "tests/stubtest_test.py"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
output = proc.stdout.decode("utf-8").splitlines()
return [line[len(_UNUSED_NOTE) :].strip() for line in output if line.startswith(_UNUSED_NOTE)]
@@ -49,4 +48,4 @@ def find_unused_in_file(unused: str, path: str) -> bool:
if __name__ == "__main__":
sys.exit(main())
main()