Merge pull request #29334 from rvl/python-textacy

pythonPackages.textacy: init at 0.4.1
This commit is contained in:
Frederik Rietdijk
2017-09-16 11:29:44 +02:00
committed by GitHub
12 changed files with 300 additions and 38 deletions

View File

@@ -0,0 +1,18 @@
{ stdenv, buildPythonPackage, fetchPypi, isPyPy }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "cachetools";
version = "1.1.3";
disabled = isPyPy; # a test fails
src = fetchPypi {
inherit pname version;
sha256 = "0js7qx5pa8ibr8487lcf0x3a7w0xml0wa17snd6hjs0857kqhn20";
};
meta = with stdenv.lib; {
homepage = "https://github.com/tkem/cachetools";
license = licenses.mit;
};
}

View File

@@ -0,0 +1,18 @@
{ stdenv, buildPythonPackage, fetchPypi, isPyPy }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "cachetools";
version = "2.0.1";
src = fetchPypi {
inherit pname version;
sha256 = "0pdw2fr29pxlyn1g5fhdrrqbpn0iw062nv716ngdqvdx7hnizq7d";
};
meta = with stdenv.lib; {
description = "Extensible memoizing collections and decorators";
homepage = "https://github.com/tkem/cachetools";
license = licenses.mit;
};
}

View File

@@ -0,0 +1,27 @@
{ stdenv, buildPythonPackage, fetchPypi, six, cffi, nose }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "cld2-cffi";
version = "0.1.4";
src = fetchPypi {
inherit pname version;
sha256 = "0rvcdx4fdh5yk4d2nlddq1q1r2r0xqp86hpmbdn447pdcj1r8a9s";
};
propagatedBuildInputs = [ six cffi ];
checkInputs = [ nose ];
# gcc doesn't approve of this code, so disable -Werror
NIX_CFLAGS_COMPILE = "-w";
checkPhase = "nosetests -v";
meta = with stdenv.lib; {
description = "CFFI bindings around Google Chromium's embedded compact language detection library (CLD2)";
homepage = "https://github.com/GregBowyer/cld2-cffi";
license = licenses.asl20;
maintainers = with maintainers; [ rvl ];
};
}

View File

@@ -0,0 +1,21 @@
{ stdenv, buildPythonPackage, fetchPypi }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "ijson";
version = "2.3";
src = fetchPypi {
inherit pname version;
sha256 = "0x7l9k2dvxzd5mjgiq15nl9b0sxcqy1cqaz744bjwkz4z5mrypzg";
};
doCheck = false; # something about yajl
meta = with stdenv.lib; {
description = "Iterative JSON parser with a standard Python iterator interface";
homepage = "https://github.com/isagalaev/ijson";
license = licenses.bsd3;
maintainers = with maintainers; [ rvl ];
};
}

View File

@@ -0,0 +1,22 @@
{ stdenv, buildPythonPackage, fetchPypi, numpy, cython }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "pyemd";
version = "0.4.4";
src = fetchPypi {
inherit pname version;
sha256 = "13y06y7r1697cv4r430g45fxs40i2yk9xn0dk9nqlrpddw3a0mr4";
};
propagatedBuildInputs = [ numpy ];
buildInputs = [ cython ];
meta = with stdenv.lib; {
description = "A Python wrapper for Ofir Pele and Michael Werman's implementation of the Earth Mover's Distance";
homepage = http://github.com/wmayner/pyemd;
license = licenses.mit;
maintainers = with maintainers; [ rvl ];
};
}

View File

@@ -0,0 +1,19 @@
{ stdenv, buildPythonPackage, fetchPypi }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "Pyphen";
version = "0.9.4";
src = fetchPypi {
inherit pname version;
sha256 = "1mqb5jrigxipxzp1d8nbwkq0cfjw77pnn6hc4mp1yd2mn059mymb";
};
meta = with stdenv.lib; {
description = "Pure Python module to hyphenate text";
homepage = "https://github.com/Kozea/Pyphen";
license = with licenses; [gpl2 lgpl21 mpl20];
maintainers = with maintainers; [ rvl ];
};
}

View File

@@ -0,0 +1,42 @@
[{
"pname": "es_core_web_md",
"version": "1.0.0",
"sha256": "0ikyakdhnj6rrfpr8k83695d1gd3z9n60a245hwwchv94jmr7r6s",
"license": "cc-by-sa-40"
},
{
"pname": "fr_depvec_web_lg",
"version": "1.0.0",
"sha256": "0nxmdszs1s5by2874cz37azrmwamh1ngdsiylffkfihzq6s8bhka",
"license": "cc-by-nc-sa-40"
},
{
"pname": "en_core_web_md",
"version": "1.2.1",
"sha256": "12prr4hcbfdaky9rcna1y1ykr417jkhkks2r8l06g8fb7am3pvp3",
"license": "cc-by-sa-40"
},
{
"pname": "en_depent_web_md",
"version": "1.2.1",
"sha256": "0giyr35q5lpp5drpcamyvb5gsjnhj62mk3ndfr49nm1s6d5f6m52",
"license": "cc-by-sa-40"
},
{
"pname": "en_core_web_sm",
"version": "1.2.0",
"sha256": "0vc4l77dcwa9lmzyqdci8ikjc0m2rhasl2zvyba547vf76qb0528",
"license": "cc-by-sa-40"
},
{
"pname": "de_core_news_md",
"version": "1.0.0",
"sha256": "072jz2rdi1nckny7k16avp86vjg4didfdsw816kfl9zwr88iny6g",
"license": "cc-by-sa-40"
},
{
"pname": "en_vectors_glove_md",
"version": "1.0.0",
"sha256": "1jbr27xnh5fdww8yphpvk2brfnzb174wfnxkzdqwv3iyi02zsin6",
"license": "cc-by-sa-40"
}]

View File

@@ -0,0 +1,26 @@
{ stdenv, buildPythonPackage, fetchurl, spacy }:
let
buildModelPackage = { pname, version, sha256, license }: buildPythonPackage {
name = "${pname}-${version}";
inherit pname version;
src = fetchurl {
url = "https://github.com/explosion/spacy-models/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
inherit sha256;
};
propagatedBuildInputs = [ spacy ];
meta = with stdenv.lib; {
description = "Models for the spaCy NLP library";
homepage = "https://github.com/explosion/spacy-models";
license = licenses."${license}";
maintainers = with maintainers; [ rvl ];
};
};
makeModelSet = models: with pkgs.lib; listToAttrs (map (m: nameValuePair m.pname (buildModelPackage m)) models);
in makeModelSet (pkgs.lib.importJSON ./models.json)
# cat models.json | jq -r '.[] | @uri "https://github.com/explosion/spacy-models/releases/download/\(.pname)-\(.version)/\(.pname)-\(.version).tar.gz"' | xargs -n1 nix-prefetch-url

View File

@@ -0,0 +1,65 @@
{ stdenv
, buildPythonPackage
, isPy27
, fetchPypi
, cachetools
, cld2-cffi
, cython
, cytoolz
, ftfy
, ijson
, matplotlib
, networkx
, numpy
, pyemd
, pyphen
, python-Levenshtein
, requests
, scikitlearn
, scipy
, spacy
, tqdm
, unidecode
}:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "textacy";
version = "0.4.1";
src = fetchPypi {
inherit pname version;
sha256 = "04wf3a7zgzz83nmgkh488wkl50zm9yfdpv3sl12sm2zj685plqcz";
};
disabled = isPy27; # 2.7 requires backports.csv
propagatedBuildInputs = [
cachetools
cld2-cffi
cytoolz
ftfy
ijson
matplotlib
networkx
numpy
pyemd
pyphen
python-Levenshtein
requests
scikitlearn
scipy
spacy
tqdm
unidecode
];
doCheck = false; # tests want to download data files
meta = with stdenv.lib; {
description = "Higher-level text processing, built on spaCy";
homepage = "http://textacy.readthedocs.io/";
license = licenses.asl20;
maintainers = with maintainers; [ rvl ];
};
}

View File

@@ -0,0 +1,23 @@
{ stdenv, buildPythonPackage, fetchPypi, glibcLocales }:
buildPythonPackage rec {
name = "${pname}-${version}";
pname = "Unidecode";
version = "0.04.21";
src = fetchPypi {
inherit pname version;
sha256 = "0lfhp9c5xrbpjvbpr12ji52g1lx04404bzzdg6pvabhzisw6l2i8";
};
LC_ALL="en_US.UTF-8";
buildInputs = [ glibcLocales ];
meta = with stdenv.lib; {
homepage = http://pypi.python.org/pypi/Unidecode/;
description = "ASCII transliterations of Unicode text";
license = licenses.gpl2;
maintainers = with maintainers; [ domenkozar ];
};
}