nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytestCheckHook,
6
7 beautifulsoup4,
8 fiona,
9 geodatasets,
10 geopandas,
11 jinja2,
12 numpy,
13 packaging,
14 pandas,
15 platformdirs,
16 requests,
17 scikit-learn,
18 scipy,
19 setuptools-scm,
20 shapely,
21}:
22
23buildPythonPackage rec {
24 pname = "libpysal";
25 version = "4.14.1";
26 pyproject = true;
27
28 src = fetchFromGitHub {
29 owner = "pysal";
30 repo = "libpysal";
31 tag = "v${version}";
32 hash = "sha256-epwviJtQ97MxUA4Gpw6SJceCdBPFXnZBF13A1HiJcOo=";
33 };
34
35 build-system = [ setuptools-scm ];
36
37 dependencies = [
38 beautifulsoup4
39 fiona
40 geopandas
41 jinja2
42 numpy
43 packaging
44 pandas
45 platformdirs
46 requests
47 scikit-learn
48 scipy
49 shapely
50 ];
51
52 nativeCheckInputs = [
53 geodatasets
54 pytestCheckHook
55 ];
56
57 preCheck = ''
58 export HOME=$TMPDIR
59 '';
60
61 # requires network access
62 disabledTestPaths = [
63 "libpysal/graph/tests/test_summary.py"
64 "libpysal/cg/tests/test_geoJSON.py"
65 "libpysal/examples/tests/test_available.py"
66 "libpysal/graph/tests/test_base.py"
67 "libpysal/graph/tests/test_builders.py"
68 "libpysal/graph/tests/test_contiguity.py"
69 "libpysal/graph/tests/test_kernel.py"
70 "libpysal/graph/tests/test_matching.py"
71 "libpysal/graph/tests/test_plotting.py"
72 "libpysal/graph/tests/test_triangulation.py"
73 "libpysal/graph/tests/test_utils.py"
74 "libpysal/graph/tests/test_set_ops.py"
75 "libpysal/weights/tests/test_contiguity.py"
76 "libpysal/weights/tests/test_util.py"
77 ];
78
79 pythonImportsCheck = [ "libpysal" ];
80
81 meta = {
82 description = "Library of spatial analysis functions";
83 homepage = "https://pysal.org/libpysal/";
84 changelog = "https://github.com/pysal/libpysal/releases/tag/${src.tag}";
85 license = lib.licenses.bsd3;
86 teams = [ lib.teams.geospatial ];
87 };
88}