pythonPackages.pysparse: init at 1.1.1-dev

This commit is contained in:
Chris Ostrouchov 2019-07-12 11:23:56 -04:00 committed by Frederik Rietdijk
parent babeb7361e
commit 2c396d9f07
3 changed files with 139 additions and 0 deletions

View file

@ -0,0 +1,49 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, numpy
, setuptools
, liblapack
, isPy27
, python
}:
buildPythonPackage rec {
pname = "pysparse";
version = "1.3-dev";
disabled = !isPy27;
src = fetchFromGitHub {
owner = "PythonOptimizers";
repo = "pysparse";
rev = "f8430bd99ac2a6209c462657c5792d10033888cc";
sha256 = "19xcq8214yndra1xjhna3qjm32wprsqck97dlnw3xcww7rfy6hqh";
};
hardeningDisable = [ "all" ];
propagatedBuildInputs = [
numpy
numpy.blas
liblapack
];
# Include patches from working version of PySparse 1.3-dev in
# Conda-Forge,
# https://github.com/conda-forge/pysparse-feedstock/tree/b69266911a2/recipe
# Thanks to https://github.com/guyer
patches = [ ./dropPackageLoader.patch ];
checkPhase = ''
cd test
${python.interpreter} -c "import pysparse"
${python.interpreter} test_sparray.py
'';
meta = with lib; {
homepage = https://github.com/PythonOptimizers/pysparse;
description = "A Sparse Matrix Library for Python";
license = licenses.bsd3;
maintainers = with maintainers; [ costrouc ];
};
}

View file

@ -0,0 +1,88 @@
diff --git a/pysparse/__init__.py b/pysparse/__init__.py
index 6d09b00..ff39084 100644
--- a/pysparse/__init__.py
+++ b/pysparse/__init__.py
@@ -1,9 +1,42 @@
-"PySparse: A Fast Sparse Matrix Library for Python"
+"""
+PySparse: A Fast Sparse Matrix Library for Python
+=================================================
+
+Documentation is available in the docstrings and
+online at http://pysparse.sourceforge.net/.
+
+Contents
+--------
+Pysparse imports
+::
+ spmatrix --- sparse matrix types
+
+and, in addition, provides:
+
+Subpackages
+-----------
+Using any of these subpackages requires an explicit import. For example,
+``import pysparse.itsolvers``.
+
+::
+
+ itsolvers --- Iterative linear algebra solvers
+ precon --- Preconditioners
+ direct --- Direct solvers
+ direct.superlu --- Wrappers to SuperLU library
+ direct.umfpack --- Wrappers to UMFPACK library
+ eigen.jdsym --- Jacobi davidson eigenvalue solver for symmetric matrices
+
+Utility tools
+-------------
+::
+
+ __version__ --- pysparse version string
+"""
+
__docformat__ = 'restructuredtext'
-# Imports
-from numpy._import_tools import PackageLoader
try:
from version import version as __version__
except ImportError:
@@ -11,31 +44,6 @@ except ImportError:
__version__ = 'undefined'
from sparse import spmatrix
-#from sparse import *
-from misc import get_include
-
-pkgload = PackageLoader()
-pkgload(verbose=False,postpone=True)
-
-if __doc__:
- __doc__ += """
-
-Available subpackages
----------------------
-"""
-if __doc__:
- __doc__ += pkgload.get_pkgdocs()
-
-__all__ = filter(lambda s: not s.startswith('_'), dir())
-__all__ += '__version__'
-
-__doc__ += """
-
-Miscellaneous
--------------
-
- __version__ : pysparse version string
-"""
from pysparse.misc import Deprecated
@@ -47,3 +55,5 @@ class _superlu:
return self.factorizeFnc(*args, **kwargs)
superlu = _superlu()
+
+__all__ = ['spmatrix', 'superlu', '__version__']

View file

@ -4274,6 +4274,8 @@ in {
pyspread = callPackage ../development/python-modules/pyspread { };
pysparse = callPackage ../development/python-modules/pysparse { };
pyupdate = callPackage ../development/python-modules/pyupdate {};
pyx = callPackage ../development/python-modules/pyx { };