1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 flask,
6 httpx,
7 lxml,
8 pyparsing,
9 pytestCheckHook,
10 pythonOlder,
11 quixote,
12 setuptools,
13}:
14
15buildPythonPackage rec {
16 pname = "twill";
17 version = "3.3.1";
18 pyproject = true;
19
20 disabled = pythonOlder "3.8";
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-/ZT5ntn7YMafrD9/rWaOvROKo+CGFKSldG9jjH/eR0Q=";
25 };
26
27 pythonRelaxDeps = [ "lxml" ];
28
29 build-system = [ setuptools ];
30
31 dependencies = [
32 httpx
33 lxml
34 pyparsing
35 ];
36
37 nativeCheckInputs = [
38 flask
39 pytestCheckHook
40 quixote
41 ];
42
43 disabledTestPaths = [
44 # pytidylib is abandoned
45 "tests/test_tidy.py"
46 ];
47
48 pythonImportsCheck = [ "twill" ];
49
50 meta = with lib; {
51 description = "Simple scripting language for Web browsing";
52 homepage = "https://twill-tools.github.io/twill/";
53 changelog = "https://github.com/twill-tools/twill/releases/tag/v${version}";
54 license = licenses.mit;
55 maintainers = with maintainers; [ mic92 ];
56 };
57}