[PATCH 2 of 6] check-code: always report when a file is skipped by "no-check-code"
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Wed Jan 8 02:09:08 CST 2014
On 01/07/2014 01:31 PM, Simon Heimberg wrote:
> # HG changeset patch
> # User Simon Heimberg <simohe at besonet.ch>
> # Date 1389130155 -3600
> # Tue Jan 07 22:29:15 2014 +0100
> # Node ID 661afe245eee6f739b52641878f87984baf06468
> # Parent 0db2ed7afb31e2c6e2ca26c4f7ffbdf556759a15
> check-code: always report when a file is skipped by "no-check-code"
>
> Skipping an entire file generally from checking is an important event, so
> report it always.
> Do not tell the check name because skipping does not depend on it. Directly
> skip the entire file instead of checking more patterns and skip again.
>
> The pragma no-check-code was introduced by accident in the past. (Fixed in
> e033a7d444ac and ee07f9d142c9.) This now is prevented because the files
> to skip have to be listed in the test output of test-check-code-hg.t.
>
> diff -r 0db2ed7afb31 -r 661afe245eee contrib/check-code.py
> --- a/contrib/check-code.py Tue Jan 07 22:28:45 2014 +0100
> +++ b/contrib/check-code.py Tue Jan 07 22:29:15 2014 +0100
> @@ -442,10 +442,8 @@
> pre = post = fp.read()
> fp.close()
> if "no-" "check-code" in pre:
> - if debug:
> - print "Skipping %s for %s it has no-" "check-code" % (
> - name, f)
> - break
> + print "Skipping %s it has no-" "check-code" % f
> + return "Skip" # skip checking this file
> for p, r in filters:
> post = re.sub(p, r, post)
> nerrs = len(pats[0]) # nerr elements are errors
> diff -r 0db2ed7afb31 -r 661afe245eee tests/test-check-code-hg.t
> --- a/tests/test-check-code-hg.t Tue Jan 07 22:28:45 2014 +0100
> +++ b/tests/test-check-code-hg.t Tue Jan 07 22:29:15 2014 +0100
> @@ -28,3 +28,8 @@
>
> $ { hg manifest 2>/dev/null; ls "$TESTTMP"/*.py | sed 's-\\-/-g'; } |
> > xargs "$check_code" --warnings --per-file=0 || false
> + Skipping hgext/zeroconf/Zeroconf.py it has no-che?k-code (glob)
> + Skipping i18n/polib.py it has no-che?k-code (glob)
> + Skipping mercurial/httpclient/__init__.py it has no-che?k-code (glob)
> + Skipping mercurial/httpclient/_readers.py it has no-che?k-code (glob)
> + Skipping mercurial/httpclient/socketutil.py it has no-che?k-code (glob)
The no-che?k-code (glob) thing is here to prevent disabling of checkcode
on test-check-code-hg.t ?
More information about the Mercurial-devel
mailing list