# # spec file for package python-contourpy # # 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/ # %global flavor %{nil} %if "%{flavor}" == "test" %define psuffix -test %bcond_without test %else %define psuffix %{nil} %bcond_with test %endif %{?sle15_python_module_pythons} Name: python-contourpy%{psuffix} Version: 1.3.2 Release: 1.1 Summary: Python library for calculating contours of 2D quadrilateral grids License: BSD-3-Clause URL: https://github.com/contourpy/contourpy Source: https://files.pythonhosted.org/packages/source/c/contourpy/contourpy-%{version}.tar.gz BuildRequires: %{python_module base >= 3.7} BuildRequires: %{python_module meson-python} BuildRequires: %{python_module pip} BuildRequires: %{python_module pybind11-devel >= 2.7} BuildRequires: %{python_module setuptools >= 42} BuildRequires: %{python_module wheel} BuildRequires: c++_compiler BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-numpy >= 1.16 Suggests: python-bokeh %if %{with test} BuildRequires: %{python_module Pillow} BuildRequires: %{python_module contourpy = %{version}} BuildRequires: %{python_module matplotlib} BuildRequires: %{python_module numpy >= 1.16} BuildRequires: %{python_module pytest} BuildRequires: %{python_module wurlitzer} %endif %python_subpackages %description A Python library for calculating contours of 2D quadrilateral grids It contains the 2005 and 2014 algorithms used in Matplotlib as well as a newer algorithm that includes more features and is available in both serial and multithreaded versions. It provides an easy way for Python libraries to use contouring algorithms without having to include Matplotlib as a dependency. %prep %setup -q -n contourpy-%{version} %build %if !%{with test} export CFLAGS="%{optflags}" %pyproject_wheel %endif %install %if !%{with test} %pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitearch} %endif %if %{with test} %check %pytest_arch %endif %if !%{with test} %files %{python_files} %doc README.md %license LICENSE %{python_sitearch}/contourpy %{python_sitearch}/contourpy-%{version}*-info %endif %changelog * Thu Apr 24 2025 Dirk Müller - update to 1.3.2: * Fix type annotations for Bokeh >= 3.7 * Test on CPython 3.14 * Test and build wheels for PyPy 3.11 * Test PyPy 3.10 on all 3 major OSes * Tue Nov 19 2024 Dirk Müller - update to 1.3.1: * Drop support for Python 3.9 * Update to bokeh 3.6.0 * Update minimum pybind11 to 2.13.2 * Read meson-python version in recommended way * Use itertools.pairwise instead of zip where possible * Typing changes from ruff UP035 and UP038 * Tidy up python 3.13 CI * Build Python 3.13t wheels on Windows * multi_lines and multi_filled: ContourGenerator.multi_lines and multi_filled (:pr:`338`, :pr:`340`, :pr:`342`, :pr:`343`) Renderer.multi_lines and multi_filled (:pr:`341`) convert_multi_lines and convert_multi_filled (:pr:`348`) dechunk_multi_lines and dechunk_multi_filled (:pr:`345`) * ContourGenerator.multi_lines and multi_filled * Renderer.multi_lines and multi_filled * convert_multi_lines and convert_multi_filled * dechunk_multi_lines and dechunk_multi_filled * Prevent use of np.nan as lower or upper level in filled * Support CPython 3.13 including free-threaded * Support PyPy 3.10 * Support improved typing in NumPy 2.1.0 * Simpler sphinx cross-references * Add more doc cross-references to explain returned data formats * Remove download numbers for conda packages * Documentation for multi_lines and multi_filled * Document possibility of duplicate contour points * Add pytest option to log image differences to CSV file * Label flaky test * MSVC linking and std::mutex compiler flag * Add minimal test script * Bump minimum supported NumPy to 1.23 * Build and publish nightly wheels * Bump default python version in CI to 3.12 * Sun Apr 28 2024 Atri Bhattacharya - Update to version 1.2.1: * Support NumPy 2 (gh#contourpy/contourpy#331, gh#contourpy/contourpy#371, gh#contourpy/contourpy#372). * Fix a few f-strings (gh#contourpy/contourpy#332). - New BuildRequires: python-meson-python. * Sun May 14 2023 Dirk Müller - update to 1.0.7: * This release adds type annotations and moves project metadata to pyproject.toml * Documentation now uses the Sphinx Furo theme, supporting dark and light modes. There are no functional changes. * Type annotations: * Add type annotations * Complete mypy configuration * Documentation improvements: * Support dark mode * Use sphinx copy button * Add conda monthly download badges to README * Furo sphinx theme * Code improvements: * Improved if statement * Test nonfinite z and decreasing zlevel for filled * Add abstract base class Renderer * Replace mpl scatter call with plot instead * Use absolute imports * Minor improvement to get_boundary_start_point * Build system and CI improvements: * Switch from setup.cfg to pyproject.toml * Add git pre-commit * Test improvements * CI improvements * Mon May 8 2023 Johannes Kastl - add sle15_python_module_pythons * Tue Dec 27 2022 Ben Greiner - explicitly require ourselves in :test flavor * Sun Dec 25 2022 Ben Greiner - contourpy is a now a runtime requirement of matplotlib: avoid buildcycle by _multibuild * Mon Oct 31 2022 Ben Greiner - Initial specfile for v1.0.6 - Required by bokeh 3