##// END OF EJS Templates
deform: use pypi deform library and add helpers to deform scope directly...
dan -
r519:aa445e7e default
parent child Browse files
Show More
@@ -1,1668 +1,1667 b''
1 1 {
2 2 Babel = super.buildPythonPackage {
3 3 name = "Babel-1.3";
4 4 buildInputs = with self; [];
5 5 doCheck = false;
6 6 propagatedBuildInputs = with self; [pytz];
7 7 src = fetchurl {
8 8 url = "https://pypi.python.org/packages/33/27/e3978243a03a76398c384c83f7ca879bc6e8f1511233a621fcada135606e/Babel-1.3.tar.gz";
9 9 md5 = "5264ceb02717843cbc9ffce8e6e06bdb";
10 10 };
11 11 meta = {
12 12 license = [ pkgs.lib.licenses.bsdOriginal ];
13 13 };
14 14 };
15 15 Beaker = super.buildPythonPackage {
16 16 name = "Beaker-1.7.0";
17 17 buildInputs = with self; [];
18 18 doCheck = false;
19 19 propagatedBuildInputs = with self; [];
20 20 src = fetchurl {
21 21 url = "https://pypi.python.org/packages/97/8e/409d2e7c009b8aa803dc9e6f239f1db7c3cdf578249087a404e7c27a505d/Beaker-1.7.0.tar.gz";
22 22 md5 = "386be3f7fe427358881eee4622b428b3";
23 23 };
24 24 meta = {
25 25 license = [ pkgs.lib.licenses.bsdOriginal ];
26 26 };
27 27 };
28 28 CProfileV = super.buildPythonPackage {
29 29 name = "CProfileV-1.0.6";
30 30 buildInputs = with self; [];
31 31 doCheck = false;
32 32 propagatedBuildInputs = with self; [bottle];
33 33 src = fetchurl {
34 34 url = "https://pypi.python.org/packages/eb/df/983a0b6cfd3ac94abf023f5011cb04f33613ace196e33f53c86cf91850d5/CProfileV-1.0.6.tar.gz";
35 35 md5 = "08c7c242b6e64237bc53c5d13537e03d";
36 36 };
37 37 meta = {
38 38 license = [ pkgs.lib.licenses.mit ];
39 39 };
40 40 };
41 41 Chameleon = super.buildPythonPackage {
42 42 name = "Chameleon-2.24";
43 43 buildInputs = with self; [];
44 44 doCheck = false;
45 45 propagatedBuildInputs = with self; [];
46 46 src = fetchurl {
47 47 url = "https://pypi.python.org/packages/5a/9e/637379ffa13c5172b5c0e704833ffea6bf51cec7567f93fd6e903d53ed74/Chameleon-2.24.tar.gz";
48 48 md5 = "1b01f1f6533a8a11d0d2f2366dec5342";
49 49 };
50 50 meta = {
51 51 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
52 52 };
53 53 };
54 54 Fabric = super.buildPythonPackage {
55 55 name = "Fabric-1.10.0";
56 56 buildInputs = with self; [];
57 57 doCheck = false;
58 58 propagatedBuildInputs = with self; [paramiko];
59 59 src = fetchurl {
60 60 url = "https://pypi.python.org/packages/e3/5f/b6ebdb5241d5ec9eab582a5c8a01255c1107da396f849e538801d2fe64a5/Fabric-1.10.0.tar.gz";
61 61 md5 = "2cb96473387f0e7aa035210892352f4a";
62 62 };
63 63 meta = {
64 64 license = [ pkgs.lib.licenses.bsdOriginal ];
65 65 };
66 66 };
67 67 FormEncode = super.buildPythonPackage {
68 68 name = "FormEncode-1.2.4";
69 69 buildInputs = with self; [];
70 70 doCheck = false;
71 71 propagatedBuildInputs = with self; [];
72 72 src = fetchurl {
73 73 url = "https://pypi.python.org/packages/8e/59/0174271a6f004512e0201188593e6d319db139d14cb7490e488bbb078015/FormEncode-1.2.4.tar.gz";
74 74 md5 = "6bc17fb9aed8aea198975e888e2077f4";
75 75 };
76 76 meta = {
77 77 license = [ pkgs.lib.licenses.psfl ];
78 78 };
79 79 };
80 80 Jinja2 = super.buildPythonPackage {
81 81 name = "Jinja2-2.7.3";
82 82 buildInputs = with self; [];
83 83 doCheck = false;
84 84 propagatedBuildInputs = with self; [MarkupSafe];
85 85 src = fetchurl {
86 86 url = "https://pypi.python.org/packages/b0/73/eab0bca302d6d6a0b5c402f47ad1760dc9cb2dd14bbc1873ad48db258e4d/Jinja2-2.7.3.tar.gz";
87 87 md5 = "b9dffd2f3b43d673802fe857c8445b1a";
88 88 };
89 89 meta = {
90 90 license = [ pkgs.lib.licenses.bsdOriginal ];
91 91 };
92 92 };
93 93 Mako = super.buildPythonPackage {
94 94 name = "Mako-1.0.1";
95 95 buildInputs = with self; [];
96 96 doCheck = false;
97 97 propagatedBuildInputs = with self; [MarkupSafe];
98 98 src = fetchurl {
99 99 url = "https://pypi.python.org/packages/8e/a4/aa56533ecaa5f22ca92428f74e074d0c9337282933c722391902c8f9e0f8/Mako-1.0.1.tar.gz";
100 100 md5 = "9f0aafd177b039ef67b90ea350497a54";
101 101 };
102 102 meta = {
103 103 license = [ pkgs.lib.licenses.mit ];
104 104 };
105 105 };
106 106 Markdown = super.buildPythonPackage {
107 107 name = "Markdown-2.6.2";
108 108 buildInputs = with self; [];
109 109 doCheck = false;
110 110 propagatedBuildInputs = with self; [];
111 111 src = fetchurl {
112 112 url = "https://pypi.python.org/packages/62/8b/83658b5f6c220d5fcde9f9852d46ea54765d734cfbc5a9f4c05bfc36db4d/Markdown-2.6.2.tar.gz";
113 113 md5 = "256d19afcc564dc4ce4c229bb762f7ae";
114 114 };
115 115 meta = {
116 116 license = [ pkgs.lib.licenses.bsdOriginal ];
117 117 };
118 118 };
119 119 MarkupSafe = super.buildPythonPackage {
120 120 name = "MarkupSafe-0.23";
121 121 buildInputs = with self; [];
122 122 doCheck = false;
123 123 propagatedBuildInputs = with self; [];
124 124 src = fetchurl {
125 125 url = "https://pypi.python.org/packages/c0/41/bae1254e0396c0cc8cf1751cb7d9afc90a602353695af5952530482c963f/MarkupSafe-0.23.tar.gz";
126 126 md5 = "f5ab3deee4c37cd6a922fb81e730da6e";
127 127 };
128 128 meta = {
129 129 license = [ pkgs.lib.licenses.bsdOriginal ];
130 130 };
131 131 };
132 132 MySQL-python = super.buildPythonPackage {
133 133 name = "MySQL-python-1.2.5";
134 134 buildInputs = with self; [];
135 135 doCheck = false;
136 136 propagatedBuildInputs = with self; [];
137 137 src = fetchurl {
138 138 url = "https://pypi.python.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zip";
139 139 md5 = "654f75b302db6ed8dc5a898c625e030c";
140 140 };
141 141 meta = {
142 142 license = [ pkgs.lib.licenses.gpl1 ];
143 143 };
144 144 };
145 145 Paste = super.buildPythonPackage {
146 146 name = "Paste-2.0.2";
147 147 buildInputs = with self; [];
148 148 doCheck = false;
149 149 propagatedBuildInputs = with self; [six];
150 150 src = fetchurl {
151 151 url = "https://pypi.python.org/packages/d5/8d/0f8ac40687b97ff3e07ebd1369be20bdb3f93864d2dc3c2ff542edb4ce50/Paste-2.0.2.tar.gz";
152 152 md5 = "4bfc8a7eaf858f6309d2ac0f40fc951c";
153 153 };
154 154 meta = {
155 155 license = [ pkgs.lib.licenses.mit ];
156 156 };
157 157 };
158 158 PasteDeploy = super.buildPythonPackage {
159 159 name = "PasteDeploy-1.5.2";
160 160 buildInputs = with self; [];
161 161 doCheck = false;
162 162 propagatedBuildInputs = with self; [];
163 163 src = fetchurl {
164 164 url = "https://pypi.python.org/packages/0f/90/8e20cdae206c543ea10793cbf4136eb9a8b3f417e04e40a29d72d9922cbd/PasteDeploy-1.5.2.tar.gz";
165 165 md5 = "352b7205c78c8de4987578d19431af3b";
166 166 };
167 167 meta = {
168 168 license = [ pkgs.lib.licenses.mit ];
169 169 };
170 170 };
171 171 PasteScript = super.buildPythonPackage {
172 172 name = "PasteScript-1.7.5";
173 173 buildInputs = with self; [];
174 174 doCheck = false;
175 175 propagatedBuildInputs = with self; [Paste PasteDeploy];
176 176 src = fetchurl {
177 177 url = "https://pypi.python.org/packages/a5/05/fc60efa7c2f17a1dbaeccb2a903a1e90902d92b9d00eebabe3095829d806/PasteScript-1.7.5.tar.gz";
178 178 md5 = "4c72d78dcb6bb993f30536842c16af4d";
179 179 };
180 180 meta = {
181 181 license = [ pkgs.lib.licenses.mit ];
182 182 };
183 183 };
184 184 Pygments = super.buildPythonPackage {
185 185 name = "Pygments-2.1.3";
186 186 buildInputs = with self; [];
187 187 doCheck = false;
188 188 propagatedBuildInputs = with self; [];
189 189 src = fetchurl {
190 190 url = "https://pypi.python.org/packages/b8/67/ab177979be1c81bc99c8d0592ef22d547e70bb4c6815c383286ed5dec504/Pygments-2.1.3.tar.gz";
191 191 md5 = "ed3fba2467c8afcda4d317e4ef2c6150";
192 192 };
193 193 meta = {
194 194 license = [ pkgs.lib.licenses.bsdOriginal ];
195 195 };
196 196 };
197 197 Pylons = super.buildPythonPackage {
198 198 name = "Pylons-1.0.1";
199 199 buildInputs = with self; [];
200 200 doCheck = false;
201 201 propagatedBuildInputs = with self; [Routes WebHelpers Beaker Paste PasteDeploy PasteScript FormEncode simplejson decorator nose Mako WebError WebTest Tempita MarkupSafe WebOb];
202 202 src = fetchurl {
203 203 url = "https://pypi.python.org/packages/a2/69/b835a6bad00acbfeed3f33c6e44fa3f936efc998c795bfb15c61a79ecf62/Pylons-1.0.1.tar.gz";
204 204 md5 = "6cb880d75fa81213192142b07a6e4915";
205 205 };
206 206 meta = {
207 207 license = [ pkgs.lib.licenses.bsdOriginal ];
208 208 };
209 209 };
210 210 Pyro4 = super.buildPythonPackage {
211 211 name = "Pyro4-4.41";
212 212 buildInputs = with self; [];
213 213 doCheck = false;
214 214 propagatedBuildInputs = with self; [serpent];
215 215 src = fetchurl {
216 216 url = "https://pypi.python.org/packages/56/2b/89b566b4bf3e7f8ba790db2d1223852f8cb454c52cab7693dd41f608ca2a/Pyro4-4.41.tar.gz";
217 217 md5 = "ed69e9bfafa9c06c049a87cb0c4c2b6c";
218 218 };
219 219 meta = {
220 220 license = [ pkgs.lib.licenses.mit ];
221 221 };
222 222 };
223 223 Routes = super.buildPythonPackage {
224 224 name = "Routes-1.13";
225 225 buildInputs = with self; [];
226 226 doCheck = false;
227 227 propagatedBuildInputs = with self; [repoze.lru];
228 228 src = fetchurl {
229 229 url = "https://pypi.python.org/packages/88/d3/259c3b3cde8837eb9441ab5f574a660e8a4acea8f54a078441d4d2acac1c/Routes-1.13.tar.gz";
230 230 md5 = "d527b0ab7dd9172b1275a41f97448783";
231 231 };
232 232 meta = {
233 233 license = [ pkgs.lib.licenses.bsdOriginal ];
234 234 };
235 235 };
236 236 SQLAlchemy = super.buildPythonPackage {
237 237 name = "SQLAlchemy-0.9.9";
238 238 buildInputs = with self; [];
239 239 doCheck = false;
240 240 propagatedBuildInputs = with self; [];
241 241 src = fetchurl {
242 242 url = "https://pypi.python.org/packages/28/f7/1bbfd0d8597e8c358d5e15a166a486ad82fc5579b4e67b6ef7c05b1d182b/SQLAlchemy-0.9.9.tar.gz";
243 243 md5 = "8a10a9bd13ed3336ef7333ac2cc679ff";
244 244 };
245 245 meta = {
246 246 license = [ pkgs.lib.licenses.mit ];
247 247 };
248 248 };
249 249 Sphinx = super.buildPythonPackage {
250 250 name = "Sphinx-1.2.2";
251 251 buildInputs = with self; [];
252 252 doCheck = false;
253 253 propagatedBuildInputs = with self; [Pygments docutils Jinja2];
254 254 src = fetchurl {
255 255 url = "https://pypi.python.org/packages/0a/50/34017e6efcd372893a416aba14b84a1a149fc7074537b0e9cb6ca7b7abe9/Sphinx-1.2.2.tar.gz";
256 256 md5 = "3dc73ccaa8d0bfb2d62fb671b1f7e8a4";
257 257 };
258 258 meta = {
259 259 license = [ pkgs.lib.licenses.bsdOriginal ];
260 260 };
261 261 };
262 262 Tempita = super.buildPythonPackage {
263 263 name = "Tempita-0.5.2";
264 264 buildInputs = with self; [];
265 265 doCheck = false;
266 266 propagatedBuildInputs = with self; [];
267 267 src = fetchurl {
268 268 url = "https://pypi.python.org/packages/56/c8/8ed6eee83dbddf7b0fc64dd5d4454bc05e6ccaafff47991f73f2894d9ff4/Tempita-0.5.2.tar.gz";
269 269 md5 = "4c2f17bb9d481821c41b6fbee904cea1";
270 270 };
271 271 meta = {
272 272 license = [ pkgs.lib.licenses.mit ];
273 273 };
274 274 };
275 275 URLObject = super.buildPythonPackage {
276 276 name = "URLObject-2.4.0";
277 277 buildInputs = with self; [];
278 278 doCheck = false;
279 279 propagatedBuildInputs = with self; [];
280 280 src = fetchurl {
281 281 url = "https://pypi.python.org/packages/cb/b6/e25e58500f9caef85d664bec71ec67c116897bfebf8622c32cb75d1ca199/URLObject-2.4.0.tar.gz";
282 282 md5 = "2ed819738a9f0a3051f31dc9924e3065";
283 283 };
284 284 meta = {
285 285 license = [ ];
286 286 };
287 287 };
288 288 WebError = super.buildPythonPackage {
289 289 name = "WebError-0.10.3";
290 290 buildInputs = with self; [];
291 291 doCheck = false;
292 292 propagatedBuildInputs = with self; [WebOb Tempita Pygments Paste];
293 293 src = fetchurl {
294 294 url = "https://pypi.python.org/packages/35/76/e7e5c2ce7e9c7f31b54c1ff295a495886d1279a002557d74dd8957346a79/WebError-0.10.3.tar.gz";
295 295 md5 = "84b9990b0baae6fd440b1e60cdd06f9a";
296 296 };
297 297 meta = {
298 298 license = [ pkgs.lib.licenses.mit ];
299 299 };
300 300 };
301 301 WebHelpers = super.buildPythonPackage {
302 302 name = "WebHelpers-1.3";
303 303 buildInputs = with self; [];
304 304 doCheck = false;
305 305 propagatedBuildInputs = with self; [MarkupSafe];
306 306 src = fetchurl {
307 307 url = "https://pypi.python.org/packages/ee/68/4d07672821d514184357f1552f2dad923324f597e722de3b016ca4f7844f/WebHelpers-1.3.tar.gz";
308 308 md5 = "32749ffadfc40fea51075a7def32588b";
309 309 };
310 310 meta = {
311 311 license = [ pkgs.lib.licenses.bsdOriginal ];
312 312 };
313 313 };
314 314 WebHelpers2 = super.buildPythonPackage {
315 315 name = "WebHelpers2-2.0";
316 316 buildInputs = with self; [];
317 317 doCheck = false;
318 318 propagatedBuildInputs = with self; [MarkupSafe six];
319 319 src = fetchurl {
320 320 url = "https://pypi.python.org/packages/ff/30/56342c6ea522439e3662427c8d7b5e5b390dff4ff2dc92d8afcb8ab68b75/WebHelpers2-2.0.tar.gz";
321 321 md5 = "0f6b68d70c12ee0aed48c00b24da13d3";
322 322 };
323 323 meta = {
324 324 license = [ pkgs.lib.licenses.mit ];
325 325 };
326 326 };
327 327 WebOb = super.buildPythonPackage {
328 328 name = "WebOb-1.3.1";
329 329 buildInputs = with self; [];
330 330 doCheck = false;
331 331 propagatedBuildInputs = with self; [];
332 332 src = fetchurl {
333 333 url = "https://pypi.python.org/packages/16/78/adfc0380b8a0d75b2d543fa7085ba98a573b1ae486d9def88d172b81b9fa/WebOb-1.3.1.tar.gz";
334 334 md5 = "20918251c5726956ba8fef22d1556177";
335 335 };
336 336 meta = {
337 337 license = [ pkgs.lib.licenses.mit ];
338 338 };
339 339 };
340 340 WebTest = super.buildPythonPackage {
341 341 name = "WebTest-1.4.3";
342 342 buildInputs = with self; [];
343 343 doCheck = false;
344 344 propagatedBuildInputs = with self; [WebOb];
345 345 src = fetchurl {
346 346 url = "https://pypi.python.org/packages/51/3d/84fd0f628df10b30c7db87895f56d0158e5411206b721ca903cb51bfd948/WebTest-1.4.3.zip";
347 347 md5 = "631ce728bed92c681a4020a36adbc353";
348 348 };
349 349 meta = {
350 350 license = [ pkgs.lib.licenses.mit ];
351 351 };
352 352 };
353 353 Whoosh = super.buildPythonPackage {
354 354 name = "Whoosh-2.7.0";
355 355 buildInputs = with self; [];
356 356 doCheck = false;
357 357 propagatedBuildInputs = with self; [];
358 358 src = fetchurl {
359 359 url = "https://pypi.python.org/packages/1c/dc/2f0231ff3875ded36df8c1ab851451e51a237dc0e5a86d3d96036158da94/Whoosh-2.7.0.zip";
360 360 md5 = "7abfd970f16fadc7311960f3fa0bc7a9";
361 361 };
362 362 meta = {
363 363 license = [ pkgs.lib.licenses.bsdOriginal pkgs.lib.licenses.bsd2 ];
364 364 };
365 365 };
366 366 alembic = super.buildPythonPackage {
367 367 name = "alembic-0.8.4";
368 368 buildInputs = with self; [];
369 369 doCheck = false;
370 370 propagatedBuildInputs = with self; [SQLAlchemy Mako python-editor];
371 371 src = fetchurl {
372 372 url = "https://pypi.python.org/packages/ca/7e/299b4499b5c75e5a38c5845145ad24755bebfb8eec07a2e1c366b7181eeb/alembic-0.8.4.tar.gz";
373 373 md5 = "5f95d8ee62b443f9b37eb5bee76c582d";
374 374 };
375 375 meta = {
376 376 license = [ pkgs.lib.licenses.mit ];
377 377 };
378 378 };
379 379 amqplib = super.buildPythonPackage {
380 380 name = "amqplib-1.0.2";
381 381 buildInputs = with self; [];
382 382 doCheck = false;
383 383 propagatedBuildInputs = with self; [];
384 384 src = fetchurl {
385 385 url = "https://pypi.python.org/packages/75/b7/8c2429bf8d92354a0118614f9a4d15e53bc69ebedce534284111de5a0102/amqplib-1.0.2.tgz";
386 386 md5 = "5c92f17fbedd99b2b4a836d4352d1e2f";
387 387 };
388 388 meta = {
389 389 license = [ { fullName = "LGPL"; } { fullName = "GNU Library or Lesser General Public License (LGPL)"; } ];
390 390 };
391 391 };
392 392 anyjson = super.buildPythonPackage {
393 393 name = "anyjson-0.3.3";
394 394 buildInputs = with self; [];
395 395 doCheck = false;
396 396 propagatedBuildInputs = with self; [];
397 397 src = fetchurl {
398 398 url = "https://pypi.python.org/packages/c3/4d/d4089e1a3dd25b46bebdb55a992b0797cff657b4477bc32ce28038fdecbc/anyjson-0.3.3.tar.gz";
399 399 md5 = "2ea28d6ec311aeeebaf993cb3008b27c";
400 400 };
401 401 meta = {
402 402 license = [ pkgs.lib.licenses.bsdOriginal ];
403 403 };
404 404 };
405 405 appenlight-client = super.buildPythonPackage {
406 406 name = "appenlight-client-0.6.14";
407 407 buildInputs = with self; [];
408 408 doCheck = false;
409 409 propagatedBuildInputs = with self; [WebOb requests];
410 410 src = fetchurl {
411 411 url = "https://pypi.python.org/packages/4d/e0/23fee3ebada8143f707e65c06bcb82992040ee64ea8355e044ed55ebf0c1/appenlight_client-0.6.14.tar.gz";
412 412 md5 = "578c69b09f4356d898fff1199b98a95c";
413 413 };
414 414 meta = {
415 415 license = [ pkgs.lib.licenses.bsdOriginal { fullName = "DFSG approved"; } ];
416 416 };
417 417 };
418 418 authomatic = super.buildPythonPackage {
419 419 name = "authomatic-0.1.0.post1";
420 420 buildInputs = with self; [];
421 421 doCheck = false;
422 422 propagatedBuildInputs = with self; [];
423 423 src = fetchurl {
424 424 url = "https://pypi.python.org/packages/08/1a/8a930461e604c2d5a7a871e1ac59fa82ccf994c32e807230c8d2fb07815a/Authomatic-0.1.0.post1.tar.gz";
425 425 md5 = "be3f3ce08747d776aae6d6cc8dcb49a9";
426 426 };
427 427 meta = {
428 428 license = [ pkgs.lib.licenses.mit ];
429 429 };
430 430 };
431 431 backport-ipaddress = super.buildPythonPackage {
432 432 name = "backport-ipaddress-0.1";
433 433 buildInputs = with self; [];
434 434 doCheck = false;
435 435 propagatedBuildInputs = with self; [];
436 436 src = fetchurl {
437 437 url = "https://pypi.python.org/packages/d3/30/54c6dab05a4dec44db25ff309f1fbb6b7a8bde3f2bade38bb9da67bbab8f/backport_ipaddress-0.1.tar.gz";
438 438 md5 = "9c1f45f4361f71b124d7293a60006c05";
439 439 };
440 440 meta = {
441 441 license = [ pkgs.lib.licenses.psfl ];
442 442 };
443 443 };
444 444 bottle = super.buildPythonPackage {
445 445 name = "bottle-0.12.8";
446 446 buildInputs = with self; [];
447 447 doCheck = false;
448 448 propagatedBuildInputs = with self; [];
449 449 src = fetchurl {
450 450 url = "https://pypi.python.org/packages/52/df/e4a408f3a7af396d186d4ecd3b389dd764f0f943b4fa8d257bfe7b49d343/bottle-0.12.8.tar.gz";
451 451 md5 = "13132c0a8f607bf860810a6ee9064c5b";
452 452 };
453 453 meta = {
454 454 license = [ pkgs.lib.licenses.mit ];
455 455 };
456 456 };
457 457 bumpversion = super.buildPythonPackage {
458 458 name = "bumpversion-0.5.3";
459 459 buildInputs = with self; [];
460 460 doCheck = false;
461 461 propagatedBuildInputs = with self; [];
462 462 src = fetchurl {
463 463 url = "https://pypi.python.org/packages/14/41/8c9da3549f8e00c84f0432c3a8cf8ed6898374714676aab91501d48760db/bumpversion-0.5.3.tar.gz";
464 464 md5 = "c66a3492eafcf5ad4b024be9fca29820";
465 465 };
466 466 meta = {
467 467 license = [ pkgs.lib.licenses.mit ];
468 468 };
469 469 };
470 470 celery = super.buildPythonPackage {
471 471 name = "celery-2.2.10";
472 472 buildInputs = with self; [];
473 473 doCheck = false;
474 474 propagatedBuildInputs = with self; [python-dateutil anyjson kombu pyparsing];
475 475 src = fetchurl {
476 476 url = "https://pypi.python.org/packages/b1/64/860fd50e45844c83442e7953effcddeff66b2851d90b2d784f7201c111b8/celery-2.2.10.tar.gz";
477 477 md5 = "898bc87e54f278055b561316ba73e222";
478 478 };
479 479 meta = {
480 480 license = [ pkgs.lib.licenses.bsdOriginal ];
481 481 };
482 482 };
483 483 click = super.buildPythonPackage {
484 484 name = "click-5.1";
485 485 buildInputs = with self; [];
486 486 doCheck = false;
487 487 propagatedBuildInputs = with self; [];
488 488 src = fetchurl {
489 489 url = "https://pypi.python.org/packages/b7/34/a496632c4fb6c1ee76efedf77bb8d28b29363d839953d95095b12defe791/click-5.1.tar.gz";
490 490 md5 = "9c5323008cccfe232a8b161fc8196d41";
491 491 };
492 492 meta = {
493 493 license = [ pkgs.lib.licenses.bsdOriginal ];
494 494 };
495 495 };
496 496 colander = super.buildPythonPackage {
497 497 name = "colander-1.2";
498 498 buildInputs = with self; [];
499 499 doCheck = false;
500 500 propagatedBuildInputs = with self; [translationstring iso8601];
501 501 src = fetchurl {
502 502 url = "https://pypi.python.org/packages/14/23/c9ceba07a6a1dc0eefbb215fc0dc64aabc2b22ee756bc0f0c13278fa0887/colander-1.2.tar.gz";
503 503 md5 = "83db21b07936a0726e588dae1914b9ed";
504 504 };
505 505 meta = {
506 506 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
507 507 };
508 508 };
509 509 configobj = super.buildPythonPackage {
510 510 name = "configobj-5.0.6";
511 511 buildInputs = with self; [];
512 512 doCheck = false;
513 513 propagatedBuildInputs = with self; [six];
514 514 src = fetchurl {
515 515 url = "https://pypi.python.org/packages/64/61/079eb60459c44929e684fa7d9e2fdca403f67d64dd9dbac27296be2e0fab/configobj-5.0.6.tar.gz";
516 516 md5 = "e472a3a1c2a67bb0ec9b5d54c13a47d6";
517 517 };
518 518 meta = {
519 519 license = [ pkgs.lib.licenses.bsdOriginal ];
520 520 };
521 521 };
522 522 cov-core = super.buildPythonPackage {
523 523 name = "cov-core-1.15.0";
524 524 buildInputs = with self; [];
525 525 doCheck = false;
526 526 propagatedBuildInputs = with self; [coverage];
527 527 src = fetchurl {
528 528 url = "https://pypi.python.org/packages/4b/87/13e75a47b4ba1be06f29f6d807ca99638bedc6b57fa491cd3de891ca2923/cov-core-1.15.0.tar.gz";
529 529 md5 = "f519d4cb4c4e52856afb14af52919fe6";
530 530 };
531 531 meta = {
532 532 license = [ pkgs.lib.licenses.mit ];
533 533 };
534 534 };
535 535 coverage = super.buildPythonPackage {
536 536 name = "coverage-3.7.1";
537 537 buildInputs = with self; [];
538 538 doCheck = false;
539 539 propagatedBuildInputs = with self; [];
540 540 src = fetchurl {
541 541 url = "https://pypi.python.org/packages/09/4f/89b06c7fdc09687bca507dc411c342556ef9c5a3b26756137a4878ff19bf/coverage-3.7.1.tar.gz";
542 542 md5 = "c47b36ceb17eaff3ecfab3bcd347d0df";
543 543 };
544 544 meta = {
545 545 license = [ pkgs.lib.licenses.bsdOriginal ];
546 546 };
547 547 };
548 548 cssselect = super.buildPythonPackage {
549 549 name = "cssselect-0.9.1";
550 550 buildInputs = with self; [];
551 551 doCheck = false;
552 552 propagatedBuildInputs = with self; [];
553 553 src = fetchurl {
554 554 url = "https://pypi.python.org/packages/aa/e5/9ee1460d485b94a6d55732eb7ad5b6c084caf73dd6f9cb0bb7d2a78fafe8/cssselect-0.9.1.tar.gz";
555 555 md5 = "c74f45966277dc7a0f768b9b0f3522ac";
556 556 };
557 557 meta = {
558 558 license = [ pkgs.lib.licenses.bsdOriginal ];
559 559 };
560 560 };
561 561 decorator = super.buildPythonPackage {
562 562 name = "decorator-3.4.2";
563 563 buildInputs = with self; [];
564 564 doCheck = false;
565 565 propagatedBuildInputs = with self; [];
566 566 src = fetchurl {
567 567 url = "https://pypi.python.org/packages/35/3a/42566eb7a2cbac774399871af04e11d7ae3fc2579e7dae85213b8d1d1c57/decorator-3.4.2.tar.gz";
568 568 md5 = "9e0536870d2b83ae27d58dbf22582f4d";
569 569 };
570 570 meta = {
571 571 license = [ pkgs.lib.licenses.bsdOriginal ];
572 572 };
573 573 };
574 574 deform = super.buildPythonPackage {
575 name = "deform-2.0a3.dev0";
575 name = "deform-2.0a2";
576 576 buildInputs = with self; [];
577 577 doCheck = false;
578 propagatedBuildInputs = with self; [Chameleon colander iso8601 peppercorn translationstring zope.deprecation];
579 src = fetchgit {
580 url = "https://github.com/Pylons/deform";
581 rev = "08fb9de077c76951f6e70e28d4bf060a209d3d39";
582 sha256 = "0nmhajc4pfgp4lbwhs5szqfzswpij1qyr69m7qkyhncl2g2d759r";
578 propagatedBuildInputs = with self; [Chameleon colander peppercorn translationstring zope.deprecation];
579 src = fetchurl {
580 url = "https://pypi.python.org/packages/8d/b3/aab57e81da974a806dc9c5fa024a6404720f890a6dcf2e80885e3cb4609a/deform-2.0a2.tar.gz";
581 md5 = "7a90d41f7fbc18002ce74f39bd90a5e4";
583 582 };
584 583 meta = {
585 584 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
586 585 };
587 586 };
588 587 docutils = super.buildPythonPackage {
589 588 name = "docutils-0.12";
590 589 buildInputs = with self; [];
591 590 doCheck = false;
592 591 propagatedBuildInputs = with self; [];
593 592 src = fetchurl {
594 593 url = "https://pypi.python.org/packages/37/38/ceda70135b9144d84884ae2fc5886c6baac4edea39550f28bcd144c1234d/docutils-0.12.tar.gz";
595 594 md5 = "4622263b62c5c771c03502afa3157768";
596 595 };
597 596 meta = {
598 597 license = [ pkgs.lib.licenses.bsdOriginal pkgs.lib.licenses.publicDomain pkgs.lib.licenses.gpl1 { fullName = "public domain, Python, 2-Clause BSD, GPL 3 (see COPYING.txt)"; } pkgs.lib.licenses.psfl ];
599 598 };
600 599 };
601 600 dogpile.cache = super.buildPythonPackage {
602 601 name = "dogpile.cache-0.6.1";
603 602 buildInputs = with self; [];
604 603 doCheck = false;
605 604 propagatedBuildInputs = with self; [dogpile.core];
606 605 src = fetchurl {
607 606 url = "https://pypi.python.org/packages/f6/a0/6f2142c58c6588d17c734265b103ae1cd0741e1681dd9483a63f22033375/dogpile.cache-0.6.1.tar.gz";
608 607 md5 = "35d7fb30f22bbd0685763d894dd079a9";
609 608 };
610 609 meta = {
611 610 license = [ pkgs.lib.licenses.bsdOriginal ];
612 611 };
613 612 };
614 613 dogpile.core = super.buildPythonPackage {
615 614 name = "dogpile.core-0.4.1";
616 615 buildInputs = with self; [];
617 616 doCheck = false;
618 617 propagatedBuildInputs = with self; [];
619 618 src = fetchurl {
620 619 url = "https://pypi.python.org/packages/0e/77/e72abc04c22aedf874301861e5c1e761231c288b5de369c18be8f4b5c9bb/dogpile.core-0.4.1.tar.gz";
621 620 md5 = "01cb19f52bba3e95c9b560f39341f045";
622 621 };
623 622 meta = {
624 623 license = [ pkgs.lib.licenses.bsdOriginal ];
625 624 };
626 625 };
627 626 dulwich = super.buildPythonPackage {
628 627 name = "dulwich-0.12.0";
629 628 buildInputs = with self; [];
630 629 doCheck = false;
631 630 propagatedBuildInputs = with self; [];
632 631 src = fetchurl {
633 632 url = "https://pypi.python.org/packages/6f/04/fbe561b6d45c0ec758330d5b7f5ba4b6cb4f1ca1ab49859d2fc16320da75/dulwich-0.12.0.tar.gz";
634 633 md5 = "f3a8a12bd9f9dd8c233e18f3d49436fa";
635 634 };
636 635 meta = {
637 636 license = [ pkgs.lib.licenses.gpl2Plus ];
638 637 };
639 638 };
640 639 ecdsa = super.buildPythonPackage {
641 640 name = "ecdsa-0.11";
642 641 buildInputs = with self; [];
643 642 doCheck = false;
644 643 propagatedBuildInputs = with self; [];
645 644 src = fetchurl {
646 645 url = "https://pypi.python.org/packages/6c/3f/92fe5dcdcaa7bd117be21e5520c9a54375112b66ec000d209e9e9519fad1/ecdsa-0.11.tar.gz";
647 646 md5 = "8ef586fe4dbb156697d756900cb41d7c";
648 647 };
649 648 meta = {
650 649 license = [ pkgs.lib.licenses.mit ];
651 650 };
652 651 };
653 652 elasticsearch = super.buildPythonPackage {
654 653 name = "elasticsearch-2.3.0";
655 654 buildInputs = with self; [];
656 655 doCheck = false;
657 656 propagatedBuildInputs = with self; [urllib3];
658 657 src = fetchurl {
659 658 url = "https://pypi.python.org/packages/10/35/5fd52c5f0b0ee405ed4b5195e8bce44c5e041787680dc7b94b8071cac600/elasticsearch-2.3.0.tar.gz";
660 659 md5 = "2550f3b51629cf1ef9636608af92c340";
661 660 };
662 661 meta = {
663 662 license = [ pkgs.lib.licenses.asl20 ];
664 663 };
665 664 };
666 665 elasticsearch-dsl = super.buildPythonPackage {
667 666 name = "elasticsearch-dsl-2.0.0";
668 667 buildInputs = with self; [];
669 668 doCheck = false;
670 669 propagatedBuildInputs = with self; [six python-dateutil elasticsearch];
671 670 src = fetchurl {
672 671 url = "https://pypi.python.org/packages/4e/5d/e788ae8dbe2ff4d13426db0a027533386a5c276c77a2654dc0e2007ce04a/elasticsearch-dsl-2.0.0.tar.gz";
673 672 md5 = "4cdfec81bb35383dd3b7d02d7dc5ee68";
674 673 };
675 674 meta = {
676 675 license = [ pkgs.lib.licenses.asl20 ];
677 676 };
678 677 };
679 678 flake8 = super.buildPythonPackage {
680 679 name = "flake8-2.4.1";
681 680 buildInputs = with self; [];
682 681 doCheck = false;
683 682 propagatedBuildInputs = with self; [pyflakes pep8 mccabe];
684 683 src = fetchurl {
685 684 url = "https://pypi.python.org/packages/8f/b5/9a73c66c7dba273bac8758398f060c008a25f3e84531063b42503b5d0a95/flake8-2.4.1.tar.gz";
686 685 md5 = "ed45d3db81a3b7c88bd63c6e37ca1d65";
687 686 };
688 687 meta = {
689 688 license = [ pkgs.lib.licenses.mit ];
690 689 };
691 690 };
692 691 future = super.buildPythonPackage {
693 692 name = "future-0.14.3";
694 693 buildInputs = with self; [];
695 694 doCheck = false;
696 695 propagatedBuildInputs = with self; [];
697 696 src = fetchurl {
698 697 url = "https://pypi.python.org/packages/83/80/8ef3a11a15f8eaafafa0937b20c1b3f73527e69ab6b3fa1cf94a5a96aabb/future-0.14.3.tar.gz";
699 698 md5 = "e94079b0bd1fc054929e8769fc0f6083";
700 699 };
701 700 meta = {
702 701 license = [ { fullName = "OSI Approved"; } pkgs.lib.licenses.mit ];
703 702 };
704 703 };
705 704 futures = super.buildPythonPackage {
706 705 name = "futures-3.0.2";
707 706 buildInputs = with self; [];
708 707 doCheck = false;
709 708 propagatedBuildInputs = with self; [];
710 709 src = fetchurl {
711 710 url = "https://pypi.python.org/packages/f8/e7/fc0fcbeb9193ba2d4de00b065e7fd5aecd0679e93ce95a07322b2b1434f4/futures-3.0.2.tar.gz";
712 711 md5 = "42aaf1e4de48d6e871d77dc1f9d96d5a";
713 712 };
714 713 meta = {
715 714 license = [ pkgs.lib.licenses.bsdOriginal ];
716 715 };
717 716 };
718 717 gnureadline = super.buildPythonPackage {
719 718 name = "gnureadline-6.3.3";
720 719 buildInputs = with self; [];
721 720 doCheck = false;
722 721 propagatedBuildInputs = with self; [];
723 722 src = fetchurl {
724 723 url = "https://pypi.python.org/packages/3a/ee/2c3f568b0a74974791ac590ec742ef6133e2fbd287a074ba72a53fa5e97c/gnureadline-6.3.3.tar.gz";
725 724 md5 = "c4af83c9a3fbeac8f2da9b5a7c60e51c";
726 725 };
727 726 meta = {
728 727 license = [ pkgs.lib.licenses.gpl1 ];
729 728 };
730 729 };
731 730 gprof2dot = super.buildPythonPackage {
732 731 name = "gprof2dot-2015.12.1";
733 732 buildInputs = with self; [];
734 733 doCheck = false;
735 734 propagatedBuildInputs = with self; [];
736 735 src = fetchurl {
737 736 url = "https://pypi.python.org/packages/b9/34/7bf93c1952d40fa5c95ad963f4d8344b61ef58558632402eca18e6c14127/gprof2dot-2015.12.1.tar.gz";
738 737 md5 = "e23bf4e2f94db032750c193384b4165b";
739 738 };
740 739 meta = {
741 740 license = [ { fullName = "LGPL"; } ];
742 741 };
743 742 };
744 743 gunicorn = super.buildPythonPackage {
745 744 name = "gunicorn-19.6.0";
746 745 buildInputs = with self; [];
747 746 doCheck = false;
748 747 propagatedBuildInputs = with self; [];
749 748 src = fetchurl {
750 749 url = "https://pypi.python.org/packages/84/ce/7ea5396efad1cef682bbc4068e72a0276341d9d9d0f501da609fab9fcb80/gunicorn-19.6.0.tar.gz";
751 750 md5 = "338e5e8a83ea0f0625f768dba4597530";
752 751 };
753 752 meta = {
754 753 license = [ pkgs.lib.licenses.mit ];
755 754 };
756 755 };
757 756 infrae.cache = super.buildPythonPackage {
758 757 name = "infrae.cache-1.0.1";
759 758 buildInputs = with self; [];
760 759 doCheck = false;
761 760 propagatedBuildInputs = with self; [Beaker repoze.lru];
762 761 src = fetchurl {
763 762 url = "https://pypi.python.org/packages/bb/f0/e7d5e984cf6592fd2807dc7bc44a93f9d18e04e6a61f87fdfb2622422d74/infrae.cache-1.0.1.tar.gz";
764 763 md5 = "b09076a766747e6ed2a755cc62088e32";
765 764 };
766 765 meta = {
767 766 license = [ pkgs.lib.licenses.zpt21 ];
768 767 };
769 768 };
770 769 invoke = super.buildPythonPackage {
771 770 name = "invoke-0.13.0";
772 771 buildInputs = with self; [];
773 772 doCheck = false;
774 773 propagatedBuildInputs = with self; [];
775 774 src = fetchurl {
776 775 url = "https://pypi.python.org/packages/47/bf/d07ef52fa1ac645468858bbac7cb95b246a972a045e821493d17d89c81be/invoke-0.13.0.tar.gz";
777 776 md5 = "c0d1ed4bfb34eaab551662d8cfee6540";
778 777 };
779 778 meta = {
780 779 license = [ pkgs.lib.licenses.bsdOriginal ];
781 780 };
782 781 };
783 782 ipdb = super.buildPythonPackage {
784 783 name = "ipdb-0.8";
785 784 buildInputs = with self; [];
786 785 doCheck = false;
787 786 propagatedBuildInputs = with self; [ipython];
788 787 src = fetchurl {
789 788 url = "https://pypi.python.org/packages/f0/25/d7dd430ced6cd8dc242a933c8682b5dbf32eb4011d82f87e34209e5ec845/ipdb-0.8.zip";
790 789 md5 = "96dca0712efa01aa5eaf6b22071dd3ed";
791 790 };
792 791 meta = {
793 792 license = [ pkgs.lib.licenses.gpl1 ];
794 793 };
795 794 };
796 795 ipython = super.buildPythonPackage {
797 796 name = "ipython-3.1.0";
798 797 buildInputs = with self; [];
799 798 doCheck = false;
800 799 propagatedBuildInputs = with self; [];
801 800 src = fetchurl {
802 801 url = "https://pypi.python.org/packages/06/91/120c0835254c120af89f066afaabf81289bc2726c1fc3ca0555df6882f58/ipython-3.1.0.tar.gz";
803 802 md5 = "a749d90c16068687b0ec45a27e72ef8f";
804 803 };
805 804 meta = {
806 805 license = [ pkgs.lib.licenses.bsdOriginal ];
807 806 };
808 807 };
809 808 iso8601 = super.buildPythonPackage {
810 809 name = "iso8601-0.1.11";
811 810 buildInputs = with self; [];
812 811 doCheck = false;
813 812 propagatedBuildInputs = with self; [];
814 813 src = fetchurl {
815 814 url = "https://pypi.python.org/packages/c0/75/c9209ee4d1b5975eb8c2cba4428bde6b61bd55664a98290dd015cdb18e98/iso8601-0.1.11.tar.gz";
816 815 md5 = "b06d11cd14a64096f907086044f0fe38";
817 816 };
818 817 meta = {
819 818 license = [ pkgs.lib.licenses.mit ];
820 819 };
821 820 };
822 821 itsdangerous = super.buildPythonPackage {
823 822 name = "itsdangerous-0.24";
824 823 buildInputs = with self; [];
825 824 doCheck = false;
826 825 propagatedBuildInputs = with self; [];
827 826 src = fetchurl {
828 827 url = "https://pypi.python.org/packages/dc/b4/a60bcdba945c00f6d608d8975131ab3f25b22f2bcfe1dab221165194b2d4/itsdangerous-0.24.tar.gz";
829 828 md5 = "a3d55aa79369aef5345c036a8a26307f";
830 829 };
831 830 meta = {
832 831 license = [ pkgs.lib.licenses.bsdOriginal ];
833 832 };
834 833 };
835 834 kombu = super.buildPythonPackage {
836 835 name = "kombu-1.5.1";
837 836 buildInputs = with self; [];
838 837 doCheck = false;
839 838 propagatedBuildInputs = with self; [anyjson amqplib];
840 839 src = fetchurl {
841 840 url = "https://pypi.python.org/packages/19/53/74bf2a624644b45f0850a638752514fc10a8e1cbd738f10804951a6df3f5/kombu-1.5.1.tar.gz";
842 841 md5 = "50662f3c7e9395b3d0721fb75d100b63";
843 842 };
844 843 meta = {
845 844 license = [ pkgs.lib.licenses.bsdOriginal ];
846 845 };
847 846 };
848 847 lxml = super.buildPythonPackage {
849 848 name = "lxml-3.4.4";
850 849 buildInputs = with self; [];
851 850 doCheck = false;
852 851 propagatedBuildInputs = with self; [];
853 852 src = fetchurl {
854 853 url = "https://pypi.python.org/packages/63/c7/4f2a2a4ad6c6fa99b14be6b3c1cece9142e2d915aa7c43c908677afc8fa4/lxml-3.4.4.tar.gz";
855 854 md5 = "a9a65972afc173ec7a39c585f4eea69c";
856 855 };
857 856 meta = {
858 857 license = [ pkgs.lib.licenses.bsdOriginal ];
859 858 };
860 859 };
861 860 mccabe = super.buildPythonPackage {
862 861 name = "mccabe-0.3";
863 862 buildInputs = with self; [];
864 863 doCheck = false;
865 864 propagatedBuildInputs = with self; [];
866 865 src = fetchurl {
867 866 url = "https://pypi.python.org/packages/c9/2e/75231479e11a906b64ac43bad9d0bb534d00080b18bdca8db9da46e1faf7/mccabe-0.3.tar.gz";
868 867 md5 = "81640948ff226f8c12b3277059489157";
869 868 };
870 869 meta = {
871 870 license = [ { fullName = "Expat license"; } pkgs.lib.licenses.mit ];
872 871 };
873 872 };
874 873 meld3 = super.buildPythonPackage {
875 874 name = "meld3-1.0.2";
876 875 buildInputs = with self; [];
877 876 doCheck = false;
878 877 propagatedBuildInputs = with self; [];
879 878 src = fetchurl {
880 879 url = "https://pypi.python.org/packages/45/a0/317c6422b26c12fe0161e936fc35f36552069ba8e6f7ecbd99bbffe32a5f/meld3-1.0.2.tar.gz";
881 880 md5 = "3ccc78cd79cffd63a751ad7684c02c91";
882 881 };
883 882 meta = {
884 883 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
885 884 };
886 885 };
887 886 mock = super.buildPythonPackage {
888 887 name = "mock-1.0.1";
889 888 buildInputs = with self; [];
890 889 doCheck = false;
891 890 propagatedBuildInputs = with self; [];
892 891 src = fetchurl {
893 892 url = "https://pypi.python.org/packages/15/45/30273ee91feb60dabb8fbb2da7868520525f02cf910279b3047182feed80/mock-1.0.1.zip";
894 893 md5 = "869f08d003c289a97c1a6610faf5e913";
895 894 };
896 895 meta = {
897 896 license = [ pkgs.lib.licenses.bsdOriginal ];
898 897 };
899 898 };
900 899 msgpack-python = super.buildPythonPackage {
901 900 name = "msgpack-python-0.4.6";
902 901 buildInputs = with self; [];
903 902 doCheck = false;
904 903 propagatedBuildInputs = with self; [];
905 904 src = fetchurl {
906 905 url = "https://pypi.python.org/packages/15/ce/ff2840885789ef8035f66cd506ea05bdb228340307d5e71a7b1e3f82224c/msgpack-python-0.4.6.tar.gz";
907 906 md5 = "8b317669314cf1bc881716cccdaccb30";
908 907 };
909 908 meta = {
910 909 license = [ pkgs.lib.licenses.asl20 ];
911 910 };
912 911 };
913 912 nose = super.buildPythonPackage {
914 913 name = "nose-1.3.6";
915 914 buildInputs = with self; [];
916 915 doCheck = false;
917 916 propagatedBuildInputs = with self; [];
918 917 src = fetchurl {
919 918 url = "https://pypi.python.org/packages/70/c7/469e68148d17a0d3db5ed49150242fd70a74a8147b8f3f8b87776e028d99/nose-1.3.6.tar.gz";
920 919 md5 = "0ca546d81ca8309080fc80cb389e7a16";
921 920 };
922 921 meta = {
923 922 license = [ { fullName = "GNU Library or Lesser General Public License (LGPL)"; } { fullName = "GNU LGPL"; } ];
924 923 };
925 924 };
926 925 objgraph = super.buildPythonPackage {
927 926 name = "objgraph-2.0.0";
928 927 buildInputs = with self; [];
929 928 doCheck = false;
930 929 propagatedBuildInputs = with self; [];
931 930 src = fetchurl {
932 931 url = "https://pypi.python.org/packages/d7/33/ace750b59247496ed769b170586c5def7202683f3d98e737b75b767ff29e/objgraph-2.0.0.tar.gz";
933 932 md5 = "25b0d5e5adc74aa63ead15699614159c";
934 933 };
935 934 meta = {
936 935 license = [ pkgs.lib.licenses.mit ];
937 936 };
938 937 };
939 938 packaging = super.buildPythonPackage {
940 939 name = "packaging-15.2";
941 940 buildInputs = with self; [];
942 941 doCheck = false;
943 942 propagatedBuildInputs = with self; [];
944 943 src = fetchurl {
945 944 url = "https://pypi.python.org/packages/24/c4/185da1304f07047dc9e0c46c31db75c0351bd73458ac3efad7da3dbcfbe1/packaging-15.2.tar.gz";
946 945 md5 = "c16093476f6ced42128bf610e5db3784";
947 946 };
948 947 meta = {
949 948 license = [ pkgs.lib.licenses.asl20 ];
950 949 };
951 950 };
952 951 paramiko = super.buildPythonPackage {
953 952 name = "paramiko-1.15.1";
954 953 buildInputs = with self; [];
955 954 doCheck = false;
956 955 propagatedBuildInputs = with self; [pycrypto ecdsa];
957 956 src = fetchurl {
958 957 url = "https://pypi.python.org/packages/04/2b/a22d2a560c1951abbbf95a0628e245945565f70dc082d9e784666887222c/paramiko-1.15.1.tar.gz";
959 958 md5 = "48c274c3f9b1282932567b21f6acf3b5";
960 959 };
961 960 meta = {
962 961 license = [ { fullName = "LGPL"; } { fullName = "GNU Library or Lesser General Public License (LGPL)"; } ];
963 962 };
964 963 };
965 964 pep8 = super.buildPythonPackage {
966 965 name = "pep8-1.5.7";
967 966 buildInputs = with self; [];
968 967 doCheck = false;
969 968 propagatedBuildInputs = with self; [];
970 969 src = fetchurl {
971 970 url = "https://pypi.python.org/packages/8b/de/259f5e735897ada1683489dd514b2a1c91aaa74e5e6b68f80acf128a6368/pep8-1.5.7.tar.gz";
972 971 md5 = "f6adbdd69365ecca20513c709f9b7c93";
973 972 };
974 973 meta = {
975 974 license = [ { fullName = "Expat license"; } pkgs.lib.licenses.mit ];
976 975 };
977 976 };
978 977 psutil = super.buildPythonPackage {
979 978 name = "psutil-2.2.1";
980 979 buildInputs = with self; [];
981 980 doCheck = false;
982 981 propagatedBuildInputs = with self; [];
983 982 src = fetchurl {
984 983 url = "https://pypi.python.org/packages/df/47/ee54ef14dd40f8ce831a7581001a5096494dc99fe71586260ca6b531fe86/psutil-2.2.1.tar.gz";
985 984 md5 = "1a2b58cd9e3a53528bb6148f0c4d5244";
986 985 };
987 986 meta = {
988 987 license = [ pkgs.lib.licenses.bsdOriginal ];
989 988 };
990 989 };
991 990 psycopg2 = super.buildPythonPackage {
992 991 name = "psycopg2-2.6.1";
993 992 buildInputs = with self; [];
994 993 doCheck = false;
995 994 propagatedBuildInputs = with self; [];
996 995 src = fetchurl {
997 996 url = "https://pypi.python.org/packages/86/fd/cc8315be63a41fe000cce20482a917e874cdc1151e62cb0141f5e55f711e/psycopg2-2.6.1.tar.gz";
998 997 md5 = "842b44f8c95517ed5b792081a2370da1";
999 998 };
1000 999 meta = {
1001 1000 license = [ pkgs.lib.licenses.zpt21 { fullName = "GNU Library or Lesser General Public License (LGPL)"; } { fullName = "LGPL with exceptions or ZPL"; } ];
1002 1001 };
1003 1002 };
1004 1003 py = super.buildPythonPackage {
1005 1004 name = "py-1.4.29";
1006 1005 buildInputs = with self; [];
1007 1006 doCheck = false;
1008 1007 propagatedBuildInputs = with self; [];
1009 1008 src = fetchurl {
1010 1009 url = "https://pypi.python.org/packages/2a/bc/a1a4a332ac10069b8e5e25136a35e08a03f01fd6ab03d819889d79a1fd65/py-1.4.29.tar.gz";
1011 1010 md5 = "c28e0accba523a29b35a48bb703fb96c";
1012 1011 };
1013 1012 meta = {
1014 1013 license = [ pkgs.lib.licenses.mit ];
1015 1014 };
1016 1015 };
1017 1016 py-bcrypt = super.buildPythonPackage {
1018 1017 name = "py-bcrypt-0.4";
1019 1018 buildInputs = with self; [];
1020 1019 doCheck = false;
1021 1020 propagatedBuildInputs = with self; [];
1022 1021 src = fetchurl {
1023 1022 url = "https://pypi.python.org/packages/68/b1/1c3068c5c4d2e35c48b38dcc865301ebfdf45f54507086ac65ced1fd3b3d/py-bcrypt-0.4.tar.gz";
1024 1023 md5 = "dd8b367d6b716a2ea2e72392525f4e36";
1025 1024 };
1026 1025 meta = {
1027 1026 license = [ pkgs.lib.licenses.bsdOriginal ];
1028 1027 };
1029 1028 };
1030 1029 py-gfm = super.buildPythonPackage {
1031 1030 name = "py-gfm-0.1.3";
1032 1031 buildInputs = with self; [];
1033 1032 doCheck = false;
1034 1033 propagatedBuildInputs = with self; [setuptools Markdown];
1035 1034 src = fetchurl {
1036 1035 url = "https://pypi.python.org/packages/12/e4/6b3d8678da04f97d7490d8264d8de51c2dc9fb91209ccee9c515c95e14c5/py-gfm-0.1.3.tar.gz";
1037 1036 md5 = "e588d9e69640a241b97e2c59c22527a6";
1038 1037 };
1039 1038 meta = {
1040 1039 license = [ pkgs.lib.licenses.bsdOriginal ];
1041 1040 };
1042 1041 };
1043 1042 pycrypto = super.buildPythonPackage {
1044 1043 name = "pycrypto-2.6.1";
1045 1044 buildInputs = with self; [];
1046 1045 doCheck = false;
1047 1046 propagatedBuildInputs = with self; [];
1048 1047 src = fetchurl {
1049 1048 url = "https://pypi.python.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz";
1050 1049 md5 = "55a61a054aa66812daf5161a0d5d7eda";
1051 1050 };
1052 1051 meta = {
1053 1052 license = [ pkgs.lib.licenses.publicDomain ];
1054 1053 };
1055 1054 };
1056 1055 pycurl = super.buildPythonPackage {
1057 1056 name = "pycurl-7.19.5";
1058 1057 buildInputs = with self; [];
1059 1058 doCheck = false;
1060 1059 propagatedBuildInputs = with self; [];
1061 1060 src = fetchurl {
1062 1061 url = "https://pypi.python.org/packages/6c/48/13bad289ef6f4869b1d8fc11ae54de8cfb3cc4a2eb9f7419c506f763be46/pycurl-7.19.5.tar.gz";
1063 1062 md5 = "47b4eac84118e2606658122104e62072";
1064 1063 };
1065 1064 meta = {
1066 1065 license = [ pkgs.lib.licenses.mit { fullName = "LGPL/MIT"; } { fullName = "GNU Library or Lesser General Public License (LGPL)"; } ];
1067 1066 };
1068 1067 };
1069 1068 pyflakes = super.buildPythonPackage {
1070 1069 name = "pyflakes-0.8.1";
1071 1070 buildInputs = with self; [];
1072 1071 doCheck = false;
1073 1072 propagatedBuildInputs = with self; [];
1074 1073 src = fetchurl {
1075 1074 url = "https://pypi.python.org/packages/75/22/a90ec0252f4f87f3ffb6336504de71fe16a49d69c4538dae2f12b9360a38/pyflakes-0.8.1.tar.gz";
1076 1075 md5 = "905fe91ad14b912807e8fdc2ac2e2c23";
1077 1076 };
1078 1077 meta = {
1079 1078 license = [ pkgs.lib.licenses.mit ];
1080 1079 };
1081 1080 };
1082 1081 pyparsing = super.buildPythonPackage {
1083 1082 name = "pyparsing-1.5.7";
1084 1083 buildInputs = with self; [];
1085 1084 doCheck = false;
1086 1085 propagatedBuildInputs = with self; [];
1087 1086 src = fetchurl {
1088 1087 url = "https://pypi.python.org/packages/2e/26/e8fb5b4256a5f5036be7ce115ef8db8d06bc537becfbdc46c6af008314ee/pyparsing-1.5.7.zip";
1089 1088 md5 = "b86854857a368d6ccb4d5b6e76d0637f";
1090 1089 };
1091 1090 meta = {
1092 1091 license = [ pkgs.lib.licenses.mit ];
1093 1092 };
1094 1093 };
1095 1094 pyramid = super.buildPythonPackage {
1096 1095 name = "pyramid-1.6.1";
1097 1096 buildInputs = with self; [];
1098 1097 doCheck = false;
1099 1098 propagatedBuildInputs = with self; [setuptools WebOb repoze.lru zope.interface zope.deprecation venusian translationstring PasteDeploy];
1100 1099 src = fetchurl {
1101 1100 url = "https://pypi.python.org/packages/30/b3/fcc4a2a4800cbf21989e00454b5828cf1f7fe35c63e0810b350e56d4c475/pyramid-1.6.1.tar.gz";
1102 1101 md5 = "b18688ff3cc33efdbb098a35b45dd122";
1103 1102 };
1104 1103 meta = {
1105 1104 license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1106 1105 };
1107 1106 };
1108 1107 pyramid-beaker = super.buildPythonPackage {
1109 1108 name = "pyramid-beaker-0.8";
1110 1109 buildInputs = with self; [];
1111 1110 doCheck = false;
1112 1111 propagatedBuildInputs = with self; [pyramid Beaker];
1113 1112 src = fetchurl {
1114 1113 url = "https://pypi.python.org/packages/d9/6e/b85426e00fd3d57f4545f74e1c3828552d8700f13ededeef9233f7bca8be/pyramid_beaker-0.8.tar.gz";
1115 1114 md5 = "22f14be31b06549f80890e2c63a93834";
1116 1115 };
1117 1116 meta = {
1118 1117 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1119 1118 };
1120 1119 };
1121 1120 pyramid-debugtoolbar = super.buildPythonPackage {
1122 1121 name = "pyramid-debugtoolbar-2.4.2";
1123 1122 buildInputs = with self; [];
1124 1123 doCheck = false;
1125 1124 propagatedBuildInputs = with self; [pyramid pyramid-mako repoze.lru Pygments];
1126 1125 src = fetchurl {
1127 1126 url = "https://pypi.python.org/packages/89/00/ed5426ee41ed747ba3ffd30e8230841a6878286ea67d480b1444d24f06a2/pyramid_debugtoolbar-2.4.2.tar.gz";
1128 1127 md5 = "073ea67086cc4bd5decc3a000853642d";
1129 1128 };
1130 1129 meta = {
1131 1130 license = [ { fullName = "Repoze Public License"; } pkgs.lib.licenses.bsdOriginal ];
1132 1131 };
1133 1132 };
1134 1133 pyramid-jinja2 = super.buildPythonPackage {
1135 1134 name = "pyramid-jinja2-2.5";
1136 1135 buildInputs = with self; [];
1137 1136 doCheck = false;
1138 1137 propagatedBuildInputs = with self; [pyramid zope.deprecation Jinja2 MarkupSafe];
1139 1138 src = fetchurl {
1140 1139 url = "https://pypi.python.org/packages/a1/80/595e26ffab7deba7208676b6936b7e5a721875710f982e59899013cae1ed/pyramid_jinja2-2.5.tar.gz";
1141 1140 md5 = "07cb6547204ac5e6f0b22a954ccee928";
1142 1141 };
1143 1142 meta = {
1144 1143 license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1145 1144 };
1146 1145 };
1147 1146 pyramid-mako = super.buildPythonPackage {
1148 1147 name = "pyramid-mako-1.0.2";
1149 1148 buildInputs = with self; [];
1150 1149 doCheck = false;
1151 1150 propagatedBuildInputs = with self; [pyramid Mako];
1152 1151 src = fetchurl {
1153 1152 url = "https://pypi.python.org/packages/f1/92/7e69bcf09676d286a71cb3bbb887b16595b96f9ba7adbdc239ffdd4b1eb9/pyramid_mako-1.0.2.tar.gz";
1154 1153 md5 = "ee25343a97eb76bd90abdc2a774eb48a";
1155 1154 };
1156 1155 meta = {
1157 1156 license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1158 1157 };
1159 1158 };
1160 1159 pysqlite = super.buildPythonPackage {
1161 1160 name = "pysqlite-2.6.3";
1162 1161 buildInputs = with self; [];
1163 1162 doCheck = false;
1164 1163 propagatedBuildInputs = with self; [];
1165 1164 src = fetchurl {
1166 1165 url = "https://pypi.python.org/packages/5c/a6/1c429cd4c8069cf4bfbd0eb4d592b3f4042155a8202df83d7e9b93aa3dc2/pysqlite-2.6.3.tar.gz";
1167 1166 md5 = "7ff1cedee74646b50117acff87aa1cfa";
1168 1167 };
1169 1168 meta = {
1170 1169 license = [ { fullName = "zlib/libpng License"; } { fullName = "zlib/libpng license"; } ];
1171 1170 };
1172 1171 };
1173 1172 pytest = super.buildPythonPackage {
1174 1173 name = "pytest-2.8.5";
1175 1174 buildInputs = with self; [];
1176 1175 doCheck = false;
1177 1176 propagatedBuildInputs = with self; [py];
1178 1177 src = fetchurl {
1179 1178 url = "https://pypi.python.org/packages/b1/3d/d7ea9b0c51e0cacded856e49859f0a13452747491e842c236bbab3714afe/pytest-2.8.5.zip";
1180 1179 md5 = "8493b06f700862f1294298d6c1b715a9";
1181 1180 };
1182 1181 meta = {
1183 1182 license = [ pkgs.lib.licenses.mit ];
1184 1183 };
1185 1184 };
1186 1185 pytest-catchlog = super.buildPythonPackage {
1187 1186 name = "pytest-catchlog-1.2.2";
1188 1187 buildInputs = with self; [];
1189 1188 doCheck = false;
1190 1189 propagatedBuildInputs = with self; [py pytest];
1191 1190 src = fetchurl {
1192 1191 url = "https://pypi.python.org/packages/f2/2b/2faccdb1a978fab9dd0bf31cca9f6847fbe9184a0bdcc3011ac41dd44191/pytest-catchlog-1.2.2.zip";
1193 1192 md5 = "09d890c54c7456c818102b7ff8c182c8";
1194 1193 };
1195 1194 meta = {
1196 1195 license = [ pkgs.lib.licenses.mit ];
1197 1196 };
1198 1197 };
1199 1198 pytest-cov = super.buildPythonPackage {
1200 1199 name = "pytest-cov-1.8.1";
1201 1200 buildInputs = with self; [];
1202 1201 doCheck = false;
1203 1202 propagatedBuildInputs = with self; [py pytest coverage cov-core];
1204 1203 src = fetchurl {
1205 1204 url = "https://pypi.python.org/packages/11/4b/b04646e97f1721878eb21e9f779102d84dd044d324382263b1770a3e4838/pytest-cov-1.8.1.tar.gz";
1206 1205 md5 = "76c778afa2494088270348be42d759fc";
1207 1206 };
1208 1207 meta = {
1209 1208 license = [ pkgs.lib.licenses.mit ];
1210 1209 };
1211 1210 };
1212 1211 pytest-profiling = super.buildPythonPackage {
1213 1212 name = "pytest-profiling-1.0.1";
1214 1213 buildInputs = with self; [];
1215 1214 doCheck = false;
1216 1215 propagatedBuildInputs = with self; [six pytest gprof2dot];
1217 1216 src = fetchurl {
1218 1217 url = "https://pypi.python.org/packages/d8/67/8ffab73406e22870e07fa4dc8dce1d7689b26dba8efd00161c9b6fc01ec0/pytest-profiling-1.0.1.tar.gz";
1219 1218 md5 = "354404eb5b3fd4dc5eb7fffbb3d9b68b";
1220 1219 };
1221 1220 meta = {
1222 1221 license = [ pkgs.lib.licenses.mit ];
1223 1222 };
1224 1223 };
1225 1224 pytest-runner = super.buildPythonPackage {
1226 1225 name = "pytest-runner-2.7.1";
1227 1226 buildInputs = with self; [];
1228 1227 doCheck = false;
1229 1228 propagatedBuildInputs = with self; [];
1230 1229 src = fetchurl {
1231 1230 url = "https://pypi.python.org/packages/99/6b/c4ff4418d3424d4475b7af60724fd4a5cdd91ed8e489dc9443281f0052bc/pytest-runner-2.7.1.tar.gz";
1232 1231 md5 = "e56f0bc8d79a6bd91772b44ef4215c7e";
1233 1232 };
1234 1233 meta = {
1235 1234 license = [ pkgs.lib.licenses.mit ];
1236 1235 };
1237 1236 };
1238 1237 pytest-timeout = super.buildPythonPackage {
1239 1238 name = "pytest-timeout-0.4";
1240 1239 buildInputs = with self; [];
1241 1240 doCheck = false;
1242 1241 propagatedBuildInputs = with self; [pytest];
1243 1242 src = fetchurl {
1244 1243 url = "https://pypi.python.org/packages/24/48/5f6bd4b8026a26e1dd427243d560a29a0f1b24a5c7cffca4bf049a7bb65b/pytest-timeout-0.4.tar.gz";
1245 1244 md5 = "03b28aff69cbbfb959ed35ade5fde262";
1246 1245 };
1247 1246 meta = {
1248 1247 license = [ pkgs.lib.licenses.mit { fullName = "DFSG approved"; } ];
1249 1248 };
1250 1249 };
1251 1250 python-dateutil = super.buildPythonPackage {
1252 1251 name = "python-dateutil-1.5";
1253 1252 buildInputs = with self; [];
1254 1253 doCheck = false;
1255 1254 propagatedBuildInputs = with self; [];
1256 1255 src = fetchurl {
1257 1256 url = "https://pypi.python.org/packages/b4/7c/df59c89a753eb33c7c44e1dd42de0e9bc2ccdd5a4d576e0bfad97cc280cb/python-dateutil-1.5.tar.gz";
1258 1257 md5 = "0dcb1de5e5cad69490a3b6ab63f0cfa5";
1259 1258 };
1260 1259 meta = {
1261 1260 license = [ pkgs.lib.licenses.psfl ];
1262 1261 };
1263 1262 };
1264 1263 python-editor = super.buildPythonPackage {
1265 1264 name = "python-editor-1.0.1";
1266 1265 buildInputs = with self; [];
1267 1266 doCheck = false;
1268 1267 propagatedBuildInputs = with self; [];
1269 1268 src = fetchurl {
1270 1269 url = "https://pypi.python.org/packages/2b/c0/df7b87d5cf016f82eab3b05cd35f53287c1178ad8c42bfb6fa61b89b22f6/python-editor-1.0.1.tar.gz";
1271 1270 md5 = "e1fa63535b40e022fa4fd646fd8b511a";
1272 1271 };
1273 1272 meta = {
1274 1273 license = [ pkgs.lib.licenses.asl20 ];
1275 1274 };
1276 1275 };
1277 1276 python-ldap = super.buildPythonPackage {
1278 1277 name = "python-ldap-2.4.19";
1279 1278 buildInputs = with self; [];
1280 1279 doCheck = false;
1281 1280 propagatedBuildInputs = with self; [setuptools];
1282 1281 src = fetchurl {
1283 1282 url = "https://pypi.python.org/packages/42/81/1b64838c82e64f14d4e246ff00b52e650a35c012551b891ada2b85d40737/python-ldap-2.4.19.tar.gz";
1284 1283 md5 = "b941bf31d09739492aa19ef679e94ae3";
1285 1284 };
1286 1285 meta = {
1287 1286 license = [ pkgs.lib.licenses.psfl ];
1288 1287 };
1289 1288 };
1290 1289 python-memcached = super.buildPythonPackage {
1291 1290 name = "python-memcached-1.57";
1292 1291 buildInputs = with self; [];
1293 1292 doCheck = false;
1294 1293 propagatedBuildInputs = with self; [six];
1295 1294 src = fetchurl {
1296 1295 url = "https://pypi.python.org/packages/52/9d/eebc0dcbc5c7c66840ad207dfc1baa376dadb74912484bff73819cce01e6/python-memcached-1.57.tar.gz";
1297 1296 md5 = "de21f64b42b2d961f3d4ad7beb5468a1";
1298 1297 };
1299 1298 meta = {
1300 1299 license = [ pkgs.lib.licenses.psfl ];
1301 1300 };
1302 1301 };
1303 1302 python-pam = super.buildPythonPackage {
1304 1303 name = "python-pam-1.8.2";
1305 1304 buildInputs = with self; [];
1306 1305 doCheck = false;
1307 1306 propagatedBuildInputs = with self; [];
1308 1307 src = fetchurl {
1309 1308 url = "https://pypi.python.org/packages/de/8c/f8f5d38b4f26893af267ea0b39023d4951705ab0413a39e0cf7cf4900505/python-pam-1.8.2.tar.gz";
1310 1309 md5 = "db71b6b999246fb05d78ecfbe166629d";
1311 1310 };
1312 1311 meta = {
1313 1312 license = [ { fullName = "License :: OSI Approved :: MIT License"; } pkgs.lib.licenses.mit ];
1314 1313 };
1315 1314 };
1316 1315 pytz = super.buildPythonPackage {
1317 1316 name = "pytz-2015.4";
1318 1317 buildInputs = with self; [];
1319 1318 doCheck = false;
1320 1319 propagatedBuildInputs = with self; [];
1321 1320 src = fetchurl {
1322 1321 url = "https://pypi.python.org/packages/7e/1a/f43b5c92df7b156822030fed151327ea096bcf417e45acc23bd1df43472f/pytz-2015.4.zip";
1323 1322 md5 = "233f2a2b370d03f9b5911700cc9ebf3c";
1324 1323 };
1325 1324 meta = {
1326 1325 license = [ pkgs.lib.licenses.mit ];
1327 1326 };
1328 1327 };
1329 1328 pyzmq = super.buildPythonPackage {
1330 1329 name = "pyzmq-14.6.0";
1331 1330 buildInputs = with self; [];
1332 1331 doCheck = false;
1333 1332 propagatedBuildInputs = with self; [];
1334 1333 src = fetchurl {
1335 1334 url = "https://pypi.python.org/packages/8a/3b/5463d5a9d712cd8bbdac335daece0d69f6a6792da4e3dd89956c0db4e4e6/pyzmq-14.6.0.tar.gz";
1336 1335 md5 = "395b5de95a931afa5b14c9349a5b8024";
1337 1336 };
1338 1337 meta = {
1339 1338 license = [ pkgs.lib.licenses.bsdOriginal { fullName = "LGPL+BSD"; } { fullName = "GNU Library or Lesser General Public License (LGPL)"; } ];
1340 1339 };
1341 1340 };
1342 1341 recaptcha-client = super.buildPythonPackage {
1343 1342 name = "recaptcha-client-1.0.6";
1344 1343 buildInputs = with self; [];
1345 1344 doCheck = false;
1346 1345 propagatedBuildInputs = with self; [];
1347 1346 src = fetchurl {
1348 1347 url = "https://pypi.python.org/packages/0a/ea/5f2fbbfd894bdac1c68ef8d92019066cfcf9fbff5fe3d728d2b5c25c8db4/recaptcha-client-1.0.6.tar.gz";
1349 1348 md5 = "74228180f7e1fb76c4d7089160b0d919";
1350 1349 };
1351 1350 meta = {
1352 1351 license = [ { fullName = "MIT/X11"; } ];
1353 1352 };
1354 1353 };
1355 1354 repoze.lru = super.buildPythonPackage {
1356 1355 name = "repoze.lru-0.6";
1357 1356 buildInputs = with self; [];
1358 1357 doCheck = false;
1359 1358 propagatedBuildInputs = with self; [];
1360 1359 src = fetchurl {
1361 1360 url = "https://pypi.python.org/packages/6e/1e/aa15cc90217e086dc8769872c8778b409812ff036bf021b15795638939e4/repoze.lru-0.6.tar.gz";
1362 1361 md5 = "2c3b64b17a8e18b405f55d46173e14dd";
1363 1362 };
1364 1363 meta = {
1365 1364 license = [ { fullName = "Repoze Public License"; } { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1366 1365 };
1367 1366 };
1368 1367 requests = super.buildPythonPackage {
1369 1368 name = "requests-2.9.1";
1370 1369 buildInputs = with self; [];
1371 1370 doCheck = false;
1372 1371 propagatedBuildInputs = with self; [];
1373 1372 src = fetchurl {
1374 1373 url = "https://pypi.python.org/packages/f9/6d/07c44fb1ebe04d069459a189e7dab9e4abfe9432adcd4477367c25332748/requests-2.9.1.tar.gz";
1375 1374 md5 = "0b7f480d19012ec52bab78292efd976d";
1376 1375 };
1377 1376 meta = {
1378 1377 license = [ pkgs.lib.licenses.asl20 ];
1379 1378 };
1380 1379 };
1381 1380 rhodecode-enterprise-ce = super.buildPythonPackage {
1382 1381 name = "rhodecode-enterprise-ce-4.3.0";
1383 1382 buildInputs = with self; [WebTest configobj cssselect flake8 lxml mock pytest pytest-cov pytest-runner];
1384 1383 doCheck = true;
1385 1384 propagatedBuildInputs = with self; [Babel Beaker FormEncode Mako Markdown MarkupSafe MySQL-python Paste PasteDeploy PasteScript Pygments Pylons Pyro4 Routes SQLAlchemy Tempita URLObject WebError WebHelpers WebHelpers2 WebOb WebTest Whoosh alembic amqplib anyjson appenlight-client authomatic backport-ipaddress celery colander decorator deform docutils gunicorn infrae.cache ipython iso8601 kombu msgpack-python packaging psycopg2 py-gfm pycrypto pycurl pyparsing pyramid pyramid-debugtoolbar pyramid-mako pyramid-beaker pysqlite python-dateutil python-ldap python-memcached python-pam recaptcha-client repoze.lru requests simplejson waitress zope.cachedescriptors dogpile.cache dogpile.core psutil py-bcrypt];
1386 1385 src = ./.;
1387 1386 meta = {
1388 1387 license = [ { fullName = "AGPLv3, and Commercial License"; } ];
1389 1388 };
1390 1389 };
1391 1390 rhodecode-tools = super.buildPythonPackage {
1392 1391 name = "rhodecode-tools-0.8.3";
1393 1392 buildInputs = with self; [];
1394 1393 doCheck = false;
1395 1394 propagatedBuildInputs = with self; [click future six Mako MarkupSafe requests Whoosh elasticsearch elasticsearch-dsl];
1396 1395 src = fetchurl {
1397 1396 url = "https://code.rhodecode.com/rhodecode-tools-ce/archive/v0.8.3.zip";
1398 1397 md5 = "9acdfd71b8ddf4056057065f37ab9ccb";
1399 1398 };
1400 1399 meta = {
1401 1400 license = [ { fullName = "AGPLv3 and Proprietary"; } ];
1402 1401 };
1403 1402 };
1404 1403 serpent = super.buildPythonPackage {
1405 1404 name = "serpent-1.12";
1406 1405 buildInputs = with self; [];
1407 1406 doCheck = false;
1408 1407 propagatedBuildInputs = with self; [];
1409 1408 src = fetchurl {
1410 1409 url = "https://pypi.python.org/packages/3b/19/1e0e83b47c09edaef8398655088036e7e67386b5c48770218ebb339fbbd5/serpent-1.12.tar.gz";
1411 1410 md5 = "05869ac7b062828b34f8f927f0457b65";
1412 1411 };
1413 1412 meta = {
1414 1413 license = [ pkgs.lib.licenses.mit ];
1415 1414 };
1416 1415 };
1417 1416 setproctitle = super.buildPythonPackage {
1418 1417 name = "setproctitle-1.1.8";
1419 1418 buildInputs = with self; [];
1420 1419 doCheck = false;
1421 1420 propagatedBuildInputs = with self; [];
1422 1421 src = fetchurl {
1423 1422 url = "https://pypi.python.org/packages/33/c3/ad367a4f4f1ca90468863ae727ac62f6edb558fc09a003d344a02cfc6ea6/setproctitle-1.1.8.tar.gz";
1424 1423 md5 = "728f4c8c6031bbe56083a48594027edd";
1425 1424 };
1426 1425 meta = {
1427 1426 license = [ pkgs.lib.licenses.bsdOriginal ];
1428 1427 };
1429 1428 };
1430 1429 setuptools = super.buildPythonPackage {
1431 1430 name = "setuptools-20.8.1";
1432 1431 buildInputs = with self; [];
1433 1432 doCheck = false;
1434 1433 propagatedBuildInputs = with self; [];
1435 1434 src = fetchurl {
1436 1435 url = "https://pypi.python.org/packages/c4/19/c1bdc88b53da654df43770f941079dbab4e4788c2dcb5658fb86259894c7/setuptools-20.8.1.zip";
1437 1436 md5 = "fe58a5cac0df20bb83942b252a4b0543";
1438 1437 };
1439 1438 meta = {
1440 1439 license = [ pkgs.lib.licenses.mit ];
1441 1440 };
1442 1441 };
1443 1442 setuptools-scm = super.buildPythonPackage {
1444 1443 name = "setuptools-scm-1.11.0";
1445 1444 buildInputs = with self; [];
1446 1445 doCheck = false;
1447 1446 propagatedBuildInputs = with self; [];
1448 1447 src = fetchurl {
1449 1448 url = "https://pypi.python.org/packages/cd/5f/e3a038292358058d83d764a47d09114aa5a8003ed4529518f9e580f1a94f/setuptools_scm-1.11.0.tar.gz";
1450 1449 md5 = "4c5c896ba52e134bbc3507bac6400087";
1451 1450 };
1452 1451 meta = {
1453 1452 license = [ pkgs.lib.licenses.mit ];
1454 1453 };
1455 1454 };
1456 1455 simplejson = super.buildPythonPackage {
1457 1456 name = "simplejson-3.7.2";
1458 1457 buildInputs = with self; [];
1459 1458 doCheck = false;
1460 1459 propagatedBuildInputs = with self; [];
1461 1460 src = fetchurl {
1462 1461 url = "https://pypi.python.org/packages/6d/89/7f13f099344eea9d6722779a1f165087cb559598107844b1ac5dbd831fb1/simplejson-3.7.2.tar.gz";
1463 1462 md5 = "a5fc7d05d4cb38492285553def5d4b46";
1464 1463 };
1465 1464 meta = {
1466 1465 license = [ pkgs.lib.licenses.mit pkgs.lib.licenses.afl21 ];
1467 1466 };
1468 1467 };
1469 1468 six = super.buildPythonPackage {
1470 1469 name = "six-1.9.0";
1471 1470 buildInputs = with self; [];
1472 1471 doCheck = false;
1473 1472 propagatedBuildInputs = with self; [];
1474 1473 src = fetchurl {
1475 1474 url = "https://pypi.python.org/packages/16/64/1dc5e5976b17466fd7d712e59cbe9fb1e18bec153109e5ba3ed6c9102f1a/six-1.9.0.tar.gz";
1476 1475 md5 = "476881ef4012262dfc8adc645ee786c4";
1477 1476 };
1478 1477 meta = {
1479 1478 license = [ pkgs.lib.licenses.mit ];
1480 1479 };
1481 1480 };
1482 1481 subprocess32 = super.buildPythonPackage {
1483 1482 name = "subprocess32-3.2.6";
1484 1483 buildInputs = with self; [];
1485 1484 doCheck = false;
1486 1485 propagatedBuildInputs = with self; [];
1487 1486 src = fetchurl {
1488 1487 url = "https://pypi.python.org/packages/28/8d/33ccbff51053f59ae6c357310cac0e79246bbed1d345ecc6188b176d72c3/subprocess32-3.2.6.tar.gz";
1489 1488 md5 = "754c5ab9f533e764f931136974b618f1";
1490 1489 };
1491 1490 meta = {
1492 1491 license = [ pkgs.lib.licenses.psfl ];
1493 1492 };
1494 1493 };
1495 1494 supervisor = super.buildPythonPackage {
1496 1495 name = "supervisor-3.3.0";
1497 1496 buildInputs = with self; [];
1498 1497 doCheck = false;
1499 1498 propagatedBuildInputs = with self; [meld3];
1500 1499 src = fetchurl {
1501 1500 url = "https://pypi.python.org/packages/44/80/d28047d120bfcc8158b4e41127706731ee6a3419c661e0a858fb0e7c4b2d/supervisor-3.3.0.tar.gz";
1502 1501 md5 = "46bac00378d1eddb616752b990c67416";
1503 1502 };
1504 1503 meta = {
1505 1504 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1506 1505 };
1507 1506 };
1508 1507 transifex-client = super.buildPythonPackage {
1509 1508 name = "transifex-client-0.10";
1510 1509 buildInputs = with self; [];
1511 1510 doCheck = false;
1512 1511 propagatedBuildInputs = with self; [];
1513 1512 src = fetchurl {
1514 1513 url = "https://pypi.python.org/packages/f3/4e/7b925192aee656fb3e04fa6381c8b3dc40198047c3b4a356f6cfd642c809/transifex-client-0.10.tar.gz";
1515 1514 md5 = "5549538d84b8eede6b254cd81ae024fa";
1516 1515 };
1517 1516 meta = {
1518 1517 license = [ pkgs.lib.licenses.gpl2 ];
1519 1518 };
1520 1519 };
1521 1520 translationstring = super.buildPythonPackage {
1522 1521 name = "translationstring-1.3";
1523 1522 buildInputs = with self; [];
1524 1523 doCheck = false;
1525 1524 propagatedBuildInputs = with self; [];
1526 1525 src = fetchurl {
1527 1526 url = "https://pypi.python.org/packages/5e/eb/bee578cc150b44c653b63f5ebe258b5d0d812ddac12497e5f80fcad5d0b4/translationstring-1.3.tar.gz";
1528 1527 md5 = "a4b62e0f3c189c783a1685b3027f7c90";
1529 1528 };
1530 1529 meta = {
1531 1530 license = [ { fullName = "BSD-like (http://repoze.org/license.html)"; } ];
1532 1531 };
1533 1532 };
1534 1533 trollius = super.buildPythonPackage {
1535 1534 name = "trollius-1.0.4";
1536 1535 buildInputs = with self; [];
1537 1536 doCheck = false;
1538 1537 propagatedBuildInputs = with self; [futures];
1539 1538 src = fetchurl {
1540 1539 url = "https://pypi.python.org/packages/aa/e6/4141db437f55e6ee7a3fb69663239e3fde7841a811b4bef293145ad6c836/trollius-1.0.4.tar.gz";
1541 1540 md5 = "3631a464d49d0cbfd30ab2918ef2b783";
1542 1541 };
1543 1542 meta = {
1544 1543 license = [ pkgs.lib.licenses.asl20 ];
1545 1544 };
1546 1545 };
1547 1546 uWSGI = super.buildPythonPackage {
1548 1547 name = "uWSGI-2.0.11.2";
1549 1548 buildInputs = with self; [];
1550 1549 doCheck = false;
1551 1550 propagatedBuildInputs = with self; [];
1552 1551 src = fetchurl {
1553 1552 url = "https://pypi.python.org/packages/9b/78/918db0cfab0546afa580c1e565209c49aaf1476bbfe491314eadbe47c556/uwsgi-2.0.11.2.tar.gz";
1554 1553 md5 = "1f02dcbee7f6f61de4b1fd68350cf16f";
1555 1554 };
1556 1555 meta = {
1557 1556 license = [ pkgs.lib.licenses.gpl2 ];
1558 1557 };
1559 1558 };
1560 1559 urllib3 = super.buildPythonPackage {
1561 1560 name = "urllib3-1.16";
1562 1561 buildInputs = with self; [];
1563 1562 doCheck = false;
1564 1563 propagatedBuildInputs = with self; [];
1565 1564 src = fetchurl {
1566 1565 url = "https://pypi.python.org/packages/3b/f0/e763169124e3f5db0926bc3dbfcd580a105f9ca44cf5d8e6c7a803c9f6b5/urllib3-1.16.tar.gz";
1567 1566 md5 = "fcaab1c5385c57deeb7053d3d7d81d59";
1568 1567 };
1569 1568 meta = {
1570 1569 license = [ pkgs.lib.licenses.mit ];
1571 1570 };
1572 1571 };
1573 1572 venusian = super.buildPythonPackage {
1574 1573 name = "venusian-1.0";
1575 1574 buildInputs = with self; [];
1576 1575 doCheck = false;
1577 1576 propagatedBuildInputs = with self; [];
1578 1577 src = fetchurl {
1579 1578 url = "https://pypi.python.org/packages/86/20/1948e0dfc4930ddde3da8c33612f6a5717c0b4bc28f591a5c5cf014dd390/venusian-1.0.tar.gz";
1580 1579 md5 = "dccf2eafb7113759d60c86faf5538756";
1581 1580 };
1582 1581 meta = {
1583 1582 license = [ { fullName = "BSD-derived (http://www.repoze.org/LICENSE.txt)"; } ];
1584 1583 };
1585 1584 };
1586 1585 waitress = super.buildPythonPackage {
1587 1586 name = "waitress-0.8.9";
1588 1587 buildInputs = with self; [];
1589 1588 doCheck = false;
1590 1589 propagatedBuildInputs = with self; [setuptools];
1591 1590 src = fetchurl {
1592 1591 url = "https://pypi.python.org/packages/ee/65/fc9dee74a909a1187ca51e4f15ad9c4d35476e4ab5813f73421505c48053/waitress-0.8.9.tar.gz";
1593 1592 md5 = "da3f2e62b3676be5dd630703a68e2a04";
1594 1593 };
1595 1594 meta = {
1596 1595 license = [ pkgs.lib.licenses.zpt21 ];
1597 1596 };
1598 1597 };
1599 1598 wsgiref = super.buildPythonPackage {
1600 1599 name = "wsgiref-0.1.2";
1601 1600 buildInputs = with self; [];
1602 1601 doCheck = false;
1603 1602 propagatedBuildInputs = with self; [];
1604 1603 src = fetchurl {
1605 1604 url = "https://pypi.python.org/packages/41/9e/309259ce8dff8c596e8c26df86dbc4e848b9249fd36797fd60be456f03fc/wsgiref-0.1.2.zip";
1606 1605 md5 = "29b146e6ebd0f9fb119fe321f7bcf6cb";
1607 1606 };
1608 1607 meta = {
1609 1608 license = [ { fullName = "PSF or ZPL"; } ];
1610 1609 };
1611 1610 };
1612 1611 zope.cachedescriptors = super.buildPythonPackage {
1613 1612 name = "zope.cachedescriptors-4.0.0";
1614 1613 buildInputs = with self; [];
1615 1614 doCheck = false;
1616 1615 propagatedBuildInputs = with self; [setuptools];
1617 1616 src = fetchurl {
1618 1617 url = "https://pypi.python.org/packages/40/33/694b6644c37f28553f4b9f20b3c3a20fb709a22574dff20b5bdffb09ecd5/zope.cachedescriptors-4.0.0.tar.gz";
1619 1618 md5 = "8d308de8c936792c8e758058fcb7d0f0";
1620 1619 };
1621 1620 meta = {
1622 1621 license = [ pkgs.lib.licenses.zpt21 ];
1623 1622 };
1624 1623 };
1625 1624 zope.deprecation = super.buildPythonPackage {
1626 1625 name = "zope.deprecation-4.1.2";
1627 1626 buildInputs = with self; [];
1628 1627 doCheck = false;
1629 1628 propagatedBuildInputs = with self; [setuptools];
1630 1629 src = fetchurl {
1631 1630 url = "https://pypi.python.org/packages/c1/d3/3919492d5e57d8dd01b36f30b34fc8404a30577392b1eb817c303499ad20/zope.deprecation-4.1.2.tar.gz";
1632 1631 md5 = "e9a663ded58f4f9f7881beb56cae2782";
1633 1632 };
1634 1633 meta = {
1635 1634 license = [ pkgs.lib.licenses.zpt21 ];
1636 1635 };
1637 1636 };
1638 1637 zope.event = super.buildPythonPackage {
1639 1638 name = "zope.event-4.0.3";
1640 1639 buildInputs = with self; [];
1641 1640 doCheck = false;
1642 1641 propagatedBuildInputs = with self; [setuptools];
1643 1642 src = fetchurl {
1644 1643 url = "https://pypi.python.org/packages/c1/29/91ba884d7d6d96691df592e9e9c2bfa57a47040ec1ff47eff18c85137152/zope.event-4.0.3.tar.gz";
1645 1644 md5 = "9a3780916332b18b8b85f522bcc3e249";
1646 1645 };
1647 1646 meta = {
1648 1647 license = [ pkgs.lib.licenses.zpt21 ];
1649 1648 };
1650 1649 };
1651 1650 zope.interface = super.buildPythonPackage {
1652 1651 name = "zope.interface-4.1.3";
1653 1652 buildInputs = with self; [];
1654 1653 doCheck = false;
1655 1654 propagatedBuildInputs = with self; [setuptools];
1656 1655 src = fetchurl {
1657 1656 url = "https://pypi.python.org/packages/9d/81/2509ca3c6f59080123c1a8a97125eb48414022618cec0e64eb1313727bfe/zope.interface-4.1.3.tar.gz";
1658 1657 md5 = "9ae3d24c0c7415deb249dd1a132f0f79";
1659 1658 };
1660 1659 meta = {
1661 1660 license = [ pkgs.lib.licenses.zpt21 ];
1662 1661 };
1663 1662 };
1664 1663
1665 1664 ### Test requirements
1666 1665
1667 1666
1668 1667 }
@@ -1,571 +1,580 b''
1 1 # -*- coding: utf-8 -*-
2 2
3 3 # Copyright (C) 2010-2016 RhodeCode GmbH
4 4 #
5 5 # This program is free software: you can redistribute it and/or modify
6 6 # it under the terms of the GNU Affero General Public License, version 3
7 7 # (only), as published by the Free Software Foundation.
8 8 #
9 9 # This program is distributed in the hope that it will be useful,
10 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 12 # GNU General Public License for more details.
13 13 #
14 14 # You should have received a copy of the GNU Affero General Public License
15 15 # along with this program. If not, see <http://www.gnu.org/licenses/>.
16 16 #
17 17 # This program is dual-licensed. If you wish to learn more about the
18 18 # RhodeCode Enterprise Edition, including its added features, Support services,
19 19 # and proprietary license terms, please see https://rhodecode.com/licenses/
20 20
21 21 """
22 22 this is forms validation classes
23 23 http://formencode.org/module-formencode.validators.html
24 24 for list off all availible validators
25 25
26 26 we can create our own validators
27 27
28 28 The table below outlines the options which can be used in a schema in addition to the validators themselves
29 29 pre_validators [] These validators will be applied before the schema
30 30 chained_validators [] These validators will be applied after the schema
31 31 allow_extra_fields False If True, then it is not an error when keys that aren't associated with a validator are present
32 32 filter_extra_fields False If True, then keys that aren't associated with a validator are removed
33 33 if_key_missing NoDefault If this is given, then any keys that aren't available but are expected will be replaced with this value (and then validated). This does not override a present .if_missing attribute on validators. NoDefault is a special FormEncode class to mean that no default values has been specified and therefore missing keys shouldn't take a default value.
34 34 ignore_key_missing False If True, then missing keys will be missing in the result, if the validator doesn't have .if_missing on it already
35 35
36 36
37 37 <name> = formencode.validators.<name of validator>
38 38 <name> must equal form name
39 39 list=[1,2,3,4,5]
40 40 for SELECT use formencode.All(OneOf(list), Int())
41 41
42 42 """
43 43
44 44 import deform
45 import logging
46 import formencode
47
45 48 from pkg_resources import resource_filename
49 from formencode import All, Pipe
50
51 from pylons.i18n.translation import _
52
53 from rhodecode import BACKENDS
54 from rhodecode.lib import helpers
55 from rhodecode.model import validators as v
56
57 log = logging.getLogger(__name__)
58
46 59
47 60 deform_templates = resource_filename('deform', 'templates')
48 61 rhodecode_templates = resource_filename('rhodecode', 'templates/forms')
49 62 search_path = (rhodecode_templates, deform_templates)
50 63
51 deform.Form.set_zpt_renderer(search_path)
64
65 class RhodecodeFormZPTRendererFactory(deform.ZPTRendererFactory):
66 """ Subclass of ZPTRendererFactory to add rhodecode context variables """
67 def __call__(self, template_name, **kw):
68 kw['h'] = helpers
69 return self.load(template_name)(**kw)
52 70
53 71
54 import logging
55
56 import formencode
57 from formencode import All, Pipe
58
59 from pylons.i18n.translation import _
60
61 from rhodecode import BACKENDS
62 from rhodecode.model import validators as v
63
64 log = logging.getLogger(__name__)
72 form_renderer = RhodecodeFormZPTRendererFactory(search_path)
73 deform.Form.set_default_renderer(form_renderer)
65 74
66 75
67 76 def LoginForm():
68 77 class _LoginForm(formencode.Schema):
69 78 allow_extra_fields = True
70 79 filter_extra_fields = True
71 80 username = v.UnicodeString(
72 81 strip=True,
73 82 min=1,
74 83 not_empty=True,
75 84 messages={
76 85 'empty': _(u'Please enter a login'),
77 86 'tooShort': _(u'Enter a value %(min)i characters long or more')
78 87 }
79 88 )
80 89
81 90 password = v.UnicodeString(
82 91 strip=False,
83 92 min=3,
84 93 not_empty=True,
85 94 messages={
86 95 'empty': _(u'Please enter a password'),
87 96 'tooShort': _(u'Enter %(min)i characters or more')}
88 97 )
89 98
90 99 remember = v.StringBoolean(if_missing=False)
91 100
92 101 chained_validators = [v.ValidAuth()]
93 102 return _LoginForm
94 103
95 104
96 105 def PasswordChangeForm(username):
97 106 class _PasswordChangeForm(formencode.Schema):
98 107 allow_extra_fields = True
99 108 filter_extra_fields = True
100 109
101 110 current_password = v.ValidOldPassword(username)(not_empty=True)
102 111 new_password = All(v.ValidPassword(), v.UnicodeString(strip=False, min=6))
103 112 new_password_confirmation = All(v.ValidPassword(), v.UnicodeString(strip=False, min=6))
104 113
105 114 chained_validators = [v.ValidPasswordsMatch('new_password',
106 115 'new_password_confirmation')]
107 116 return _PasswordChangeForm
108 117
109 118
110 119 def UserForm(edit=False, available_languages=[], old_data={}):
111 120 class _UserForm(formencode.Schema):
112 121 allow_extra_fields = True
113 122 filter_extra_fields = True
114 123 username = All(v.UnicodeString(strip=True, min=1, not_empty=True),
115 124 v.ValidUsername(edit, old_data))
116 125 if edit:
117 126 new_password = All(
118 127 v.ValidPassword(),
119 128 v.UnicodeString(strip=False, min=6, not_empty=False)
120 129 )
121 130 password_confirmation = All(
122 131 v.ValidPassword(),
123 132 v.UnicodeString(strip=False, min=6, not_empty=False),
124 133 )
125 134 admin = v.StringBoolean(if_missing=False)
126 135 else:
127 136 password = All(
128 137 v.ValidPassword(),
129 138 v.UnicodeString(strip=False, min=6, not_empty=True)
130 139 )
131 140 password_confirmation = All(
132 141 v.ValidPassword(),
133 142 v.UnicodeString(strip=False, min=6, not_empty=False)
134 143 )
135 144
136 145 password_change = v.StringBoolean(if_missing=False)
137 146 create_repo_group = v.StringBoolean(if_missing=False)
138 147
139 148 active = v.StringBoolean(if_missing=False)
140 149 firstname = v.UnicodeString(strip=True, min=1, not_empty=False)
141 150 lastname = v.UnicodeString(strip=True, min=1, not_empty=False)
142 151 email = All(v.Email(not_empty=True), v.UniqSystemEmail(old_data))
143 152 extern_name = v.UnicodeString(strip=True)
144 153 extern_type = v.UnicodeString(strip=True)
145 154 language = v.OneOf(available_languages, hideList=False,
146 155 testValueList=True, if_missing=None)
147 156 chained_validators = [v.ValidPasswordsMatch()]
148 157 return _UserForm
149 158
150 159
151 160 def UserGroupForm(edit=False, old_data=None, available_members=None,
152 161 allow_disabled=False):
153 162 old_data = old_data or {}
154 163 available_members = available_members or []
155 164
156 165 class _UserGroupForm(formencode.Schema):
157 166 allow_extra_fields = True
158 167 filter_extra_fields = True
159 168
160 169 users_group_name = All(
161 170 v.UnicodeString(strip=True, min=1, not_empty=True),
162 171 v.ValidUserGroup(edit, old_data)
163 172 )
164 173 user_group_description = v.UnicodeString(strip=True, min=1,
165 174 not_empty=False)
166 175
167 176 users_group_active = v.StringBoolean(if_missing=False)
168 177
169 178 if edit:
170 179 users_group_members = v.OneOf(
171 180 available_members, hideList=False, testValueList=True,
172 181 if_missing=None, not_empty=False
173 182 )
174 183 # this is user group owner
175 184 user = All(
176 185 v.UnicodeString(not_empty=True),
177 186 v.ValidRepoUser(allow_disabled))
178 187 return _UserGroupForm
179 188
180 189
181 190 def RepoGroupForm(edit=False, old_data=None, available_groups=None,
182 191 can_create_in_root=False, allow_disabled=False):
183 192 old_data = old_data or {}
184 193 available_groups = available_groups or []
185 194
186 195 class _RepoGroupForm(formencode.Schema):
187 196 allow_extra_fields = True
188 197 filter_extra_fields = False
189 198
190 199 group_name = All(v.UnicodeString(strip=True, min=1, not_empty=True),
191 200 v.SlugifyName(),)
192 201 group_description = v.UnicodeString(strip=True, min=1,
193 202 not_empty=False)
194 203 group_copy_permissions = v.StringBoolean(if_missing=False)
195 204
196 205 group_parent_id = v.OneOf(available_groups, hideList=False,
197 206 testValueList=True, not_empty=True)
198 207 enable_locking = v.StringBoolean(if_missing=False)
199 208 chained_validators = [
200 209 v.ValidRepoGroup(edit, old_data, can_create_in_root)]
201 210
202 211 if edit:
203 212 # this is repo group owner
204 213 user = All(
205 214 v.UnicodeString(not_empty=True),
206 215 v.ValidRepoUser(allow_disabled))
207 216
208 217 return _RepoGroupForm
209 218
210 219
211 220 def RegisterForm(edit=False, old_data={}):
212 221 class _RegisterForm(formencode.Schema):
213 222 allow_extra_fields = True
214 223 filter_extra_fields = True
215 224 username = All(
216 225 v.ValidUsername(edit, old_data),
217 226 v.UnicodeString(strip=True, min=1, not_empty=True)
218 227 )
219 228 password = All(
220 229 v.ValidPassword(),
221 230 v.UnicodeString(strip=False, min=6, not_empty=True)
222 231 )
223 232 password_confirmation = All(
224 233 v.ValidPassword(),
225 234 v.UnicodeString(strip=False, min=6, not_empty=True)
226 235 )
227 236 active = v.StringBoolean(if_missing=False)
228 237 firstname = v.UnicodeString(strip=True, min=1, not_empty=False)
229 238 lastname = v.UnicodeString(strip=True, min=1, not_empty=False)
230 239 email = All(v.Email(not_empty=True), v.UniqSystemEmail(old_data))
231 240
232 241 chained_validators = [v.ValidPasswordsMatch()]
233 242
234 243 return _RegisterForm
235 244
236 245
237 246 def PasswordResetForm():
238 247 class _PasswordResetForm(formencode.Schema):
239 248 allow_extra_fields = True
240 249 filter_extra_fields = True
241 250 email = All(v.ValidSystemEmail(), v.Email(not_empty=True))
242 251 return _PasswordResetForm
243 252
244 253
245 254 def RepoForm(edit=False, old_data=None, repo_groups=None, landing_revs=None,
246 255 allow_disabled=False):
247 256 old_data = old_data or {}
248 257 repo_groups = repo_groups or []
249 258 landing_revs = landing_revs or []
250 259 supported_backends = BACKENDS.keys()
251 260
252 261 class _RepoForm(formencode.Schema):
253 262 allow_extra_fields = True
254 263 filter_extra_fields = False
255 264 repo_name = All(v.UnicodeString(strip=True, min=1, not_empty=True),
256 265 v.SlugifyName())
257 266 repo_group = All(v.CanWriteGroup(old_data),
258 267 v.OneOf(repo_groups, hideList=True))
259 268 repo_type = v.OneOf(supported_backends, required=False,
260 269 if_missing=old_data.get('repo_type'))
261 270 repo_description = v.UnicodeString(strip=True, min=1, not_empty=False)
262 271 repo_private = v.StringBoolean(if_missing=False)
263 272 repo_landing_rev = v.OneOf(landing_revs, hideList=True)
264 273 repo_copy_permissions = v.StringBoolean(if_missing=False)
265 274 clone_uri = All(v.UnicodeString(strip=True, min=1, not_empty=False))
266 275
267 276 repo_enable_statistics = v.StringBoolean(if_missing=False)
268 277 repo_enable_downloads = v.StringBoolean(if_missing=False)
269 278 repo_enable_locking = v.StringBoolean(if_missing=False)
270 279
271 280 if edit:
272 281 # this is repo owner
273 282 user = All(
274 283 v.UnicodeString(not_empty=True),
275 284 v.ValidRepoUser(allow_disabled))
276 285 clone_uri_change = v.UnicodeString(
277 286 not_empty=False, if_missing=v.Missing)
278 287
279 288 chained_validators = [v.ValidCloneUri(),
280 289 v.ValidRepoName(edit, old_data)]
281 290 return _RepoForm
282 291
283 292
284 293 def RepoPermsForm():
285 294 class _RepoPermsForm(formencode.Schema):
286 295 allow_extra_fields = True
287 296 filter_extra_fields = False
288 297 chained_validators = [v.ValidPerms(type_='repo')]
289 298 return _RepoPermsForm
290 299
291 300
292 301 def RepoGroupPermsForm(valid_recursive_choices):
293 302 class _RepoGroupPermsForm(formencode.Schema):
294 303 allow_extra_fields = True
295 304 filter_extra_fields = False
296 305 recursive = v.OneOf(valid_recursive_choices)
297 306 chained_validators = [v.ValidPerms(type_='repo_group')]
298 307 return _RepoGroupPermsForm
299 308
300 309
301 310 def UserGroupPermsForm():
302 311 class _UserPermsForm(formencode.Schema):
303 312 allow_extra_fields = True
304 313 filter_extra_fields = False
305 314 chained_validators = [v.ValidPerms(type_='user_group')]
306 315 return _UserPermsForm
307 316
308 317
309 318 def RepoFieldForm():
310 319 class _RepoFieldForm(formencode.Schema):
311 320 filter_extra_fields = True
312 321 allow_extra_fields = True
313 322
314 323 new_field_key = All(v.FieldKey(),
315 324 v.UnicodeString(strip=True, min=3, not_empty=True))
316 325 new_field_value = v.UnicodeString(not_empty=False, if_missing=u'')
317 326 new_field_type = v.OneOf(['str', 'unicode', 'list', 'tuple'],
318 327 if_missing='str')
319 328 new_field_label = v.UnicodeString(not_empty=False)
320 329 new_field_desc = v.UnicodeString(not_empty=False)
321 330
322 331 return _RepoFieldForm
323 332
324 333
325 334 def RepoForkForm(edit=False, old_data={}, supported_backends=BACKENDS.keys(),
326 335 repo_groups=[], landing_revs=[]):
327 336 class _RepoForkForm(formencode.Schema):
328 337 allow_extra_fields = True
329 338 filter_extra_fields = False
330 339 repo_name = All(v.UnicodeString(strip=True, min=1, not_empty=True),
331 340 v.SlugifyName())
332 341 repo_group = All(v.CanWriteGroup(),
333 342 v.OneOf(repo_groups, hideList=True))
334 343 repo_type = All(v.ValidForkType(old_data), v.OneOf(supported_backends))
335 344 description = v.UnicodeString(strip=True, min=1, not_empty=True)
336 345 private = v.StringBoolean(if_missing=False)
337 346 copy_permissions = v.StringBoolean(if_missing=False)
338 347 fork_parent_id = v.UnicodeString()
339 348 chained_validators = [v.ValidForkName(edit, old_data)]
340 349 landing_rev = v.OneOf(landing_revs, hideList=True)
341 350
342 351 return _RepoForkForm
343 352
344 353
345 354 def ApplicationSettingsForm():
346 355 class _ApplicationSettingsForm(formencode.Schema):
347 356 allow_extra_fields = True
348 357 filter_extra_fields = False
349 358 rhodecode_title = v.UnicodeString(strip=True, max=40, not_empty=False)
350 359 rhodecode_realm = v.UnicodeString(strip=True, min=1, not_empty=True)
351 360 rhodecode_pre_code = v.UnicodeString(strip=True, min=1, not_empty=False)
352 361 rhodecode_post_code = v.UnicodeString(strip=True, min=1, not_empty=False)
353 362 rhodecode_captcha_public_key = v.UnicodeString(strip=True, min=1, not_empty=False)
354 363 rhodecode_captcha_private_key = v.UnicodeString(strip=True, min=1, not_empty=False)
355 364
356 365 return _ApplicationSettingsForm
357 366
358 367
359 368 def ApplicationVisualisationForm():
360 369 class _ApplicationVisualisationForm(formencode.Schema):
361 370 allow_extra_fields = True
362 371 filter_extra_fields = False
363 372 rhodecode_show_public_icon = v.StringBoolean(if_missing=False)
364 373 rhodecode_show_private_icon = v.StringBoolean(if_missing=False)
365 374 rhodecode_stylify_metatags = v.StringBoolean(if_missing=False)
366 375
367 376 rhodecode_repository_fields = v.StringBoolean(if_missing=False)
368 377 rhodecode_lightweight_journal = v.StringBoolean(if_missing=False)
369 378 rhodecode_dashboard_items = v.Int(min=5, not_empty=True)
370 379 rhodecode_admin_grid_items = v.Int(min=5, not_empty=True)
371 380 rhodecode_show_version = v.StringBoolean(if_missing=False)
372 381 rhodecode_use_gravatar = v.StringBoolean(if_missing=False)
373 382 rhodecode_markup_renderer = v.OneOf(['markdown', 'rst'])
374 383 rhodecode_gravatar_url = v.UnicodeString(min=3)
375 384 rhodecode_clone_uri_tmpl = v.UnicodeString(min=3)
376 385 rhodecode_support_url = v.UnicodeString()
377 386 rhodecode_show_revision_number = v.StringBoolean(if_missing=False)
378 387 rhodecode_show_sha_length = v.Int(min=4, not_empty=True)
379 388
380 389 return _ApplicationVisualisationForm
381 390
382 391
383 392 class _BaseVcsSettingsForm(formencode.Schema):
384 393 allow_extra_fields = True
385 394 filter_extra_fields = False
386 395 hooks_changegroup_repo_size = v.StringBoolean(if_missing=False)
387 396 hooks_changegroup_push_logger = v.StringBoolean(if_missing=False)
388 397 hooks_outgoing_pull_logger = v.StringBoolean(if_missing=False)
389 398
390 399 extensions_largefiles = v.StringBoolean(if_missing=False)
391 400 phases_publish = v.StringBoolean(if_missing=False)
392 401
393 402 rhodecode_pr_merge_enabled = v.StringBoolean(if_missing=False)
394 403 rhodecode_use_outdated_comments = v.StringBoolean(if_missing=False)
395 404 rhodecode_hg_use_rebase_for_merging = v.StringBoolean(if_missing=False)
396 405
397 406
398 407 def ApplicationUiSettingsForm():
399 408 class _ApplicationUiSettingsForm(_BaseVcsSettingsForm):
400 409 web_push_ssl = v.StringBoolean(if_missing=False)
401 410 paths_root_path = All(
402 411 v.ValidPath(),
403 412 v.UnicodeString(strip=True, min=1, not_empty=True)
404 413 )
405 414 extensions_hgsubversion = v.StringBoolean(if_missing=False)
406 415 extensions_hggit = v.StringBoolean(if_missing=False)
407 416 new_svn_branch = v.ValidSvnPattern(section='vcs_svn_branch')
408 417 new_svn_tag = v.ValidSvnPattern(section='vcs_svn_tag')
409 418
410 419 return _ApplicationUiSettingsForm
411 420
412 421
413 422 def RepoVcsSettingsForm(repo_name):
414 423 class _RepoVcsSettingsForm(_BaseVcsSettingsForm):
415 424 inherit_global_settings = v.StringBoolean(if_missing=False)
416 425 new_svn_branch = v.ValidSvnPattern(
417 426 section='vcs_svn_branch', repo_name=repo_name)
418 427 new_svn_tag = v.ValidSvnPattern(
419 428 section='vcs_svn_tag', repo_name=repo_name)
420 429
421 430 return _RepoVcsSettingsForm
422 431
423 432
424 433 def LabsSettingsForm():
425 434 class _LabSettingsForm(formencode.Schema):
426 435 allow_extra_fields = True
427 436 filter_extra_fields = False
428 437
429 438 rhodecode_proxy_subversion_http_requests = v.StringBoolean(
430 439 if_missing=False)
431 440 rhodecode_subversion_http_server_url = v.UnicodeString(
432 441 strip=True, if_missing=None)
433 442
434 443 return _LabSettingsForm
435 444
436 445
437 446 def ApplicationPermissionsForm(register_choices, extern_activate_choices):
438 447 class _DefaultPermissionsForm(formencode.Schema):
439 448 allow_extra_fields = True
440 449 filter_extra_fields = True
441 450
442 451 anonymous = v.StringBoolean(if_missing=False)
443 452 default_register = v.OneOf(register_choices)
444 453 default_register_message = v.UnicodeString()
445 454 default_extern_activate = v.OneOf(extern_activate_choices)
446 455
447 456 return _DefaultPermissionsForm
448 457
449 458
450 459 def ObjectPermissionsForm(repo_perms_choices, group_perms_choices,
451 460 user_group_perms_choices):
452 461 class _ObjectPermissionsForm(formencode.Schema):
453 462 allow_extra_fields = True
454 463 filter_extra_fields = True
455 464 overwrite_default_repo = v.StringBoolean(if_missing=False)
456 465 overwrite_default_group = v.StringBoolean(if_missing=False)
457 466 overwrite_default_user_group = v.StringBoolean(if_missing=False)
458 467 default_repo_perm = v.OneOf(repo_perms_choices)
459 468 default_group_perm = v.OneOf(group_perms_choices)
460 469 default_user_group_perm = v.OneOf(user_group_perms_choices)
461 470
462 471 return _ObjectPermissionsForm
463 472
464 473
465 474 def UserPermissionsForm(create_choices, create_on_write_choices,
466 475 repo_group_create_choices, user_group_create_choices,
467 476 fork_choices, inherit_default_permissions_choices):
468 477 class _DefaultPermissionsForm(formencode.Schema):
469 478 allow_extra_fields = True
470 479 filter_extra_fields = True
471 480
472 481 anonymous = v.StringBoolean(if_missing=False)
473 482
474 483 default_repo_create = v.OneOf(create_choices)
475 484 default_repo_create_on_write = v.OneOf(create_on_write_choices)
476 485 default_user_group_create = v.OneOf(user_group_create_choices)
477 486 default_repo_group_create = v.OneOf(repo_group_create_choices)
478 487 default_fork_create = v.OneOf(fork_choices)
479 488 default_inherit_default_permissions = v.OneOf(inherit_default_permissions_choices)
480 489
481 490 return _DefaultPermissionsForm
482 491
483 492
484 493 def UserIndividualPermissionsForm():
485 494 class _DefaultPermissionsForm(formencode.Schema):
486 495 allow_extra_fields = True
487 496 filter_extra_fields = True
488 497
489 498 inherit_default_permissions = v.StringBoolean(if_missing=False)
490 499
491 500 return _DefaultPermissionsForm
492 501
493 502
494 503 def DefaultsForm(edit=False, old_data={}, supported_backends=BACKENDS.keys()):
495 504 class _DefaultsForm(formencode.Schema):
496 505 allow_extra_fields = True
497 506 filter_extra_fields = True
498 507 default_repo_type = v.OneOf(supported_backends)
499 508 default_repo_private = v.StringBoolean(if_missing=False)
500 509 default_repo_enable_statistics = v.StringBoolean(if_missing=False)
501 510 default_repo_enable_downloads = v.StringBoolean(if_missing=False)
502 511 default_repo_enable_locking = v.StringBoolean(if_missing=False)
503 512
504 513 return _DefaultsForm
505 514
506 515
507 516 def AuthSettingsForm():
508 517 class _AuthSettingsForm(formencode.Schema):
509 518 allow_extra_fields = True
510 519 filter_extra_fields = True
511 520 auth_plugins = All(v.ValidAuthPlugins(),
512 521 v.UniqueListFromString()(not_empty=True))
513 522
514 523 return _AuthSettingsForm
515 524
516 525
517 526 def UserExtraEmailForm():
518 527 class _UserExtraEmailForm(formencode.Schema):
519 528 email = All(v.UniqSystemEmail(), v.Email(not_empty=True))
520 529 return _UserExtraEmailForm
521 530
522 531
523 532 def UserExtraIpForm():
524 533 class _UserExtraIpForm(formencode.Schema):
525 534 ip = v.ValidIp()(not_empty=True)
526 535 return _UserExtraIpForm
527 536
528 537
529 538 def PullRequestForm(repo_id):
530 539 class _PullRequestForm(formencode.Schema):
531 540 allow_extra_fields = True
532 541 filter_extra_fields = True
533 542
534 543 user = v.UnicodeString(strip=True, required=True)
535 544 source_repo = v.UnicodeString(strip=True, required=True)
536 545 source_ref = v.UnicodeString(strip=True, required=True)
537 546 target_repo = v.UnicodeString(strip=True, required=True)
538 547 target_ref = v.UnicodeString(strip=True, required=True)
539 548 revisions = All(#v.NotReviewedRevisions(repo_id)(),
540 549 v.UniqueList()(not_empty=True))
541 550 review_members = v.UniqueList(convert=int)(not_empty=True)
542 551
543 552 pullrequest_title = v.UnicodeString(strip=True, required=True)
544 553 pullrequest_desc = v.UnicodeString(strip=True, required=False)
545 554
546 555 return _PullRequestForm
547 556
548 557
549 558 def GistForm(lifetime_options, acl_level_options):
550 559 class _GistForm(formencode.Schema):
551 560
552 561 gistid = All(v.UniqGistId(), v.UnicodeString(strip=True, min=3, not_empty=False, if_missing=None))
553 562 filename = All(v.BasePath()(),
554 563 v.UnicodeString(strip=True, required=False))
555 564 description = v.UnicodeString(required=False, if_missing=u'')
556 565 lifetime = v.OneOf(lifetime_options)
557 566 mimetype = v.UnicodeString(required=False, if_missing=None)
558 567 content = v.UnicodeString(required=True, not_empty=True)
559 568 public = v.UnicodeString(required=False, if_missing=u'')
560 569 private = v.UnicodeString(required=False, if_missing=u'')
561 570 acl_level = v.OneOf(acl_level_options)
562 571
563 572 return _GistForm
564 573
565 574
566 575 def IssueTrackerPatternsForm():
567 576 class _IssueTrackerPatternsForm(formencode.Schema):
568 577 allow_extra_fields = True
569 578 filter_extra_fields = False
570 579 chained_validators = [v.ValidPattern()]
571 580 return _IssueTrackerPatternsForm
@@ -1,44 +1,43 b''
1 1 ## -*- coding: utf-8 -*-
2 2 <%inherit file="base.html"/>
3 3
4 4 <%def name="breadcrumbs_links()">
5 5 %if c.repo:
6 6 ${h.link_to('Settings',h.url('edit_repo', repo_name=c.repo.repo_name))}
7 7 &raquo;
8 8 ${h.link_to(_('Integrations'),request.route_url(route_name='repo_integrations_home', repo_name=c.repo.repo_name))}
9 9 &raquo;
10 10 ${h.link_to(current_IntegrationType.display_name,
11 11 request.route_url(route_name='repo_integrations_list',
12 12 repo_name=c.repo.repo_name,
13 13 integration=current_IntegrationType.key))}
14 14 %else:
15 15 ${h.link_to(_('Admin'),h.url('admin_home'))}
16 16 &raquo;
17 17 ${h.link_to(_('Settings'),h.url('admin_settings'))}
18 18 &raquo;
19 19 ${h.link_to(_('Integrations'),request.route_url(route_name='global_integrations_home'))}
20 20 &raquo;
21 21 ${h.link_to(current_IntegrationType.display_name,
22 22 request.route_url(route_name='global_integrations_list',
23 23 integration=current_IntegrationType.key))}
24 24 %endif
25 25 %if integration:
26 26 &raquo;
27 27 ${integration.name}
28 28 %endif
29 29 </%def>
30 30 <div class="panel panel-default">
31 31 <div class="panel-heading">
32 32 <h2 class="panel-title">
33 33 %if integration:
34 34 ${current_IntegrationType.display_name} - ${integration.name}
35 35 %else:
36 36 ${_('Create new %(integration_type)s integration') % {'integration_type': current_IntegrationType.display_name}}
37 37 %endif
38 38 </h2>
39 39 </div>
40 40 <div class="panel-body">
41 ## TODO: dan: find way to put h in the deform context properly
42 ${form.render(h=h) | n}
41 ${form.render() | n}
43 42 </div>
44 43 </div>
General Comments 0
You need to be logged in to leave comments. Login now