From 129ebd53a66b4a8069321742aeecfafb44c76fd9 Mon Sep 17 00:00:00 2001 From: Jelle Zijlstra Date: Thu, 14 Mar 2019 09:31:27 -0700 Subject: [PATCH] Add back --py36 as a deprecated option (#750) This partially reverts commit 21ab37a5d92c866a289320cba7c4689df70b3342. --- README.md | 8 +++++++- black.py | 23 ++++++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 87ac757..2574c55 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,12 @@ 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. Deprecated; use + --target-version instead. [default: per-file + auto-detection] --pyi Format all input files like typing stubs regardless of file extension (useful when piping source on standard input). @@ -950,7 +956,7 @@ More details can be found in [CONTRIBUTING](CONTRIBUTING.md). * new option `--target-version` to control which Python versions *Black*-formatted code should target (#618) -* removed `--py36` (use `--target-version=py36` instead) (#724) +* deprecated `--py36` (use `--target-version=py36` instead) (#724) * *Black* no longer normalizes numeric literals to include `_` separators (#696) diff --git a/black.py b/black.py index 31e629b..24ff781 100644 --- a/black.py +++ b/black.py @@ -246,6 +246,16 @@ 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. Deprecated; use --target-version instead. " + "[default: per-file auto-detection]" + ), +) @click.option( "--pyi", is_flag=True, @@ -349,6 +359,7 @@ def main( diff: bool, fast: bool, pyi: bool, + py36: bool, skip_string_normalization: bool, quiet: bool, verbose: bool, @@ -360,7 +371,17 @@ def main( """The uncompromising code formatter.""" write_back = WriteBack.from_configuration(check=check, diff=diff) if target_version: - versions = set(target_version) + if py36: + err(f"Cannot use both --target-version and --py36") + ctx.exit(2) + else: + versions = set(target_version) + elif py36: + err( + "--py36 is deprecated and will be removed in a future version. " + "Use --target-version py36 instead." + ) + versions = PY36_VERSIONS else: # We'll autodetect later. versions = set() -- 2.39.2