Mercurial > cpython-lru_cache-weakref
annotate Lib/distutils/command/check.py @ 82251:bb5a8564e186 2.7
Issue #13153: Tkinter functions now raise TclError instead of ValueError when
a unicode argument contains non-BMP character.
| author | Serhiy Storchaka <storchaka@gmail.com> |
|---|---|
| date | Mon, 18 Feb 2013 13:00:08 +0200 |
| parents | 692be1f9fa1d |
| children |
| rev | line source |
|---|---|
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
1 """distutils.command.check |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
2 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
3 Implements the Distutils 'check' command. |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
4 """ |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
5 __revision__ = "$Id$" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
6 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
7 from distutils.core import Command |
|
72834
8d837bd8148a
Fix distutils’ check and register Unicode handling (#13114).
Éric Araujo <merwok@netwok.org>
parents:
56400
diff
changeset
|
8 from distutils.dist import PKG_INFO_ENCODING |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
9 from distutils.errors import DistutilsSetupError |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
10 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
11 try: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
12 # docutils is installed |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
13 from docutils.utils import Reporter |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
14 from docutils.parsers.rst import Parser |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
15 from docutils import frontend |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
16 from docutils import nodes |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
17 from StringIO import StringIO |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
18 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
19 class SilentReporter(Reporter): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
20 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
21 def __init__(self, source, report_level, halt_level, stream=None, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
22 debug=0, encoding='ascii', error_handler='replace'): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
23 self.messages = [] |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
24 Reporter.__init__(self, source, report_level, halt_level, stream, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
25 debug, encoding, error_handler) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
26 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
27 def system_message(self, level, message, *children, **kwargs): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
28 self.messages.append((level, message, children, kwargs)) |
|
80765
692be1f9fa1d
Fix setup.py register failure with invalid rst in description (#13614).
Éric Araujo <aeric@mtlpy.org>
parents:
72834
diff
changeset
|
29 return nodes.system_message(message, level=level, |
|
692be1f9fa1d
Fix setup.py register failure with invalid rst in description (#13614).
Éric Araujo <aeric@mtlpy.org>
parents:
72834
diff
changeset
|
30 type=self.levels[level], |
|
692be1f9fa1d
Fix setup.py register failure with invalid rst in description (#13614).
Éric Araujo <aeric@mtlpy.org>
parents:
72834
diff
changeset
|
31 *children, **kwargs) |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
32 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
33 HAS_DOCUTILS = True |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
34 except ImportError: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
35 # docutils is not installed |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
36 HAS_DOCUTILS = False |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
37 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
38 class check(Command): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
39 """This command checks the meta-data of the package. |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
40 """ |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
41 description = ("perform some checks on the package") |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
42 user_options = [('metadata', 'm', 'Verify meta-data'), |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
43 ('restructuredtext', 'r', |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
44 ('Checks if long string meta-data syntax ' |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
45 'are reStructuredText-compliant')), |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
46 ('strict', 's', |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
47 'Will exit with an error if a check fails')] |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
48 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
49 boolean_options = ['metadata', 'restructuredtext', 'strict'] |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
50 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
51 def initialize_options(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
52 """Sets default values for options.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
53 self.restructuredtext = 0 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
54 self.metadata = 1 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
55 self.strict = 0 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
56 self._warnings = 0 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
57 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
58 def finalize_options(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
59 pass |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
60 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
61 def warn(self, msg): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
62 """Counts the number of warnings that occurs.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
63 self._warnings += 1 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
64 return Command.warn(self, msg) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
65 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
66 def run(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
67 """Runs the command.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
68 # perform the various tests |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
69 if self.metadata: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
70 self.check_metadata() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
71 if self.restructuredtext: |
|
53062
3455fd78467e
Merged revisions 71478 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53057
diff
changeset
|
72 if HAS_DOCUTILS: |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
73 self.check_restructuredtext() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
74 elif self.strict: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
75 raise DistutilsSetupError('The docutils package is needed.') |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
76 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
77 # let's raise an error in strict mode, if we have at least |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
78 # one warning |
|
53196
c60c1d39a951
DistutilsSetupError was not raised when one single warning occured
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
53062
diff
changeset
|
79 if self.strict and self._warnings > 0: |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
80 raise DistutilsSetupError('Please correct your package.') |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
81 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
82 def check_metadata(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
83 """Ensures that all required elements of meta-data are supplied. |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
84 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
85 name, version, URL, (author and author_email) or |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
86 (maintainer and maintainer_email)). |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
87 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
88 Warns if any are missing. |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
89 """ |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
90 metadata = self.distribution.metadata |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
91 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
92 missing = [] |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
93 for attr in ('name', 'version', 'url'): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
94 if not (hasattr(metadata, attr) and getattr(metadata, attr)): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
95 missing.append(attr) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
96 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
97 if missing: |
|
56400
a45950726bdf
Use standard comma punctuation; reword some sentences in the docs
Andrew M. Kuchling <amk@amk.ca>
parents:
53196
diff
changeset
|
98 self.warn("missing required meta-data: %s" % ', '.join(missing)) |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
99 if metadata.author: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
100 if not metadata.author_email: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
101 self.warn("missing meta-data: if 'author' supplied, " + |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
102 "'author_email' must be supplied too") |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
103 elif metadata.maintainer: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
104 if not metadata.maintainer_email: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
105 self.warn("missing meta-data: if 'maintainer' supplied, " + |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
106 "'maintainer_email' must be supplied too") |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
107 else: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
108 self.warn("missing meta-data: either (author and author_email) " + |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
109 "or (maintainer and maintainer_email) " + |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
110 "must be supplied") |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
111 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
112 def check_restructuredtext(self): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
113 """Checks if the long string fields are reST-compliant.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
114 data = self.distribution.get_long_description() |
|
72834
8d837bd8148a
Fix distutils’ check and register Unicode handling (#13114).
Éric Araujo <merwok@netwok.org>
parents:
56400
diff
changeset
|
115 if not isinstance(data, unicode): |
|
8d837bd8148a
Fix distutils’ check and register Unicode handling (#13114).
Éric Araujo <merwok@netwok.org>
parents:
56400
diff
changeset
|
116 data = data.decode(PKG_INFO_ENCODING) |
|
53057
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
117 for warning in self._check_rst_data(data): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
118 line = warning[-1].get('line') |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
119 if line is None: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
120 warning = warning[1] |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
121 else: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
122 warning = '%s (line %s)' % (warning[1], line) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
123 self.warn(warning) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
124 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
125 def _check_rst_data(self, data): |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
126 """Returns warnings when the provided data doesn't compile.""" |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
127 source_path = StringIO() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
128 parser = Parser() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
129 settings = frontend.OptionParser().get_default_values() |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
130 settings.tab_width = 4 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
131 settings.pep_references = None |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
132 settings.rfc_references = None |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
133 reporter = SilentReporter(source_path, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
134 settings.report_level, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
135 settings.halt_level, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
136 stream=settings.warning_stream, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
137 debug=settings.debug, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
138 encoding=settings.error_encoding, |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
139 error_handler=settings.error_encoding_error_handler) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
140 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
141 document = nodes.document(settings, reporter, source=source_path) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
142 document.note_source(source_path, -1) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
143 try: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
144 parser.parse(data, document) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
145 except AttributeError: |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
146 reporter.messages.append((-1, 'Could not finish the parsing.', |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
147 '', {})) |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
148 |
|
4a35c8a5be46
Merged revisions 71473 via svnmerge from
Tarek Ziadé <ziade.tarek@gmail.com>
parents:
diff
changeset
|
149 return reporter.messages |
