summaryrefslogtreecommitdiffstats
path: root/python-execnet.spec
blob: 7a2fa1f2b6938041cf6dd0fee1638574c5d4581b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
%if (! 0%{?rhel}) || 0%{?rhel} > 6
%global with_python3 1
%global python3_version %(%{__python3} -c "import sys; sys.stdout.write(sys.version[:3])")
%endif
%if 0%{?rhel} && 0%{?rhel} < 6
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%endif

%global srcname execnet

Name:           python-%{srcname}
Version:        1.0.9
Release:        3%{?dist}
Summary:        Elastic Python Deployment
Group:          Development/Languages
License:        GPLv2+ and MIT
URL:            http://codespeak.net/execnet
Source0:        http://pypi.python.org/packages/source/e/%{srcname}/%{srcname}-%{version}.zip
# upstream changeset 1a63deea3424
Patch0:         execnet-debugfilename.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:      noarch
BuildRequires:  python-devel
BuildRequires:  python-setuptools
Requires:       python-setuptools
BuildRequires:  pytest
BuildRequires:  python-sphinx
BuildRequires:  /bin/ps
%if 0%{?with_python3}
BuildRequires:  python3-devel
BuildRequires:  python3-setuptools
BuildRequires:  python3-pytest
%endif # with_python3
# execnet was separated from pylib at that point
Conflicts:      python-py < 1.1.0


%description
The execnet package allows to:

 * instantiate local/remote Python Interpreters
 * send code for execution to one or many Interpreters
 * send and receive data between codeInterpreters through channels

execnet performs zero-install bootstrapping into other interpreters;
package installation is only required at the initiating side. execnet
enables interoperation between CPython 2.4-3.1, Jython 2.5 and PyPy
1.1 and works well on Windows, Linux and OSX systems.


%if 0%{?with_python3}
%package -n python3-execnet
Summary:        Elastic Python Deployment
Group:          Development/Languages
Requires:       python3-setuptools


%description -n python3-execnet
The execnet package allows to:

 * instantiate local/remote Python Interpreters
 * send code for execution to one or many Interpreters
 * send and receive data between codeInterpreters through channels

execnet performs zero-install bootstrapping into other interpreters;
package installation is only required at the initiating side. execnet
enables interoperation between CPython 2.4-3.1, Jython 2.5 and PyPy
1.1 and works well on Windows, Linux and OSX systems.
%endif # with_python3


%prep
%setup -q -n %{srcname}-%{version}
%patch0 -p1

# remove shebangs and fix permissions
find . -type f -a \( -name '*.py' -o -name 'py.*' \) \
   -exec sed -i '1{/^#!/d}' {} \; \
   -exec chmod u=rw,go=r {} \;

%if 0%{?with_python3}
cp -a . %{py3dir}
%endif # with_python3


%build
%{__python} setup.py build
make -C doc html

%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py build
popd
%endif # with_python3


%install
rm -rf %{buildroot}
%{__python} setup.py install -O1 --skip-build --root %{buildroot}

%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py install -O1 --skip-build --root %{buildroot}
popd
%endif # with_python3

# remove hidden file
rm doc/_build/html/.buildinfo


%check
PYTHONPATH=$(pwd) py.test-%{python_version} -r s
%if 0%{?with_python3}
pushd %{py3dir}
# see http://bugs.python.org/issue12591
PYTHONPATH=$(pwd) py.test-%{python3_version} -r s -k-test_subprocess_interaction
popd
%endif # with_python3


%clean
rm -rf %{buildroot}


%files
%defattr(-,root,root,-)
%{python_sitelib}/%{srcname}*
%doc README.txt LICENSE CHANGELOG
%doc doc/_build/html


%if 0%{?with_python3}
%files -n python3-execnet
%defattr(-,root,root,-)
%{python3_sitelib}/%{srcname}*
%doc README.txt LICENSE CHANGELOG
%doc doc/_build/html
%endif # with_python3


%changelog
* Tue Jan 17 2012 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.9-3
- Add upstream patch for failing test.

* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Sun Sep  4 2011 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.9-1
- Update to 1.0.9.
- Use BR on python-setuptools instead of python-setuptools-devel.
- Create Python3 subpackage.
- Fix dependencies.

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.8-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Sat Jul 31 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.8-1
- Update to 1.0.8.

* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 1.0.7-1.1
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild

* Sat Jul 10 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.7-1
- Update to 1.0.7.
- Do cleanups already in %%prep to avoid inconsistent mtimes between
  source files and bytecode.

* Sat May  8 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.6-1
- Update to 1.0.6.

* Sun Feb 14 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.5-1
- Update to 1.0.5.

* Wed Jan 27 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.4-1
- Update to 1.0.4.
- No need to skip tests.

* Fri Jan  8 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.2-3
- Remove .buildinfo file from the doc dir.

* Thu Jan  7 2010 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.2-2
- Skip tests that need network access.

* Tue Dec 29 2009 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.2-1
- Update to 1.0.2.

* Sat Dec  5 2009 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.1-1
- Update to 1.0.1.
- Build and include HTML documentation.
- Be a bit more explicit in the %%files section.

* Sat Nov 28 2009 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.0-1
- Update to 1.0.0.

* Sun Nov 22 2009 Thomas Moschny <thomas.moschny@gmx.de> - 1.0.0-0.1.b3
- New package.