1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 beautifulsoup4,
6 pythonOlder,
7 pandas,
8 python,
9 numpy,
10 scikit-learn,
11 scipy,
12 lxml,
13 matplotlib,
14 sarge,
15 unittestCheckHook,
16 setuptools,
17}:
18
19buildPythonPackage {
20 pname = "trectools";
21 version = "0.0.50";
22 format = "setuptools";
23
24 disabled = pythonOlder "3.6";
25
26 src = fetchFromGitHub {
27 owner = "joaopalotti";
28 repo = "trectools";
29 # https://github.com/joaopalotti/trectools/issues/41
30 rev = "8a896def007e3d657eb29f820ee3de98e2f32691";
31 hash = "sha256-p8BvLO+rD/l+ATE4+u3I6k25R1RVKlk2dn+RLQZTLDs=";
32 };
33
34 postPatch = ''
35 substituteInPlace setup.py \
36 --replace-fail "bs4 >= 0.0.0.1" "beautifulsoup4 >= 4.11.1"
37 '';
38
39 build-system = [ setuptools ];
40
41 dependencies = [
42 pandas
43 numpy
44 scikit-learn
45 scipy
46 lxml
47 beautifulsoup4
48 matplotlib
49 sarge
50 ];
51
52 unittestFlagsArray = [
53 "unittests/"
54 ];
55
56 nativeCheckInputs = [
57 unittestCheckHook
58 ];
59
60 pythonImportsCheck = [ "trectools" ];
61
62 meta = {
63 homepage = "https://github.com/joaopalotti/trectools";
64 description = "Library for assisting Information Retrieval (IR) practitioners with TREC-like campaigns";
65 license = lib.licenses.bsdOriginal;
66 maintainers = with lib.maintainers; [ MoritzBoehme ];
67 };
68}