1{ lib
2, babel
3, buildPythonPackage
4, cssselect
5, feedparser
6, fetchPypi
7, gdata
8, gnupg
9, google-api-python-client
10, html2text
11, libyaml
12, lxml
13, mechanize
14, nose
15, pdfminer-six
16, pillow
17, prettytable
18, pyqt5
19, pytestCheckHook
20, python-dateutil
21, pythonOlder
22, pyyaml
23, requests
24, simplejson
25, termcolor
26, unidecode
27}:
28
29buildPythonPackage rec {
30 pname = "weboob";
31 version = "2.0";
32 format = "setuptools";
33
34 disabled = pythonOlder "3.7";
35
36 src = fetchPypi {
37 inherit pname version;
38 sha256 = "1c69vzf8sg8471lcaafpz9iw2q3rfj5hmcpqrs2k59fkgbvy32zw";
39 };
40
41 nativeBuildInputs = [
42 pyqt5
43 ];
44
45 propagatedBuildInputs = [
46 babel
47 cssselect
48 python-dateutil
49 feedparser
50 gdata
51 gnupg
52 google-api-python-client
53 html2text
54 libyaml
55 lxml
56 mechanize
57 pdfminer-six
58 pillow
59 prettytable
60 pyqt5
61 pyyaml
62 requests
63 simplejson
64 termcolor
65 unidecode
66 ];
67
68 postPatch = ''
69 substituteInPlace setup.cfg \
70 --replace "with-doctest = 1" "" \
71 --replace "with-coverage = 1" "" \
72 --replace "weboob.browser.filters.standard," "" \
73 --replace "weboob.browser.tests.filters," "" \
74 --replace "weboob.tools.application.formatters.json," "" \
75 --replace "weboob.tools.application.formatters.table," "" \
76 --replace "weboob.tools.capabilities.bank.transactions," ""
77 '';
78
79 nativeCheckInputs = [
80 nose
81 ];
82
83 checkPhase = ''
84 nosetests
85 '';
86
87 pythonImportsCheck = [
88 "weboob"
89 ];
90
91 meta = with lib; {
92 description = "Collection of applications and APIs to interact with websites";
93 homepage = "http://weboob.org";
94 license = licenses.agpl3Plus;
95 maintainers = with maintainers; [ ];
96 };
97}