1{ lib
2, babel
3, buildPythonPackage
4, cssselect
5, fetchFromGitHub
6, glibcLocales
7, isodate
8, leather
9, lxml
10, nose
11, parsedatetime
12, PyICU
13, python-slugify
14, pytimeparse
15, pythonOlder
16, pytz
17, six
18}:
19
20buildPythonPackage rec {
21 pname = "agate";
22 version = "1.6.3";
23 format = "setuptools";
24
25 disabled = pythonOlder "3.6";
26
27 src = fetchFromGitHub {
28 owner = "wireservice";
29 repo = pname;
30 rev = version;
31 sha256 = "sha256-tuUoLvztCYHIPJTBgw1eByM0zfaHDyc+h7SWsxutKos=";
32 };
33
34 propagatedBuildInputs = [
35 babel
36 isodate
37 leather
38 parsedatetime
39 python-slugify
40 pytimeparse
41 six
42 ];
43
44 checkInputs = [
45 cssselect
46 glibcLocales
47 lxml
48 nose
49 PyICU
50 pytz
51 ];
52
53 postPatch = ''
54 # No Python 2 support, thus constraint is not needed
55 substituteInPlace setup.py \
56 --replace "'parsedatetime>=2.1,!=2.5,!=2.6'," "'parsedatetime>=2.1',"
57 '';
58
59 checkPhase = ''
60 LC_ALL="en_US.UTF-8" nosetests tests
61 '';
62
63 pythonImportsCheck = [
64 "agate"
65 ];
66
67 meta = with lib; {
68 description = "Python data analysis library that is optimized for humans instead of machines";
69 homepage = "https://github.com/wireservice/agate";
70 license = with licenses; [ mit ];
71 maintainers = with maintainers; [ vrthra ];
72 };
73}