tests/test-check-pytype.t
branchstable
changeset 49502 dbdee8ac3e3f
parent 49501 08c3ecd899ae
child 49504 55bc6590ee21
equal deleted inserted replaced
49501:08c3ecd899ae 49502:dbdee8ac3e3f
     1 #require pytype py3 slow
       
     2 
       
     3   $ cd $RUNTESTDIR/..
       
     4 
       
     5 Many of the individual files that are excluded here confuse pytype
       
     6 because they do a mix of Python 2 and Python 3 things
       
     7 conditionally. There's no good way to help it out with that as far as
       
     8 I can tell, so let's just hide those files from it for now. We should
       
     9 endeavor to empty this list out over time, as some of these are
       
    10 probably hiding real problems.
       
    11 
       
    12 mercurial/bundlerepo.py       # no vfs and ui attrs on bundlerepo
       
    13 mercurial/context.py          # many [attribute-error]
       
    14 mercurial/crecord.py          # tons of [attribute-error], [module-attr]
       
    15 mercurial/debugcommands.py    # [wrong-arg-types]
       
    16 mercurial/dispatch.py         # initstdio: No attribute ... on TextIO [attribute-error]
       
    17 mercurial/exchange.py         # [attribute-error]
       
    18 mercurial/hgweb/hgweb_mod.py  # [attribute-error], [name-error], [wrong-arg-types]
       
    19 mercurial/hgweb/server.py     # [attribute-error], [name-error], [module-attr]
       
    20 mercurial/hgweb/wsgicgi.py    # confused values in os.environ
       
    21 mercurial/httppeer.py         # [attribute-error], [wrong-arg-types]
       
    22 mercurial/interfaces          # No attribute 'capabilities' on peer [attribute-error]
       
    23 mercurial/keepalive.py        # [attribute-error]
       
    24 mercurial/localrepo.py        # [attribute-error]
       
    25 mercurial/manifest.py         # [unsupported-operands], [wrong-arg-types]
       
    26 mercurial/minirst.py          # [unsupported-operands], [attribute-error]
       
    27 mercurial/pure/osutil.py      # [invalid-typevar], [not-callable]
       
    28 mercurial/pure/parsers.py     # [attribute-error]
       
    29 mercurial/repoview.py         # [attribute-error]
       
    30 mercurial/testing/storage.py  # tons of [attribute-error]
       
    31 mercurial/ui.py               # [attribute-error], [wrong-arg-types]
       
    32 mercurial/unionrepo.py        # ui, svfs, unfiltered [attribute-error]
       
    33 mercurial/win32.py            # [not-callable]
       
    34 mercurial/wireprotoframing.py # [unsupported-operands], [attribute-error], [import-error]
       
    35 mercurial/wireprotov1peer.py  # [attribute-error]
       
    36 mercurial/wireprotov1server.py  # BUG?: BundleValueError handler accesses subclass's attrs
       
    37 
       
    38 TODO: use --no-cache on test server?  Caching the files locally helps during
       
    39 development, but may be a hinderance for CI testing.
       
    40 
       
    41   $ pytype -V 3.7 --keep-going --jobs auto mercurial \
       
    42   >    -x mercurial/bundlerepo.py \
       
    43   >    -x mercurial/context.py \
       
    44   >    -x mercurial/crecord.py \
       
    45   >    -x mercurial/debugcommands.py \
       
    46   >    -x mercurial/dispatch.py \
       
    47   >    -x mercurial/exchange.py \
       
    48   >    -x mercurial/hgweb/hgweb_mod.py \
       
    49   >    -x mercurial/hgweb/server.py \
       
    50   >    -x mercurial/hgweb/wsgicgi.py \
       
    51   >    -x mercurial/httppeer.py \
       
    52   >    -x mercurial/interfaces \
       
    53   >    -x mercurial/keepalive.py \
       
    54   >    -x mercurial/localrepo.py \
       
    55   >    -x mercurial/manifest.py \
       
    56   >    -x mercurial/minirst.py \
       
    57   >    -x mercurial/pure/osutil.py \
       
    58   >    -x mercurial/pure/parsers.py \
       
    59   >    -x mercurial/repoview.py \
       
    60   >    -x mercurial/testing/storage.py \
       
    61   >    -x mercurial/thirdparty \
       
    62   >    -x mercurial/ui.py \
       
    63   >    -x mercurial/unionrepo.py \
       
    64   >    -x mercurial/win32.py \
       
    65   >    -x mercurial/wireprotoframing.py \
       
    66   >    -x mercurial/wireprotov1peer.py \
       
    67   >    -x mercurial/wireprotov1server.py \
       
    68   >  > $TESTTMP/pytype-output.txt || cat $TESTTMP/pytype-output.txt
       
    69 
       
    70 Only show the results on a failure, because the output on success is also
       
    71 voluminous and variable.