All Versions
51
Latest Version
Avg Release Cycle
78 days
Latest Release
850 days ago

Changelog History
Page 4

  • v0.12.1 Changes

    October 02, 2016

    🔄 Changed

    • Dictionary values will be placed on the same line as the key if all of the elements in the dictionary can be placed on one line. Otherwise, the dictionary values will be placed on the next line.

    🛠 Fixed

    • Prefer to split before a terminating r-paren in an argument list if the line would otherwise go over the column limit.
    • Split before the first key in a dictionary if the dictionary cannot fit on a single line.
    • 👕 Don't count "pylint" comments when determining if the line goes over the column limit.
    • Don't count the argument list of a lambda as a named assign in a function call.
  • v0.12.0 Changes

    September 25, 2016

    ➕ Added

    • 👌 Support formatting of typed names. Typed names are formatted a similar way to how named arguments are formatted, except that there's a space after the colon.
    • Add a knob, 'SPACES_AROUND_DEFAULT_OR_NAMED_ASSIGN', to allow adding spaces around the assign operator on default or named assigns.
  • v0.11.1 Changes

    August 17, 2016

    🔄 Changed

    • Issue #228: Return exit code 0 on success, regardless of whether files were changed. (Previously, 0 meant success with no files modified, and 2 meant success with at least one file modified.)

    🛠 Fixed

    • Enforce splitting each element in a dictionary if comma terminated.
    • It's okay to split in the middle of a dotted name if the whole expression is going to go over the column limit.
    • Asynchronous functions were going missing if they were preceded by a comment (a what? exactly). The asynchronous function processing wasn't taking the comment into account and thus skipping the whole function.
    • The splitting of arguments when comma terminated had a conflict. The split penalty of the closing bracket was set to the maximum, but it shouldn't be if the closing bracket is preceded by a comma.
  • v0.11.0 Changes

    July 17, 2016

    ➕ Added

    • The COALESCE_BRACKETS knob prevents splitting consecutive brackets when DEDENT_CLOSING_BRACKETS is set.
    • 👕 Don't count "pylint" directives as exceeding the column limit.

    🔄 Changed

    • We split all of the arguments to a function call if there's a named argument. In this case, we want to split after the opening bracket too. This makes things look a bit better.

    🛠 Fixed

    • 💅 When retaining format of a multiline string with Chromium style, make sure that the multiline string doesn't mess up where the following comma ends up.
    • Correct for when 'lib2to3' smooshes comments together into the same DEDENT node.
  • v0.10.0 Changes

    June 14, 2016

    ➕ Added

    • ➕ Add a knob, 'USE_TABS', to allow using tabs for indentation.

    🔄 Changed

    • 🐎 Performance enhancements.

    🛠 Fixed

    • Don't split an import list if it's not surrounded by parentheses.
  • v0.9.0 Changes

    May 29, 2016

    ➕ Added

    • Added a knob (SPLIT_PENALTY_BEFORE_IF_EXPR) to adjust the split penalty before an if expression. This allows the user to place a list comprehension all on one line.
    • Added a knob (SPLIT_BEFORE_FIRST_ARGUMENT) that encourages splitting before the first element of a list of arguments or parameters if they are going to be split anyway.
    • Added a knob (SPLIT_ARGUMENTS_WHEN_COMMA_TERMINATED) splits arguments to a function if the list is terminated by a comma.

    🛠 Fixed

    • Don't split before a first element list argument as we would before a first element function call.
    • Don't penalize when we must split a line.
    • 👍 Allow splitting before the single argument in a function call.
  • v0.8.2 Changes

    May 21, 2016

    🛠 Fixed

    • Prefer not to split after the opening of a subscript.
    • Don't add space before the 'await' keyword if it's preceded by an opening paren.
    • When we're setting the split penalty for a continuous list, we don't want to mistake a comment at the end of that list as part of the list.
    • 👀 When calculating blank lines, don't assume the last seen object was a class or function when we're in a class or function.
    • Don't count the closing scope when determining if the current scope is the last scope on the line.
  • v0.8.1 Changes

    May 18, 2016

    🛠 Fixed

    • 'SPLIT_BEFORE_LOGICAL_OPERATOR' wasn't working correctly. The penalty was being set incorrectly when it was part of a larger construct.
    • Don't separate a keyword, like "await", from a left paren.
    • Don't rely upon the original tokens' line number to determine if we should perform splitting in Facebook mode. The line number isn't the line number of the reformatted token, but the line number where it was in the original code. Instead, we need to carefully determine if the line is liabel to be split and act accordingly.
  • v0.8.0 Changes

    May 10, 2016

    ➕ Added

    • Add a knob, 'SPACES_AROUND_POWER_OPERATOR', to allow adding spaces around the power operator.

    🛠 Fixed

    • There shouldn't be a space between a decorator and an intervening comment.
    • If we split before a bitwise operator, then we assume that the programmer knows what they're doing, more or less, and so we enforce a split before said operator if one exists in the original program.
    • Strengthen the bond between a keyword and value argument.
    • Don't add a blank line after a multiline string.
    • If the "for" part of a list comprehension can exist on the starting line without going over the column limit, then let it remain there.
  • v0.7.1 Changes

    April 21, 2016

    🛠 Fixed

    • Don't rewrite the file if there are no changes.
    • Ensure the proper number of blank lines before an async function.
    • Split after a bitwise operator when in PEP 8 mode.
    • Retain the splitting within a dictionary data literal between the key and value.
    • Try to keep short function calls all on one line even if they're part of a larger series of tokens. This stops us from splitting too much.