1{ lib
2, buildPythonPackage
3, fetchPypi
4, pythonOlder
5, pytest
6, preshed
7, ftfy
8, numpy
9, murmurhash
10, plac
11, ujson
12, dill
13, requests
14, thinc
15, regex
16, cymem
17, pathlib
18, msgpack
19, msgpack-numpy
20, jsonschema
21, blis
22, wasabi
23, srsly
24, setuptools
25}:
26
27buildPythonPackage rec {
28 pname = "spacy";
29 version = "2.1.8";
30
31 src = fetchPypi {
32 inherit pname version;
33 sha256 = "1dja0crbai2n1l19m0hkv2fkj9r6zzy5ijd6dffp60v7lrch8lcw";
34 };
35
36 prePatch = ''
37 substituteInPlace setup.py \
38 --replace "plac<1.0.0,>=0.9.6" "plac>=0.9.6"
39 '';
40
41 propagatedBuildInputs = [
42 numpy
43 murmurhash
44 cymem
45 preshed
46 thinc
47 plac
48 ujson
49 dill
50 requests
51 regex
52 ftfy
53 msgpack
54 msgpack-numpy
55 jsonschema
56 blis
57 wasabi
58 srsly
59 setuptools
60 ] ++ lib.optional (pythonOlder "3.4") pathlib;
61
62 checkInputs = [
63 pytest
64 ];
65
66 doCheck = false;
67 # checkPhase = ''
68 # ${python.interpreter} -m pytest spacy/tests --vectors --models --slow
69 # '';
70
71 meta = with lib; {
72 description = "Industrial-strength Natural Language Processing (NLP) with Python and Cython";
73 homepage = https://github.com/explosion/spaCy;
74 license = licenses.mit;
75 maintainers = with maintainers; [ danieldk sdll ];
76 };
77}