Anonymous avatar Anonymous committed 61c39fe

contrib/fixsyntax: more terse syntax error reporting

patch by Ali Gholami Rudi

Comments (0)

Files changed (1)

rope/contrib/fixsyntax.py

     @utils.saveit
     def get_pymodule(self):
         """Get a `PyModule`"""
-        errors = []
+        msg = None
         code = self.code
         tries = 0
         while True:
                 return self.pycore.get_string_module(
                     code, resource=self.resource, force_errors=True)
             except exceptions.ModuleSyntaxError, e:
+                if msg is None:
+                    msg = '%s:%s %s' % (e.filename, e.lineno, e.message_)
                 if tries < self.maxfixes:
                     tries += 1
                     self.commenter.comment(e.lineno)
                     code = '\n'.join(self.commenter.lines)
-                    errors.append('  * line %s: %s ... fixed' % (e.lineno,
-                                                                 e.message_))
                 else:
-                    errors.append('  * line %s: %s ... raised!' % (e.lineno,
-                                                                   e.message_))
-                    new_message = ('\nSyntax errors in file %s:\n' % e.filename) \
-                                   + '\n'.join(errors)
-                    raise exceptions.ModuleSyntaxError(e.filename, e.lineno,
-                                                       new_message)
+                    raise exceptions.ModuleSyntaxError(e.filename, e.lineno, msg)
 
     @property
     @utils.saveit
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.