1 |
%define name ipython |
2 |
%define version 1.0.0 |
3 |
%define release %mkrel 1 |
4 |
|
5 |
Summary: An interactive computing environment for Python |
6 |
Name: %{name} |
7 |
Version: %{version} |
8 |
Release: %{release} |
9 |
Source0: http://pypi.python.org/packages/source/i/ipython/%{name}-%{version}.tar.gz |
10 |
License: BSD |
11 |
Group: Development/Python |
12 |
Url: http://ipython.org |
13 |
BuildArch: noarch |
14 |
Requires: python >= 2.6 |
15 |
Requires: python-pexpect >= 2.2 |
16 |
Suggests: python-mpi4py |
17 |
Suggests: wxPython, python-qt4, pyside >= 1.0.3 |
18 |
Suggests: python-pygments |
19 |
Suggests: python-pyzmq >= 2.1.4 |
20 |
#notebook requires tornado |
21 |
Suggests: python-torando >= 2.1.0 |
22 |
BuildRequires: emacs, python-devel |
23 |
|
24 |
%description |
25 |
The goal of IPython is to create a comprehensive environment for |
26 |
interactive and exploratory computing. To support this goal, IPython |
27 |
has two main components: |
28 |
|
29 |
* An enhanced interactive Python shell. |
30 |
* An architecture for interactive parallel computing. |
31 |
|
32 |
The enhanced interactive Python shell has the following main features: |
33 |
|
34 |
* Comprehensive object introspection. |
35 |
* Input history, persistent across sessions. |
36 |
* Caching of output results during a session with automatically |
37 |
generated references. |
38 |
* Readline based name completion. |
39 |
* Extensible system of 'magic' commands for controlling the |
40 |
environment and performing many tasks related either to IPython or |
41 |
the operating system. |
42 |
* Configuration system with easy switching between different setups |
43 |
(simpler than changing $PYTHONSTARTUP environment variables every |
44 |
time). |
45 |
* Session logging and reloading. |
46 |
* Extensible syntax processing for special purpose situations. |
47 |
* Access to the system shell with user-extensible alias system. |
48 |
* Easily embeddable in other Python programs and wxPython GUIs. |
49 |
* Integrated access to the pdb debugger and the Python profiler. |
50 |
|
51 |
The parallel computing architecture has the following main features: |
52 |
|
53 |
* Quickly parallelize Python code from an interactive Python/IPython |
54 |
session. |
55 |
* A flexible and dynamic process model that be deployed on anything |
56 |
from multicore workstations to supercomputers. |
57 |
* An architecture that supports many different styles of parallelism, |
58 |
from message passing to task farming. |
59 |
* Both blocking and fully asynchronous interfaces. |
60 |
* High level APIs that enable many things to be parallelized in a few |
61 |
lines of code. |
62 |
* Share live parallel jobs with other users securely. |
63 |
* Dynamically load balanced task farming system. |
64 |
* Robust error handling in parallel code. |
65 |
|
66 |
%prep |
67 |
%setup -q |
68 |
|
69 |
%build |
70 |
emacs -batch -f batch-byte-compile docs/emacs/ipython.el |
71 |
|
72 |
%install |
73 |
PYTHONDONTWRITEBYTECODE= %__python setup.py install --root=%{buildroot} |
74 |
%__mkdir -p %{buildroot}%{_datadir}/emacs/site-lisp/ |
75 |
%__install -m 644 docs/emacs/ipython.el* %{buildroot}%{_datadir}/emacs/site-lisp/ |
76 |
chmod 644 %{buildroot}%{_mandir}/man1/*.1* |
77 |
find %{buildroot} -name .buildinfo -exec rm -f {} \; |
78 |
find %{buildroot} -name .git_commit_info.ini -exec rm -rf {} \; |
79 |
|
80 |
%files |
81 |
%doc examples |
82 |
%{_bindir}/* |
83 |
%{py_sitedir}/* |
84 |
%{_datadir}/emacs/site-lisp/* |
85 |
%{_mandir}/man1/* |