+40
-33
pkgs/development/python-modules/spacy/default.nix
+40
-33
pkgs/development/python-modules/spacy/default.nix
···
2
lib,
3
stdenv,
4
buildPythonPackage,
5
-
callPackage,
6
-
catalogue,
7
cymem,
8
cython_0,
9
-
fetchPypi,
10
-
git,
11
-
hypothesis,
12
jinja2,
13
langcodes,
14
-
mock,
15
-
murmurhash,
16
-
nix-update,
17
-
nix,
18
-
numpy,
19
packaging,
20
-
preshed,
21
pydantic,
22
-
pytestCheckHook,
23
-
pythonOlder,
24
requests,
25
setuptools,
26
spacy-legacy,
27
spacy-loggers,
28
-
spacy-lookups-data,
29
-
spacy-transformers,
30
srsly,
31
-
thinc,
32
tqdm,
33
typer,
34
wasabi,
35
weasel,
36
writeScript,
37
}:
38
39
buildPythonPackage rec {
···
41
version = "3.8.5";
42
pyproject = true;
43
44
-
src = fetchPypi {
45
-
inherit pname version;
46
-
hash = "sha256-OLyLh3+yT0FJBf8XliADFgfNMf5vkA1noGcwFCcVZRw=";
47
};
48
-
49
-
postPatch = ''
50
-
# unpin numpy, cannot use pythonRelaxDeps because it's in build-system
51
-
substituteInPlace pyproject.toml setup.cfg \
52
-
--replace-fail ",<2.1.0" ""
53
-
'';
54
55
build-system = [
56
cymem
···
85
weasel
86
];
87
88
nativeCheckInputs = [
89
pytestCheckHook
90
hypothesis
91
mock
92
];
93
94
-
optional-dependencies = {
95
-
transformers = [ spacy-transformers ];
96
-
lookups = [ spacy-lookups-data ];
97
-
};
98
-
99
# Fixes ModuleNotFoundError when running tests on Cythonized code. See #255262
100
preCheck = ''
101
cd $out
···
118
set -eou pipefail
119
PATH=${
120
lib.makeBinPath [
121
-
nix
122
git
123
nix-update
124
]
125
}
···
132
tests.annotation = callPackage ./annotation-test { };
133
};
134
135
-
meta = with lib; {
136
description = "Industrial-strength Natural Language Processing (NLP)";
137
homepage = "https://github.com/explosion/spaCy";
138
changelog = "https://github.com/explosion/spaCy/releases/tag/release-v${version}";
139
-
license = licenses.mit;
140
maintainers = [ ];
141
mainProgram = "spacy";
142
};
143
}
···
2
lib,
3
stdenv,
4
buildPythonPackage,
5
+
fetchFromGitHub,
6
+
7
+
# build-system
8
cymem,
9
cython_0,
10
+
murmurhash,
11
+
numpy,
12
+
preshed,
13
+
thinc,
14
+
15
+
# dependencies
16
+
catalogue,
17
jinja2,
18
langcodes,
19
packaging,
20
pydantic,
21
requests,
22
setuptools,
23
spacy-legacy,
24
spacy-loggers,
25
srsly,
26
tqdm,
27
typer,
28
wasabi,
29
weasel,
30
+
31
+
# optional-dependencies
32
+
spacy-transformers,
33
+
spacy-lookups-data,
34
+
35
+
# tests
36
+
pytestCheckHook,
37
+
hypothesis,
38
+
mock,
39
+
40
+
# passthru
41
writeScript,
42
+
git,
43
+
nix,
44
+
nix-update,
45
+
callPackage,
46
}:
47
48
buildPythonPackage rec {
···
50
version = "3.8.5";
51
pyproject = true;
52
53
+
src = fetchFromGitHub {
54
+
owner = "explosion";
55
+
repo = "spaCy";
56
+
tag = "release-v${version}";
57
+
hash = "sha256-rgMstGSscUBACA5+veXD9H/lHuvWKs7hJ6hz6aKOB/0=";
58
};
59
60
build-system = [
61
cymem
···
90
weasel
91
];
92
93
+
optional-dependencies = {
94
+
transformers = [ spacy-transformers ];
95
+
lookups = [ spacy-lookups-data ];
96
+
};
97
+
98
nativeCheckInputs = [
99
pytestCheckHook
100
hypothesis
101
mock
102
];
103
104
# Fixes ModuleNotFoundError when running tests on Cythonized code. See #255262
105
preCheck = ''
106
cd $out
···
123
set -eou pipefail
124
PATH=${
125
lib.makeBinPath [
126
git
127
+
nix
128
nix-update
129
]
130
}
···
137
tests.annotation = callPackage ./annotation-test { };
138
};
139
140
+
meta = {
141
description = "Industrial-strength Natural Language Processing (NLP)";
142
homepage = "https://github.com/explosion/spaCy";
143
changelog = "https://github.com/explosion/spaCy/releases/tag/release-v${version}";
144
+
license = lib.licenses.mit;
145
maintainers = [ ];
146
mainProgram = "spacy";
147
+
# Cython.Compiler.Errors.CompileError: spacy/ml/parser_model.pyx
148
+
broken = true;
149
};
150
}