Lines Matching +full:plugin +full:- +full:syntax +full:- +full:async +full:- +full:generators
5 ## [0.32.0] 2021-12-26
7 - Look at the 'pyproject.toml' file to see if it contains ignore file information
9 - New entry point `yapf_api.FormatTree` for formatting lib2to3 concrete
10 syntax trees.
11 - Add CI via GitHub Actions.
13 - Change tests to support "pytest".
14 - Reformat so that "flake8" is happy.
15 - Use GitHub Actions instead of Travis for CI.
16 - Clean up the FormatToken interface to limit how much it relies upon the
18 - Rename "unwrapped_line" module to "logical_line."
19 - Rename "UnwrappedLine" class to "LogicalLine."
21 - Enable `BLANK_LINE_BEFORE_NESTED_CLASS_OR_DEF` knob for "pep8" style, so
24 - Fixed the '...' token to be spaced after a colon.
26 ## [0.31.0] 2021-03-14
28 - Renamed 'master' brannch to 'main'.
29 - Add 'BLANK_LINES_BETWEEN_TOP_LEVEL_IMPORTS_AND_VARIABLES' to support setting
30 a custom number of blank lines between top-level imports and variable
32 - Ignore end of line `# copybara:` directives when checking line length.
33 - Look at the 'pyproject.toml' file to see if it contains style information for
36 - Do not scan excluded directories. Prior versions would scan an excluded
40 - Exclude directories on Windows.
42 ## [0.30.0] 2020-04-23
44 - Added `SPACES_AROUND_LIST_DELIMITERS`, `SPACES_AROUND_DICT_DELIMITERS`,
45 and `SPACES_AROUND_TUPLE_DELIMITERS` to add spaces after the opening-
46 and before the closing-delimiters for lists, dicts, and tuples.
47 - Adds `FORCE_MULTILINE_DICT` knob to ensure dictionaries always split,
49 - New knob `SPACE_INSIDE_BRACKETS` to add spaces inside brackets, braces, and
51 - New knob `SPACES_AROUND_SUBSCRIPT_COLON` to add spaces around the subscript /
54 - Renamed "chromium" style to "yapf". Chromium will now use PEP-8 directly.
55 - `CONTINUATION_ALIGN_STYLE` with `FIXED` or `VALIGN-RIGHT` now works with
58 - Honor a disable directive at the end of a multiline comment.
59 - Don't require splitting before comments in a list when
62 - Don't over-indent a parameter list when not needed. But make sure it is
64 - Don't split between two-word comparison operators: "is not", "not in", etc.
66 ## [0.29.0] 2019-11-28
68 - Add the `--quiet` flag to suppress output. The return code is 1 if there are
69 changes, similarly to the `--diff` flag.
70 - Add the `indent_closing_brackets` option. This is the same as the
74 - Collect a parameter list into a single object. This allows us to track how a
77 - Catch and report `UnicodeDecodeError` exceptions.
78 - Improved description of .yapfignore syntax.
80 - Format subscript lists so that splits are essentially free after a comma.
81 - Don't add a space between a string and its subscript.
82 - Extend discovery of '.style.yapf' & 'setup.cfg' files to search the root
84 - Make sure we have parameters before we start calculating penalties for
86 - Indicate if a class/function is nested to ensure blank lines when needed.
87 - Fix extra indentation in async-for else statement.
88 - A parameter list with no elements shouldn't count as exceeding the column
90 - When splitting all comma separated values, don't treat the ending bracket as
92 - The "no blank lines between nested classes or functions" knob should only
95 ## [0.28.0] 2019-07-11
97 - New knob `SPLIT_ALL_TOP_LEVEL_COMMA_SEPARATED_VALUES` is a variation on
102 - Set `INDENT_DICTIONARY_VALUE` for Google style.
103 - Set `JOIN_MULTIPLE_LINES = False` for Google style.
105 - `BLANK_LINE_BEFORE_NESTED_CLASS_OR_DEF=False` wasn't honored because the
107 - Lambda expressions shouldn't have an increased split penalty applied to the
110 - A comment with continuation markers (??) shouldn't mess with the lineno count.
111 - Only emit unformatted if the "disable long line" is at the end of the line.
114 - Fix a potential race condition by using the correct style for opening a file
117 ## [0.27.0] 2019-04-07
119 - `SPLIT_BEFORE_ARITHMETIC_OPERATOR` splits before an arithmetic operator when
123 - Catch lib2to3's "TokenError" exception and output a nicer message.
125 - Parse integer lists correctly, removing quotes if the list is within a
127 - Adjust the penalties of bitwise operands for '&' and '^', similar to '|'.
128 - Avoid splitting after opening parens if SPLIT_BEFORE_FIRST_ARGUMENT is set
130 - Adjust default SPLIT_PENALTY_AFTER_OPENING_BRACKET.
131 - Re-enable removal of extra lines on the boundaries of formatted regions.
132 - Adjust list splitting to avoid splitting before a dictionary element, because
135 - Dictionary arguments were broken in a recent version. It resulted in
139 - Improve the connectiveness between items in a list. This prevents random
141 - Don't remove a comment attached to a previous object just because it's part
144 ## [0.26.0] 2019-02-08
146 - `ALLOW_SPLIT_BEFORE_DEFAULT_OR_NAMED_ASSIGNS` allows us to split before
148 - `ARITHMETIC_PRECEDENCE_INDICATION` removes spacing around binary operators
151 - `SPACES_BEFORE_COMMENT` can now be assigned to a specific value (standard
155 - Don't modify the vertical spacing of a line that has a comment "pylint:
156 disable=line-too-long". The line is expected to be too long.
157 - improved `CONTINUATION_ALIGN_STYLE` to accept quoted or underline-separated
160 - When retrieving the opening bracket make sure that it's actually an opening
162 - Don't completely deny a lambda formatting if it goes over the column limit.
164 - Bump up penalty for splitting before a dot ('.').
165 - Ignore pseudo tokens when calculating split penalties.
166 - Increase the penalty for splitting before the first bit of a subscript.
167 - Improve splitting before dictionary values. Look more closely to see if the
171 - Increase split penalty around exponent operator.
172 - Correct spacing when using binary operators on strings with the
175 ## [0.25.0] 2018-11-25
177 - Added `INDENT_BLANK_LINES` knob to select whether the blank lines are empty
179 - Support additional file exclude patterns in .yapfignore file.
181 - Correctly determine if a scope is the last in line. It avoids a wrong
185 ## [0.24.0] 2018-09-07
187 - Added 'SPLIT_BEFORE_DOT' knob to support "builder style" calls. The "builder
191 - Support Python 3.7 in the tests. The old "comp_for" and "comp_if" nodes are
194 - Don't count inner function calls when marking arguments as named assignments.
195 - Make sure that tuples and the like are formatted nicely if they all can't fit
198 - Allow splitting in a subscript if it goes over the line limit.
199 - Increase the split penalty for an if-expression.
200 - Increase penalty for splitting in a subscript so that it's more likely to
202 - Cloning a pytree node doesn't transfer its a annotations. Make sure we do
204 - Revert change that broke the "no_spaces_around_binary_operators" option.
205 - The "--style-help" option would output string lists and sets in Python types.
209 ## [0.23.0] 2018-08-27
211 - `DISABLE_ENDING_COMMA_HEURISTIC` is a new knob to disable the heuristic which
212 splits a list onto separate lines if the list is comma-terminated.
214 - There's no need to increase N_TOKENS. In fact, it causes other things which
216 - Change the exception message instead of creating a new one that's just a
218 - Make sure not to reformat when a line is disabled even if the --lines option
220 - The "no spaces around operators" flag wasn't correctly converting strings to
223 ## [0.22.0] 2018-05-15
225 - The `BLANK_LINE_BEFORE_MODULE_DOCSTRING` knob adds a blank line before a
227 - The `SPLIT_ALL_COMMA_SEPARATED_VALUES` knob causes all lists, tuples, dicts
231 - Improve the heuristic we use to determine when to split at the start of a
234 - Check all of the elements of a tuple. Similarly to how arguments are
236 - Adjust splitting penalties around arithmetic operators so that the code can
238 - Try to meld an argument list's closing parenthesis to the last argument.
240 - Attempt to determine if long lambdas are allowed. This can be done on a
241 case-by-case basis with a "pylint" disable comment.
242 - A comment before a decorator isn't part of the decorator's line.
243 - Only force a new wrapped line after a comment in a decorator when it's the
246 ## [0.21.0] 2018-03-18
248 - Introduce a new option of formatting multiline literals. Add
251 - Added `CONTINUATION_ALIGN_STYLE` knob to choose continuation alignment style
253 - Add 'BLANK_LINES_AROUND_TOP_LEVEL_DEFINITION' knob to control the number
254 of blank lines between top-level function and class definitions.
256 - Don't split ellipses.
258 ## [0.20.2] 2018-02-12
260 - Improve the speed at which files are excluded by ignoring them earlier.
261 - Allow dictionaries to stay on a single line if they only have one entry
263 - Use tabs when constructing a continuation line when `USE_TABS` is enabled.
264 - A dictionary entry may not end in a colon, but may be an "unpacking"
268 ## [0.20.1] 2018-01-13
270 - Don't treat 'None' as a keyword if calling a function on it, like '__ne__()'.
271 - use_tabs=True always uses a single tab per indentation level; spaces are
273 - Relax the split of a paren at the end of an if statement. With
276 ## [0.20.0] 2017-11-14
278 - Improve splitting of comprehensions and generators. Add
283 - Take into account a named function argument when determining if we should
285 - Split before the first argument in a function call if the arguments contain a
287 - Improve splitting of elements in a tuple. We want to split if there's a
290 - Enforce spaces between ellipses and keywords.
291 - When calculating the split penalty for a "trailer", process the child nodes
294 - Don't enforce a split before a comment after the opening of a container if it
296 - Use a TextIOWrapper when reading from stdin in Python3. This is necessary for
298 - Remove the penalty for a split before the first argument in a function call
301 ## [0.19.0] 2017-10-14
303 - Added `SPLIT_BEFORE_EXPRESSION_AFTER_OPENING_PAREN` that enforces a split
306 - Split before the ending bracket of a comma-terminated tuple / argument list
309 - Prefer to split after a comma in an argument list rather than in the middle
311 - A non-multiline string may have newlines if it contains continuation markers
314 - Take into account the "async" keyword when determining if we must split
316 - Increase affinity for "atom" arguments in function calls. This helps prevent
318 - Don't place a dictionary argument on its own line if it's the last argument
319 in the function call where that function is part of a builder-style call.
320 - Append the "var arg" type to a star in a star_expr.
322 ## [0.18.0] 2017-09-18
324 - Option `ALLOW_SPLIT_BEFORE_DICT_VALUE` allows a split before a value. If
327 - Use spaces around the '=' in a typed name argument to align with 3.6 syntax.
329 - Allow semicolons if the line is disabled.
330 - Fix issue where subsequent comments at decreasing levels of indentation
331 were improperly aligned and/or caused output with invalid syntax.
332 - Fix issue where specifying a line range removed a needed line before a
334 - Fix spacing between unary operators if one is 'not'.
335 - Indent the dictionary value correctly if there's a multi-line key.
336 - Don't remove needed spacing before a comment in a dict when in "chromium"
338 - Increase indent for continuation line with same indent as next logical line
339 with 'async with' statement.
341 ## [0.17.0] 2017-08-20
343 - Option `NO_SPACES_AROUND_SELECTED_BINARY_OPERATORS` prevents adding spaces
346 - Adjust blank lines on formatting boundaries when using the `--lines` option.
347 - Return 1 if a diff changed the code. This is in line with how GNU diff acts.
348 - Add `-vv` flag to print out file names as they are processed
350 - Corrected how `DEDENT_CLOSING_BRACKETS` and `COALESCE_BRACKETS` interacted.
351 - Fix return value to return a boolean.
352 - Correct vim plugin not to clobber edited code if yapf returns an error.
353 - Ensured comma-terminated tuples with multiple elements are split onto separate lines.
355 ## [0.16.3] 2017-07-13
357 - Add filename information to a ParseError exception.
359 - A token that ends in a continuation marker may have more than one newline in
363 - Make sure to split after a comment even for "pseudo" parentheses.
365 ## [0.16.2] 2017-05-19
367 - Treat expansion operators ('*', '**') in a similar way to function calls to
369 - Increase the penalty for splitting after the start of a tuple.
370 - Increase penalty for excess characters.
371 - Check that we have enough children before trying to access them all.
372 - Remove trailing whitespaces from comments.
373 - Split before a function call in a list if the full list isn't able to fit on
375 - Trying not to split around the '=' of a named assign.
376 - Changed split before the first argument behavior to ignore compound
378 - Changed coalesce brackets not to line split before closing bracket.
380 ## [0.16.1] 2017-03-22
382 - Improved performance of cloning the format decision state object. This
384 - Relax the requirement that a named argument needs to be on one line. Going
387 - Don't make splitting penalty decisions based on the original formatting. This
388 can and does lead to non-stable formatting, where yapf will reformat the same
391 - Ensure splitting of arguments if there's a named assign present.
392 - Prefer to coalesce opening brackets if it's not at the beginning of a
394 - Prefer not to squish all of the elements in a function call over to the
395 right-hand side. Split the arguments instead.
396 - We need to split a dictionary value if the first element is a comment anyway,
398 - Ensure tabs are used for continued indentation when USE_TABS is True.
400 ## [0.16.0] 2017-02-05
402 - The `EACH_DICT_ENTRY_ON_SEPARATE_LINE` knob indicates that each dictionary
405 - The `SPLIT_BEFORE_DICT_SET_GENERATOR` knob splits before the `for` part of a
407 - The `BLANK_LINE_BEFORE_CLASS_DOCSTRING` knob adds a blank line before a
409 - The `ALLOW_MULTILINE_DICTIONARY_KEYS` knob allows dictionary keys to span
412 - Split before all entries in a dict/set or list maker when comma-terminated,
414 - Will now try to set O_BINARY mode on stdout under Windows and Python 2.
415 - Avoid unneeded newline transformation when writing formatted code to
418 ## [0.15.2] 2017-01-29
420 - Don't perform a global split when a named assign is part of a function call
425 - Allow splitting inside a subscript if it's a logical or bitwise operating.
428 ## [0.15.1] 2017-01-21
430 - Don't insert a space between a type hint and the '=' sign.
431 - The '@' operator can be used in Python 3 for matrix multiplication. Give the
433 - Encourage the formatter to split at the beginning of an argument list instead
439 ## [0.15.0] 2017-01-12
441 - Keep type annotations intact as much as possible. Don't try to split the over
444 - When determining if each element in a dictionary can fit on a single line, we
448 - Allow text before a "pylint" comment.
449 - Also allow text before a "yapf: (disable|enable)" comment.
451 ## [0.14.0] 2016-11-21
453 - formatting can be run in parallel using the "-p" / "--parallel" flags.
455 - "not in" and "is not" should be subtyped as binary operators.
456 - A non-Node dictionary value may have a comment before it. In those cases, we
459 - Adjust calculation so that pseudo-parentheses don't count towards the total
461 - Don't count a dictionary entry as not fitting on a single line in a
463 - Don't count pseudo-parentheses in the length of the line.
465 ## [0.13.2] 2016-10-22
467 - REGRESSION: A comment may have a prefix with newlines in it. When calculating
471 ## [0.13.1] 2016-10-17
473 - Correct emitting a diff that was accidentally removed.
475 ## [0.13.0] 2016-10-16
477 - Added support to retain the original line endings of the source code.
480 - Functions or classes with comments before them were reformatting the comments
485 - It's not really more readable to split before a dictionary value if it's part
487 - Enforce two blank lines after a function or class definition, even before a
490 - Remove O(n^2) algorithm from the line disabling logic.
492 ## [0.12.2] 2016-10-09
494 - If `style.SetGlobalStyle(<create pre-defined style>)` was called and then
499 - Don't force a split before non-function call arguments.
500 - A dictionary being used as an argument to a function call and which can exist
502 - Don't rely upon the original line break to determine if we should split
505 - Don't add spaces between star and args in a lambda expression.
506 - If a nested data structure terminates in a comma, then split before the first
509 ## [0.12.1] 2016-10-02
511 - Dictionary values will be placed on the same line as the key if *all* of the
516 - Prefer to split before a terminating r-paren in an argument list if the line
518 - Split before the first key in a dictionary if the dictionary cannot fit on a
520 - Don't count "pylint" comments when determining if the line goes over the
522 - Don't count the argument list of a lambda as a named assign in a function
525 ## [0.12.0] 2016-09-25
527 - Support formatting of typed names. Typed names are formatted a similar way to
530 - Add a knob, 'SPACES_AROUND_DEFAULT_OR_NAMED_ASSIGN', to allow adding spaces
534 - Turn "verification" off by default for external APIs.
535 - If a function call in an argument list won't fit on the current line but will
540 - Don't add space after power operator if the next operator's a unary operator.
542 ## [0.11.1] 2016-08-17
544 - Issue #228: Return exit code 0 on success, regardless of whether files were
549 - Enforce splitting each element in a dictionary if comma terminated.
550 - It's okay to split in the middle of a dotted name if the whole expression is
552 - Asynchronous functions were going missing if they were preceded by a comment
555 - The splitting of arguments when comma terminated had a conflict. The split
559 ## [0.11.0] 2016-07-17
561 - The COALESCE_BRACKETS knob prevents splitting consecutive brackets when
563 - Don't count "pylint" directives as exceeding the column limit.
566 - We split all of the arguments to a function call if there's a named argument.
571 - When retaining format of a multiline string with Chromium style, make sure
573 - Correct for when 'lib2to3' smooshes comments together into the same DEDENT
576 ## [0.10.0] 2016-06-14
578 - Add a knob, 'USE_TABS', to allow using tabs for indentation.
581 - Performance enhancements.
584 - Don't split an import list if it's not surrounded by parentheses.
586 ## [0.9.0] 2016-05-29
588 - Added a knob (SPLIT_PENALTY_BEFORE_IF_EXPR) to adjust the split penalty
591 - Added a knob (SPLIT_BEFORE_FIRST_ARGUMENT) that encourages splitting before
594 - Added a knob (SPLIT_ARGUMENTS_WHEN_COMMA_TERMINATED) splits arguments to a
598 - Don't split before a first element list argument as we would before a first
600 - Don't penalize when we must split a line.
601 - Allow splitting before the single argument in a function call.
603 ## [0.8.2] 2016-05-21
605 - Prefer not to split after the opening of a subscript.
606 - Don't add space before the 'await' keyword if it's preceded by an opening
608 - When we're setting the split penalty for a continuous list, we don't want to
610 - When calculating blank lines, don't assume the last seen object was a class
612 - Don't count the closing scope when determining if the current scope is the
615 ## [0.8.1] 2016-05-18
617 - 'SPLIT_BEFORE_LOGICAL_OPERATOR' wasn't working correctly. The penalty was
619 - Don't separate a keyword, like "await", from a left paren.
620 - Don't rely upon the original tokens' line number to determine if we should
626 ## [0.8.0] 2016-05-10
628 - Add a knob, 'SPACES_AROUND_POWER_OPERATOR', to allow adding spaces around the
632 - There shouldn't be a space between a decorator and an intervening comment.
633 - If we split before a bitwise operator, then we assume that the programmer
636 - Strengthen the bond between a keyword and value argument.
637 - Don't add a blank line after a multiline string.
638 - If the "for" part of a list comprehension can exist on the starting line
641 ## [0.7.1] 2016-04-21
643 - Don't rewrite the file if there are no changes.
644 - Ensure the proper number of blank lines before an async function.
645 - Split after a bitwise operator when in PEP 8 mode.
646 - Retain the splitting within a dictionary data literal between the key and
648 - Try to keep short function calls all on one line even if they're part of a
651 ## [0.7.0] 2016-04-09
653 - Support for Python 3.5.
654 - Add 'ALLOW_MULTILINE_LAMBDAS' which allows lambdas to be formatted onto
658 - Lessen penalty for splitting before a dictionary keyword.
659 - Formatting of trailing comments on disabled formatting lines.
660 - Disable / enable formatting at end of multi-line comment.
662 ## [0.6.3] 2016-03-06
664 - Documentation updated.
667 - Fix spacing of multiline comments when formatting is disabled.
669 ## [0.6.2] 2015-11-01
671 - Look at the 'setup.cfg' file to see if it contains style information for
673 - Look at the '~/.config/yapf/style' file to see if it contains global style
677 - Make lists that can fit on one line more likely to stay together.
678 - Correct formatting of '*args' and '**kwargs' when there are default values in
681 ## [0.6.1] 2015-10-24
683 - Make sure to align comments in data literals correctly. Also make sure we
685 - Retain proper vertical spacing before comments in a data literal.
686 - Make sure that continuations from a compound statement are distinguished from
688 - Ignore preceding comments when calculating what is a "dictionary maker".
689 - Add a small penalty for splitting before a closing bracket.
690 - Ensure that a space is enforced after we remove a pseudo-paren that's between
692 - Increase the penalty for splitting after a pseudo-paren. This could lead to
695 ## [0.6.0] 2015-10-18
697 - Add knob to indent the dictionary value if there is a split before it.
700 - No longer check that a file is a "Python" file unless the '--recursive' flag
702 - No longer allow the user to specify a directory unless the '--recursive' flag
706 - When determining if we should split a dictionary's value to a new line, use
709 - Improve how list comprehensions are formatted. Make splitting dependent upon
711 - Don't over indent if expression hanging indents if we expect to dedent the
713 - Improve splitting heuristic when the first argument to a function call is
717 - Improve splitting heuristic more so that if the first argument to a function
720 - Remove spaces around '**' operator.
721 - Retain formatting of comments in the middle of an expression.
722 - Don't add a newline to an empty file.
723 - Over indent a function's parameter list if it's not distinguished from the
726 ## [0.5.0] 2015-10-11
728 - Add option to exclude files/directories from formatting.
729 - Add a knob to control whether import names are split after the first '('.
732 - Indent the continuation of an if-then statement when it's not distinguished
733 from the body of the if-then.
734 - Allow for sensible splitting of array indices where appropriate.
735 - Prefer to not split before the ending bracket of an atom. This produces
737 - Corrected how horizontal spaces were presevered in a disabled region.
739 ## [0.4.0] 2015-10-07
741 - Support for dedenting closing brackets, "facebook" style.
744 - Formatting of tokens after a multiline string didn't retain their horizontal
747 ## [0.3.1] 2015-09-30
749 - Format closing scope bracket correctly when indentation size changes.
751 ## [0.3.0] 2015-09-20
753 - Return a 2 if the source changed, 1 on error, and 0 for no change.
756 - Make sure we format if the "lines" specified are in the middle of a
759 ## [0.2.9] - 2015-09-13
761 - Formatting of multiple files. It was halting after formatting the first file.
763 ## [0.2.8] - 2015-09-12
765 - Return a non-zero exit code if the source was changed.
766 - Add bitwise operator splitting penalty and prefer to split before bitwise
770 - Retain vertical spacing between disabled and enabled lines.
771 - Split only at start of named assign.
772 - Retain comment position when formatting is disabled.
773 - Honor splitting before or after logical ops.