mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
781aea8725
Summary: "arc lint" runs the lint script for each file in parallel: >>> [5, pid=27257] <exec> $ scripts/lint.py 'scripts/lint.py' >>> [6, pid=27257] <exec> $ scripts/lint.py 'scripts/unit.py' >>> [7, pid=27257] <exec> $ scripts/lint.py 'tests/test-check-code-hg.t' >>> [8, pid=27257] <exec> $ scripts/lint.py 'tests/test-check-pyflakes-hg.t' That looks fine but `lint.py` runs `test-check*.t` which will check all files. This is a typical `N^2` behavior and needs to be fixed. This diff changes the linter and test code so the test only checks the single selected file. Test Plan: Run `arc lint --trace` and check `lint.py` time usage. It went down from 10 seconds to 2 seconds for this diff. Reviewers: #sourcecontrol, durham Reviewed By: durham Subscribers: mjpieters Differential Revision: https://phabricator.intern.facebook.com/D4051080 Signature: t1:4051080:1476985355:45845c6eb0e66cbfa000e61b7b496f2d00aeb042
70 lines
3.9 KiB
Perl
70 lines
3.9 KiB
Perl
#require test-repo
|
|
|
|
$ check_code="$RUNTESTDIR"/../contrib/check-code.py
|
|
$ cd "$TESTDIR"/..
|
|
|
|
New errors are not allowed. Warnings are strongly discouraged.
|
|
(The writing "no-che?k-code" is for not skipping this file when checking.)
|
|
|
|
$ echo ${LINTFILES:-`hg locate`} | sed 's-\\-/-g' |
|
|
> xargs "$check_code" --warnings --per-file=0 || false
|
|
Skipping CMakeLists.txt it has no-che?k-code (glob)
|
|
Skipping cdatapack/cdatapack.c it has no-che?k-code (glob)
|
|
Skipping cdatapack/cdatapack.h it has no-che?k-code (glob)
|
|
Skipping cdatapack/cdatapack_dump.c it has no-che?k-code (glob)
|
|
Skipping cdatapack/cdatapack_get.c it has no-che?k-code (glob)
|
|
Skipping cdatapack/py-cdatapack.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/bsearch.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/bsearch.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/bsearch_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/checksum.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/checksum.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/checksum_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/internal_result.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/node.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/node.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/node_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/path_buffer.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/result.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tests.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tests.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_arena.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_arena.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_convert.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_convert_rt.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_convert_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_copy.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_copy_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_diff.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_diff_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_disk.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_disk_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_dump.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_iterate_rt.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_iterator.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_iterator.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_iterator_test.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_path.c it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_path.h it has no-che?k-code (glob)
|
|
Skipping cfastmanifest/tree_test.c it has no-che?k-code (glob)
|
|
Skipping clib/buffer.c it has no-che?k-code (glob)
|
|
Skipping clib/buffer.h it has no-che?k-code (glob)
|
|
Skipping clib/convert.h it has no-che?k-code (glob)
|
|
Skipping clib/null_test.c it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/convert.h it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/manifest.h it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/manifest_entry.h it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/manifest_fetcher.h it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/pythonutil.h it has no-che?k-code (glob)
|
|
Skipping ctreemanifest/treemanifest.h it has no-che?k-code (glob)
|
|
Skipping statprof.py it has no-che?k-code (glob)
|
|
Skipping tests/conduithttp.py it has no-che?k-code (glob)
|
|
Skipping tests/test-remotefilelog-bad-configs.t it has no-che?k-code (glob)
|
|
|
|
Check foreign extensions are only used after checks
|
|
|
|
$ hg locate 'test-*.t' | xargs $TESTDIR/check-foreignext.py
|