Options:
-l, --line-length INTEGER Where to wrap around. [default: 88]
+ --check Don't write back the files, just return the
+ status. Return code 0 means nothing changed.
+ Return code 1 means some files were reformatted.
+ Return code 123 means there was an internal
+ error.
--fast / --safe If --fast given, skip temporary sanity checks.
[default: --safe]
--version Show the version and exit.
As for vertical whitespace, *Black* tries to render one full expression
or simple statement per line. If this fits the allotted line length,
great.
-```!py3
+```py3
# in:
l = [1,
2,
If not, *Black* will look at the contents of the first outer matching
brackets and put that in a separate indented line.
-```!py3
+```py3
# in:
l = [[n for n in list_bosses()], [n for n in list_employees()]]
then *Black* will first try to keep them on the same line with the
matching brackets. If that doesn't work, it will put all of them in
separate lines.
-```!py3
+```py3
# in:
def very_important_function(template: str, *variables, *, file: os.PathLike, debug: bool = False):
"""Applies `variables` to the `template` and writes to `file`."""
about it. Alternatively, use [Bugbear](https://github.com/PyCQA/flake8-bugbear)'s
B950 warning instead of E501 and keep the max line length at 80 which
you are probably already using. You'd do it like this:
-```!ini
+```ini
[flake8]
max-line-length = 80
...
> At least the name is good.
+**Kenneth Reitz**, creator of [`requests`](http://python-requests.org/)
+and [`pipenv`](https://docs.pipenv.org/):
+
+> This vastly improves the formatting of our code. Thanks a ton!
+
## Tests
By making the code exclusively Python 3.6+, I'm able to focus on the
quality of the formatting and re-use all the nice features of the new
-releases (check out [pathlib](docs.python.org/3/library/pathlib.html) or
+releases (check out [pathlib](https://docs.python.org/3/library/pathlib.html) or
f-strings) instead of wasting cycles on Unicode compatibility, and so on.
ready to embrace *Black* yet. Such changes are unlikely to get accepted.
You can still try but prepare to be disappointed.
+More details can be found in [CONTRIBUTING](CONTRIBUTING.md).
+
## Change Log
+### 18.3a2 (unreleased)
+
+* ignore empty bracket pairs while splitting. This avoids very weirdly
+ looking formattings (#34, #35)
+
+* remove a trailing comma if there is a single argument to a call
+
+* fixed missing space in numpy-style array indexing (#33)
+
+* fixed spurious space after star-based unary expressions (#31)
+
+
+### 18.3a1
+
+* added `--check`
+
+* only put trailing commas in function signatures and calls if it's
+ safe to do so. If the file is Python 3.6+ it's always safe, otherwise
+ only safe if there are no `*args` or `**kwargs` used in the signature
+ or call. (#8)
+
+* fixed invalid spacing of dots in relative imports (#6, #13)
+
+* fixed invalid splitting after comma on unpacked variables in for-loops
+ (#23)
+
+* fixed spurious space in parenthesized set expressions (#7)
+
+* fixed spurious space after opening parentheses and in default
+ arguments (#14, #17)
+
+* fixed spurious space after unary operators when the operand was
+ a complex expression (#15)
+
+
### 18.3a0
* first published version, Happy 🍰 Day 2018!
* alpha quality
-* date-versioned (see: http://calver.org/)
+* date-versioned (see: https://calver.org/)
## Authors