15
0

Accepting request 1168416 from home:bnavigator:branches:devel:languages:python:numeric

- Update to 0.15.0
  * Enable compression for wheel files. The may result in several
    times smaller wheels.
  * Require Meson 1.2.3 or later on Python 3.12 or later. Meson
    1.2.3 does not require anymore ``distutils``, allowing to
    remove the dependency on ``setuptools`` on Python 3.12 or
    later.
  * Unconditionally require ``patchelf`` on Linux.  The
    ``patchelf`` package is added to the build dependencies if a
    suitable ``patchelf`` executable is not find on the ``$PATH``.
    This avoids cases where ``meson setup`` was run twice during
    the build process to determine whether ``patchelf`` is
    required.
  * Allow to configure the ``meson`` executable to use for the
    build process through the ``$MESON`` environment variable or
    the ``meson`` key under ``[tool.meson-python]`` in
    ``pyproject.toml``.
  * Fix wheel platform tag generation on FreeBSD.
  * Extend support to other UNIX-like systems and make the tests
    pass on FreeBSD.
  * Fix package name normalization in package metadata and improve
    package name validation.
  * Fix ``RPATH`` handling when the build ``RPATH`` points to
    subdirectories of the build directory.
  * Fix support for the Python limited C API when compiling for
    PyPy.
  * Rename the ``builddir`` config-setting to ``build-dir``. For
    backwards compatibility, the ``buildir`` config-setting remains
    supported as an alias.
- Drop no longer needed test patches and test wheels

OBS-URL: https://build.opensuse.org/request/show/1168416
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-meson-python?expand=0&rev=20
This commit is contained in:
2024-04-17 06:46:38 +00:00
committed by Git OBS Bridge
parent 46a4425a2a
commit 7569e212ac
11 changed files with 64 additions and 85 deletions

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-meson-python
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,43 +18,31 @@
%{?sle15_python_module_pythons}
Name: python-meson-python
Version: 0.14.0
Version: 0.15.0
Release: 0
Summary: Meson Python build backend (PEP 517)
License: MIT
URL: https://github.com/mesonbuild/meson-python
Source0: https://files.pythonhosted.org/packages/source/m/meson_python/meson_python-%{version}.tar.gz
# for the test suite
Source1: https://files.pythonhosted.org/packages/py3/t/tomli/tomli-2.0.1-py3-none-any.whl
Source2: https://files.pythonhosted.org/packages/py3/p/pyproject_metadata/pyproject_metadata-0.7.1-py3-none-any.whl
Source3: https://files.pythonhosted.org/packages/py3/p/packaging/packaging-23.0-py3-none-any.whl
Source4: https://files.pythonhosted.org/packages/py3/t/typing_extensions/typing_extensions-4.4.0-py3-none-any.whl
# PATCH-FEATURE-OPENSUSE mesonpy-trim-deps.patch code@bnavigator.de
Patch11: mesonpy-trim-deps.patch
# PATCH-FEATURE-OPENSUSE mesonpy-no-wheel-rebuild.patch code@bnavigator.de
Patch12: mesonpy-no-wheel-rebuild.patch
# PATCH-FEATURE-OPENSUSE
Patch14: no-build-isolation-in-test.patch
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pyproject-metadata >= 0.7.1}
BuildRequires: %{python_module tomli >= 1.0.0 if %python-base < 3.11}
BuildRequires: %{python_module typing-extensions >= 3.7.4 if %python-base < 3.10}
BuildRequires: fdupes
BuildRequires: meson >= 0.63.3
BuildRequires: meson >= 1.2.3
BuildRequires: ninja
BuildRequires: python-rpm-macros
Requires: meson >= 0.63.3
Requires: python-pyproject-metadata >= 0.7.1
%if 0%{python_version_nodots} >= 312
Requires: python-setuptools
Requires: meson >= 1.2.3
%else
Requires: meson >= 0.63.3
%endif
Requires: python-pyproject-metadata >= 0.7.1
%if 0%{python_version_nodots} < 311
Requires: python-tomli >= 1.0.0
%endif
%if 0%{python_version_nodots} < 310
Requires: python-typing-extensions >= 3.7.4
%endif
# SECTION test
BuildRequires: %{python_module GitPython}
BuildRequires: %{python_module Cython}
@@ -62,7 +50,6 @@ BuildRequires: %{python_module build}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools-wheel}
BuildRequires: %{python_module wheel}
BuildRequires: patchelf
# /SECTION
@@ -70,7 +57,10 @@ BuildArch: noarch
%python_subpackages
%description
Python build backend (PEP 517) for Meson projects.
meson-python is a Python build backend built on top of the Meson build system.
It enables using Meson for the configuration and build steps of Python packages.
meson-python is best suited for building Python packages containing extension
modules implemented in languages such as C, C++, Cython, Fortran, Pythran, or Rust.
%prep
%autosetup -p1 -n meson_python-%{version}
@@ -83,10 +73,9 @@ Python build backend (PEP 517) for Meson projects.
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export MESONPY_FORCE_LOCAL_LIB=1
export PIP_FIND_LINKS="%{python3_sitelib}/../wheels"
%python_expand cp %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} build/
%pytest
# test suite path issues
donttest="test_vendored_meson"
%pytest -k "not ($donttest)"
%files %{python_files}
%license LICENSE