unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#55528] [PATCH 0/2] Add python-osmnx
@ 2022-05-19 19:44 Felix Gruber
  2022-05-19 19:46 ` [bug#55528] [PATCH 1/2] gnu: python-rtree: Update to 1.0.0 Felix Gruber
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Felix Gruber @ 2022-05-19 19:44 UTC (permalink / raw)
  To: 55528; +Cc: Felix Gruber

This patchset adds the OSMnx Python library for working with
OpenStreetMap data.

Felix Gruber (2):
  gnu: python-rtree: Update to 1.0.0.
  gnu: Add python-osmnx

 gnu/packages/geo.scm | 82 +++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 74 insertions(+), 8 deletions(-)

-- 
2.30.2





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#55528] [PATCH 1/2] gnu: python-rtree: Update to 1.0.0.
  2022-05-19 19:44 [bug#55528] [PATCH 0/2] Add python-osmnx Felix Gruber
@ 2022-05-19 19:46 ` Felix Gruber
  2022-05-19 19:46 ` [bug#55528] [PATCH 2/2] gnu: Add python-osmnx Felix Gruber
  2022-06-01 21:09 ` bug#55528: [PATCH 0/2] " Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Felix Gruber @ 2022-05-19 19:46 UTC (permalink / raw)
  To: 55528; +Cc: Felix Gruber

* gnu/packages/geo.scm (python-rtree): Update to 1.0.0.
[arguments]: Fix 'find-libspatialindex phase.
---
 gnu/packages/geo.scm | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 0c9240eea7..37a3e6d179 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1486,27 +1486,28 @@ persisted.
 (define-public python-rtree
   (package
     (name "python-rtree")
-    (version "0.9.7")
+    (version "1.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "Rtree" version))
        (sha256
-        (base32 "0gna530vy6rh76035cqh7i2lx199cvxjrzjczg9rm6k96k5751xy"))))
+        (base32 "10lnhf67c9pb0yisxdqmb52dy6lj1za1h9d4p69v0ihk2a138j6h"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'find-libspatialindex
            (lambda* (#:key inputs #:allow-other-keys)
-             (setenv "SPATIALINDEX_C_LIBRARY"
-                     (string-append (assoc-ref inputs "libspatialindex")
-                                    "/lib/libspatialindex.so"))))
+             (let ((libspatialindex (assoc-ref inputs "libspatialindex")))
+               (substitute* "rtree/finder.py"
+                 (("find_library\\(\"spatialindex_c\"\\)")
+                  (string-append  "\"" libspatialindex
+                                  "/lib/libspatialindex_c.so\""))))))
          (replace 'check
-           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+           (lambda* (#:key outputs tests? #:allow-other-keys)
              (when tests?
-               (add-installed-pythonpath inputs outputs)
-               (invoke "python" "-m" "pytest")))))))
+                 (invoke "pytest")))))))
     (native-inputs
      (list python-numpy python-pytest python-wheel))
     (inputs
-- 
2.30.2





^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [bug#55528] [PATCH 2/2] gnu: Add python-osmnx
  2022-05-19 19:44 [bug#55528] [PATCH 0/2] Add python-osmnx Felix Gruber
  2022-05-19 19:46 ` [bug#55528] [PATCH 1/2] gnu: python-rtree: Update to 1.0.0 Felix Gruber
@ 2022-05-19 19:46 ` Felix Gruber
  2022-06-01 21:09 ` bug#55528: [PATCH 0/2] " Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Felix Gruber @ 2022-05-19 19:46 UTC (permalink / raw)
  To: 55528; +Cc: Felix Gruber

* gnu/packages/geo.scm (python-osmnx): New variable.
---
 gnu/packages/geo.scm | 65 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 37a3e6d179..ea7483f16f 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -739,6 +739,71 @@ enables you to easily do operations in Python that would otherwise
 require a spatial database such as PostGIS.")
     (license license:bsd-3)))
 
+(define-public python-osmnx
+  (package
+    (name "python-osmnx")
+    (version "1.1.2")
+    (source
+     (origin
+       ; Fetch from github as the pypi package is missing the tests dir.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/gboeing/osmnx")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1n8qjn184p5a2s3j6x6iyc1i7p3l3xnbqqxm6ajwgwv6j5fw1d5a"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+             (when tests?
+               (add-installed-pythonpath inputs outputs)
+               ; TODO: Disable network tests
+               (invoke "pytest" "tests"
+                       "-k"
+                       (string-append
+                         ;; The following tests require network access.
+                         "not test_geocode_to_gdf"
+                         " and not test_stats"
+                         " and not test_osm_xml"
+                         " and not test_elevation"
+                         " and not test_routing"
+                         " and not test_plots"
+                         " and not test_find_nearest"
+                         " and not test_api_endpoints"
+                         " and not test_graph_save_load"
+                         " and not test_graph_from_functions"
+                         " and not test_geometries"))))))))
+    (propagated-inputs
+      (list python-folium
+            python-geopandas
+            python-matplotlib
+            python-networkx
+            python-numpy
+            python-pandas
+            python-pyproj
+            python-requests
+            python-rtree
+            python-shapely))
+    (native-inputs
+      (list python-numpy python-pytest))
+    (home-page "https://github.com/gboeing/osmnx")
+    (synopsis
+      "Retrieve, model, analyze, and visualize OpenStreetMap street networks")
+    (description
+      "OSMnx is a Python library that lets you download geospatial data
+from OpenStreetMap and model, project, visualize, and analyze real-world
+street networks and any other geospatial geometries.  You can download
+and model walkable, drivable, or bikeable urban networks with a single
+line of Python code then easily analyze and visualize them.  You can
+just as easily download and work with other infrastructure types,
+amenities/points of interest, building footprints, elevation data,
+street bearings/orientations, and speed/travel time.")
+    (license license:expat)))
+
 (define-public mapnik
   (package
     (name "mapnik")
-- 
2.30.2





^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#55528: [PATCH 0/2] Add python-osmnx
  2022-05-19 19:44 [bug#55528] [PATCH 0/2] Add python-osmnx Felix Gruber
  2022-05-19 19:46 ` [bug#55528] [PATCH 1/2] gnu: python-rtree: Update to 1.0.0 Felix Gruber
  2022-05-19 19:46 ` [bug#55528] [PATCH 2/2] gnu: Add python-osmnx Felix Gruber
@ 2022-06-01 21:09 ` Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2022-06-01 21:09 UTC (permalink / raw)
  To: Felix Gruber; +Cc: 55528-done

Hi,

Felix Gruber <felgru@posteo.net> skribis:

>   gnu: python-rtree: Update to 1.0.0.
>   gnu: Add python-osmnx

Applied, thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-06-01 21:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-19 19:44 [bug#55528] [PATCH 0/2] Add python-osmnx Felix Gruber
2022-05-19 19:46 ` [bug#55528] [PATCH 1/2] gnu: python-rtree: Update to 1.0.0 Felix Gruber
2022-05-19 19:46 ` [bug#55528] [PATCH 2/2] gnu: Add python-osmnx Felix Gruber
2022-06-01 21:09 ` bug#55528: [PATCH 0/2] " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).