Skip to content

23.7.0

Compare
Choose a tag to compare
@JelleZijlstra JelleZijlstra released this 11 Jul 00:20
· 343 commits to main since this release
193ee76

23.7.0

Highlights

  • Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be
    supported until further notice (#3765)

Stable style

  • Fix a bug where an illegal trailing comma was added to return type annotations using
    PEP 604 unions (#3735)
  • Fix several bugs and crashes where comments in stub files were removed or mishandled
    under some circumstances (#3745)
  • Fix a crash with multi-line magic comments like type: ignore within parentheses
    (#3740)
  • Fix error in AST validation when Black removes trailing whitespace in a type comment
    (#3773)

Preview style

  • Implicitly concatenated strings used as function args are no longer wrapped inside
    parentheses (#3640)
  • Remove blank lines between a class definition and its docstring (#3692)

Configuration

  • The --workers argument to Black can now be specified via the BLACK_NUM_WORKERS
    environment variable (#3743)
  • .pytest_cache, .ruff_cache and .vscode are now excluded by default (#3691)
  • Fix Black not honouring pyproject.toml settings when running --stdin-filename
    and the pyproject.toml found isn't in the current working directory (#3719)
  • Black will now error if exclude and extend-exclude have invalid data types in
    pyproject.toml, instead of silently doing the wrong thing (#3764)

Packaging

  • Upgrade mypyc from 0.991 to 1.3 (#3697)
  • Remove patching of Click that mitigated errors on Python 3.6 with LANG=C (#3768)

Parser

  • Add support for the new PEP 695 syntax in Python 3.12 (#3703)

Performance

  • Speed up Black significantly when the cache is full (#3751)
  • Avoid importing IPython in a case where we wouldn't need it (#3748)

Output

  • Use aware UTC datetimes internally, avoids deprecation warning on Python 3.12 (#3728)
  • Change verbose logging to exactly mirror Black's logic for source discovery (#3749)

Blackd

  • The blackd argument parser now shows the default values for options in their help
    text (#3712)

Integrations

Documentation

  • Add a CITATION.cff file to the root of the repository, containing metadata on how to
    cite this software (#3723)
  • Update the classes and exceptions documentation in Developer reference to match
    the latest code base (#3755)