python-astroid/python-astroid.spec

89 lines
3.0 KiB
RPMSpec

#
# spec file for package python-astroid
#
# 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-astroid
Version: 2.15.6
Release: 0
Summary: Representation of Python source as an AST for pylint
License: LGPL-2.1-or-later
URL: https://github.com/pycqa/astroid
Source: https://github.com/PyCQA/astroid/archive/refs/tags/v%{version}.tar.gz#/astroid-%{version}-gh.tar.gz
BuildRequires: %{python_module base >= 3.7.2}
BuildRequires: %{python_module lazy-object-proxy >= 1.4}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module typed-ast >= 1.4 if %python-base < 3.8}
# typing-extensions for python310 required for tests only: gh#PyCQA/astroid#1585
BuildRequires: %{python_module typing-extensions >= 3.10}
BuildRequires: %{python_module wheel}
BuildRequires: %{python_module wrapt >= 1.11 if %python-base < 3.11}
BuildRequires: %{python_module wrapt >= 1.14 if %python-base >= 3.11}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-lazy-object-proxy >= 1.4
BuildArch: noarch
%if 0%{?python_version_nodots} < 38
Requires: python-typed-ast >= 1.4
%endif
%if 0%{?python_version_nodots} < 311
Requires: python-typing-extensions >= 3.10
%endif
%if 0%{?python_version_nodots} < 311
Requires: python-wrapt >= 1.11
%else
Requires: python-wrapt >= 1.14
%endif
%python_subpackages
%description
This module provides a common base representation of Python source code for
projects such as pychecker, pyreverse, pylint. The development of this library
is governed by pylint's needs.
It provides a compatible representation which comes from the _ast
module. It rebuilds the tree generated by the builtin _ast module by
recursively walking down the AST and building an extended ast. The new
node classes have additional methods and attributes for different
usages. They include some support for static inference and local name
scopes. Furthermore, astroid builds partial trees by inspecting living
objects.
%prep
%setup -q -n astroid-%{version}
%autopatch -p1
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%pytest
%files %{python_files}
%license LICENSE
%doc ChangeLog README.rst
%{python_sitelib}/astroid/
%{python_sitelib}/astroid-%{version}*-info
%changelog