# # spec file for package python-aspectlib # # 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/ # %bcond_without python2 %{?sle15_python_module_pythons} Name: python-aspectlib Version: 2.0.0 Release: 2.10 Summary: Aspect-oriented programming License: BSD-2-Clause URL: https://github.com/ionelmc/python-aspectlib Source: https://files.pythonhosted.org/packages/source/a/aspectlib/aspectlib-%{version}.tar.gz BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools} BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-fields BuildArch: noarch BuildRequires: %{python_module fields} BuildRequires: %{python_module process-tests} BuildRequires: %{python_module pytest} %if %{with python2} BuildRequires: python-mock BuildRequires: python-trollius %endif %ifpython2 Requires: python-trollius %endif %python_subpackages %description Aspectlib is an aspect-oriented programming, monkey-patch and decorators library. It is useful when changing behavior in existing code is desired. It includes tools for debugging and testing: simple mock/record and a complete capture/replay framework. %prep %autosetup -p1 -n aspectlib-%{version} # both tests not working (the first skipped by design, the second needed old tornado) # don't pull in tornado when not needed rm tests/test_integrations.py %build %pyproject_wheel %install %pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check # ignore deprecation warnings because of signature of throw() is deprecated %pytest --ignore=src -W ignore::DeprecationWarning %files %{python_files} %license LICENSE %doc AUTHORS.rst CHANGELOG.rst README.rst %{python_sitelib}/aspectlib %{python_sitelib}/aspectlib-%{version}*-info %changelog * Thu Aug 17 2023 Daniel Garcia - Run tests ignoring DeprecationWarning to make it work with python3.12. The DeprecationWarning thrown is "signature of throw() is deprecated" * Mon May 8 2023 Daniel Garcia - Delete fix_two_tests_py310.patch - Update to 2.0.0: * Drop support for legacy Pythons (2.7, 3.6 or older). * Remove Travis/Appveyor CI and switch to GitHub Actions. * Added support for Tornado 6 (in the test suite). * Fri Apr 21 2023 Dirk Müller - add sle15_python_module_pythons (jsc#PED-68) * Thu Apr 13 2023 Matej Cepl - Make calling of %%{sle15modernpython} optional. * Tue Dec 14 2021 Matej Cepl - Add fix_two_tests_py310.patch which fixes those tests with Python 3.10 (gh#ionelmc/python-aspectlib#22). * Sat Dec 11 2021 Ben Greiner - Skip two failing tests in python310 gh#ionelmc/python-aspectlib#24 * Wed Feb 10 2021 Steve Kowalik - Update to 1.5.2: * Fixed broken import on Python 3.9. * Remove some debug leftover prints from `v1.5.0`. * Fri Apr 17 2020 Marketa Calabkova - update to 1.5.0 * Fixed ``weave`` to stop reading attributes that don't match the method selector. Contributed by Jonas Maurus in `#14 `_. * Added support for Python 3.7 and 3.8 (``async def`` functions and generators). * Added a convenience ``weave`` fixture for pytest. - Launch tests * Mon Mar 16 2020 Tomáš Chvátal - Fix build without python2 * Thu Oct 19 2017 toddrme2178@gmail.com - Initial version