14
0
forked from pool/python-black
Files
python-black/python-black.spec
Dirk Mueller c2c4fa0182 Accepting request 1002332 from home:yarunachalam:branches:devel:languages:python
- 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)

OBS-URL: https://build.opensuse.org/request/show/1002332
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=34
2022-09-12 07:39:54 +00:00

120 lines
4.1 KiB
RPMSpec

#
# spec file for package python-black
#
# Copyright (c) 2022 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/
#
%{?!python_module:%define python_module() python3-%{**}}
%define skip_python2 1
Name: python-black
Version: 22.8.0
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.6}
BuildRequires: %{python_module click >= 8.0.0}
BuildRequires: %{python_module dataclasses if %python-base < 3.7}
BuildRequires: %{python_module mypy_extensions >= 0.4.3}
BuildRequires: %{python_module pathspec >= 0.9.0}
BuildRequires: %{python_module platformdirs >= 2}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module tomli >= 1.1.0}
BuildRequires: %{python_module typed-ast >= 1.4.2 if %python-base < 3.8}
BuildRequires: %{python_module typing_extensions >= 3.10.0.0 if %python-base < 3.10}
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-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} < 37
Requires: python-dataclasses
%endif
%if 0%{?python_version_nodots} < 38
Requires: python-typed-ast >= 1.4.2
%endif
%if 0%{?python_version_nodots} < 310
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
%python_build
%install
%python_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