Mercurial > hg
view contrib/setup-pytype.sh @ 49863:92743e6d1a0c
typing: disable a bogus attribute-error warning in phabricator
In a local pytype run, this fixes:
File "/mnt/c/Users/Matt/hg/hgext/phabricator.py", line 359, in <lambda>:
No attribute 'items' on bytes [attribute-error]
In Union[Any, bytes]
Called from (traceback):
line 363, in process
The `bytes` case takes the previous `if` branch though.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Thu, 05 Jan 2023 19:53:02 -0500 |
parents | 03792c1ed341 |
children | 6aa74bcd4255 |
line wrap: on
line source
#!/bin/bash set -e set -u # Find the python3 setup that would run pytype PYTYPE=`which pytype` PYTHON3=`head -n1 ${PYTYPE} | sed -s 's/#!//'` # Existing stubs that pytype processes live here TYPESHED=$(${PYTHON3} -c "import pytype; print(pytype.__path__[0])")/typeshed/stubs HG_STUBS=${TYPESHED}/mercurial echo "Patching typeshed at $HG_STUBS" rm -rf ${HG_STUBS} mkdir -p ${HG_STUBS} cat > ${HG_STUBS}/METADATA.toml <<EOF version = "0.1" EOF mkdir -p ${HG_STUBS}/mercurial/cext ${HG_STUBS}/mercurial/thirdparty/attr touch ${HG_STUBS}/mercurial/__init__.pyi touch ${HG_STUBS}/mercurial/cext/__init__.pyi touch ${HG_STUBS}/mercurial/thirdparty/__init__.pyi ln -sf $(hg root)/mercurial/cext/*.{pyi,typed} \ ${HG_STUBS}/mercurial/cext ln -sf $(hg root)/mercurial/thirdparty/attr/*.{pyi,typed} \ ${HG_STUBS}/mercurial/thirdparty/attr