summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/python-modules/ply/default.nix42
-rw-r--r--pkgs/top-level/python-packages.nix41
2 files changed, 43 insertions, 40 deletions
diff --git a/pkgs/development/python-modules/ply/default.nix b/pkgs/development/python-modules/ply/default.nix
new file mode 100644
index 000000000000..463468a9b404
--- /dev/null
+++ b/pkgs/development/python-modules/ply/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "ply";
+  version = "3.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "e7d1bdff026beb159c9942f7a17e102c375638d9478a7ecd4cc0c76afd8de0b8";
+  };
+
+  checkPhase = ''
+    ${python.interpreter} test/testlex.py
+    ${python.interpreter} test/testyacc.py
+  '';
+
+  # Test suite appears broken
+  doCheck = false;
+
+  meta = {
+    homepage = http://www.dabeaz.com/ply/;
+    description = "PLY (Python Lex-Yacc), an implementation of the lex and yacc parsing tools for Python";
+    longDescription = ''
+      PLY is an implementation of lex and yacc parsing tools for Python.
+      In a nutshell, PLY is nothing more than a straightforward lex/yacc
+      implementation.  Here is a list of its essential features: It's
+      implemented entirely in Python; It uses LR-parsing which is
+      reasonably efficient and well suited for larger grammars; PLY
+      provides most of the standard lex/yacc features including support for
+      empty productions, precedence rules, error recovery, and support for
+      ambiguous grammars; PLY is straightforward to use and provides very
+      extensive error checking; PLY doesn't try to do anything more or less
+      than provide the basic lex/yacc functionality.  In other words, it's
+      not a large parsing framework or a component of some larger system.
+    '';
+    license = lib.licenses.bsd3;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 4a4717ea6a73..c9033c3d825d 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -9099,46 +9099,7 @@ in {
 
   plone-testing = callPackage ../development/python-modules/plone-testing { };
 
-  ply = buildPythonPackage (rec {
-    name = "ply-3.8";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/ply/${name}.tar.gz";
-      sha256 = "e7d1bdff026beb159c9942f7a17e102c375638d9478a7ecd4cc0c76afd8de0b8";
-    };
-
-    checkPhase = ''
-      ${python.interpreter} test/testlex.py
-      ${python.interpreter} test/testyacc.py
-    '';
-
-    # Test suite appears broken
-    doCheck = false;
-
-    meta = {
-      homepage = http://www.dabeaz.com/ply/;
-
-      description = "PLY (Python Lex-Yacc), an implementation of the lex and yacc parsing tools for Python";
-
-      longDescription = ''
-        PLY is an implementation of lex and yacc parsing tools for Python.
-        In a nutshell, PLY is nothing more than a straightforward lex/yacc
-        implementation.  Here is a list of its essential features: It's
-        implemented entirely in Python; It uses LR-parsing which is
-        reasonably efficient and well suited for larger grammars; PLY
-        provides most of the standard lex/yacc features including support for
-        empty productions, precedence rules, error recovery, and support for
-        ambiguous grammars; PLY is straightforward to use and provides very
-        extensive error checking; PLY doesn't try to do anything more or less
-        than provide the basic lex/yacc functionality.  In other words, it's
-        not a large parsing framework or a component of some larger system.
-      '';
-
-      license = licenses.bsd3;
-
-      maintainers = [ ];
-    };
-  });
+  ply = callPackage ../development/python-modules/ply { };
 
   plyvel = buildPythonPackage (rec {
     name = "plyvel-0.9";