Remove .dist-info directory at the end of %pyproject_buildrequires
An incomplete .dist-info directory in $PWD can confuse tests in %check. For example, virtualenv uses importlib.metadata to load its entry points and it does not work when it finds a virtualenv...dist-info without them. Related: rhbz#2208971
This commit is contained in:
parent
d46b0e5b01
commit
e828b8291a
@ -172,6 +172,8 @@ if [ -f %{__python3} ]; then
|
|||||||
CFLAGS="${CFLAGS:-${RPM_OPT_FLAGS}}" LDFLAGS="${LDFLAGS:-${RPM_LD_FLAGS}}" TMPDIR="%{_pyproject_builddir}" \\\
|
CFLAGS="${CFLAGS:-${RPM_OPT_FLAGS}}" LDFLAGS="${LDFLAGS:-${RPM_LD_FLAGS}}" TMPDIR="%{_pyproject_builddir}" \\\
|
||||||
RPM_TOXENV="%{toxenv}" HOSTNAME="rpmbuild" %{__python3} -Bs %{_rpmconfigdir}/redhat/pyproject_buildrequires.py %{?!_python_no_extras_requires:--generate-extras} --python3_pkgversion %{python3_pkgversion} --wheeldir %{_pyproject_wheeldir} %{?**}
|
RPM_TOXENV="%{toxenv}" HOSTNAME="rpmbuild" %{__python3} -Bs %{_rpmconfigdir}/redhat/pyproject_buildrequires.py %{?!_python_no_extras_requires:--generate-extras} --python3_pkgversion %{python3_pkgversion} --wheeldir %{_pyproject_wheeldir} %{?**}
|
||||||
fi
|
fi
|
||||||
|
# Incomplete .dist-info dir might confuse importlib.metadata
|
||||||
|
rm -rfv *.dist-info/ >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ License: MIT
|
|||||||
# Increment Y and reset Z when new macros or features are added
|
# Increment Y and reset Z when new macros or features are added
|
||||||
# Increment Z when this is a bugfix or a cosmetic change
|
# Increment Z when this is a bugfix or a cosmetic change
|
||||||
# Dropping support for EOL Fedoras is *not* considered a breaking change
|
# Dropping support for EOL Fedoras is *not* considered a breaking change
|
||||||
Version: 1.6.2
|
Version: 1.6.3
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
# Macro files
|
# Macro files
|
||||||
@ -149,6 +149,10 @@ export HOSTNAME="rpmbuild" # to speedup tox in network-less mock, see rhbz#1856
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Feb 13 2023 Lumír Balhar <lbalhar@redhat.com> - 1.6.3-1
|
||||||
|
- Remove .dist-info directory at the end of %%pyproject_buildrequires
|
||||||
|
- An incomplete .dist-info directory in $PWD can confuse tests in %%check
|
||||||
|
|
||||||
* Wed Feb 08 2023 Lumír Balhar <lbalhar@redhat.com> - 1.6.2-1
|
* Wed Feb 08 2023 Lumír Balhar <lbalhar@redhat.com> - 1.6.2-1
|
||||||
- Improve detection of lang files
|
- Improve detection of lang files
|
||||||
|
|
||||||
|
65
tests/python-virtualenv.spec
Normal file
65
tests/python-virtualenv.spec
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
Name: python-virtualenv
|
||||||
|
Version: 20.19.0
|
||||||
|
Release: 0%{?dist}
|
||||||
|
Summary: Tool to create isolated Python environments
|
||||||
|
|
||||||
|
License: MIT
|
||||||
|
URL: http://pypi.python.org/pypi/virtualenv
|
||||||
|
Source: %{pypi_source virtualenv}
|
||||||
|
|
||||||
|
BuildArch: noarch
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
BuildRequires: python3-flaky
|
||||||
|
BuildRequires: python3-pytest
|
||||||
|
|
||||||
|
%description
|
||||||
|
This specfile was added as a regression test to
|
||||||
|
https://src.fedoraproject.org/rpms/pyproject-rpm-macros/pull-request/363
|
||||||
|
|
||||||
|
It uses hatchling without %%pyproject_buildrequires -w.
|
||||||
|
|
||||||
|
|
||||||
|
%package -n python3-virtualenv
|
||||||
|
Summary: %{summary}
|
||||||
|
|
||||||
|
%description -n python3-virtualenv
|
||||||
|
...
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n virtualenv-%{version}
|
||||||
|
# Relax the upper bounds of some dependencies to their known available versions in Fedora 36
|
||||||
|
# This can be reduced once Fedora 36 goes EOL, but might still be partially needed on Fedora 37
|
||||||
|
sed -i -e 's/distlib<1,>=0.3.6/distlib<1,>=0.3.4/' \
|
||||||
|
-e 's/filelock<4,>=3.4.1/filelock<4,>=3.3.1/' \
|
||||||
|
-e 's/platformdirs<4,>=2.4/platformdirs<4,>=2.3/' \
|
||||||
|
pyproject.toml
|
||||||
|
|
||||||
|
|
||||||
|
%generate_buildrequires
|
||||||
|
%pyproject_buildrequires
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
%pyproject_wheel
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
%pyproject_install
|
||||||
|
%pyproject_save_files virtualenv
|
||||||
|
%{?fc36:
|
||||||
|
# old version of setuptools_scm produces files incompatible with
|
||||||
|
# assumptions in virtualenv code, we append the expected attributes:
|
||||||
|
echo '__version__, __version_tuple__ = version, version_tuple' >> %{buildroot}%{python3_sitelib}/virtualenv/version.py
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
%check
|
||||||
|
# test_main fails when .dist-info is not deleted at the end of %%pyproject_buildrequires
|
||||||
|
PIP_CERT=/etc/pki/tls/certs/ca-bundle.crt \
|
||||||
|
%pytest -v -k test_main
|
||||||
|
|
||||||
|
|
||||||
|
%files -n python3-virtualenv -f %{pyproject_files}
|
||||||
|
%doc README.md
|
||||||
|
%{_bindir}/virtualenv
|
@ -92,6 +92,9 @@
|
|||||||
- fake_requirements:
|
- fake_requirements:
|
||||||
dir: .
|
dir: .
|
||||||
run: ./mocktest.sh fake-requirements
|
run: ./mocktest.sh fake-requirements
|
||||||
|
- virtualenv:
|
||||||
|
dir: .
|
||||||
|
run: ./mocktest.sh python-virtualenv
|
||||||
- escape_percentages:
|
- escape_percentages:
|
||||||
dir: .
|
dir: .
|
||||||
run: rpmbuild -ba escape_percentages.spec
|
run: rpmbuild -ba escape_percentages.spec
|
||||||
|
Loading…
Reference in New Issue
Block a user