summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/python.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 470bad84ff..5fdf68e4a0 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -8864,6 +8864,38 @@ development version of CPython that are not available in older releases.")
                     (lambda _ (zero? (system* "python"
                                               "test_bz2file.py"))))))))))
 
+(define-public python-future
+  (package
+    (name "python-future")
+    (version "0.15.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "future" version))
+       (sha256
+        (base32
+         "15wvcfzssc68xqnqi1dq4fhd0848hwi9jn42hxyvlqna40zijfrx"))))
+    (build-system python-build-system)
+    ;; Many tests connect to the network or are otherwise flawed.
+    ;; https://github.com/PythonCharmers/python-future/issues/210
+    (arguments
+     `(#:tests? #f))
+    (home-page "http://python-future.org")
+    (synopsis "Single-source support for Python 3 and 2")
+    (description
+     "@code{python-future} is the missing compatibility layer between Python 2 and
+Python 3.  It allows you to use a single, clean Python 3.x-compatible codebase
+to support both Python 2 and Python 3 with minimal overhead.")
+    (license license:expat)
+    (properties `((python2-variant . ,(delay python2-future))))))
+
+(define-public python2-future
+  (let ((base (package-with-python2
+               (strip-python2-variant python-future))))
+    (package
+      (inherit base)
+      (native-inputs `(("python2-setuptools" ,python2-setuptools))))))
+
 (define-public python-cysignals
   (package
     (name "python-cysignals")