mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-09 13:34:58 +08:00
Fix several problems in stubtest unused (#5401)
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user