From 48801a638001565056938551aa9010b79bf13367e4cb4994829a39c02f5c008c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 20:13:46 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main python-black revision 321517f1a34458ded08064d6860865dd --- .gitattributes | 23 +++ black-23.9.1.tar.gz | 3 + python-black.changes | 483 +++++++++++++++++++++++++++++++++++++++++++ python-black.spec | 117 +++++++++++ 4 files changed, 626 insertions(+) create mode 100644 .gitattributes create mode 100644 black-23.9.1.tar.gz create mode 100644 python-black.changes create mode 100644 python-black.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/black-23.9.1.tar.gz b/black-23.9.1.tar.gz new file mode 100644 index 0000000..0435f43 --- /dev/null +++ b/black-23.9.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24b6b3ff5c6d9ea08a8888f6977eae858e1f340d7260cf56d70a49823236b62d +size 589529 diff --git a/python-black.changes b/python-black.changes new file mode 100644 index 0000000..d0cb50a --- /dev/null +++ b/python-black.changes @@ -0,0 +1,483 @@ +------------------------------------------------------------------- +Tue Sep 19 14:51:16 UTC 2023 - Dirk Müller + +- remove buildrequires that are not used on sle15 + +------------------------------------------------------------------- +Tue Sep 12 07:11:17 UTC 2023 - Dirk Müller + +- update to 23.9.1: + * Upgrade to mypy 1.5.1 (#3864) + * Store raw tuples instead of NamedTuples in Black's cache, + improving performance and decreasing the size of the cache + * More concise formatting for dummy implementations (#3796) + * In stub files, add a blank line between a statement with a + body (e.g an `if sys.version_info > (3, x):`) and a + function definition on the same level (#3862) + * Fix a bug whereby spaces were removed from walrus operators + within subscript(#3823) + * Black now applies exclusion and ignore logic before resolving + symlinks (#3846) + * Avoid importing `IPython` if notebook cells do not contain + magics (#3782) + * Improve caching by comparing file hashes as fallback for + mtime and size (#3821) + * Fix an issue in `blackd` with single character input (#3558) + +------------------------------------------------------------------- +Sun Jul 16 14:00:30 UTC 2023 - Dirk Müller + +- update to 23.7.0: + * Runtime support for Python 3.7 has been removed. Formatting + 3.7 code will still be supported until further notice (#3765) + * Fix a bug where an illegal trailing comma was added to return + type annotations using PEP 604 unions (#3735) + * Fix several bugs and crashes where comments in stub files + were removed or mishandled under some circumstances (#3745) + * Fix a crash with multi-line magic comments like `type: + ignore` within parentheses + * Fix error in AST validation when _Black_ removes trailing + whitespace in a type comment + * Remove patching of Click that mitigated errors on Python 3.6 + with `LANG=C` (#3768) + * Add support for the new PEP 695 syntax in Python 3.12 (#3703) + * Speed up _Black_ significantly when the cache is full (#3751) + * Avoid importing `IPython` in a case where we wouldn't need it + (#3748) + * Use aware UTC datetimes internally, avoids deprecation + warning on Python 3.12 (#3728) + * Change verbose logging to exactly mirror _Black_'s logic for + source discovery (#3749) + +------------------------------------------------------------------- +Thu Jun 22 15:25:56 UTC 2023 - Dirk Müller + +- limit to newer python versions, older are no longer needed + +------------------------------------------------------------------- +Fri Apr 21 12:22:42 UTC 2023 - Dirk Müller + +- add sle15_python_module_pythons (jsc#PED-68) + +------------------------------------------------------------------- +Thu Apr 13 22:40:17 UTC 2023 - Matej Cepl + +- Make calling of %{sle15modernpython} optional. + +------------------------------------------------------------------- +Mon Apr 3 18:49:11 UTC 2023 - Dirk Müller + +- update to 23.3.0: + * Import lines with `# fmt: skip` and `# fmt: off` no longer + have an extra blank line added when they are right after + another import line (#3610) + * Added support for formatting files with invalid type comments + * Document that only the most recent release is supported for + security issues; + * Introduce the 2023 stable style, which incorporates most + aspects of last year's preview style (#3418). + * Enforce empty lines before classes and functions with sticky + leading comments + * Reformat empty and whitespace-only files as either an empty + file (if no newline is present) or as a single newline character + (if a newline is present) (#3348) + * Correctly handle trailing commas that are inside a line's + leading non-nested parens + * `--skip-string-normalization` / `-S` now prevents docstring + prefixes from being + * Details see https://github.com/psf/black/releases/tag/23.3.0 + +------------------------------------------------------------------- +Fri Sep 9 14:42:55 UTC 2022 - Yogalakshmi Arunachalam + +- update to version 22.8.0: + * Highlights + + Python 3.11 is now supported, except for blackd as aiohttp does not support 3.11 as of publishing (#3234) + + This is the last release that supports running Black on Python 3.6 (formatting 3.6 code will continue to be supported until further notice) + + Reword the stability policy to say that we may, in rare cases, make changes that affect code that was not previously formatted by Black (#3155) + * Stable style + + Fix an infinite loop when using # fmt: on/off in the middle of an expression or code block (#3158) + + Fix incorrect handling of # fmt: skip on colon (:) lines (#3148) + + Comments are no longer deleted when a line had spaces removed around power operators (#2874) + * Preview style + + Single-character closing docstring quotes are no longer moved to their own line as this is invalid. This was a bug introduced in version 22.6.0. (#3166) + + --skip-string-normalization / -S now prevents docstring prefixes from being normalized as expected (#3168) + + When using --skip-magic-trailing-comma or -C, trailing commas are stripped from subscript expressions with more than 1 element (#3209) + + Implicitly concatenated strings inside a list, set, or tuple are now wrapped inside parentheses (#3162) + + Fix a string merging/split issue when a comment is present in the middle of implicitly concatenated strings on its own line (#3227) + * Blackd + + blackd now supports enabling the preview style via the X-Preview header (#3217) + * Configuration + + Black now uses the presence of debug f-strings to detect target version (#3215) + + Fix misdetection of project root and verbose logging of sources in cases involving --stdin-filename (#3216) + + Immediate .gitignore files in source directories given on the command line are now also respected, previously only .gitignore files + in the project root and automatically discovered directories were respected (#3237) + * Documentation + + Recommend using BlackConnect in IntelliJ IDEs (#3150) + * Integrations + + Vim plugin: prefix messages with Black: so it's clear they come from Black (#3194) + + Docker: changed to a /opt/venv installation + added to PATH to be available to non-root users (#3202) + + Vim plugin: add flag (g:black_preview) to enable/disable the preview style (#3246) + * Output + + Change from deprecated asyncio.get_event_loop() to create our event loop which removes DeprecationWarning (#3164) + + Remove logging from internal blib2to3 library since it regularly emits error logs about failed caching that can and should be ignored (#3193) + * Parser + + Type comments are now included in the AST equivalence check consistently so accidental deletion raises an error. + Though type comments can't be tracked when running on PyPy 3.7 due to standard library limitations. (#2874) + * Performance + + Reduce Black's startup time when formatting a single file by 15-30% (#3211) + +------------------------------------------------------------------- +Fri Jul 15 04:52:30 UTC 2022 - Arun Persaud + +- update to version 22.6.0: + * Style + + Fix unstable formatting involving #fmt: skip and # fmt:skip + comments (notice the lack of spaces) (#2970) + * Preview style + + Docstring quotes are no longer moved if it would violate the + line length limit (#3044) + + Parentheses around return annotations are now managed (#2990) + + Remove unnecessary parentheses around awaited objects (#2991) + + Remove unnecessary parentheses in with statements (#2926) + + Remove trailing newlines after code block open (#3035) + * Integrations + + Add scripts/migrate-black.py script to ease introduction of + Black to a Git project (#3038) + * Output + + Output Python version and implementation as part of --version + flag (#2997) + * Packaging + + Use tomli instead of tomllib on Python 3.11 builds where tomllib + is not available (#2987) + * Parser + + PEP 654 syntax (for example, except *ExceptionGroup:) is now + supported (#3016) + + PEP 646 syntax (for example, Array[Batch, *Shape] or def + fn(*args: *T) -> None) is now supported (#3071) + * Vim Plugin + + Fix strtobool function. It didn't parse + true/on/false/off. (#3025) + +------------------------------------------------------------------- +Sat Apr 9 02:02:54 UTC 2022 - Arun Persaud + +- specfile: + * removed black-primer + +- update to version 22.3.0: + * Preview style + + Code cell separators #%% are now standardised to # %% (#2919) + + Remove unnecessary parentheses from except statements (#2939) + + Remove unnecessary parentheses from tuple unpacking in for loops + (#2945) + + Avoid magic-trailing-comma in single-element subscripts (#2942) + * Configuration + + Do not format __pypackages__ directories by default (#2836) + + Add support for specifying stable version with + --required-version (#2832). + + Avoid crashing when the user has no homedir (#2814) + + Avoid crashing when md5 is not available (#2905) + + Fix handling of directory junctions on Windows (#2904) + * Documentation + + Update pylint config documentation (#2931) + * Integrations + + Move test to disable plugin in Vim/Neovim, which speeds up + loading (#2896) + * Output + + In verbose, mode, log when Black is using user-level config + (#2861) + * Packaging + + Fix Black to work with Click 8.1.0 (#2966) + + On Python 3.11 and newer, use the standard library's tomllib + instead of tomli (#2903) + + black-primer, the deprecated internal devtool, has been removed + and copied to a separate repository (#2924) + * Parser + + Black can now parse starred expressions in the target of for and + async for statements, e.g for item in *items_1, *items_2: pass + (#2879). + +------------------------------------------------------------------- +Sun Mar 27 19:34:20 UTC 2022 - Ben Greiner + +- Update to 22.1.0 + * Remove Python 2 support (#2740) + * Introduce the --preview flag (#2752) + * Deprecate --experimental-string-processing and move the + functionality under --preview (#2789) + * For stubs, one blank line between class attributes and methods + is now kept if there's at least one pre-existing blank line + (#2736) + * Black now normalizes string prefix order (#2297) + * Remove spaces around power operators if both operands are + simple (#2726) + * Work around bug that causes unstable formatting in some cases + in the presence of the magic trailing comma (#2807) + * Use parentheses for attribute access on decimal float and int + literals (#2799) + * Don't add whitespace for attribute access on hexadecimal, + binary, octal, and complex literals (#2799) + * Treat blank lines in stubs the same inside top-level if + statements (#2820) + * Fix unstable formatting with semicolons and arithmetic + expressions (#2817) + * Fix unstable formatting around magic trailing comma (#2572) + * 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) + * 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) + * Fix handling of standalone match() or case() when there is a + trailing newline or a comment inside of the parentheses. + (#2760) + * from __future__ import annotations statement now implies Python + 3.7+ (#2690) + * Speed-up the new backtracking parser about 4X in general + (enabled when --target-version is set to 3.10 and higher). + (#2728) + * Black is now compiled with mypyc for an overall 2x speed-up. + 64-bit Windows, MacOS, and Linux (not including musl) are + supported. (#1009, #2431) + * Do not accept bare carriage return line endings in + pyproject.toml (#2408) + * Add configuration option (python-cell-magics) to format cells + with custom magics in Jupyter Notebooks (#2744) + * Allow setting custom cache directory on all platforms with + environment variable BLACK_CACHE_DIR (#2739). + * Enable Python 3.10+ by default, without any extra need to + specify --target-version=py310. (#2758) + * Make passing SRC or --code mandatory and mutually exclusive + (#2804) + * Improve error message for invalid regular expression (#2678) + * Improve error message when parsing fails during AST safety + check by embedding the underlying SyntaxError (#2693) + * No longer color diff headers white as it's unreadable in light + themed terminals (#2691) + * Text coloring added in the final statistics (#2712) + * Verbose mode also now describes how a project root was + discovered and which paths will be formatted. (#2526) + * All upper version bounds on dependencies have been removed + (#2718) + * typing-extensions is no longer a required dependency in Python + 3.10+ (#2772) + * Set click lower bound to 8.0.0 as Black crashes on 7.1.2 + (#2791) + * Deprecate the black-primer tool (#2809) + * Document Python support policy (#2819) +- Drop black-pr2718-unpin.patch + +------------------------------------------------------------------- +Thu Jan 27 12:04:33 UTC 2022 - Ben Greiner + +- Unpin tomli and pathspec + * black-pr2718-unpin.patch -- gh#psf/black#2718 + * gh#psf/black#2703 +- Remove obsolete python36 flavor expression +- Update requirements for Python 3.6 distros + +------------------------------------------------------------------- +Wed Jan 12 03:39:41 UTC 2022 - Steve Kowalik + +- Update to 21.12.0b1: + * 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) + * Fix assignment to environment variables in Jupyter Notebooks (#2642) + * 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) + * 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) + * Remove dependency on regex (#2644) (#2663) + * Warn about Python 2 deprecation in more cases by improving Python 2 only syntax detection (#2592) + * Add experimental PyPy support (#2559) + * Add partial support for the match statement. As it's experimental, it's only enabled when --target-version py310 is explicitly specified (#2586) + * Add support for parenthesized with (#2586) + * Declare support for Python 3.10 for running Black (#2562) + * Add new --workers parameter (#2514) + * Fixed feature detection for positional-only arguments in lambdas (#2532) + * Fixed a Python 3.10 compatibility issue where the loop argument was still being passed even though it has been removed (#2580) + * Deprecate Python 2 formatting support (#2523) + * Fix missing modules in self-contained binaries (#2466) + * Fix missing toml extra used during installation (#2475) + * Add support for formatting Jupyter Notebook files (#2357) + * Move from appdirs dependency to platformdirs (#2375) + * Present a more user-friendly error if .gitignore is invalid (#2414) + * Pin setuptools-scm build-time dependency version (#2457) + * Configuration files using TOML features higher than spec v0.5.0 are now supported (#2301) + * Accept empty stdin (#2346) + * Provide a more useful error when parsing fails during AST safety checks (#2304) + * Fix failure caused by fmt: skip and indentation (#2281) + * Account for += assignment when deciding whether to split string (#2312) + * Correct max string length calculation when there are string operators (#2292) + * Fixed option usage when using the --code flag (#2259) + * Do not call uvloop.install() when Black is used as a library (#2303) + * Added --required-version option to require a specific version to be running (#2300) + * Fix incorrect custom breakpoint indices when string group contains fake f-strings (#2311) + * Fix regression where R prefixes would be lowercased for docstrings (#2285) + * Fix handling of named escapes (\N{...}) when --experimental-string-processing is used (#2319) + * Restored compatibility with Click 8.0 on Python 3.6 when LANG=C used (#2227) + * Add extra uvloop install + import support if in python env (#2258) + * Fix --experimental-string-processing crash when matching parens are not found (#2283) + * Make sure to split lines that start with a string operator (#2286) + * Fix regular expression that black uses to identify f-expressions (#2287) + * Blackd + * Add a lower bound for the aiohttp-cors dependency. Only 0.4.0 or higher is supported. (#2231) + * Refactor src/black/__init__.py into many files (#2206) + * Set --pyi mode if --stdin-filename ends in .pyi (#2169) + * Stop detecting target version as Python 3.9+ with pre-PEP-614 decorators that are being called but with no arguments (#2182) + * Fix crash if the user configuration directory is inaccessible. (#2158) + * Clarify circumstances in which Black may change the AST (#2159) + * Fix crash on docstrings ending with "\ ". (#2142) + * Fix crash when atypical whitespace is cleaned out of dostrings (#2120) + * Reflect the --skip-magic-trailing-comma and --experimental-string-processing flags in the name of the cache file. Without this fix, changes in these flags would not take effect if the cache had already been populated. (#2131) + * Fixed a rare but annoying formatting instability created by the combination of optional trailing commas inserted by Black and optional parentheses looking at pre-existing "magic" trailing commas. This fixes issue #1629 and all of its many many duplicates. (#2126) + * Black now cleans up leading non-breaking spaces in comments (#2092) + * Black no longer removes all empty lines between non-function code and decorators when formatting typing stubs. Now Black enforces a single empty line. (#1646) + * Black no longer adds an incorrect space after a parenthesized assignment expression in if/while statements (#1655) + * Added --skip-magic-trailing-comma / -C to avoid using trailing commas as a reason to split lines (#1824) + * fixed a crash when PWD=/ on POSIX (#1631) + * fixed "I/O operation on closed file" when using --diff (#1664) + * Prevent coloured diff output being interleaved with multiple files (#1673) + * Added support for PEP 614 relaxed decorator syntax on python 3.9 (#1711) + * Added parsing support for unparenthesized tuples and yield expressions in annotated assignments (#1835) + * --diff correctly indicates when a file doesn't end in a newline (#1662) + * Added --stdin-filename argument to allow stdin to respect --force-exclude rules (#1780) + * Lines ending with fmt: skip will now be not formatted (#1800) + * PR #2053: Black no longer relies on typed-ast for Python 3.8 and higher +- Skip python 2 tests unconditionally. + +------------------------------------------------------------------- +Sat Dec 5 23:44:07 UTC 2020 - Benjamin Greiner + +- Fix Python 3.6 for Leap 15.2 and for the upcoming python36 flavor + in Tumbleweed: Requires python-dataclasses + gh#openSUSE/python-rpm-macros#66 + +------------------------------------------------------------------- +Fri Sep 4 12:19:10 UTC 2020 - John Vandenberg + +- Include change log and docs in package +- Update to v20.8b1 + * Explicitly depend on Click 7.1.2 or newer as `Black` no longer + works with versions older than 7.0 +- from v20.8b0 + * Re-implemented support for explicit trailing commas: now it + works consistently within any bracket pair, including nested + structures + * Reindents docstrings when reindenting code around it + * Show colored diffs + * Supports Python 3.8 code, e.g. star expressions in return statements + * No longer normalizes capital R-string prefixes as those have a + community-accepted meaning + * Uses exit code 2 when specified configuration file doesn't exit + * Works on AWS Lambda + * Added `--force-exclude` argument + * Removed deprecated `--py36` option + * Fixed `--diff` output when EOF is encountered + * Fixed `# fmt: off` handling around decorators + * Fixed unstable formatting with some `# type: ignore` comments + * Fixed invalid removal on organizing brackets followed by indexing + * Introduced `black-primer`, a CI tool that allows us to run + regression tests against existing open source users of Black + * Introduced property-based fuzzing to our test suite based on + Hypothesis and Hypothersmith + * Implemented experimental and disabled by default long string + rewrapping hidden under a `--experimental-string-processing` + flag while it's being worked on; this is an undocumented and + unsupported feature + * Vim plugin prefer virtualenv packages over global packages + +------------------------------------------------------------------- +Mon Aug 24 21:56:53 UTC 2020 - Benjamin Greiner + +- update URL +- python-aiohttp_cors is now available --> install blackd +- skip python2 test on big endian platforms gh#psf/black#1109 +- drop fix-tests.patch + +------------------------------------------------------------------- +Wed May 27 09:36:28 UTC 2020 - Petr Gajdos + +- %python3_only -> %python_alternative + +------------------------------------------------------------------- +Wed Nov 13 11:25:32 UTC 2019 - Ondřej Súkup + +- Add missing Requires + +------------------------------------------------------------------- +Mon Nov 11 14:14:38 UTC 2019 - Ondřej Súkup + +- update to 19.10b0 +- add fix-tests.patch to avoid problem during test collection +- dont distribute 'blackd' as missing deps + * no obvious changelog + +------------------------------------------------------------------- +Tue Jun 4 13:53:31 UTC 2019 - Tomáš Chvátal + +- Skip randomly failing test (only in OBS) + +------------------------------------------------------------------- +Thu Mar 21 15:44:47 UTC 2019 - Tomáš Chvátal + +- Update to 19.3b0: + * No obvious changelog + +------------------------------------------------------------------- +Wed Oct 3 12:40:28 UTC 2018 - Ondřej Súkup + +- update to 18.9b0 + * numeric literals are now formatted by Black + * numeric literals are normalized to include _ separators on Python 3.6+ code + * added --skip-numeric-underscore-normalization to disable the above behavior + and leave numeric underscores as they were in the input + * code with _ in numeric literals is recognized as Python 3.6+ + * most letters in numeric literals are lowercased (e.g., in 1e10, 0x01) + * hexadecimal digits are always uppercased (e.g. 0xBADC0DE) + * added blackd, see its documentation for more info + * adjacent string literals are now correctly split into multiple lines + * trailing comma is now added to single imports that don't fit on a line + * cache is now populated when --check is successful for a file which + speeds up consecutive checks of properly formatted unmodified files + * whitespace at the beginning of the file is now removed + * fixed mangling pweave and Spyder IDE special comments + * fixed unstable formatting when unpacking big tuples + * fixed parsing of __future__ imports with renames + * fixed scope of # fmt: off when directly preceding yield and other nodes + * fixed formatting of lambda expressions with default arguments + * fixed async for statements: Black no longer breaks them into separate lines + * note: the Vim plugin stopped registering ,= as a default chord + as it turned out to be a bad idea + +------------------------------------------------------------------- +Wed Aug 29 10:31:11 UTC 2018 - tchvatal@suse.com + +- Raise minimal py required to be 3.6 + +------------------------------------------------------------------- +Tue Aug 28 21:27:40 UTC 2018 - jengelh@inai.de + +- Replace all the marketing in the description with something + substantial. + +------------------------------------------------------------------- +Mon Aug 27 19:27:43 UTC 2018 - mimi.vx@gmail.com + +- disable testsuite for py older than 3.7 + +------------------------------------------------------------------- +Mon Aug 27 09:08:50 UTC 2018 - tchvatal@suse.com + +- Code formatter used by pytest/etc diff --git a/python-black.spec b/python-black.spec new file mode 100644 index 0000000..6913733 --- /dev/null +++ b/python-black.spec @@ -0,0 +1,117 @@ +# +# spec file for package python-black +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +Name: python-black +Version: 23.9.1 +Release: 0 +Summary: A code formatter written in, and written for Python +License: MIT +URL: https://github.com/psf/black +Source: https://files.pythonhosted.org/packages/source/b/black/black-%{version}.tar.gz +BuildRequires: %{python_module aiohttp >= 3.3.2} +BuildRequires: %{python_module aiohttp_cors} +BuildRequires: %{python_module attrs >= 18.1.0} +BuildRequires: %{python_module base >= 3.8} +BuildRequires: %{python_module click >= 8.0.0} +BuildRequires: %{python_module hatch-fancy-pypi-readme} +BuildRequires: %{python_module hatch_vcs} +BuildRequires: %{python_module hatchling >= 1.8.0} +BuildRequires: %{python_module mypy_extensions >= 0.4.3} +BuildRequires: %{python_module packaging} +BuildRequires: %{python_module pathspec >= 0.9.0} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module platformdirs >= 2} +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module tomli >= 1.1.0} +%if 0%{?suse_version} > 1500 +BuildRequires: %{python_module typing_extensions >= 3.10.0.0 if %python-base < 3.11} +%endif +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +Requires: python-aiohttp >= 3.3.2 +Requires: python-aiohttp_cors +Requires: python-attrs >= 18.1.0 +Requires: python-click >= 8.0.0 +Requires: python-mypy_extensions >= 0.4.3 +Requires: python-packaging +Requires: python-pathspec >= 0.9.0 +Requires: python-platformdirs >= 2 +Requires: python-tomli >= 1.1.0 +Requires(post): update-alternatives +Requires(postun):update-alternatives +BuildArch: noarch +%if 0%{?python_version_nodots} < 311 +Requires: python-typing_extensions >= 3.10.0.0 +%endif +%python_subpackages + +%description +Black is a code formatter written in Python, and reformats Python 2.x +and 3.x code. + +Black reformats entire files in place. It is not configurable. It +does not take previous formatting into account. The coding style +enforced is a PEP-8 subset, adheres to PEP-257, and otherwise passes +the rules of the "pycodestyle" checker. Black skips over blocks that +start and end with "# fmt: off" and "# fmt: on", respectively. It +also recognizes YAPF's block comments to the same effect. + +%prep +%autosetup -p1 -n black-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/black +%python_clone -a %{buildroot}%{_bindir}/blackd +%{python_expand %fdupes %{buildroot}%{$python_sitelib}} + +%check +# Copy one of the executable scripts into the PATH +mkdir ~/bin +cp $(ls %{buildroot}%{_bindir}/black-* | head -1) ~/bin/black +export PATH=$PATH:~/bin + +# test_expression_diff - sometimes fails on async timing in OBS +# test_bpo_2142_workaround fails on arm +skiptests="test_expression_diff or test_bpo_2142_workaround" +%pytest -k "not ($skiptests)" + +%post +%python_install_alternative black blackd + +%postun +%python_uninstall_alternative black + +%files %{python_files} +%doc README.md CHANGES.md docs/*.md +%license LICENSE +%python_alternative %{_bindir}/black +%python_alternative %{_bindir}/blackd +%{python_sitelib}/_black_version.py* +%{python_sitelib}/black/ +%{python_sitelib}/blackd/ +%{python_sitelib}/blib2to3/ +%{python_sitelib}/black-%{version}*-info +%pycache_only %{python_sitelib}/__pycache__/* + +%changelog