[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: gnu: Add python-editdistance.
From: |
Ricardo Wurmus |
Subject: |
01/01: gnu: Add python-editdistance. |
Date: |
Sun, 22 Oct 2017 07:20:09 -0400 (EDT) |
rekado pushed a commit to branch master
in repository guix.
commit 03639d0354b708ac8ec08ff216113ca197c46787
Author: Ricardo Wurmus <address@hidden>
Date: Sun Oct 22 13:18:42 2017 +0200
gnu: Add python-editdistance.
* gnu/packages/textutils.scm (python-editdistance): New variable.
---
gnu/packages/textutils.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index b540004..674a350 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -38,6 +38,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system trivial)
+ #:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages compression)
@@ -623,3 +624,39 @@ completely with the standard @code{javax.swing.text}
package. It is fast and
efficient, and can be used in any application that needs to edit or view
source code.")
(license license:bsd-3)))
+
+;; We use the sources from git instead of the tarball from pypi, because the
+;; latter does not include the Cython source file from which bycython.cpp is
+;; generated.
+(define-public python-editdistance
+ (let ((commit "3ea84a7dd3258c76aa3be851ef3d50e59c886846")
+ (revision "1"))
+ (package
+ (name "python-editdistance")
+ (version (string-append "0.3.1-" revision "." (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/aflc/editdistance.git")
+ (commit commit)))
+ (sha256
+ (base32
+ "1l43svsv12crvzphrgi6x435z6xg8m086c64armp8wzb4l8ccm7g"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'build-cython-code
+ (lambda _
+ (with-directory-excursion "editdistance"
+ (delete-file "bycython.cpp")
+ (zero? (system* "cython" "--cplus" "bycython.pyx"))))))))
+ (native-inputs
+ `(("python-cython" ,python-cython)))
+ (home-page "https://www.github.com/aflc/editdistance")
+ (synopsis "Fast implementation of the edit distance (Levenshtein
distance)")
+ (description
+ "This library simply implements Levenshtein distance algorithm with C++
+and Cython.")
+ (license license:expat))))