Sync from SUSE:ALP:Source:Standard:1.0 python-build revision 585eac1a40681d70b7315dfe5965cd51

This commit is contained in:
Adrian Schröter 2023-10-11 15:54:13 +02:00
commit a498e84e92
9 changed files with 292 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>test</package>
</multibuild>

BIN
build-1.0.3.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
flit_core-3.8.0-py3-none-any.whl (Stored with Git LFS) Normal file

Binary file not shown.

135
python-build.changes Normal file
View File

@ -0,0 +1,135 @@
-------------------------------------------------------------------
Wed Sep 20 07:50:56 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 1.0.3:
* Avoid CPython 3.8.17, 3.9.17, 3.10.12, and 3.11.4 tarfile symlink bug
triggered by adding data_filter in 1.0.0.
* Removed the toml library fallback; toml can no longer be used as a
substitute for tomli
* Added runner parameter to util.project_wheel_metadata
* Modified ProjectBuilder constructor signature, added alternative
ProjectBuilder.from_env constructor, redefined env.IsolatedEnv interface,
and exposed env.DefaultIsolatedEnv, replacing env.IsolatedEnvBuilder.
* virtualenv is no longer imported when using -n, for faster builds
* The SDist now contains the repository contents, including tests.
Flit-core 3.8+ required.
* The minimum version of importlib-metadata has been increased to 4.6 and
Python 3.10 due to a bug in the standard library version with URL
requirements in extras.
* Tests now contain a network marker
* Config-settings are now passed to get_requires* hooks, fixing a long
standing bug.
* Test on Python 3.12 betas/RCs
* Filter out malicious files when extracting tar archives when Python
supports it
* Specify encoding, fixing issues when PYTHONWARNDEFAULTENCODING is set.
- Drop patches 589-colorized-pip23.patch, 609-filter-out-malicious.patch:
* Included upstream.
- Add runtests.py which chdirs before running tests, but after the macros
have polluted the current working directory, avoiding test failures.
-------------------------------------------------------------------
Sat May 6 16:59:52 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Renamed patches support-pip-23.patch and
support-tarfile-data-filter.patch to 589-colorized-pip23.patch
and 609-filter-out-malicious.patch, respectively.
-------------------------------------------------------------------
Tue May 2 10:52:23 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Remove support-tarfile-data-filter.patch: better documentation
required, preferable supported through upstream
* gh#pypa/build#609
* ignore the DeprecationWarning instead
-------------------------------------------------------------------
Tue May 2 08:04:24 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch support-pip-23.patch:
* pip 23 also colorizes output, confusing the test.
- Add patch support-tarfile-data-filter.patch:
* Set tarfile.data_filter if available.
-------------------------------------------------------------------
Fri Apr 21 12:22:56 UTC 2023 - Dirk Müller <dmueller@suse.com>
- add sle15_python_module_pythons (jsc#PED-68)
-------------------------------------------------------------------
Thu Apr 13 22:40:22 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Make calling of %{sle15modernpython} optional.
-------------------------------------------------------------------
Tue Mar 21 19:16:14 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 0.10.0
* Replace pep517 dependency with pyproject_hooks, into which
pep517 has been renamed (PR #539, Fixes #529)
* Change build backend from setuptools to flit (PR #470, Fixes
#394)
* Dropped support for Python 3.6 (PR #532)
- Avoid namespace clashes with build/ directory
* gh#openSUSE/python-rpm-macros#157
- Drop build-pr550-packaging22.patch
-------------------------------------------------------------------
Sun Jan 1 18:26:09 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Add build-pr550-packaging22.patch
* gh#pypa/build#550: tests: fix for PEP 685 in packaging 22
- Be more specific in requirements
-------------------------------------------------------------------
Mon Nov 7 20:52:13 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
- Update to v0.9.0
* Hide a Python 3.11.0 unavoidable warning with venv (PR #527)
* Fix infinite recursion error in check_dependency with circular dependencies (PR #512, Fixes #511)
* Only import colorama on Windows (PR #494, Fixes #493)
* Flush output more often to reduce interleaved output (PR #494)
* Small API cleanup, like better __all__ and srcdir being read only. (PR #477)
* Only use importlib_metadata when needed (PR #401)
* Clarify in printout when build dependencies are being installed (PR #514)
-------------------------------------------------------------------
Wed Jul 13 11:24:00 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to v0.8.0
* Accept `os.PathLike[str]` in addition to `str` for paths in
public API (PR #392, Fixes #372)
* Add schema validation for `build-system` table to check
conformity with PEP 517 and PEP 518 (PR #365, Fixes #364)
* Better support for Python 3.11 (sysconfig schemes PR #434, PR
#463, tomllib PR #443, warnings PR #420)
* Improved error printouts (PR #442)
* Avoid importing packaging unless needed (PR #395, Fixes #393)
* Failure to create a virtual environment in the `build.env`
module now raises `build.FailedProcessError` (PR #442)
- Rework test suite: provide wheels for testing
-------------------------------------------------------------------
Sat Oct 16 12:24:15 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to v0.7.0
Full changelog at
https://pypa-build.readthedocs.io/en/stable/changelog.html
* Dropped support for Python 2 and 3.5
- Avoid possible bootstrap build depcycles with _multibuild
- Drop remove-unused-import.patch
-------------------------------------------------------------------
Thu Dec 17 14:52:54 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
- Add remove-unused-import.patch to work with importlib_metadata
-------------------------------------------------------------------
Fri Nov 13 11:14:24 UTC 2020 - John Vandenberg <jayvdb@gmail.com>
- Update to v0.1.0
-------------------------------------------------------------------
Tue Sep 29 02:55:22 AM UTC 2020 - John Vandenberg <jayvdb@gmail.com>
- Initial spec for v0.0.4

111
python-build.spec Normal file
View File

@ -0,0 +1,111 @@
#
# spec file
#
# 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/
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
# wheeldir of name build does not work well with this packagename gh#openSUSE/python-rpm-macros#157
%define _pyproject_wheeldir distwheel
%{?sle15_python_module_pythons}
Name: python-build%{psuffix}
Version: 1.0.3
Release: 0
Summary: Simple PEP517 package builder
License: MIT
URL: https://github.com/pypa/build
Source0: https://github.com/pypa/build/archive/%{version}.tar.gz#/build-%{version}.tar.gz
# Needs the wheels for wheel, flit-core, and tomli for testing
Source10: https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-0.37.1-py2.py3-none-any.whl
Source11: https://files.pythonhosted.org/packages/py3/f/flit-core/flit_core-3.8.0-py3-none-any.whl
Source12: https://files.pythonhosted.org/packages/py3/t/tomli/tomli-2.0.1-py3-none-any.whl
Source14: runtests.py
BuildRequires: %{python_module base >= 3.7}
BuildRequires: %{python_module flit-core >= 3.8}
BuildRequires: %{python_module pip}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-packaging >= 0.19.0
Requires: python-pyproject-hooks
Requires: (python-importlib-metadata >= 0.22 if python-base < 3.8)
Requires: (python-tomli >= 1.1.0 if python-base < 3.11)
Recommends: python-virtualenv >= 20.0.35
Requires(post): update-alternatives
Requires(postun):update-alternatives
BuildArch: noarch
%if %{with test}
BuildRequires: %{python_module build = %{version}}
BuildRequires: %{python_module filelock >= 3}
BuildRequires: %{python_module pytest >= 6}
BuildRequires: %{python_module pytest-mock >= 2}
BuildRequires: %{python_module pytest-rerunfailures >= 9.1}
BuildRequires: %{python_module pytest-xdist >= 1.34}
BuildRequires: %{python_module setuptools >= 42 if %python-base < 3.10}
BuildRequires: %{python_module setuptools >= 56 if %python-base >= 3.11}
BuildRequires: %{python_module wheel >= 0.36}
BuildRequires: python3-setuptools-wheel
%endif
%python_subpackages
%description
Build will invoke the PEP 517 hooks to build a distribution package.
It is a simple build tool and does not perform any dependency management.
%prep
%autosetup -p1 -n build-%{version}
%if !%{with test}
%build
%pyproject_wheel
%install
%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/pyproject-build
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%if %{with test}
%check
cp %{SOURCE14} .
mkdir -p wheels
cp %{SOURCE10} %{SOURCE11} %{SOURCE12} wheels/
export PIP_FIND_LINKS="%{python3_sitelib}/../wheels $PWD/wheels"
%python_exec runtests.py
%endif
%if !%{with test}
%post
%python_install_alternative pyproject-build
%postun
%python_uninstall_alternative pyproject-build
%files %{python_files}
%doc README.md
%license LICENSE
%python_alternative %{_bindir}/pyproject-build
%{python_sitelib}/build
%{python_sitelib}/build-%{version}.dist-info
%endif
%changelog

8
runtests.py Normal file
View File

@ -0,0 +1,8 @@
#!/usr/bin/python3
import os
import pathlib
import pytest
os.chdir(pathlib.Path.cwd() / "tests")
pytest.main(["-v", "-n", "auto"])

BIN
tomli-2.0.1-py3-none-any.whl (Stored with Git LFS) Normal file

Binary file not shown.

BIN
wheel-0.37.1-py2.py3-none-any.whl (Stored with Git LFS) Normal file

Binary file not shown.