1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 isPy3k,
6 twisted,
7}:
8
9buildPythonPackage rec {
10 pname = "nevow";
11 version = "0.14.5";
12 format = "setuptools";
13 disabled = isPy3k;
14
15 src = fetchPypi {
16 pname = "Nevow";
17 inherit version;
18 sha256 = "afb6ba85a5351953578c018fcdb9dfbd62f29a8d46c58bc9652bc000a27223f3";
19 };
20
21 propagatedBuildInputs = [ twisted ];
22
23 nativeCheckInputs = [ twisted ];
24
25 checkPhase = ''
26 trial formless nevow
27 '';
28
29 meta = with lib; {
30 description = "Nevow, a web application construction kit for Python";
31 longDescription = ''
32 Nevow - Pronounced as the French "nouveau", or "noo-voh", Nevow
33 is a web application construction kit written in Python. It is
34 designed to allow the programmer to express as much of the view
35 logic as desired in Python, and includes a pure Python XML
36 expression syntax named stan to facilitate this. However it
37 also provides rich support for designer-edited templates, using
38 a very small XML attribute language to provide bi-directional
39 template manipulation capability.
40
41 Nevow also includes formless, a declarative syntax for
42 specifying the types of method parameters and exposing these
43 methods to the web. Forms can be rendered automatically, and
44 form posts will be validated and input coerced, rendering error
45 pages if appropriate. Once a form post has validated
46 successfully, the method will be called with the coerced values.
47 '';
48 homepage = "https://github.com/twisted/nevow";
49 license = licenses.mit;
50 };
51}