Skip to content

23.11.0

Compare
Choose a tag to compare
@JelleZijlstra JelleZijlstra released this 08 Nov 05:40
· 200 commits to main since this release
2a1c67e

23.11.0

Highlights

  • Support formatting ranges of lines with the new --line-ranges command-line option
    (#4020)

Stable style

  • Fix crash on formatting bytes strings that look like docstrings (#4003)
  • Fix crash when whitespace followed a backslash before newline in a docstring (#4008)
  • Fix standalone comments inside complex blocks crashing Black (#4016)
  • Fix crash on formatting code like await (a ** b) (#3994)
  • No longer treat leading f-strings as docstrings. This matches Python's behaviour and
    fixes a crash (#4019)

Preview style

  • Multiline dicts and lists that are the sole argument to a function are now
    indented less (#3964)
  • Multiline unpacked dicts and lists as the sole argument to a function are now also
    indented less (#3992)
  • In f-string debug expressions, quote types that are visible in the final string
    are now preserved (#4005)
  • Fix a bug where long case blocks were not split into multiple lines. Also enable
    general trailing comma rules on case blocks (#4024)
  • Keep requiring two empty lines between module-level docstring and first function or
    class definition (#4028)
  • Add support for single-line format skip with other comments on the same line (#3959)

Configuration

  • Consistently apply force exclusion logic before resolving symlinks (#4015)
  • Fix a bug in the matching of absolute path names in --include (#3976)

Performance

  • Fix mypyc builds on arm64 on macOS (#4017)

Integrations

  • Black's pre-commit integration will now run only on git hooks appropriate for a code
    formatter (#3940)