diff options
Diffstat (limited to 'sphinx/ext/coverage.py')
-rw-r--r-- | sphinx/ext/coverage.py | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/sphinx/ext/coverage.py b/sphinx/ext/coverage.py index 9a50fc260..15e738497 100644 --- a/sphinx/ext/coverage.py +++ b/sphinx/ext/coverage.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- """ sphinx.ext.coverage ~~~~~~~~~~~~~~~~~~~ @@ -12,12 +11,10 @@ import glob import inspect +import pickle import re from os import path -from six import iteritems -from six.moves import cPickle as pickle - import sphinx from sphinx.builders import Builder from sphinx.locale import __ @@ -34,13 +31,13 @@ logger = logging.getLogger(__name__) # utility def write_header(f, text, char='-'): - # type:(IO, unicode, unicode) -> None + # type:(IO, str, str) -> None f.write(text + '\n') f.write(char * len(text) + '\n') def compile_regex_list(name, exps): - # type: (unicode, unicode) -> List[Pattern] + # type: (str, str) -> List[Pattern] lst = [] for exp in exps: try: @@ -60,20 +57,20 @@ class CoverageBuilder(Builder): def init(self): # type: () -> None - self.c_sourcefiles = [] # type: List[unicode] + self.c_sourcefiles = [] # type: List[str] for pattern in self.config.coverage_c_path: pattern = path.join(self.srcdir, pattern) self.c_sourcefiles.extend(glob.glob(pattern)) - self.c_regexes = [] # type: List[Tuple[unicode, Pattern]] + self.c_regexes = [] # type: List[Tuple[str, Pattern]] for (name, exp) in self.config.coverage_c_regexes.items(): try: self.c_regexes.append((name, re.compile(exp))) except Exception: logger.warning(__('invalid regex %r in coverage_c_regexes'), exp) - self.c_ignorexps = {} # type: Dict[unicode, List[Pattern]] - for (name, exps) in iteritems(self.config.coverage_ignore_c_items): + self.c_ignorexps = {} # type: Dict[str, List[Pattern]] + for (name, exps) in self.config.coverage_ignore_c_items.items(): self.c_ignorexps[name] = compile_regex_list('coverage_ignore_c_items', exps) self.mod_ignorexps = compile_regex_list('coverage_ignore_modules', @@ -84,16 +81,16 @@ class CoverageBuilder(Builder): self.config.coverage_ignore_functions) def get_outdated_docs(self): - # type: () -> unicode + # type: () -> str return 'coverage overview' def write(self, *ignored): # type: (Any) -> None - self.py_undoc = {} # type: Dict[unicode, Dict[unicode, Any]] + self.py_undoc = {} # type: Dict[str, Dict[str, Any]] self.build_py_coverage() self.write_py_coverage() - self.c_undoc = {} # type: Dict[unicode, Set[Tuple[unicode, unicode]]] + self.c_undoc = {} # type: Dict[str, Set[Tuple[str, str]]] self.build_c_coverage() self.write_c_coverage() @@ -102,8 +99,8 @@ class CoverageBuilder(Builder): # Fetch all the info from the header files c_objects = self.env.domaindata['c']['objects'] for filename in self.c_sourcefiles: - undoc = set() # type: Set[Tuple[unicode, unicode]] - with open(filename, 'r') as f: + undoc = set() # type: Set[Tuple[str, str]] + with open(filename) as f: for line in f: for key, regex in self.c_regexes: match = regex.match(line) @@ -127,7 +124,7 @@ class CoverageBuilder(Builder): write_header(op, 'Undocumented C API elements', '=') op.write('\n') - for filename, undoc in iteritems(self.c_undoc): + for filename, undoc in self.c_undoc.items(): write_header(op, filename) for typ, name in sorted(undoc): op.write(' * %-50s [%9s]\n' % (name, typ)) @@ -157,7 +154,7 @@ class CoverageBuilder(Builder): continue funcs = [] - classes = {} # type: Dict[unicode, List[unicode]] + classes = {} # type: Dict[str, List[str]] for name, obj in inspect.getmembers(mod): # diverse module attributes are ignored: @@ -194,7 +191,7 @@ class CoverageBuilder(Builder): classes[name] = [] continue - attrs = [] # type: List[unicode] + attrs = [] # type: List[str] for attr_name in dir(obj): if attr_name not in obj.__dict__: @@ -247,7 +244,7 @@ class CoverageBuilder(Builder): if undoc['classes']: op.write('Classes:\n') for name, methods in sorted( - iteritems(undoc['classes'])): + undoc['classes'].items()): if not methods: op.write(' * %s\n' % name) else: @@ -268,7 +265,7 @@ class CoverageBuilder(Builder): def setup(app): - # type: (Sphinx) -> Dict[unicode, Any] + # type: (Sphinx) -> Dict[str, Any] app.add_builder(CoverageBuilder) app.add_config_value('coverage_ignore_modules', [], False) app.add_config_value('coverage_ignore_functions', [], False) |