py-geopandas: New package. (#9919)

* py-geopandas: New package, including packages for its dependencies

* Trailing whitespace removed, etc

* One more trailing whitespace

* Removed some extraneous dependencies. No idea why I thought I needed them, but it now builds fine without them.

* Added a variant +plotting, to include the dependencies required for plotting, as these are large-ish if not being used.

* Added explicit dependency on py-matplotlib
This commit is contained in:
Neil Flood 2018-11-25 07:44:44 +10:00 committed by Adam J. Stewart
parent 25b9938ad1
commit 9945a59c47
5 changed files with 116 additions and 0 deletions

View File

@ -0,0 +1,19 @@
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class PyClickPlugins(PythonPackage):
"""An extension module for py-click to register external CLI
commands via setuptools entry-points."""
homepage = "https://pypi.org/project/click-plugins/"
url = "https://pypi.io/packages/source/c/click-plugins/click-plugins-1.0.4.tar.gz"
version('1.0.4', '3db73ba58271e3d9644be9b9c03a9d8d')
depends_on('py-setuptools', type='build')
depends_on('py-click@3.0:', type=('build', 'run'))

View File

@ -0,0 +1,19 @@
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class PyDescartes(PythonPackage):
"""Use Shapely or GeoJSON-like geometric objects as matplotlib paths
and patches"""
homepage = "https://pypi.org/project/descartes/"
url = "https://pypi.io/packages/source/d/descartes/descartes-1.1.0.tar.gz"
version('1.1.0', 'ac608090f3c9f6e0ce856fdc29944096')
depends_on('py-setuptools', type='build')
depends_on('py-matplotlib', type=('build', 'run'))

View File

@ -0,0 +1,29 @@
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class PyFiona(PythonPackage):
"""Alternative Python binding for OGR"""
homepage = "http://toblerity.org/fiona/"
url = "https://github.com/Toblerity/Fiona/archive/1.7.12.tar.gz"
version('1.7.12', 'a2269acf64d9c87482e5d67dae19501c')
depends_on('python@2.6:', type=('build', 'run'))
depends_on('py-cligj@0.4:', type=('build', 'run'))
depends_on('py-six@1.7:', type=('build', 'run'))
depends_on('py-munch', type=('build', 'run'))
depends_on('py-argparse', type=('build', 'run'), when='^python@:2.6')
depends_on('py-ordereddict', type=('build', 'run'), when='^python@:2.6')
depends_on('gdal@1.8:', type=('build', 'run'))
depends_on('py-click-plugins', type=('build', 'run'))
depends_on('py-setuptools', type='build')
depends_on('py-cython@0.21.2:', type='build')
depends_on('py-nose', type='test')

View File

@ -0,0 +1,30 @@
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class PyGeopandas(PythonPackage):
"""GeoPandas is an open source project to make working with geospatial
data in python easier. GeoPandas extends the datatypes used by pandas
to allow spatial operations on geometric types. Geometric operations are
performed by shapely. Geopandas further depends on fiona for file access
and descartes and matplotlib for plotting."""
homepage = "http://geopandas.org/"
url = "https://github.com/geopandas/geopandas/releases/download/v0.4.0/geopandas-0.4.0.tar.gz"
version('0.4.0', 'aaad4e27c000d9fa558730d84a9be468')
version('0.3.0', 'a4211e7a5e113002aec6823ba1368e75')
variant('plotting', default=False, description='Include dependencies required for plotting')
depends_on('py-setuptools', type='build')
depends_on('py-descartes', type=('build', 'run'), when='+plotting')
depends_on('py-matplotlib', type=('build', 'run'), when='+plotting')
depends_on('py-fiona', type=('build', 'run'))
depends_on('py-proj', type=('build', 'run'))
depends_on('py-shapely', type=('build', 'run'))
depends_on('py-pandas', type=('build', 'run'))

View File

@ -0,0 +1,19 @@
# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class PyMunch(PythonPackage):
"""A Munch is a Python dictionary that provides attribute-style
access (a la JavaScript objects). """
homepage = "https://github.com/Infinidat/munch"
url = "https://github.com/Infinidat/munch/archive/2.2.0.tar.gz"
version('2.2.0', 'a50f0e4d770b5106f0c440a6cff3617f')
depends_on('py-setuptools', type='build')
depends_on('py-six', type=('build', 'run'))