14
0
forked from pool/python-black
Files
python-black/python-black.spec
Markéta Machová f76ee8ef20 Accepting request 1249998 from home:nkrapp:branches:devel:languages:python
- Update to 25.1.0:
  Highlights:
  * Normalize casing of Unicode escape characters in strings to lowercase (#2916)
  * Fix inconsistencies in whether certain strings are detected as docstrings (#4095)
  * Consistently add trailing commas to typed function parameters (#4164)
  * Remove redundant parentheses in if guards for case blocks (#4214)
  * Add parentheses to if clauses in case blocks when the line is too long (#4269)
  * Whitespace before # fmt: skip comments is no longer normalized (#4146)
  * Fix line length computation for certain expressions that involve the power operator (#4154)
  * Check if there is a newline before the terminating quotes of a docstring (#4185)
  * Fix type annotation spacing between * and more complex type variable tuple (#4440)
  * Remove parentheses around sole list items (#4312)
  * Generic function definitions are now formatted more elegantly: parameters are
    split over multiple lines first instead of type parameter definitions (#4553)
  Stable style:
  * Fix formatting cells in IPython notebooks with magic methods and starting or trailing
    empty lines (#4484)
  * Fix crash when formatting with statements containing tuple generators/unpacking
    (#4538)
  Preview style:
  * Fix/remove string merging changing f-string quotes on f-strings with internal quotes
    (#4498)
  * Collapse multiple empty lines after an import into one (#4489)
  * Prevent string_processing and wrap_long_dict_values_in_parens from removing
    parentheses around long dictionary values (#4377)
  * Move wrap_long_dict_values_in_parens from the unstable to preview style (#4561)
  Packaging:
  * Store license identifier inside the License-Expression metadata field, see
    PEP 639. (#4479)
  Performance:
  * Speed up the is_fstring_start function in Black's tokenizer (#4541)
  Integrations:
  * If using stdin with --stdin-filename set to a force excluded path, stdin won't be
    formatted. (#4539)
- update requirements from pyproject.toml

OBS-URL: https://build.opensuse.org/request/show/1249998
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-black?expand=0&rev=68
2025-03-05 10:55:18 +00:00

106 lines
3.5 KiB
RPMSpec

#
# spec file for package python-black
#
# Copyright (c) 2025 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: 25.1.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 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 >= 22.0}
BuildRequires: %{python_module pathspec >= 0.9.0}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module platformdirs >= 2}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Suggests: python-aiohttp >= 3.10.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(post): update-alternatives
Requires(postun): update-alternatives
BuildArch: noarch
%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