Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(87)

Side by Side Diff: build/android/findbugs_diff.py

Issue 11273026: The findbugs_diff and lib. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 #!/usr/bin/python
bulach 2012/10/25 08:30:06 nit: #!/usr/bin/env python
michaelbai 2012/10/25 21:13:26 Done.
2 #
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file.
6
7 """Runs findbugs, and returns an error code if there are new warnings.
8 This runs findbugs with an additional flag to exclude known bugs.
9 To update the list of known bugs, do this:
10
11 findbugs_diff.py --rebaseline
12
13 Note that this is separate from findbugs_exclude.xml. The "exclude" file has
14 false positives that we do not plan to fix. The "known bugs" file has real
15 bugs that we *do* plan to fix (but haven't done so yet).
16
17 Other options
18 --only-analyze used to only analyze the class you are interested.
bulach 2012/10/25 08:30:06 nit: how about "filter" ? --only-analyze seems tha
michaelbai 2012/10/25 21:13:26 FindBugs calls exclude xml file as filter file, it
19 --release analyze the classes in out/Release directory.
bulach 2012/10/25 08:30:06 nit: how about buildtype? then it can have as defa
michaelbai 2012/10/25 21:13:26 I'd like use the --release-build, since there are
20 --findbugs-args used to passin other findbugs's options.
21
22 Run
23 CHROM_SRC/third_party/findbugs/bin/findbugs -textui for details.
bulach 2012/10/25 08:30:06 nit: $CHROME_SRC
michaelbai 2012/10/25 21:13:26 Done.
24
25 """
26
27 import optparse
28 import os
29 import sys
30
31 from pylib import findbugs
32
bulach 2012/10/25 08:30:06 nit: need an extra \n
michaelbai 2012/10/25 21:13:26 Done.
33 def main(argv):
34 parser = optparse.OptionParser()
35 parser.add_option('-r',
36 '--rebaseline',
37 action='store_true',
38 default=False,
bulach 2012/10/25 08:30:06 nit: "default=False" can be removed here and 52 an
michaelbai 2012/10/25 21:13:26 Done.
39 dest='rebaseline',
40 help='Rebaseline known findbugs issues.')
41
42 parser.add_option('-o',
43 '--only-analyze',
44 action='store',
45 default=None,
46 dest='only_analyze',
47 help='Only analyze the given classes and packages.')
48
49 parser.add_option('-l',
50 '--release',
51 action='store_true',
52 default=False,
53 dest='release_version',
54 help='Whether check release version.')
55
56 parser.add_option('-f',
57 '--findbug-args',
58 action='store',
59 default=None,
60 dest='findbug_args',
61 help='Additoinal findbug arguments.')
bulach 2012/10/25 08:30:06 nit: Additional
michaelbai 2012/10/25 21:13:26 Done.
62
63 options, _ = parser.parse_args()
64
65 chrome_src = os.getenv('CHROME_SRC')
66
67 known_bugs = os.path.join(chrome_src, 'build', 'android', 'findbugs_filter',
bulach 2012/10/25 08:30:06 nit: maybe have a "baseline_dir" as option? that w
michaelbai 2012/10/25 21:13:26 I see your point, you want to use the same script
68 'findbugs_known_bugs.txt')
69 exclude_filter = os.path.join(chrome_src, 'build', 'android',
70 'findbugs_filter', 'findbugs_exclude.xml')
71
72 only_analyze = options.only_analyze
73 if not only_analyze:
74 only_analyze = 'org.chromium.-'
75
76 return findbugs.Run(exclude_filter, known_bugs, only_analyze,
77 None, options.rebaseline, options.findbug_args,
78 options.release_version)
79
80
81 if __name__ == '__main__':
82 sys.exit(main(sys.argv))
OLDNEW
« no previous file with comments | « no previous file | build/android/findbugs_filter/findbugs_exclude.xml » ('j') | build/android/pylib/findbugs.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698