diff mbox series

[bug#46955,1/2] gnu: Add python-sparse.

Message ID 20210306005703.25479-1-madalinionel.patrascu@mdc-berlin.de
State Accepted
Headers show
Series [bug#46955,1/2] gnu: Add python-sparse. | expand

Checks

Context Check Description
cbaines/submitting builds success
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Mădălin Ionel Patrașcu March 6, 2021, 12:57 a.m. UTC
* gnu/packages/python-xyz.scm (python-sparse): New variable.
---
 gnu/packages/python-xyz.scm | 41 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 40 insertions(+), 1 deletion(-)

Comments

Ricardo Wurmus April 1, 2021, 3:07 p.m. UTC | #1
Hi Mădălin,

> * gnu/packages/python-xyz.scm (python-sparse): New variable.

Thanks for the patch!

> +    (native-inputs
> +     `(("python-dask" ,python-dask)
> +       ("python-pytest" ,python-pytest)
> +       ("python-pytest-black" ,python-pytest-black)
> +       ("python-pytest-cov" ,python-pytest-cov)))

In spite of the addition of all these test inputs the test suite is not
run:

--8<---------------cut here---------------start------------->8---
starting phase `check'
running "python setup.py" with command "test" and parameters ()
['numpy', 'scipy>=0.19', 'numba>=0.49']
['numpy', 'scipy>=0.19', 'numba>=0.49']
running test
running egg_info
writing sparse.egg-info/PKG-INFO
writing dependency_links to sparse.egg-info/dependency_links.txt
writing entry points to sparse.egg-info/entry_points.txt
writing requirements to sparse.egg-info/requires.txt
writing top-level names to sparse.egg-info/top_level.txt
reading manifest file 'sparse.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.html' under directory 'sparse'
no previously-included directories found matching 'docs/_build'
writing manifest file 'sparse.egg-info/SOURCES.txt'
running build_ext

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK
phase `check' succeeded after 1.5 seconds
--8<---------------cut here---------------end--------------->8---

Could you please take a look at this?

> +    ;;https://github.com/pydata/sparse/blob/master/LICENSE
> +    (license license:bsd-3)))

No need to include this comment.
Ricardo Wurmus April 1, 2021, 3:10 p.m. UTC | #2
Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> writes:

> * gnu/packages/python-xyz.scm (python-sparse): New variable.
[…]
> +(define-public python-sparse
> +  (package
> +    (name "python-sparse")
> +    (version "0.11.2")

“guix lint” tells me:

    python-sparse@0.11.2: can be upgraded to 0.12.0

Is there a reason why you picked 0.11.2?  (Or did I just wait too long
to review your patch…?)
diff mbox series

Patch

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index fbc9ad688d..b5274c39a9 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -67,7 +67,7 @@ 
 ;;; Copyright © 2019, 2020 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
 ;;; Copyright © 2019, 2020 Tanguy Le Carrour <tanguy@bioneland.org>
-;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
+;;; Copyright © 2019, 2021 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
 ;;; Copyright © 2020 Riku Viitanen <riku.viitanen@protonmail.com>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2020 sirgazil <sirgazil@zoho.com>
@@ -4719,6 +4719,45 @@  objects.")
 (define-public python2-colormath
   (package-with-python2 python-colormath))
 
+(define-public python-sparse
+  (package
+    (name "python-sparse")
+    (version "0.11.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sparse" version))
+       (sha256
+        (base32
+         "0kw6ha83gk0dymayrxhh16xxk7aykiyiz3ksxdzj6hhjr3dkap5w"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-numba" ,python-numba)
+       ("python-numpy" ,python-numpy)
+       ("python-scipy" ,python-scipy)))
+    (native-inputs
+     `(("python-dask" ,python-dask)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-black" ,python-pytest-black)
+       ("python-pytest-cov" ,python-pytest-cov)))
+    (home-page "https://github.com/pydata/sparse/")
+    (synopsis "Library for multi-dimensional sparse arrays")
+    (description
+     "This package implements sparse arrays of arbitrary dimension on top of
+@code{numpy} and @code{scipy.sparse}.  Sparse array is a matrix in which most
+of the elements are zero.  @code{python-sparse} generalizes the
+@code{scipy.sparse.coo_matrix} and @code{scipy.sparse.dok_matrix} layouts, but
+extends beyond just rows and columns to an arbitrary number of dimensions.
+Additionally, this project maintains compatibility with the
+@code{numpy.ndarray} interface rather than the @code{numpy.matrix} interface
+used in @code{scipy.sparse}.  These differences make this project useful in
+certain situations where @code{scipy.sparse} matrices are not well suited, but
+it should not be considered a full replacement.  It lacks layouts that are not
+easily generalized like @dfn{compressed sparse row/column}(CSR/CSC) and
+depends on @code{scipy.sparse} for some computations.")
+    ;;https://github.com/pydata/sparse/blob/master/LICENSE
+    (license license:bsd-3)))
+
 (define-public python-spectra
   (package
     (name "python-spectra")