This release includes the Beta version of the Ruff formatter — an extremely fast, Black-compatible Python formatter.
Try it today with ruff format.
Changes
Preview features
[pylint] Implement non-...
I use Black with quote normalisation disabled. My projects have a rule about string quotes:
Single quotes for symbols that must be an exact match for a symbol elsewhere. Dict hashes, equality match, etc. These will be in API contracts (think JSON APIs), so any change will require care.
Double quotes for user-facing strings, including friendly error/warning messages and i18n strings. These are meant to be periodically revised to improve usability.
Exceptions are allowed when a string contains quote characters. Backslash escapes are uglier.
Quote normalisation makes it harder for developers to recognise the purpose of a string.
I use Black with quote normalisation disabled. My projects have a rule about string quotes:
Single quotes for symbols that must be an exact match for a symbol elsewhere. Dict hashes, equality match, etc. These will be in API contracts (think JSON APIs), so any change will require care.
Double quotes for user-facing strings, including friendly error/warning messages and i18n strings. These are meant to be periodically revised to improve usability.
Exceptions are allowed when a string contains quote characters. Backslash escapes are uglier.
Quote normalisation makes it harder for developers to recognise the purpose of a string.