chromium-src-build/util
Dmitry Trofimovich 7fa2a59295 Optimize FilterTestNames() by using precompiled patterns.
Previous implementation was slow when you put too many items in
the negative part of gtest filter (with positive part = *).
For net_unittests we have 2 mln fnmatch.fnmatch() calls.
Using one re match() instead of repetitive fnmatch() is much faster.
This change makes it more than 1000 times faster in heavy scenarios
(0.1 sec instead of 8 min for net_unittests with 100 negative items).

R=alexandermont@chromium.org, jbudorick@chromium.org

Bug: 783187
Change-Id: I70b0487e451cfc0457a683d4e1ef5de2a8bee732
Reviewed-on: https://chromium-review.googlesource.com/758853
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: John Budorick <jbudorick@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#525737}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: da0240761319bc610c7c4121d76659c7364b79bb
2017-12-21 18:09:07 +00:00
..
lib/common Optimize FilterTestNames() by using precompiled patterns. 2017-12-21 18:09:07 +00:00
BUILD.gn Get rid of LASTCHANGE.blink 2017-04-19 20:48:47 +00:00
branding.gni Fix up the Mac installer’s Info.plist, build with branding info 2016-09-22 20:46:03 +00:00
java_action.gni [iOS][GN] Port ios_web_unittests to build with gn 2015-10-22 00:42:04 +00:00
java_action.py Set Python shebang in build to /usr/bin/env python 2017-07-05 14:42:43 +00:00
lastchange.py Fix typo introduced in http://crrev.com/c/728950 2017-10-23 22:09:13 +00:00
process_version.gni gn: Point to process_version_rc_template() from process_version()'s docs 2016-09-20 18:23:24 +00:00
version.gni gn: Generalize process_version() and move it to build/util (take #2) 2016-09-17 19:42:59 +00:00
version.py Reland of Propagate is_official_build to version script. (patchset #1 id:1 of https://codereview.chromium.org/1851843002/ ) 2016-04-04 21:16:58 +00:00
webkit_version.h.in Move webkit_version.h.in from content to build directory. 2015-10-25 14:43:06 +00:00