aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/python.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python.scm')
-rw-r--r--gnu/packages/python.scm227
1 files changed, 224 insertions, 3 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d2698d4231..0c86183e42 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2015, 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
+;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -44,6 +45,7 @@
#:use-module ((guix licenses) #:select (expat zlib) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
+ #:use-module (gnu packages adns)
#:use-module (gnu packages attr)
#:use-module (gnu packages backup)
#:use-module (gnu packages compression)
@@ -57,6 +59,7 @@
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
+ #:use-module (gnu packages libevent)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages maths)
@@ -68,7 +71,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages readline)
#:use-module (gnu packages statistics)
- #:use-module (gnu packages texlive)
+ #:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
@@ -5462,7 +5465,7 @@ should be stored on various operating systems.")
(define-public python-llfuse
(package
(name "python-llfuse")
- (version "1.0")
+ (version "1.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -5470,7 +5473,7 @@ should be stored on various operating systems.")
"llfuse-" version ".tar.bz2"))
(sha256
(base32
- "1li7q04ljrvwharw4fblcbfhvk6s0l3lnv8yqb4c22lcgbkiqlps"))))
+ "1ywzbqkahrfl9kkcasxrmgilv6fybapvh6pqvimimnfh7sgxal72"))))
(build-system python-build-system)
(inputs
`(("fuse" ,fuse)
@@ -5806,6 +5809,35 @@ IPv6 addresses and networks. This is a port of the Python 3.3 ipaddress
module to older versions of Python.")
(license psfl)))
+(define-public python2-ipaddr
+ (package
+ (name "python2-ipaddr")
+ (version "2.1.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "ipaddr" version))
+ (sha256
+ (base32 "1dwq3ngsapjc93fw61rp17fvzggmab5x1drjzvd4y4q0i255nm8v"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:python ,python-2 ;version 2 only
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* _
+ (zero? (system* "python" "ipaddr_test.py")))))))
+ (home-page "https://github.com/google/ipaddr-py")
+ (synopsis "IP address manipulation library")
+ (description
+ "Ipaddr is a Python@tie{}2 library for creating and manupilating IPv4 and
+IPv6 addresses and networks.
+
+For new implementations you may prefer to use the standard module
+@code{ipaddress}, which was introduced in Python 3.3 and backported to older
+versions of Python.")
+ (license asl2.0)))
+
(define-public python-idna
(package
(name "python-idna")
@@ -8807,3 +8839,192 @@ the renaming, moving and extracting of attributes, functions, modules, fields
and parameters in Python 2 source code. These refactorings can also be applied
to occurences in strings and comments.")
(license gpl2)))
+
+(define-public python-py3status
+ (package
+ (name "python-py3status")
+ (version "2.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "py3status" version))
+ (sha256
+ (base32
+ "09y7h8rjay5kzwk5akq7f5f9wqnvjkxhivck04hdc8ny1nw3vqzp"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+ (home-page "https://github.com/ultrabug/py3status")
+ (synopsis "Extensible i3status wrapper written in Python")
+ (description "py3status is an i3status wrapper which extends i3status
+functionality in a modular way, allowing you to extend your panel with your
+own code, responding to click events and updating clock every second.")
+ (license bsd-3)))
+
+(define-public python-tblib
+ (package
+ (name "python-tblib")
+ (version "1.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "tblib" version))
+ (sha256 (base32
+ "02iahfkfa927hb4jq2bak36ldihwapzacfiq5lyxg8llwn98a1yi"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Upstream runs tests after installation and the package itself
+ ;; resides in a subdirectory. Extend PYTHONPATH so it will be
+ ;; found.
+ (setenv "PYTHONPATH"
+ (string-append (getcwd) "/build/lib:"
+ (getenv "PYTHONPATH")))
+ (zero? (system* "py.test" "-vv" "tests" "README.rst")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-setuptools" ,python-setuptools)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/ionelmc/python-tblib")
+ (synopsis "Traceback serialization library")
+ (description
+ "Traceback serialization allows you to:
+
+@enumerate
+@item Pickle tracebacks and raise exceptions with pickled tracebacks in
+different processes. This allows better error handling when running code over
+multiple processes (imagine multiprocessing, billiard, futures, celery etc).
+
+@item Parse traceback strings and raise with the parsed tracebacks.
+@end itemize")
+ (license bsd-3)))
+
+(define-public python2-tblib
+ (package-with-python2 python-tblib))
+
+(define-public python-sqlparse
+ (package
+ (name "python-sqlparse")
+ (version "0.1.19")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "sqlparse" version))
+ (sha256
+ (base32
+ "1s2fvaxgh9kqzrd6iwy5h7i61ckn05plx9np13zby93z3hdbx5nq"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* _
+ ;; setup.py-integrated 2to3 only affects the build files, but
+ ;; py.test is using the source files. So we need to convert them
+ ;; manually.
+ (when (zero? (system* "python3"))
+ (system* "2to3" "--no-diff" "-wn" "sqlparse" "tests"))
+ (zero? (system* "py.test")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-setuptools" ,python-setuptools)))
+ (home-page "https://github.com/andialbrecht/sqlparse")
+ (synopsis "Non-validating SQL parser")
+ (description "Sqlparse is a non-validating SQL parser for Python. It
+provides support for parsing, splitting and formatting SQL statements.")
+ (license bsd-3)))
+
+(define-public python2-sqlparse
+ (package-with-python2 python-sqlparse))
+
+(define-public python-greenlet
+ (package
+ (name "python-greenlet")
+ (version "0.4.9")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "greenlet" version))
+ (sha256
+ (base32
+ "04h0m54dyqg49vyarq26mry6kbivnpl47rnmmrk9qn8wpfxviybr"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+ (home-page "https://greenlet.readthedocs.io/")
+ (synopsis "Lightweight in-process concurrent programming")
+ (description
+ "Greenlet package is a spin-off of Stackless, a version of CPython
+that supports micro-threads called \"tasklets\". Tasklets run
+pseudo-concurrently (typically in a single or a few OS-level threads) and
+are synchronized with data exchanges on \"channels\".")
+ (license (list psfl license:expat))))
+
+(define-public python2-greenlet
+ (package-with-python2 python-greenlet))
+
+(define-public python-gevent
+ (package
+ (name "python-gevent")
+ (version "1.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "gevent" version))
+ (sha256
+ (base32
+ "1smf3kvidpdiyi2c81alal74p2zm0clrm6xbyy6y1k9a3f2vkrbf"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; unbunding libev and c-ares
+ (for-each delete-file-recursively '("libev" "c-ares"))
+ ;; fixing testsuite
+ (call-with-output-file "greentest/__init__.py" noop)
+ (substitute* "greentest/testrunner.py"
+ (("import util") "from . import util")
+ (("from util import log") "from .util import log"))))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-greenlet" ,python-greenlet)))
+ (native-inputs
+ `(("python-setuptools" ,python-setuptools)
+ ("python-six" ,python-six)))
+ (inputs
+ `(("c-ares" ,c-ares)
+ ("libev" ,libev)))
+ (home-page "http://www.gevent.org/")
+ (synopsis "Coroutine-based network library")
+ (description
+ "gevent is a coroutine-based Python networking library that uses greenlet
+to provide a high-level synchronous API on top of the libev event loop.")
+ (license license:expat)))
+
+(define-public python2-gevent
+ (package-with-python2 python-gevent))
+
+(define-public python-twisted
+ (package
+ (name "python-twisted")
+ (version "16.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (list (pypi-uri "Twisted" version ".tar.bz2") ; 404
+ (string-append
+ "https://pypi.io/packages/source/T/Twisted/"
+ "Twisted-" version ".tar.bz2")))
+ (sha256
+ (base32
+ "0ydxrp9myw1mvsz3qfzx5579y5llmqa82pxvqchgp5syczffi450"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-setuptools" ,python-setuptools)
+ ("python-zope-interface" ,python-zope-interface)))
+ (home-page "https://twistedmatrix.com/")
+ (synopsis "Asynchronous networking framework written in Python")
+ (description
+ "Twisted is an extensible framework for Python programming, with special
+focus on event-based network programming and multiprotocol integration.")
+ (license license:expat)))
+
+(define-public python2-twisted
+ (package-with-python2 python-twisted))