diff options
author | Bill Wendling <morbo@google.com> | 2018-03-27 00:15:30 -0700 |
---|---|---|
committer | Bill Wendling <morbo@google.com> | 2018-03-27 00:43:37 -0700 |
commit | 5b40ffe6b9a85432e4ef3ed632623f7718ad98a1 (patch) | |
tree | e5749cef8ced85d10b787ef110880f117113f5cf | |
parent | d5df20819ea54fb501ef3e506e8c81e7645ae9ce (diff) | |
download | yapf-5b40ffe6b9a85432e4ef3ed632623f7718ad98a1.tar.gz |
A comment before a decorator isn't part of the decorator.
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | yapf/yapflib/pytree_unwrapper.py | 6 | ||||
-rw-r--r-- | yapf/yapflib/pytree_utils.py | 4 | ||||
-rw-r--r-- | yapftests/reformatter_buganizer_test.py | 12 |
4 files changed, 21 insertions, 2 deletions
@@ -15,6 +15,7 @@ ### Fixed - Attempt to determine if long lambdas are allowed. This can be done on a case-by-case basis with a "pylint" disable comment. +- A comment before a decorator isn't part of the decorator's line. ## [0.21.0] 2018-03-18 ### Added diff --git a/yapf/yapflib/pytree_unwrapper.py b/yapf/yapflib/pytree_unwrapper.py index f6be260..bbb5cdb 100644 --- a/yapf/yapflib/pytree_unwrapper.py +++ b/yapf/yapflib/pytree_unwrapper.py @@ -222,6 +222,12 @@ class PyTreeUnwrapper(pytree_visitor.PyTreeVisitor): for child in node.children[index].children: self.Visit(child) + def Visit_decorator(self, node): # pylint: disable=invalid-name + for child in node.children: + self.Visit(child) + if pytree_utils.NodeName(child) == 'COMMENT': + self._StartNewLine() + def Visit_decorators(self, node): # pylint: disable=invalid-name for child in node.children: self._StartNewLine() diff --git a/yapf/yapflib/pytree_utils.py b/yapf/yapflib/pytree_utils.py index 3444f44..d89588f 100644 --- a/yapf/yapflib/pytree_utils.py +++ b/yapf/yapflib/pytree_utils.py @@ -268,7 +268,7 @@ def GetOpeningBracket(node): Returns: The opening bracket node or None if it couldn't find one. """ - return getattr(node, _NODE_ANNOTATION_PREFIX + "container_bracket", None) + return getattr(node, _NODE_ANNOTATION_PREFIX + 'container_bracket', None) def SetOpeningBracket(node, bracket): @@ -278,7 +278,7 @@ def SetOpeningBracket(node, bracket): node: the node. bracket: opening bracket to set. """ - setattr(node, _NODE_ANNOTATION_PREFIX + "container_bracket", bracket) + setattr(node, _NODE_ANNOTATION_PREFIX + 'container_bracket', bracket) def DumpNodeToString(node): diff --git a/yapftests/reformatter_buganizer_test.py b/yapftests/reformatter_buganizer_test.py index 5b50c28..914befc 100644 --- a/yapftests/reformatter_buganizer_test.py +++ b/yapftests/reformatter_buganizer_test.py @@ -28,6 +28,18 @@ class BuganizerFixes(yapf_test_helper.YAPFTest): def setUpClass(cls): style.SetGlobalStyle(style.CreateChromiumStyle()) + def testB38343525(self): + code = """\ +# This does foo. +@arg.String('some_path_to_a_file', required=True) +# This does bar. +@arg.String('some_path_to_a_file', required=True) +def f(): + print 1 +""" + uwlines = yapf_test_helper.ParseAndUnwrap(code) + self.assertCodeEqual(code, reformatter.Reformat(uwlines)) + def testB37099651(self): unformatted_code = """\ _MEMCACHE = lazy.MakeLazy( |