Martin Weinelt ae4a1a485a
treewide: add explicit format attribute for Python packages
If a Python package does not come with either `format` or `pyproject` we
consider it a setuptools build, that calls `setup.py` directly, which is
deprecated.

This change, as a first step, migrates a large chunk of these packages to
set setuptools as their explicit format

This is so we can unify the problem space for the next step of the
migration.
2025-07-02 05:56:47 +02:00

52 lines
1.6 KiB
Nix

{
lib,
buildPythonPackage,
fetchPypi,
isPy3k,
twisted,
}:
buildPythonPackage rec {
pname = "nevow";
version = "0.14.5";
format = "setuptools";
disabled = isPy3k;
src = fetchPypi {
pname = "Nevow";
inherit version;
sha256 = "afb6ba85a5351953578c018fcdb9dfbd62f29a8d46c58bc9652bc000a27223f3";
};
propagatedBuildInputs = [ twisted ];
nativeCheckInputs = [ twisted ];
checkPhase = ''
trial formless nevow
'';
meta = with lib; {
description = "Nevow, a web application construction kit for Python";
longDescription = ''
Nevow - Pronounced as the French "nouveau", or "noo-voh", Nevow
is a web application construction kit written in Python. It is
designed to allow the programmer to express as much of the view
logic as desired in Python, and includes a pure Python XML
expression syntax named stan to facilitate this. However it
also provides rich support for designer-edited templates, using
a very small XML attribute language to provide bi-directional
template manipulation capability.
Nevow also includes formless, a declarative syntax for
specifying the types of method parameters and exposing these
methods to the web. Forms can be rendered automatically, and
form posts will be validated and input coerced, rendering error
pages if appropriate. Once a form post has validated
successfully, the method will be called with the coerced values.
'';
homepage = "https://github.com/twisted/nevow";
license = licenses.mit;
};
}