summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorFrederik Rietdijk <freddyrietdijk@fridh.nl>2017-09-16 11:29:44 +0200
committerGitHub <noreply@github.com>2017-09-16 11:29:44 +0200
commite8f873671f13b7e3e0ba0133fdc92e24a2a33e70 (patch)
tree5e13318a85d6aa036317a8361e8a7a92c7ca6bf6 /pkgs/development
parentb82b23b25bae08345ac79089dc489002cb52fc5d (diff)
parentfdb90edc6cc2f22877454479f5c040cea3a4f34f (diff)
downloadnixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar.gz
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar.bz2
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar.lz
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar.xz
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.tar.zst
nixlib-e8f873671f13b7e3e0ba0133fdc92e24a2a33e70.zip
Merge pull request #29334 from rvl/python-textacy
pythonPackages.textacy: init at 0.4.1
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/python-modules/cachetools/1.nix18
-rw-r--r--pkgs/development/python-modules/cachetools/default.nix18
-rw-r--r--pkgs/development/python-modules/cld2-cffi/default.nix27
-rw-r--r--pkgs/development/python-modules/ijson/default.nix21
-rw-r--r--pkgs/development/python-modules/pyemd/default.nix22
-rw-r--r--pkgs/development/python-modules/pyphen/default.nix19
-rw-r--r--pkgs/development/python-modules/spacy/models.json42
-rw-r--r--pkgs/development/python-modules/spacy/models.nix26
-rw-r--r--pkgs/development/python-modules/textacy/default.nix65
-rw-r--r--pkgs/development/python-modules/unidecode/default.nix23
10 files changed, 281 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/cachetools/1.nix b/pkgs/development/python-modules/cachetools/1.nix
new file mode 100644
index 000000000000..edfe965fa800
--- /dev/null
+++ b/pkgs/development/python-modules/cachetools/1.nix
@@ -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;
+  };
+}
diff --git a/pkgs/development/python-modules/cachetools/default.nix b/pkgs/development/python-modules/cachetools/default.nix
new file mode 100644
index 000000000000..fe69768c976a
--- /dev/null
+++ b/pkgs/development/python-modules/cachetools/default.nix
@@ -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;
+  };
+}
diff --git a/pkgs/development/python-modules/cld2-cffi/default.nix b/pkgs/development/python-modules/cld2-cffi/default.nix
new file mode 100644
index 000000000000..fd5b27d00e4d
--- /dev/null
+++ b/pkgs/development/python-modules/cld2-cffi/default.nix
@@ -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 ];
+  };
+}
diff --git a/pkgs/development/python-modules/ijson/default.nix b/pkgs/development/python-modules/ijson/default.nix
new file mode 100644
index 000000000000..f70cc9d69452
--- /dev/null
+++ b/pkgs/development/python-modules/ijson/default.nix
@@ -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 ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyemd/default.nix b/pkgs/development/python-modules/pyemd/default.nix
new file mode 100644
index 000000000000..e23cf7794b16
--- /dev/null
+++ b/pkgs/development/python-modules/pyemd/default.nix
@@ -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 ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyphen/default.nix b/pkgs/development/python-modules/pyphen/default.nix
new file mode 100644
index 000000000000..0e134f9d84a2
--- /dev/null
+++ b/pkgs/development/python-modules/pyphen/default.nix
@@ -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 ];
+  };
+}
diff --git a/pkgs/development/python-modules/spacy/models.json b/pkgs/development/python-modules/spacy/models.json
new file mode 100644
index 000000000000..e9c163c65259
--- /dev/null
+++ b/pkgs/development/python-modules/spacy/models.json
@@ -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"
+}]
diff --git a/pkgs/development/python-modules/spacy/models.nix b/pkgs/development/python-modules/spacy/models.nix
new file mode 100644
index 000000000000..3ef57d9c04f3
--- /dev/null
+++ b/pkgs/development/python-modules/spacy/models.nix
@@ -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
diff --git a/pkgs/development/python-modules/textacy/default.nix b/pkgs/development/python-modules/textacy/default.nix
new file mode 100644
index 000000000000..1647b837d976
--- /dev/null
+++ b/pkgs/development/python-modules/textacy/default.nix
@@ -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 ];
+  };
+}
diff --git a/pkgs/development/python-modules/unidecode/default.nix b/pkgs/development/python-modules/unidecode/default.nix
new file mode 100644
index 000000000000..1a5da395ee34
--- /dev/null
+++ b/pkgs/development/python-modules/unidecode/default.nix
@@ -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 ];
+  };
+}