Use wheels from RPM packages
At least for Python > 2.6
This commit is contained in:
parent
d384e0f325
commit
34d58a7e7c
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
Name: python-virtualenv
|
Name: python-virtualenv
|
||||||
Version: 16.0.0
|
Version: 16.0.0
|
||||||
Release: 4%{?dist}
|
Release: 5%{?dist}
|
||||||
Summary: Tool to create isolated Python environments
|
Summary: Tool to create isolated Python environments
|
||||||
|
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
@ -28,6 +28,9 @@ Patch0: check-exec_dir.patch
|
|||||||
# the change needs to be properly communicated with Python SIG!
|
# the change needs to be properly communicated with Python SIG!
|
||||||
Patch1: python26.patch
|
Patch1: python26.patch
|
||||||
|
|
||||||
|
# Add /usr/share/python-wheels to file_search_dirs
|
||||||
|
Patch2: rpm-wheels.patch
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: git-core
|
BuildRequires: git-core
|
||||||
BuildRequires: python2-devel
|
BuildRequires: python2-devel
|
||||||
@ -38,6 +41,11 @@ BuildRequires: python3-devel
|
|||||||
BuildRequires: python3-sphinx
|
BuildRequires: python3-sphinx
|
||||||
%endif # with_python3
|
%endif # with_python3
|
||||||
|
|
||||||
|
# RPM installed wheels
|
||||||
|
BuildRequires: python-pip-wheel
|
||||||
|
BuildRequires: python-setuptools-wheel
|
||||||
|
BuildRequires: python-wheel-wheel
|
||||||
|
|
||||||
%description
|
%description
|
||||||
virtualenv is a tool to create isolated Python environments. virtualenv
|
virtualenv is a tool to create isolated Python environments. virtualenv
|
||||||
is a successor to workingenv, and an extension of virtual-python. It is
|
is a successor to workingenv, and an extension of virtual-python. It is
|
||||||
@ -52,14 +60,16 @@ Requires: python2-setuptools
|
|||||||
Requires: python2-devel
|
Requires: python2-devel
|
||||||
%{?python_provide:%python_provide python2-virtualenv}
|
%{?python_provide:%python_provide python2-virtualenv}
|
||||||
|
|
||||||
# bundled wheels
|
# RPM installed wheels
|
||||||
|
Requires: python-pip-wheel
|
||||||
|
Requires: python-setuptools-wheel
|
||||||
|
Requires: python-wheel-wheel
|
||||||
|
|
||||||
|
# bundled wheels for Python 2.6
|
||||||
Provides: bundled(python2dist(argparse)) = 1.4.0
|
Provides: bundled(python2dist(argparse)) = 1.4.0
|
||||||
Provides: bundled(python2dist(pip)) = 9.0.3
|
Provides: bundled(python2dist(pip)) = 9.0.3
|
||||||
Provides: bundled(python2dist(pip)) = 10.0.1
|
|
||||||
Provides: bundled(python2dist(setuptools)) = 36.8.0
|
Provides: bundled(python2dist(setuptools)) = 36.8.0
|
||||||
Provides: bundled(python2dist(setuptools)) = 39.1.0
|
|
||||||
Provides: bundled(python2dist(wheel)) = 0.29.0
|
Provides: bundled(python2dist(wheel)) = 0.29.0
|
||||||
Provides: bundled(python2dist(wheel)) = 0.31.1
|
|
||||||
|
|
||||||
%description -n python2-virtualenv
|
%description -n python2-virtualenv
|
||||||
virtualenv is a tool to create isolated Python environments. virtualenv
|
virtualenv is a tool to create isolated Python environments. virtualenv
|
||||||
@ -82,14 +92,16 @@ Requires: python3-setuptools
|
|||||||
Requires: python3-devel
|
Requires: python3-devel
|
||||||
%{?python_provide:%python_provide python3-virtualenv}
|
%{?python_provide:%python_provide python3-virtualenv}
|
||||||
|
|
||||||
# bundled wheels
|
# RPM installed wheels
|
||||||
|
Requires: python-pip-wheel
|
||||||
|
Requires: python-setuptools-wheel
|
||||||
|
Requires: python-wheel-wheel
|
||||||
|
|
||||||
|
# bundled wheels for Python 2.6
|
||||||
Provides: bundled(python3dist(argparse)) = 1.4.0
|
Provides: bundled(python3dist(argparse)) = 1.4.0
|
||||||
Provides: bundled(python3dist(pip)) = 9.0.3
|
|
||||||
Provides: bundled(python3dist(pip)) = 10.0.1
|
Provides: bundled(python3dist(pip)) = 10.0.1
|
||||||
Provides: bundled(python3dist(setuptools)) = 36.8.0
|
Provides: bundled(python3dist(setuptools)) = 36.8.0
|
||||||
Provides: bundled(python3dist(setuptools)) = 39.1.0
|
|
||||||
Provides: bundled(python3dist(wheel)) = 0.29.0
|
Provides: bundled(python3dist(wheel)) = 0.29.0
|
||||||
Provides: bundled(python3dist(wheel)) = 0.31.1
|
|
||||||
|
|
||||||
%description -n python3-virtualenv
|
%description -n python3-virtualenv
|
||||||
virtualenv is a tool to create isolated Python environments. virtualenv
|
virtualenv is a tool to create isolated Python environments. virtualenv
|
||||||
@ -103,6 +115,15 @@ licensed under an MIT-style permissive license
|
|||||||
%autosetup -p1 -S git -n virtualenv-%{version}
|
%autosetup -p1 -S git -n virtualenv-%{version}
|
||||||
%{__sed} -i -e "1s|#!/usr/bin/env python||" virtualenv.py
|
%{__sed} -i -e "1s|#!/usr/bin/env python||" virtualenv.py
|
||||||
|
|
||||||
|
# Remove the wheels provided by RPM packages
|
||||||
|
# Those are the "recent" version shipped with virtualenv 16.0.0
|
||||||
|
rm virtualenv_support/pip-10.*
|
||||||
|
rm virtualenv_support/setuptools-39.*
|
||||||
|
rm virtualenv_support/wheel-0.31.*
|
||||||
|
|
||||||
|
# make sure we only left what was intended (old argparse, pip, setuptools, wheel)
|
||||||
|
ls virtualenv_support/*.whl
|
||||||
|
test $(ls virtualenv_support/*.whl -1 | wc -l) -eq 4
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# Build code
|
# Build code
|
||||||
@ -164,6 +185,9 @@ cp %{buildroot}/%{_bindir}/virtualenv %{buildroot}/%{_bindir}/virtualenv-2
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Aug 15 2018 Miro Hrončok <mhroncok@redhat.com> - 16.0.0-5
|
||||||
|
- Use wheels from RPM packages
|
||||||
|
|
||||||
* Wed Jul 18 2018 Miro Hrončok <mhroncok@redhat.com> - 16.0.0-4
|
* Wed Jul 18 2018 Miro Hrončok <mhroncok@redhat.com> - 16.0.0-4
|
||||||
- Reintroduce support for Python 2.6 (#1602347)
|
- Reintroduce support for Python 2.6 (#1602347)
|
||||||
- Add missing bundled provides
|
- Add missing bundled provides
|
||||||
|
@ -100,20 +100,6 @@ index cbf41de..57cb471 100755
|
|||||||
sys.exit(101)
|
sys.exit(101)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -822,7 +822,12 @@ def find_wheels(projects, search_dirs):
|
|
||||||
# The pattern could be tightened to require -py2.py3-none-any.whl.
|
|
||||||
files = glob.glob(os.path.join(dirname, project + '-*.whl'))
|
|
||||||
if files:
|
|
||||||
- wheels.append(os.path.abspath(files[0]))
|
|
||||||
+ # Hack for Python 2.6 and pip 9
|
|
||||||
+ files = sorted(files)
|
|
||||||
+ if sys.version_info[:2] == (2, 6) and project == 'pip':
|
|
||||||
+ wheels.append(os.path.abspath(files[-1]))
|
|
||||||
+ else:
|
|
||||||
+ wheels.append(os.path.abspath(files[0]))
|
|
||||||
break
|
|
||||||
else:
|
|
||||||
# We're out of luck, so quit with a suitable error
|
|
||||||
@@ -931,13 +936,22 @@ def create_environment(home_dir, site_packages=False, clear=False,
|
@@ -931,13 +936,22 @@ def create_environment(home_dir, site_packages=False, clear=False,
|
||||||
to_install = []
|
to_install = []
|
||||||
|
|
||||||
|
14
rpm-wheels.patch
Normal file
14
rpm-wheels.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff --git a/virtualenv.py b/virtualenv.py
|
||||||
|
index 2ad2695..a0ddfaf 100755
|
||||||
|
--- a/virtualenv.py
|
||||||
|
+++ b/virtualenv.py
|
||||||
|
@@ -400,6 +400,9 @@ def _find_file(filename, dirs):
|
||||||
|
def file_search_dirs():
|
||||||
|
here = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
dirs = [here, join(here, 'virtualenv_support')]
|
||||||
|
+ if sys.version_info >= (2, 7):
|
||||||
|
+ # we don't insert on 2.6 because the wheels there are not compatible
|
||||||
|
+ dirs.insert(1, '/usr/share/python-wheels')
|
||||||
|
if os.path.splitext(os.path.dirname(__file__))[0] != 'virtualenv':
|
||||||
|
# Probably some boot script; just in case virtualenv is installed...
|
||||||
|
try:
|
Loading…
Reference in New Issue
Block a user