From 21ab37a5d92c866a289320cba7c4689df70b3342 Mon Sep 17 00:00:00 2001 From: Jelle Zijlstra Date: Sun, 24 Feb 2019 09:15:03 -0800 Subject: [PATCH] remove --py36 (#724) Fixes #703. --- README.md | 9 +++------ black.py | 22 +++------------------- pyproject.toml | 2 +- tests/test_black.py | 15 ++++++++++----- 4 files changed, 17 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 57272ae..8df2f9e 100644 --- a/README.md +++ b/README.md @@ -77,11 +77,6 @@ Options: Python versions that should be supported by Black's output. [default: per-file auto- detection] - --py36 Allow using Python 3.6-only syntax on all - input files. This will put trailing commas - in function signatures and calls also after - *args and **kwargs. [default: per-file - auto-detection] --pyi Format all input files like typing stubs regardless of file extension (useful when piping source on standard input). @@ -576,7 +571,7 @@ to denote a significant space character. ```toml [tool.black] line-length = 88 -py36 = true +target_version = ['cpy37'] include = '\.pyi?$' exclude = ''' @@ -944,6 +939,8 @@ More details can be found in [CONTRIBUTING](CONTRIBUTING.md). ### 19.2b0 +* removed `--py36` (use `--target-version=cpy36` instead) (#724) + * long `del` statements are now split into multiple lines (#698) * *Black* no longer normalizes numeric literals to include `_` separators (#696) diff --git a/black.py b/black.py index 8f50d3e..2850ae1 100644 --- a/black.py +++ b/black.py @@ -248,15 +248,6 @@ def read_pyproject_toml( "per-file auto-detection]" ), ) -@click.option( - "--py36", - is_flag=True, - help=( - "Allow using Python 3.6-only syntax on all input files. This will put " - "trailing commas in function signatures and calls also after *args and " - "**kwargs. [default: per-file auto-detection]" - ), -) @click.option( "--pyi", is_flag=True, @@ -360,7 +351,6 @@ def main( diff: bool, fast: bool, pyi: bool, - py36: bool, skip_string_normalization: bool, quiet: bool, verbose: bool, @@ -372,13 +362,7 @@ def main( """The uncompromising code formatter.""" write_back = WriteBack.from_configuration(check=check, diff=diff) if target_version: - if py36: - err(f"Cannot use both --target-version and --py36") - ctx.exit(2) - else: - versions = set(target_version) - elif py36: - versions = PY36_VERSIONS + versions = set(target_version) else: # We'll autodetect later. versions = set() @@ -2446,8 +2430,8 @@ def delimiter_split( ) -> Iterator[Line]: """Split according to delimiters of the highest priority. - If `py36` is True, the split will add trailing commas also in function - signatures that contain `*` and `**`. + If `supports_trailing_commas` is True, the split will add trailing commas + also in function signatures that contain `*` and `**`. """ try: last_leaf = line.leaves[-1] diff --git a/pyproject.toml b/pyproject.toml index fca5055..c42c33f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ [tool.black] line-length = 88 -py36 = true +target_version = ['cpy36', 'cpy37', 'cpy38'] include = '\.pyi?$' exclude = ''' /( diff --git a/tests/test_black.py b/tests/test_black.py index 3404e05..21a7f2d 100644 --- a/tests/test_black.py +++ b/tests/test_black.py @@ -43,6 +43,9 @@ fs = partial(black.format_str, mode=black.FileMode()) THIS_FILE = Path(__file__) THIS_DIR = THIS_FILE.parent EMPTY_LINE = "# EMPTY LINE WITH WHITESPACE" + " (this comment will be removed)" +PY36_ARGS = [ + f"--target-version={version.name.lower()}" for version in black.PY36_VERSIONS +] T = TypeVar("T") R = TypeVar("R") @@ -1160,10 +1163,10 @@ class BlackTestCase(unittest.TestCase): path = (workspace / "file.py").resolve() with open(path, "w") as fh: fh.write(source) - self.invokeBlack([str(path), "--py36"]) + self.invokeBlack([str(path), *PY36_ARGS]) with open(path, "r") as fh: actual = fh.read() - # verify cache with --py36 is separate + # verify cache with --target-version is separate py36_cache = black.read_cache(py36_mode) self.assertIn(path, py36_cache) normal_cache = black.read_cache(reg_mode) @@ -1183,12 +1186,12 @@ class BlackTestCase(unittest.TestCase): for path in paths: with open(path, "w") as fh: fh.write(source) - self.invokeBlack([str(p) for p in paths] + ["--py36"]) + self.invokeBlack([str(p) for p in paths] + PY36_ARGS) for path in paths: with open(path, "r") as fh: actual = fh.read() self.assertEqual(actual, expected) - # verify cache with --py36 is separate + # verify cache with --target-version is separate pyi_cache = black.read_cache(py36_mode) normal_cache = black.read_cache(reg_mode) for path in paths: @@ -1198,7 +1201,9 @@ class BlackTestCase(unittest.TestCase): def test_pipe_force_py36(self) -> None: source, expected = read_data("force_py36") result = CliRunner().invoke( - black.main, ["-", "-q", "--py36"], input=BytesIO(source.encode("utf8")) + black.main, + ["-", "-q", "--target-version=cpy36"], + input=BytesIO(source.encode("utf8")), ) self.assertEqual(result.exit_code, 0) actual = result.output -- 2.39.2