##// END OF EJS Templates
removed references to h5py dependence
Cavendish McKay -
Show More
@@ -1,371 +1,371 b''
1 1 {
2 2 "metadata": {
3 3 "name": "octavemagic_extension"
4 4 },
5 5 "nbformat": 3,
6 6 "nbformat_minor": 0,
7 7 "worksheets": [
8 8 {
9 9 "cells": [
10 10 {
11 11 "cell_type": "heading",
12 12 "level": 1,
13 13 "metadata": {},
14 14 "source": [
15 15 "octavemagic: Octave inside IPython"
16 16 ]
17 17 },
18 18 {
19 19 "cell_type": "heading",
20 20 "level": 2,
21 21 "metadata": {},
22 22 "source": [
23 23 "Installation"
24 24 ]
25 25 },
26 26 {
27 27 "cell_type": "markdown",
28 28 "metadata": {},
29 29 "source": [
30 "The `octavemagic` extension provides the ability to interact with Octave. It depends on the `oct2py` and `h5py` packages,\n",
30 "The `octavemagic` extension provides the ability to interact with Octave. It depends on the `oct2py` package,\n",
31 31 "which may be installed using `easy_install`.\n",
32 32 "\n",
33 33 "To enable the extension, load it as follows:"
34 34 ]
35 35 },
36 36 {
37 37 "cell_type": "code",
38 38 "collapsed": false,
39 39 "input": [
40 40 "%load_ext octavemagic"
41 41 ],
42 42 "language": "python",
43 43 "metadata": {},
44 44 "outputs": [],
45 45 "prompt_number": 18
46 46 },
47 47 {
48 48 "cell_type": "heading",
49 49 "level": 2,
50 50 "metadata": {},
51 51 "source": [
52 52 "Overview"
53 53 ]
54 54 },
55 55 {
56 56 "cell_type": "markdown",
57 57 "metadata": {},
58 58 "source": [
59 59 "Loading the extension enables three magic functions: `%octave`, `%octave_push`, and `%octave_pull`.\n",
60 60 "\n",
61 61 "The first is for executing one or more lines of Octave, while the latter allow moving variables between the Octave and Python workspace.\n",
62 62 "Here you see an example of how to execute a single line of Octave, and how to transfer the generated value back to Python:"
63 63 ]
64 64 },
65 65 {
66 66 "cell_type": "code",
67 67 "collapsed": false,
68 68 "input": [
69 69 "x = %octave [1 2; 3 4];\n",
70 70 "x"
71 71 ],
72 72 "language": "python",
73 73 "metadata": {},
74 74 "outputs": [
75 75 {
76 76 "output_type": "pyout",
77 77 "prompt_number": 19,
78 78 "text": [
79 79 "array([[ 1., 2.],\n",
80 80 " [ 3., 4.]])"
81 81 ]
82 82 }
83 83 ],
84 84 "prompt_number": 19
85 85 },
86 86 {
87 87 "cell_type": "code",
88 88 "collapsed": false,
89 89 "input": [
90 90 "a = [1, 2, 3]\n",
91 91 "\n",
92 92 "%octave_push a\n",
93 93 "%octave a = a * 2;\n",
94 94 "%octave_pull a\n",
95 95 "a"
96 96 ],
97 97 "language": "python",
98 98 "metadata": {},
99 99 "outputs": [
100 100 {
101 101 "output_type": "pyout",
102 102 "prompt_number": 20,
103 103 "text": [
104 104 "array([[2, 4, 6]])"
105 105 ]
106 106 }
107 107 ],
108 108 "prompt_number": 20
109 109 },
110 110 {
111 111 "cell_type": "markdown",
112 112 "metadata": {},
113 113 "source": [
114 114 "When using the cell magic, `%%octave` (note the double `%`), multiple lines of Octave can be executed together. Unlike\n",
115 115 "with the single cell magic, no value is returned, so we use the `-i` and `-o` flags to specify input and output variables."
116 116 ]
117 117 },
118 118 {
119 119 "cell_type": "code",
120 120 "collapsed": false,
121 121 "input": [
122 122 "%%octave -i x -o y\n",
123 123 "y = x + 3;"
124 124 ],
125 125 "language": "python",
126 126 "metadata": {},
127 127 "outputs": [],
128 128 "prompt_number": 21
129 129 },
130 130 {
131 131 "cell_type": "code",
132 132 "collapsed": false,
133 133 "input": [
134 134 "y"
135 135 ],
136 136 "language": "python",
137 137 "metadata": {},
138 138 "outputs": [
139 139 {
140 140 "output_type": "pyout",
141 141 "prompt_number": 22,
142 142 "text": [
143 143 "array([[ 4., 5.],\n",
144 144 " [ 6., 7.]])"
145 145 ]
146 146 }
147 147 ],
148 148 "prompt_number": 22
149 149 },
150 150 {
151 151 "cell_type": "heading",
152 152 "level": 2,
153 153 "metadata": {},
154 154 "source": [
155 155 "Plotting"
156 156 ]
157 157 },
158 158 {
159 159 "cell_type": "markdown",
160 160 "metadata": {},
161 161 "source": [
162 162 "Plot output is automatically captured and displayed, and using the `-f` flag you may choose its format (currently, `png` and `svg` are supported)."
163 163 ]
164 164 },
165 165 {
166 166 "cell_type": "code",
167 167 "collapsed": false,
168 168 "input": [
169 169 "%%octave -f svg\n",
170 170 "\n",
171 171 "p = [12 -2.5 -8 -0.1 8];\n",
172 172 "x = 0:0.01:1;\n",
173 173 "\n",
174 174 "polyout(p, 'x')\n",
175 175 "plot(x, polyval(p, x));"
176 176 ],
177 177 "language": "python",
178 178 "metadata": {},
179 179 "outputs": [
180 180 {
181 181 "output_type": "display_data",
182 182 "text": [
183 183 "12*x^4 - 2.5*x^3 - 8*x^2 - 0.1*x^1 + 8"
184 184 ]
185 185 },
186 186 {
187 187 "output_type": "display_data",
188 188 "svg": [
189 189 "<svg height=\"240px\" viewBox=\"0 0 192 115\" width=\"400px\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
190 190 "\n",
191 191 "<desc>Produced by GNUPLOT 4.4 patchlevel 0 </desc>\n",
192 192 "\n",
193 193 "<defs>\n",
194 194 "\n",
195 195 "\t<circle id=\"gpDot\" r=\"0.5\" stroke-width=\"0.5\"/>\n",
196 196 "\t<path d=\"M-1,0 h2 M0,-1 v2\" id=\"gpPt0\" stroke=\"currentColor\" stroke-width=\"0.333\"/>\n",
197 197 "\t<path d=\"M-1,-1 L1,1 M1,-1 L-1,1\" id=\"gpPt1\" stroke=\"currentColor\" stroke-width=\"0.333\"/>\n",
198 198 "\t<path d=\"M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1\" id=\"gpPt2\" stroke=\"currentColor\" stroke-width=\"0.333\"/>\n",
199 199 "\t<rect height=\"2\" id=\"gpPt3\" stroke=\"currentColor\" stroke-width=\"0.333\" width=\"2\" x=\"-1\" y=\"-1\"/>\n",
200 200 "\t<rect fill=\"currentColor\" height=\"2\" id=\"gpPt4\" stroke=\"currentColor\" stroke-width=\"0.333\" width=\"2\" x=\"-1\" y=\"-1\"/>\n",
201 201 "\t<circle cx=\"0\" cy=\"0\" id=\"gpPt5\" r=\"1\" stroke=\"currentColor\" stroke-width=\"0.333\"/>\n",
202 202 "\t<use fill=\"currentColor\" id=\"gpPt6\" stroke=\"none\" xlink:href=\"#gpPt5\"/>\n",
203 203 "\t<path d=\"M0,-1.33 L-1.33,0.67 L1.33,0.67 z\" id=\"gpPt7\" stroke=\"currentColor\" stroke-width=\"0.333\"/>\n",
204 204 "\t<use fill=\"currentColor\" id=\"gpPt8\" stroke=\"none\" xlink:href=\"#gpPt7\"/>\n",
205 205 "\t<use id=\"gpPt9\" stroke=\"currentColor\" transform=\"rotate(180)\" xlink:href=\"#gpPt7\"/>\n",
206 206 "\t<use fill=\"currentColor\" id=\"gpPt10\" stroke=\"none\" xlink:href=\"#gpPt9\"/>\n",
207 207 "\t<use id=\"gpPt11\" stroke=\"currentColor\" transform=\"rotate(45)\" xlink:href=\"#gpPt3\"/>\n",
208 208 "\t<use fill=\"currentColor\" id=\"gpPt12\" stroke=\"none\" xlink:href=\"#gpPt11\"/>\n",
209 209 "</defs>\n",
210 210 "<g style=\"fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter\">\n",
211 211 "</g>\n",
212 212 "<g style=\"fill:none; color:white; stroke:currentColor; stroke-width:0.50; stroke-linecap:butt; stroke-linejoin:miter\">\n",
213 213 "</g>\n",
214 214 "<g style=\"fill:none; color:black; stroke:currentColor; stroke-width:0.50; stroke-linecap:butt; stroke-linejoin:miter\">\n",
215 215 "\t<path d=\"M36.4,91.2 L44.8,91.2 M177.9,91.2 L169.5,91.2 \"/>\n",
216 216 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,94.2)\">\n",
217 217 "\t\t<text><tspan>6</tspan>\n",
218 218 "\t\t</text>\n",
219 219 "\t</g>\n",
220 220 "\t<path d=\"M36.4,79.8 L44.8,79.8 M177.9,79.8 L169.5,79.8 \"/>\n",
221 221 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,82.8)\">\n",
222 222 "\t\t<text><tspan>6.5</tspan>\n",
223 223 "\t\t</text>\n",
224 224 "\t</g>\n",
225 225 "\t<path d=\"M36.4,68.4 L44.8,68.4 M177.9,68.4 L169.5,68.4 \"/>\n",
226 226 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,71.4)\">\n",
227 227 "\t\t<text><tspan>7</tspan>\n",
228 228 "\t\t</text>\n",
229 229 "\t</g>\n",
230 230 "\t<path d=\"M36.4,57.0 L44.8,57.0 M177.9,57.0 L169.5,57.0 \"/>\n",
231 231 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,60.0)\">\n",
232 232 "\t\t<text><tspan>7.5</tspan>\n",
233 233 "\t\t</text>\n",
234 234 "\t</g>\n",
235 235 "\t<path d=\"M36.4,45.5 L44.8,45.5 M177.9,45.5 L169.5,45.5 \"/>\n",
236 236 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,48.5)\">\n",
237 237 "\t\t<text><tspan>8</tspan>\n",
238 238 "\t\t</text>\n",
239 239 "\t</g>\n",
240 240 "\t<path d=\"M36.4,34.1 L44.8,34.1 M177.9,34.1 L169.5,34.1 \"/>\n",
241 241 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,37.1)\">\n",
242 242 "\t\t<text><tspan>8.5</tspan>\n",
243 243 "\t\t</text>\n",
244 244 "\t</g>\n",
245 245 "\t<path d=\"M36.4,22.7 L44.8,22.7 M177.9,22.7 L169.5,22.7 \"/>\n",
246 246 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,25.7)\">\n",
247 247 "\t\t<text><tspan>9</tspan>\n",
248 248 "\t\t</text>\n",
249 249 "\t</g>\n",
250 250 "\t<path d=\"M36.4,11.3 L44.8,11.3 M177.9,11.3 L169.5,11.3 \"/>\n",
251 251 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:end\" transform=\"translate(30.8,14.3)\">\n",
252 252 "\t\t<text><tspan>9.5</tspan>\n",
253 253 "\t\t</text>\n",
254 254 "\t</g>\n",
255 255 "\t<path d=\"M36.4,91.2 L36.4,82.8 M36.4,11.3 L36.4,19.7 \"/>\n",
256 256 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(36.4,106.2)\">\n",
257 257 "\t\t<text><tspan>0</tspan>\n",
258 258 "\t\t</text>\n",
259 259 "\t</g>\n",
260 260 "\t<path d=\"M64.7,91.2 L64.7,82.8 M64.7,11.3 L64.7,19.7 \"/>\n",
261 261 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(64.7,106.2)\">\n",
262 262 "\t\t<text><tspan>0.2</tspan>\n",
263 263 "\t\t</text>\n",
264 264 "\t</g>\n",
265 265 "\t<path d=\"M93.0,91.2 L93.0,82.8 M93.0,11.3 L93.0,19.7 \"/>\n",
266 266 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(93.0,106.2)\">\n",
267 267 "\t\t<text><tspan>0.4</tspan>\n",
268 268 "\t\t</text>\n",
269 269 "\t</g>\n",
270 270 "\t<path d=\"M121.3,91.2 L121.3,82.8 M121.3,11.3 L121.3,19.7 \"/>\n",
271 271 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(121.3,106.2)\">\n",
272 272 "\t\t<text><tspan>0.6</tspan>\n",
273 273 "\t\t</text>\n",
274 274 "\t</g>\n",
275 275 "\t<path d=\"M149.6,91.2 L149.6,82.8 M149.6,11.3 L149.6,19.7 \"/>\n",
276 276 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(149.6,106.2)\">\n",
277 277 "\t\t<text><tspan>0.8</tspan>\n",
278 278 "\t\t</text>\n",
279 279 "\t</g>\n",
280 280 "\t<path d=\"M177.9,91.2 L177.9,82.8 M177.9,11.3 L177.9,19.7 \"/>\n",
281 281 "\t<g style=\"stroke:none; fill:rgb(0,0,0); font-family:{}; font-size:10.00pt; text-anchor:middle\" transform=\"translate(177.9,106.2)\">\n",
282 282 "\t\t<text><tspan>1</tspan>\n",
283 283 "\t\t</text>\n",
284 284 "\t</g>\n",
285 285 "\t<path d=\"M36.4,11.3 L36.4,91.2 L177.9,91.2 L177.9,11.3 L36.4,11.3 Z \"/>\n",
286 286 "</g>\n",
287 287 "\t<a xlink:title=\"Plot #1\">\n",
288 288 "<g style=\"fill:none; color:red; stroke:currentColor; stroke-width:0.50; stroke-linecap:butt; stroke-linejoin:miter\">\n",
289 289 "\t<path d=\"M36.4,45.5 L37.8,45.6 L39.2,45.7 L40.6,45.8 L42.1,45.9 L43.5,46.1 L44.9,46.3 L46.3,46.6 L47.7,46.9 L49.1,47.3 L50.6,47.6 L52.0,48.0 L53.4,48.5 L54.8,49.0 L56.2,49.5 L57.6,50.0 L59.0,50.6 L60.5,51.3 L61.9,51.9 L63.3,52.6 L64.7,53.3 L66.1,54.1 L67.5,54.9 L68.9,55.7 L70.4,56.5 L71.8,57.3 L73.2,58.2 L74.6,59.1 L76.0,60.1 L77.4,61.0 L78.9,62.0 L80.3,63.0 L81.7,64.0 L83.1,65.0 L84.5,66.0 L85.9,67.0 L87.3,68.1 L88.8,69.1 L90.2,70.2 L91.6,71.3 L93.0,72.3 L94.4,73.4 L95.8,74.4 L97.2,75.5 L98.7,76.5 L100.1,77.5 L101.5,78.5 L102.9,79.5 L104.3,80.5 L105.7,81.4 L107.2,82.4 L108.6,83.2 L110.0,84.1 L111.4,84.9 L112.8,85.7 L114.2,86.5 L115.6,87.2 L117.1,87.8 L118.5,88.4 L119.9,89.0 L121.3,89.5 L122.7,89.9 L124.1,90.3 L125.5,90.6 L127.0,90.8 L128.4,91.0 L129.8,91.0 L131.2,91.0 L132.6,90.9 L134.0,90.7 L135.5,90.4 L136.9,90.0 L138.3,89.5 L139.7,88.9 L141.1,88.2 L142.5,87.4 L143.9,86.4 L145.4,85.3 L146.8,84.1 L148.2,82.8 L149.6,81.3 L151.0,79.6 L152.4,77.8 L153.8,75.9 L155.3,73.8 L156.7,71.5 L158.1,69.0 L159.5,66.4 L160.9,63.6 L162.3,60.6 L163.8,57.4 L165.2,54.0 L166.6,50.4 L168.0,46.6 L169.4,42.6 L170.8,38.3 L172.2,33.9 L173.7,29.2 L175.1,24.2 L176.5,19.0 L177.9,13.6 \" stroke=\"rgb( 0, 0, 255)\"/>\n",
290 290 "</g>\n",
291 291 "\t</a>\n",
292 292 "<g style=\"fill:none; color:black; stroke:currentColor; stroke-width:0.50; stroke-linecap:butt; stroke-linejoin:miter\">\n",
293 293 "</g>\n",
294 294 "</svg>"
295 295 ]
296 296 }
297 297 ],
298 298 "prompt_number": 23
299 299 },
300 300 {
301 301 "cell_type": "markdown",
302 302 "metadata": {},
303 303 "source": [
304 304 "The plot size is adjusted using the `-s` flag:"
305 305 ]
306 306 },
307 307 {
308 308 "cell_type": "code",
309 309 "collapsed": false,
310 310 "input": [
311 311 "%%octave -s 500,500\n",
312 312 "\n",
313 313 "# butterworth filter, order 2, cutoff pi/2 radians\n",
314 314 "b = [0.292893218813452 0.585786437626905 0.292893218813452];\n",
315 315 "a = [1 0 0.171572875253810];\n",
316 316 "freqz(b, a, 32);"
317 317 ],
318 318 "language": "python",
319 319 "metadata": {},
320 320 "outputs": [
321 321 {
322 322 "output_type": "display_data",
323 323 "png": "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\n"
324 324 }
325 325 ],
326 326 "prompt_number": 24
327 327 },
328 328 {
329 329 "cell_type": "code",
330 330 "collapsed": false,
331 331 "input": [
332 332 "%%octave -s 600,200 -f png\n",
333 333 "\n",
334 334 "subplot(121);\n",
335 335 "[x, y] = meshgrid(0:0.1:3);\n",
336 336 "r = sin(x - 0.5).^2 + cos(y - 0.5).^2;\n",
337 337 "surf(x, y, r);\n",
338 338 "\n",
339 339 "subplot(122);\n",
340 340 "sombrero()"
341 341 ],
342 342 "language": "python",
343 343 "metadata": {},
344 344 "outputs": [
345 345 {
346 346 "output_type": "display_data",
347 347 "png": "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\nUzfATHmCZdmtW7f+/fffe/fulUgk9+/fd3Z27tev39y5c03dNDNmTMnu3bt//fXXc+fOPXz4MC8v\nr2LFitWrV583b55UKjV108z8O2aL0My/o9PpBg4c2LJly8DAwJ9++qlNmzYJCQnx8fFNmjSJi4vT\n6XReXl4RERHmUbCZ/xR6vf7LL78MCAho3LjxypUrK1eurNFobt++XadOnbi4OA8Pj7Zt24aGhur1\nelO31My/YBZCM2+HZVm1Wt20aVMvLy+VSlWhQoX//e9/cXFxR48e7dmzJ38YwzAHDhy4cOHCs2fP\nvL29zXJo5qMnNja2U6dOFStWDA0Nff78+axZs+Li4jQazfTp0xmG4Q9bsmRJUlKSTCZr0aJF//79\ndTqdCdts5v0Q88a8Zgqi1Wq1Wu2mTZtcXV07d+7cvHnz7t27v+vgwMBAjUZTsEStVs+ZM8fX1zc6\nOto8KWTmo0Gn02m12nXr1qWmpn7xxRe+vr6DBw9+18Fv9gutVjtr1qy7d+9+//33crm8xJtrppCY\nhdAM9Ho9p38nT55s27Ztr1695HJ5wbHtu3izw3PMnz9/3bp1/v7+U6dO9fPzK4EmmzFT4rAsy/WL\nX3/9tWLFioMHD5bL5R8yvHtXv9i8efOmTZsyMjLCwsIGDhxYAk02U0TMQvjfZeXKlbzbS/fu3UNC\nQmQyWaFqeFeH5+tfuXJl3bp1FQqFeRRsprxw7Nix7du3c24vLVu2HDZsWGGf3vf3iwsXLkyZMkWv\n1yuVSoVCUez2mjECZiH8b6HT6ZYuXZqYmHj//v0qVaoMGjToPTM8/8r7OzyHVqsdNWqUlZXV4sWL\nzXJopmyi1+vXr19/6tSp27dve3p6duzYceTIkR8yKfJWPqRf6PX6cePGnT59ev78+WY5NDnm8ImP\nH5ZlY2Nj169fn56e7uvr6+npOXv27FJbwJPL5Tdu3NDpdGq1esiQIZMmTZowYULp/LQZM+8nNjZ2\n69at165dq1KlSq1atWbNmhUQEFA6Py2VSvft28eyrEqlcnFx6dat25IlS4osvWaKidki/GjR6XSx\nsbG820vdunWNvizxISPfgly4cGH58uUnTpwwhx6aMRWc28vWrVuTk5O/+OKLypUr9+/f37gKVNh+\nwbLs9OnTDx069Mknn6xatcosh6WP2SL8qHjN7SUgIODatWtlp1/5+flt2LBBr9ePHj26fv36AwYM\n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\n"
348 348 }
349 349 ],
350 350 "prompt_number": 25
351 351 },
352 352 {
353 353 "cell_type": "heading",
354 354 "level": 2,
355 355 "metadata": {},
356 356 "source": [
357 357 "Future work"
358 358 ]
359 359 },
360 360 {
361 361 "cell_type": "markdown",
362 362 "metadata": {},
363 363 "source": [
364 364 "After the next release of `oct2py`, we'll add the ability to interrupt/kill the current Octave session without restarting the Python kernel."
365 365 ]
366 366 }
367 367 ],
368 368 "metadata": {}
369 369 }
370 370 ]
371 371 } No newline at end of file
@@ -1,674 +1,673 b''
1 1 =============
2 2 0.13 Series
3 3 =============
4 4
5 5 Release 0.13
6 6 ============
7 7
8 8 IPython 0.13 contains several major new features, as well as a large amount of
9 9 bug and regression fixes. The previous version (0.12) was released on December
10 10 19 2011, and in this development cycle we had:
11 11
12 12 - ~6 months of work.
13 13 - 373 pull requests merged.
14 14 - 742 issues closed (non-pull requests).
15 15 - contributions from 62 authors.
16 16 - 1760 commits.
17 17 - a diff of 114226 lines.
18 18
19 19 The amount of work included in this release is so large, that we can only cover
20 20 here the main highlights; please see our :ref:`detailed release statistics
21 21 <issues_list_013>` for links to every issue and pull request closed on GitHub
22 22 as well as a full list of individual contributors.
23 23
24 24
25 25 Major Notebook improvements: new user interface and more
26 26 --------------------------------------------------------
27 27
28 28 The IPython Notebook, which has proven since its release to be wildly popular,
29 29 has seen a massive amount of work in this release cycle, leading to a
30 30 significantly improved user experience as well as many new features.
31 31
32 32 The first user-visible change is a reorganization of the user interface; the
33 33 left panel has been removed and was replaced by a real menu system and a
34 34 toolbar with icons. Both the toolbar and the header above the menu can be
35 35 collapsed to leave an unobstructed working area:
36 36
37 37 .. image:: ../_static/ipy_013_notebook_spectrogram.png
38 38 :width: 460px
39 39 :alt: New user interface for Notebook
40 40 :align: center
41 41 :target: ../_static/ipy_013_notebook_spectrogram.png
42 42
43 43 The notebook handles very long outputs much better than before (this was a
44 44 serious usability issue when running processes that generated massive amounts
45 45 of output). Now, in the presence of outputs longer than ~100 lines, the
46 46 notebook will automatically collapse to a scrollable area and the entire left
47 47 part of this area controls the display: one click in this area will expand the
48 48 output region completely, and a double-click will hide it completely. This
49 49 figure shows both the scrolled and hidden modes:
50 50
51 51 .. image:: ../_static/ipy_013_notebook_long_out.png
52 52 :width: 460px
53 53 :alt: Scrolling and hiding of long output in the notebook.
54 54 :align: center
55 55 :target: ../_static/ipy_013_notebook_long_out.png
56 56
57 57 .. note::
58 58
59 59 The auto-folding of long outputs is disabled in Firefox due to bugs in its
60 60 scrolling behavior. See :ghpull:`2047` for details.
61 61
62 62 Uploading notebooks to the dashboard is now easier: in addition to drag and
63 63 drop (which can be finicky sometimes), you can now click on the upload text and
64 64 use a regular file dialog box to select notebooks to upload. Furthermore, the
65 65 notebook dashboard now auto-refreshes its contents and offers buttons to shut
66 66 down any running kernels (:ghpull:`1739`):
67 67
68 68 .. image:: ../_static/ipy_013_dashboard.png
69 69 :width: 460px
70 70 :alt: Improved dashboard
71 71 :align: center
72 72 :target: ../_static/ipy_013_dashboard.png
73 73
74 74
75 75 Cluster management
76 76 ~~~~~~~~~~~~~~~~~~
77 77
78 78 The notebook dashboard can now also start and stop clusters, thansk to a new
79 79 tab in the dashboard user interface:
80 80
81 81 .. image:: ../_static/ipy_013_dashboard_cluster.png
82 82 :width: 460px
83 83 :alt: Cluster management from the notebook dashboard
84 84 :align: center
85 85 :target: ../_static/ipy_013_dashboard_cluster.png
86 86
87 87 This interface allows, for each profile you have configured, to start and stop
88 88 a cluster (and optionally override the default number of engines corresponding
89 89 to that configuration). While this hides all error reporting, once you have a
90 90 configuration that you know works smoothly, it is a very convenient interface
91 91 for controlling your parallel resources.
92 92
93 93
94 94 New notebook format
95 95 ~~~~~~~~~~~~~~~~~~~
96 96
97 97 The notebooks saved now use version 3 of our format, which supports heading
98 98 levels as well as the concept of 'raw' text cells that are not rendered as
99 99 Markdown. These will be useful with converters_ we are developing, to pass raw
100 100 markup (say LaTeX). That conversion code is still under heavy development and
101 101 not quite ready for prime time, but we welcome help on this front so that we
102 102 can merge it for full production use as soon as possible.
103 103
104 104 .. _converters: https://github.com/ipython/nbconvert
105 105
106 106 .. note::
107 107
108 108 v3 notebooks can *not* be read by older versions of IPython, but we provide
109 109 a `simple script`_ that you can use in case you need to export a v3
110 110 notebook to share with a v2 user.
111 111
112 112 .. _simple script: https://gist.github.com/1935808
113 113
114 114
115 115 JavaScript refactoring
116 116 ~~~~~~~~~~~~~~~~~~~~~~
117 117
118 118 All the client-side JavaScript has been decoupled to ease reuse of parts of the
119 119 machinery without having to build a full-blown notebook. This will make it much
120 120 easier to communicate with an IPython kernel from existing web pages and to
121 121 integrate single cells into other sites, without loading the full notebook
122 122 document-like UI. :ghpull:`1711`.
123 123
124 124 This refactoring also enables the possibility of writing dynamic javascript
125 125 widgets that are returned from Python code and that present an interactive view
126 126 to the user, with callbacks in Javascript executing calls to the Kernel. This
127 127 will enable many interactive elements to be added by users in notebooks.
128 128
129 129 An example of this capability has been provided as a proof of concept in
130 130 :file:`docs/examples/widgets` that lets you directly communicate with one or more
131 131 parallel engines, acting as a mini-console for parallel debugging and
132 132 introspection.
133 133
134 134
135 135 Improved tooltips
136 136 ~~~~~~~~~~~~~~~~~
137 137
138 138 The object tooltips have gained some new functionality. By pressing tab several
139 139 times, you can expand them to see more of a docstring, keep them visible as you
140 140 fill in a function's parameters, or transfer the information to the pager at the
141 141 bottom of the screen. For the details, look at the example notebook
142 142 :file:`01_notebook_introduction.ipynb`.
143 143
144 144 .. figure:: ../_static/ipy_013_notebook_tooltip.png
145 145 :width: 460px
146 146 :alt: Improved tooltips in the notebook.
147 147 :align: center
148 148 :target: ../_static/ipy_013_notebook_tooltip.png
149 149
150 150 The new notebook tooltips.
151 151
152 152 Other improvements to the Notebook
153 153 ----------------------------------
154 154
155 155 These are some other notable small improvements to the notebook, in addition to
156 156 many bug fixes and minor changes to add polish and robustness throughout:
157 157
158 158 * The notebook pager (the area at the bottom) is now resizeable by dragging its
159 159 divider handle, a feature that had been requested many times by just about
160 160 anyone who had used the notebook system. :ghpull:`1705`.
161 161
162 162 * It is now possible to open notebooks directly from the command line; for
163 163 example: ``ipython notebook path/`` will automatically set ``path/`` as the
164 164 notebook directory, and ``ipython notebook path/foo.ipynb`` will further
165 165 start with the ``foo.ipynb`` notebook opened. :ghpull:`1686`.
166 166
167 167 * If a notebook directory is specified with ``--notebook-dir`` (or with the
168 168 corresponding configuration flag ``NotebookManager.notebook_dir``), all
169 169 kernels start in this directory.
170 170
171 171 * Fix codemirror clearing of cells with ``Ctrl-Z``; :ghpull:`1965`.
172 172
173 173 * Text (markdown) cells now line wrap correctly in the notebook, making them
174 174 much easier to edit :ghpull:`1330`.
175 175
176 176 * PNG and JPEG figures returned from plots can be interactively resized in the
177 177 notebook, by dragging them from their lower left corner. :ghpull:`1832`.
178 178
179 179 * Clear ``In []`` prompt numbers on "Clear All Output". For more
180 180 version-control-friendly ``.ipynb`` files, we now strip all prompt numbers
181 181 when doing a "Clear all output". This reduces the amount of noise in
182 182 commit-to-commit diffs that would otherwise show the (highly variable) prompt
183 183 number changes. :ghpull:`1621`.
184 184
185 185 * The notebook server now requires *two* consecutive ``Ctrl-C`` within 5
186 186 seconds (or an interactive confirmation) to terminate operation. This makes
187 187 it less likely that you will accidentally kill a long-running server by
188 188 typing ``Ctrl-C`` in the wrong terminal. :ghpull:`1609`.
189 189
190 190 * Using ``Ctrl-S`` (or ``Cmd-S`` on a Mac) actually saves the notebook rather
191 191 than providing the fairly useless browser html save dialog. :ghpull:`1334`.
192 192
193 193 * Allow accessing local files from the notebook (in urls), by serving any local
194 194 file as the url ``files/<relativepath>``. This makes it possible to, for
195 195 example, embed local images in a notebook. :ghpull:`1211`.
196 196
197 197
198 198 Cell magics
199 199 -----------
200 200
201 201 We have completely refactored the magic system, finally moving the magic
202 202 objects to standalone, independent objects instead of being the mixin class
203 203 we'd had since the beginning of IPython (:ghpull:`1732`). Now, a separate base
204 204 class is provided in :class:`IPython.core.magic.Magics` that users can subclass
205 205 to create their own magics. Decorators are also provided to create magics from
206 206 simple functions without the need for object orientation. Please see the
207 207 :ref:`magic` docs for further details.
208 208
209 209 All builtin magics now exist in a few subclasses that group together related
210 210 functionality, and the new :mod:`IPython.core.magics` package has been created
211 211 to organize this into smaller files.
212 212
213 213 This cleanup was the last major piece of deep refactoring needed from the
214 214 original 2001 codebase.
215 215
216 216 We have also introduced a new type of magic function, prefixed with `%%`
217 217 instead of `%`, which operates at the whole-cell level. A cell magic receives
218 218 two arguments: the line it is called on (like a line magic) and the body of the
219 219 cell below it.
220 220
221 221 Cell magics are most natural in the notebook, but they also work in the
222 222 terminal and qt console, with the usual approach of using a blank line to
223 223 signal cell termination.
224 224
225 225 For example, to time the execution of several statements::
226 226
227 227 %%timeit x = 0 # setup
228 228 for i in range(100000):
229 229 x += i**2
230 230
231 231 This is particularly useful to integrate code in another language, and cell
232 232 magics already exist for shell scripts, Cython, R and Octave. Using ``%%script
233 233 /usr/bin/foo``, you can run a cell in any interpreter that accepts code via
234 234 stdin.
235 235
236 236 Another handy cell magic makes it easy to write short text files: ``%%file
237 237 ~/save/to/here.txt``.
238 238
239 239 The following cell magics are now included by default; all those that use
240 240 special interpreters (Perl, Ruby, bash, etc.) assume you have the requisite
241 241 interpreter installed:
242 242
243 243 * ``%%!``: run cell body with the underlying OS shell; this is similar to
244 244 prefixing every line in the cell with ``!``.
245 245
246 246 * ``%%bash``: run cell body under bash.
247 247
248 248 * ``%%capture``: capture the output of the code in the cell (and stderr as
249 249 well). Useful to run codes that produce too much output that you don't even
250 250 want scrolled.
251 251
252 252 * ``%%file``: save cell body as a file.
253 253
254 254 * ``%%perl``: run cell body using Perl.
255 255
256 256 * ``%%prun``: run cell body with profiler (cell extension of ``%prun``).
257 257
258 258 * ``%%python3``: run cell body using Python 3.
259 259
260 260 * ``%%ruby``: run cell body using Ruby.
261 261
262 262 * ``%%script``: run cell body with the script specified in the first line.
263 263
264 264 * ``%%sh``: run cell body using sh.
265 265
266 266 * ``%%sx``: run cell with system shell and capture process output (cell
267 267 extension of ``%sx``).
268 268
269 269 * ``%%system``: run cell with system shell (``%%!`` is an alias to this).
270 270
271 271 * ``%%timeit``: time the execution of the cell (extension of ``%timeit``).
272 272
273 273 This is what some of the script-related magics look like in action:
274 274
275 275 .. image:: ../_static/ipy_013_notebook_script_cells.png
276 276 :width: 460px
277 277 :alt: Cluster management from the notebook dashboard
278 278 :align: center
279 279 :target: ../_static/ipy_013_notebook_script_cells.png
280 280
281 281 In addition, we have also a number of :ref:`extensions <extensions_overview>`
282 282 that provide specialized magics. These typically require additional software
283 283 to run and must be manually loaded via ``%load_ext <extension name>``, but are
284 284 extremely useful. The following extensions are provided:
285 285
286 286 **Cython magics** (extension :ref:`cythonmagic <extensions_cythonmagic>`)
287 287 This extension provides magics to automatically build and compile Python
288 288 extension modules using the Cython_ language. You must install Cython
289 289 separately, as well as a C compiler, for this to work. The examples
290 290 directory in the source distribution ships with a full notebook
291 291 demonstrating these capabilities:
292 292
293 293 .. image:: ../_static/ipy_013_notebook_cythonmagic.png
294 294 :width: 460px
295 295 :alt: Cython magic
296 296 :align: center
297 297 :target: ../_static/ipy_013_notebook_cythonmagic.png
298 298
299 299 .. _cython: http://cython.org
300 300
301 301 **Octave magics** (extension :ref:`octavemagic <extensions_octavemagic>`)
302 302 This extension provides several magics that support calling code written in
303 303 the Octave_ language for numerical computing. You can execute single-lines
304 304 or whole blocks of Octave code, capture both output and figures inline
305 305 (just like matplotlib plots), and have variables automatically converted
306 306 between the two languages. To use this extension, you must have Octave
307 installed as well as the oct2py_ and h5py_ packages. The examples
307 installed as well as the oct2py_ package. The examples
308 308 directory in the source distribution ships with a full notebook
309 309 demonstrating these capabilities:
310 310
311 311 .. image:: ../_static/ipy_013_notebook_octavemagic.png
312 312 :width: 460px
313 313 :alt: Octave magic
314 314 :align: center
315 315 :target: ../_static/ipy_013_notebook_octavemagic.png
316 316
317 317 .. _octave: http://www.gnu.org/software/octave
318 318 .. _oct2py: http://pypi.python.org/pypi/oct2py
319 .. _h5py: http://code.google.com/p/h5py
320 319
321 320 **R magics** (extension :ref:`rmagic <extensions_rmagic>`)
322 321 This extension provides several magics that support calling code written in
323 322 the R_ language for statistical data analysis. You can execute
324 323 single-lines or whole blocks of R code, capture both output and figures
325 324 inline (just like matplotlib plots), and have variables automatically
326 325 converted between the two languages. To use this extension, you must have
327 326 R installed as well as the rpy2_ package that bridges Python and R. The
328 327 examples directory in the source distribution ships with a full notebook
329 328 demonstrating these capabilities:
330 329
331 330 .. image:: ../_static/ipy_013_notebook_rmagic.png
332 331 :width: 460px
333 332 :alt: R magic
334 333 :align: center
335 334 :target: ../_static/ipy_013_notebook_rmagic.png
336 335
337 336 .. _R: http://www.r-project.org
338 337 .. _rpy2: http://rpy.sourceforge.net/rpy2.html
339 338
340 339
341 340 Tab completer improvements
342 341 --------------------------
343 342
344 343 Useful tab-completion based on live inspection of objects is one of the most
345 344 popular features of IPython. To make this process even more user-friendly, the
346 345 completers of both the Qt console and the Notebook have been reworked.
347 346
348 347 The Qt console comes with a new ncurses-like tab completer, activated by
349 348 default, which lets you cycle through the available completions by pressing tab,
350 349 or select a completion with the arrow keys (:ghpull:`1851`).
351 350
352 351 .. figure:: ../_static/ipy_013_qtconsole_completer.png
353 352 :width: 460px
354 353 :alt: ncurses-like completer, with highlighted selection.
355 354 :align: center
356 355 :target: ../_static/ipy_013_qtconsole_completer.png
357 356
358 357 The new improved Qt console's ncurses-like completer allows to easily
359 358 navigate thought long list of completions.
360 359
361 360 In the notebook, completions are now sourced both from object introspection and
362 361 analysis of surrounding code, so limited completions can be offered for
363 362 variables defined in the current cell, or while the kernel is busy
364 363 (:ghpull:`1711`).
365 364
366 365
367 366 We have implemented a new configurable flag to control tab completion on
368 367 modules that provide the ``__all__`` attribute::
369 368
370 369 IPCompleter.limit_to__all__= Boolean
371 370
372 371 This instructs the completer to honor ``__all__`` for the completion.
373 372 Specifically, when completing on ``object.<tab>``, if True: only those names
374 373 in ``obj.__all__`` will be included. When False [default]: the ``__all__``
375 374 attribute is ignored. :ghpull:`1529`.
376 375
377 376
378 377 Improvements to the Qt console
379 378 ------------------------------
380 379
381 380 The Qt console continues to receive improvements and refinements, despite the
382 381 fact that it is by now a fairly mature and robust component. Lots of small
383 382 polish has gone into it, here are a few highlights:
384 383
385 384 * A number of changes were made to the underlying code for easier integration
386 385 into other projects such as Spyder_ (:ghpull:`2007`, :ghpull:`2024`).
387 386
388 387 * Improved menus with a new Magic menu that is organized by magic groups (this
389 388 was made possible by the reorganization of the magic system
390 389 internals). :ghpull:`1782`.
391 390
392 391 * Allow for restarting kernels without clearing the qtconsole, while leaving a
393 392 visible indication that the kernel has restarted. :ghpull:`1681`.
394 393
395 394 * Allow the native display of jpeg images in the qtconsole. :ghpull:`1643`.
396 395
397 396 .. _spyder: https://code.google.com/p/spyderlib
398 397
399 398
400 399
401 400 Parallel
402 401 --------
403 402
404 403 The parallel tools have been improved and fine-tuned on multiple fronts. Now,
405 404 the creation of an :class:`IPython.parallel.Client` object automatically
406 405 activates a line and cell magic function ``px`` that sends its code to all the
407 406 engines. Further magics can be easily created with the :meth:`.Client.activate`
408 407 method, to conveniently execute code on any subset of engines. :ghpull:`1893`.
409 408
410 409 The ``%%px`` cell magic can also be given an optional targets argument, as well
411 410 as a ``--out`` argument for storing its output.
412 411
413 412 A new magic has also been added, ``%pxconfig``, that lets you configure various
414 413 defaults of the parallel magics. As usual, type ``%pxconfig?`` for details.
415 414
416 415 The exception reporting in parallel contexts has been improved to be easier to
417 416 read. Now, IPython directly reports the remote exceptions without showing any
418 417 of the internal execution parts:
419 418
420 419 .. image:: ../_static/ipy_013_par_tb.png
421 420 :width: 460px
422 421 :alt: Improved parallel exceptions.
423 422 :align: center
424 423 :target: ../_static/ipy_013_par_tb.png
425 424
426 425 The parallel tools now default to using ``NoDB`` as the storage backend for
427 426 intermediate results. This means that the default usage case will have a
428 427 significantly reduced memory footprint, though certain advanced features are
429 428 not available with this backend. For more details, see :ref:`parallel_db`.
430 429
431 430 The parallel magics now display all output, so you can do parallel plotting or
432 431 other actions with complex display. The ``px`` magic has now both line and cell
433 432 modes, and in cell mode finer control has been added about how to collate
434 433 output from multiple engines. :ghpull:`1768`.
435 434
436 435 There have also been incremental improvements to the SSH launchers:
437 436
438 437 * add to_send/fetch steps for moving connection files around.
439 438
440 439 * add SSHProxyEngineSetLauncher, for invoking to `ipcluster engines` on a
441 440 remote host. This can be used to start a set of engines via PBS/SGE/MPI
442 441 *remotely*.
443 442
444 443 This makes the SSHLauncher usable on machines without shared filesystems.
445 444
446 445 A number of 'sugar' methods/properties were added to AsyncResult that are
447 446 quite useful (:ghpull:`1548`) for everday work:
448 447
449 448 * ``ar.wall_time`` = received - submitted
450 449 * ``ar.serial_time`` = sum of serial computation time
451 450 * ``ar.elapsed`` = time since submission (wall_time if done)
452 451 * ``ar.progress`` = (int) number of sub-tasks that have completed
453 452 * ``len(ar)`` = # of tasks
454 453 * ``ar.wait_interactive()``: prints progress
455 454
456 455 Added :meth:`.Client.spin_thread` / :meth:`~.Client.stop_spin_thread` for
457 456 running spin in a background thread, to keep zmq queue clear. This can be used
458 457 to ensure that timing information is as accurate as possible (at the cost of
459 458 having a background thread active).
460 459
461 460 Set TaskScheduler.hwm default to 1 instead of 0. 1 has more
462 461 predictable/intuitive behavior, if often slower, and thus a more logical
463 462 default. Users whose workloads require maximum throughput and are largely
464 463 homogeneous in time per task can make the optimization themselves, but now the
465 464 behavior will be less surprising to new users. :ghpull:`1294`.
466 465
467 466
468 467 Kernel/Engine unification
469 468 -------------------------
470 469
471 470 This is mostly work 'under the hood', but it is actually a *major* achievement
472 471 for the project that has deep implications in the long term: at last, we have
473 472 unified the main object that executes as the user's interactive shell (which we
474 473 refer to as the *IPython kernel*) with the objects that run in all the worker
475 474 nodes of the parallel computing facilities (the *IPython engines*). Ever since
476 475 the first implementation of IPython's parallel code back in 2006, we had wanted
477 476 to have these two roles be played by the same machinery, but a number of
478 477 technical reasons had prevented that from being true.
479 478
480 479 In this release we have now merged them, and this has a number of important
481 480 consequences:
482 481
483 482 * It is now possible to connect any of our clients (qtconsole or terminal
484 483 console) to any individual parallel engine, with the *exact* behavior of
485 484 working at a 'regular' IPython console/qtconsole. This makes debugging,
486 485 plotting, etc. in parallel scenarios vastly easier.
487 486
488 487 * Parallel engines can always execute arbitrary 'IPython code', that is, code
489 488 that has magics, shell extensions, etc. In combination with the ``%%px``
490 489 magics, it is thus extremely natural for example to send to all engines a
491 490 block of Cython or R code to be executed via the new Cython and R magics. For
492 491 example, this snippet would send the R block to all active engines in a
493 492 cluster::
494 493
495 494 %%px
496 495 %%R
497 496 ... R code goes here
498 497
499 498 * It is possible to embed not only an interactive shell with the
500 499 :func:`IPython.embed` call as always, but now you can also embed a *kernel*
501 500 with :func:`IPython.embed_kernel()`. Embedding an IPython kernel in an
502 501 application is useful when you want to use :func:`IPython.embed` but don't
503 502 have a terminal attached on stdin and stdout.
504 503
505 504 * The new :func:`IPython.parallel.bind_kernel` allows you to promote Engines to
506 505 listening Kernels, and connect QtConsoles to an Engine and debug it
507 506 directly.
508 507
509 508 In addition, having a single core object through our entire architecture also
510 509 makes the project conceptually cleaner, easier to maintain and more robust.
511 510 This took a lot of work to get in place, but we are thrilled to have this major
512 511 piece of architecture finally where we'd always wanted it to be.
513 512
514 513
515 514 Official Public API
516 515 -------------------
517 516
518 517 We have begun organizing our API for easier public use, with an eye towards an
519 518 official IPython 1.0 release which will firmly maintain this API compatible for
520 519 its entire lifecycle. There is now an :mod:`IPython.display` module that
521 520 aggregates all display routines, and the :mod:`IPython.config` namespace has
522 521 all public configuration tools. We will continue improving our public API
523 522 layout so that users only need to import names one level deeper than the main
524 523 ``IPython`` package to access all public namespaces.
525 524
526 525
527 526 IPython notebook file icons
528 527 ---------------------------
529 528
530 529 The directory ``docs/resources`` in the source distribution contains SVG and
531 530 PNG versions of our file icons, as well as an ``Info.plist.example`` file with
532 531 instructions to install them on Mac OSX. This is a first draft of our icons,
533 532 and we encourage contributions from users with graphic talent to improve them
534 533 in the future:
535 534
536 535 .. image:: ../../resources/ipynb_icon_128x128.png
537 536 :alt: IPython notebook file icon.
538 537
539 538
540 539 New top-level `locate` command
541 540 ------------------------------
542 541
543 542 Add `locate` entry points; these would be useful for quickly locating IPython
544 543 directories and profiles from other (non-Python) applications. :ghpull:`1762`.
545 544
546 545 Examples::
547 546
548 547 $> ipython locate
549 548 /Users/me/.ipython
550 549
551 550 $> ipython locate profile foo
552 551 /Users/me/.ipython/profile_foo
553 552
554 553 $> ipython locate profile
555 554 /Users/me/.ipython/profile_default
556 555
557 556 $> ipython locate profile dne
558 557 [ProfileLocate] Profile u'dne' not found.
559 558
560 559
561 560 Other new features and improvements
562 561 -----------------------------------
563 562
564 563 * **%install_ext**: A new magic function to install an IPython extension from
565 564 a URL. E.g. ``%install_ext
566 565 https://bitbucket.org/birkenfeld/ipython-physics/raw/default/physics.py``.
567 566
568 567 * The ``%loadpy`` magic is no longer restricted to Python files, and has been
569 568 renamed ``%load``. The old name remains as an alias.
570 569
571 570 * New command line arguments will help external programs find IPython folders:
572 571 ``ipython locate`` finds the user's IPython directory, and ``ipython locate
573 572 profile foo`` finds the folder for the 'foo' profile (if it exists).
574 573
575 574 * The :envvar:`IPYTHON_DIR` environment variable, introduced in the Great
576 575 Reorganization of 0.11 and existing only in versions 0.11-0.13, has been
577 576 deprecated. As described in :ghpull:`1167`, the complexity and confusion of
578 577 migrating to this variable is not worth the aesthetic improvement. Please use
579 578 the historical :envvar:`IPYTHONDIR` environment variable instead.
580 579
581 580 * The default value of *interactivity* passed from
582 581 :meth:`~IPython.core.interactiveshell.InteractiveShell.run_cell` to
583 582 :meth:`~IPython.core.interactiveshell.InteractiveShell.run_ast_nodes`
584 583 is now configurable.
585 584
586 585 * New ``%alias_magic`` function to conveniently create aliases of existing
587 586 magics, if you prefer to have shorter names for personal use.
588 587
589 588 * We ship unminified versions of the JavaScript libraries we use, to better
590 589 comply with Debian's packaging policies.
591 590
592 591 * Simplify the information presented by ``obj?/obj??`` to eliminate a few
593 592 redundant fields when possible. :ghpull:`2038`.
594 593
595 594 * Improved continuous integration for IPython. We now have automated test runs
596 595 on `Shining Panda <https://jenkins.shiningpanda.com/ipython>`_ and `Travis-CI
597 596 <http://travis-ci.org/#!/ipython/ipython>`_, as well as `Tox support
598 597 <http://tox.testrun.org>`_.
599 598
600 599 * The `vim-ipython`_ functionality (externally developed) has been updated to
601 600 the latest version.
602 601
603 602 .. _vim-ipython: https://github.com/ivanov/vim-ipython
604 603
605 604 * The ``%save`` magic now has a ``-f`` flag to force overwriting, which makes
606 605 it much more usable in the notebook where it is not possible to reply to
607 606 interactive questions from the kernel. :ghpull:`1937`.
608 607
609 608 * Use dvipng to format sympy.Matrix, enabling display of matrices in the Qt
610 609 console with the sympy printing extension. :ghpull:`1861`.
611 610
612 611 * Our messaging protocol now has a reasonable test suite, helping ensure that
613 612 we don't accidentally deviate from the spec and possibly break third-party
614 613 applications that may have been using it. We encourage users to contribute
615 614 more stringent tests to this part of the test suite. :ghpull:`1627`.
616 615
617 616 * Use LaTeX to display, on output, various built-in types with the SymPy
618 617 printing extension. :ghpull:`1399`.
619 618
620 619 * Add Gtk3 event loop integration and example. :ghpull:`1588`.
621 620
622 621 * ``clear_output`` improvements, which allow things like progress bars and other
623 622 simple animations to work well in the notebook (:ghpull:`1563`):
624 623
625 624 * `clear_output()` clears the line, even in terminal IPython, the QtConsole
626 625 and plain Python as well, by printing `\r` to streams.
627 626
628 627 * `clear_output()` avoids the flicker in the notebook by adding a delay,
629 628 and firing immediately upon the next actual display message.
630 629
631 630 * `display_javascript` hides its `output_area` element, so using display to
632 631 run a bunch of javascript doesn't result in ever-growing vertical space.
633 632
634 633 * Add simple support for running inside a virtualenv. While this doesn't
635 634 supplant proper installation (as users should do), it helps ad-hoc calling of
636 635 IPython from inside a virtualenv. :ghpull:`1388`.
637 636
638 637
639 638 Major Bugs fixed
640 639 ----------------
641 640
642 641 In this cycle, we have :ref:`closed over 740 issues <issues_list_013>`, but a
643 642 few major ones merit special mention:
644 643
645 644 * The ``%pastebin`` magic has been updated to point to gist.github.com, since
646 645 unfortunately http://paste.pocoo.org has closed down. We also added a -d flag
647 646 for the user to provide a gist description string. :ghpull:`1670`.
648 647
649 648 * Fix ``%paste`` that would reject certain valid inputs. :ghpull:`1258`.
650 649
651 650 * Fix sending and receiving of Numpy structured arrays (those with composite
652 651 dtypes, often used as recarrays). :ghpull:`2034`.
653 652
654 653 * Reconnect when the websocket connection closes unexpectedly. :ghpull:`1577`.
655 654
656 655 * Fix truncated representation of objects in the debugger by showing at least
657 656 80 characters' worth of information. :ghpull:`1793`.
658 657
659 658 * Fix logger to be Unicode-aware: logging could crash ipython if there was
660 659 unicode in the input. :ghpull:`1792`.
661 660
662 661 * Fix images missing from XML/SVG export in the Qt console. :ghpull:`1449`.
663 662
664 663 * Fix deepreload on Python 3. :ghpull:`1625`, as well as having a much cleaner
665 664 and more robust implementation of deepreload in general. :ghpull:`1457`.
666 665
667 666
668 667 Backwards incompatible changes
669 668 ------------------------------
670 669
671 670 * The exception :exc:`IPython.core.error.TryNext` previously accepted
672 671 arguments and keyword arguments to be passed to the next implementation
673 672 of the hook. This feature was removed as it made error message propagation
674 673 difficult and violated the principle of loose coupling.
General Comments 0
You need to be logged in to leave comments. Login now