X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/8cdac18a04b64376e87c716cb9c2eafd182e63ff..e401b6bb1e1c0ed534bba59d9dc908caf7ba898c:/CHANGES.md diff --git a/CHANGES.md b/CHANGES.md index 4a8ee0e..bfee1b6 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -4,14 +4,66 @@ ### _Black_ +- **Remove Python 2 support** (#2740) +- Do not accept bare carriage return line endings in pyproject.toml (#2408) +- Improve error message for invalid regular expression (#2678) +- Improve error message when parsing fails during AST safety check by embedding the + underlying SyntaxError (#2693) +- Fix mapping cases that contain as-expressions, like `case {"key": 1 | 2 as password}` + (#2686) +- Fix cases that contain multiple top-level as-expressions, like `case 1 as a, 2 as b` + (#2716) +- Fix call patterns that contain as-expressions with keyword arguments, like + `case Foo(bar=baz as quux)` (#2749) +- No longer color diff headers white as it's unreadable in light themed terminals + (#2691) +- Tuple unpacking on `return` and `yield` constructs now implies 3.8+ (#2700) +- Unparenthesized tuples on annotated assignments (e.g + `values: Tuple[int, ...] = 1, 2, 3`) now implies 3.8+ (#2708) +- For stubs, one blank line between class attributes and methods is now kept if there's + at least one pre-existing blank line (#2736) + +### Packaging + +- All upper version bounds on dependencies have been removed (#2718) + +### Integrations + +- Update GitHub action to support containerized runs (#2748) + +## 21.12b0 + +### _Black_ + +- Fix determination of f-string expression spans (#2654) +- Fix bad formatting of error messages about EOF in multi-line statements (#2343) +- Functions and classes in blocks now have more consistent surrounding spacing (#2472) +- `from __future__ import annotations` statement now implies Python 3.7+ (#2690) + +#### Jupyter Notebook support + - Cell magics are now only processed if they are known Python cell magics. Earlier, all cell magics were tokenized, leading to possible indentation errors e.g. with `%%writefile`. (#2630) -- Fixed Python 3.10 support on platforms without ProcessPoolExecutor (#2631) -- Fixed `match` statements with open sequence subjects, like `match a, b:` or +- Fix assignment to environment variables in Jupyter Notebooks (#2642) + +#### Python 3.10 support + +- Point users to using `--target-version py310` if we detect 3.10-only syntax (#2668) +- Fix `match` statements with open sequence subjects, like `match a, b:` or `match a, *b:` (#2639) (#2659) -- Fixed assignment to environment variables in Jupyter Notebooks (#2642) -- Add `flake8-simplify` and `flake8-comprehensions` plugins (#2653) +- Fix `match`/`case` statements that contain `match`/`case` soft keywords multiple + times, like `match re.match()` (#2661) +- Fix `case` statements with an inline body (#2665) +- Fix styling of starred expressions inside `match` subject (#2667) +- Fix parser error location on invalid syntax in a `match` statement (#2649) +- Fix Python 3.10 support on platforms without ProcessPoolExecutor (#2631) +- Improve parsing performance on code that uses `match` under `--target-version py310` + up to ~50% (#2670) + +### Packaging + +- Remove dependency on `regex` (#2644) (#2663) ## 21.11b1