contrib/setup-pytype.sh
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 02 Apr 2024 21:53:17 +0200
changeset 51558 c4aab3661f25
parent 49652 03792c1ed341
permissions -rwxr-xr-x
bundlespec: rationalize the way we specify stream bundle version Instead of having weird dedicated option for each version (v2, v3, etc) we reuse the same "stream" parameters. This is consistent with the ability to request a stream clone using "none-v2;stream=v2". This changeset introduce no user visible change, this is pure internal cleaning.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
49652
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     1
#!/bin/bash
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     2
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     3
set -e
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     4
set -u
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     5
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     6
# Find the python3 setup that would run pytype
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     7
PYTYPE=`which pytype`
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     8
PYTHON3=`head -n1 ${PYTYPE} | sed -s 's/#!//'`
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     9
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    10
# Existing stubs that pytype processes live here
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    11
TYPESHED=$(${PYTHON3} -c "import pytype; print(pytype.__path__[0])")/typeshed/stubs
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    12
HG_STUBS=${TYPESHED}/mercurial
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    13
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    14
echo "Patching typeshed at $HG_STUBS"
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    15
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    16
rm -rf ${HG_STUBS}
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    17
mkdir -p ${HG_STUBS}
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    18
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    19
cat > ${HG_STUBS}/METADATA.toml <<EOF
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    20
version = "0.1"
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    21
EOF
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    22
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    23
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    24
mkdir -p ${HG_STUBS}/mercurial/cext ${HG_STUBS}/mercurial/thirdparty/attr
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    25
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    26
touch ${HG_STUBS}/mercurial/__init__.pyi
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    27
touch ${HG_STUBS}/mercurial/cext/__init__.pyi
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    28
touch ${HG_STUBS}/mercurial/thirdparty/__init__.pyi
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    29
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    30
ln -sf $(hg root)/mercurial/cext/*.{pyi,typed} \
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    31
       ${HG_STUBS}/mercurial/cext
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    32
ln -sf $(hg root)/mercurial/thirdparty/attr/*.{pyi,typed} \
03792c1ed341 contrib: add a script for adding vendored type stubs to typeshed
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    33
       ${HG_STUBS}/mercurial/thirdparty/attr