2020-07-29 10:49:15 +00:00
|
|
|
Name: python-setuptools_scm
|
|
|
|
Version: 3.5.0
|
|
|
|
Release: 0%{?dist}
|
|
|
|
Summary: The blessed package to manage your versions by SCM tags
|
|
|
|
License: MIT
|
|
|
|
URL: https://github.com/pypa/setuptools_scm/
|
|
|
|
Source0: %{pypi_source setuptools_scm}
|
|
|
|
|
|
|
|
BuildArch: noarch
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
BuildRequires: pyproject-rpm-macros
|
2020-11-03 10:29:50 +00:00
|
|
|
BuildRequires: /usr/bin/git
|
|
|
|
BuildRequires: /usr/bin/hg
|
2020-07-29 10:49:15 +00:00
|
|
|
|
|
|
|
%description
|
|
|
|
Here we test that %%pyproject_extras_subpkg works and generates
|
|
|
|
setuptools_scm[toml] extra subpackage.
|
|
|
|
|
|
|
|
Note that it only works on Fedora 33+.
|
|
|
|
|
2020-11-03 10:29:50 +00:00
|
|
|
We also check passing multiple -e flags to %%pyproject_buildrequires.
|
|
|
|
The tox environments also have a dependency on an extra ("toml").
|
|
|
|
|
|
|
|
|
2020-07-29 10:49:15 +00:00
|
|
|
%package -n python3-setuptools_scm
|
|
|
|
Summary: %{summary}
|
|
|
|
|
|
|
|
%description -n python3-setuptools_scm
|
|
|
|
...
|
|
|
|
|
|
|
|
%pyproject_extras_subpkg -n python3-setuptools_scm toml
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%autosetup -p1 -n setuptools_scm-%{version}
|
|
|
|
|
2020-11-03 10:29:50 +00:00
|
|
|
# there is a mistake in the flake8 environment configuration
|
|
|
|
# https://github.com/pypa/setuptools_scm/pull/444
|
|
|
|
# https://github.com/pypa/setuptools_scm/pull/489
|
|
|
|
sed -i -e 's@flake8 setuptools_scm/@flake8 src/setuptools_scm/@' -e 's@--exclude=setuptools_scm/@--exclude=src/setuptools_scm/@' tox.ini
|
|
|
|
|
2020-07-29 10:49:15 +00:00
|
|
|
|
|
|
|
%generate_buildrequires
|
2020-11-03 10:29:50 +00:00
|
|
|
%if 0%{?fedora} >= 33 || 0%{?rhel} >= 9
|
|
|
|
# Note that you should not run flake8-like linters in Fedora spec files,
|
|
|
|
# here we do it solely to check the *ability* to use multiple toxenvs.
|
|
|
|
%pyproject_buildrequires -e %{default_toxenv}-test -e flake8
|
|
|
|
%else
|
|
|
|
# older Fedoras don't have the required runtime dependencies, so we don't test it there
|
2020-07-29 10:49:15 +00:00
|
|
|
%pyproject_buildrequires
|
2020-11-03 10:29:50 +00:00
|
|
|
%endif
|
|
|
|
|
2020-07-29 10:49:15 +00:00
|
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
%pyproject_wheel
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
%pyproject_install
|
|
|
|
%pyproject_save_files setuptools_scm
|
|
|
|
|
|
|
|
|
|
|
|
%check
|
2020-11-03 10:29:50 +00:00
|
|
|
%if 0%{?fedora} >= 33 || 0%{?rhel} >= 9
|
|
|
|
# This tox should run all the toxenvs specified via -e in %%pyproject_buildrequires
|
|
|
|
# We only run some of the tests (running all of them requires network connection and is slow)
|
|
|
|
%tox -- -- -k test_version | tee toxlog
|
|
|
|
|
|
|
|
# Internal check for our macros: Assert both toxenvs were executed.
|
|
|
|
grep -F 'py%{python3_version_nodots}-test: commands succeeded' toxlog
|
|
|
|
grep -F 'flake8: commands succeeded' toxlog
|
|
|
|
%endif
|
|
|
|
|
2020-07-29 10:49:15 +00:00
|
|
|
# Internal check for our macros
|
|
|
|
# making sure that %%{pyproject_ghost_distinfo} has the right content
|
|
|
|
test -f %{pyproject_ghost_distinfo}
|
|
|
|
test "$(cat %{pyproject_ghost_distinfo})" == "%ghost %{python3_sitelib}/setuptools_scm-%{version}.dist-info"
|
|
|
|
|
|
|
|
|
|
|
|
%files -n python3-setuptools_scm -f %{pyproject_files}
|
|
|
|
%doc README.rst
|
|
|
|
%doc CHANGELOG.rst
|
|
|
|
%license LICENSE
|