[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#49207] [PATCH v2 5/5] gnu: Add python-scitools-iris.
From: |
Vinicius Monego |
Subject: |
[bug#49207] [PATCH v2 5/5] gnu: Add python-scitools-iris. |
Date: |
Fri, 9 Jun 2023 14:58:54 +0000 |
* gnu/packages/geo.scm (python-scitools-iris): New variable.
---
gnu/packages/geo.scm | 69 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 69 insertions(+)
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index c1b028104c..eb58781591 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -73,6 +73,7 @@ (define-module (gnu packages geo)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
+ #:use-module (gnu packages digest)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@@ -1428,6 +1429,74 @@ (define-public python-cf-units
Climate and Forecast (CF) metadata conventions.")
(license license:lgpl3+)))
+(define-public python-scitools-iris
+ (package
+ (name "python-scitools-iris")
+ (version "3.6.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "scitools-iris" version))
+ (sha256
+ (base32
+ "08r13aans17qgv93m0hwzwmiqvbgkn5rhp9r5szyv4i99xz62igj"))))
+ (build-system pyproject-build-system)
+ (arguments
+ ;; Tests below fail because of URL open errors and missing data (which is
+ ;; probably being downloaded).
+ (list #:test-flags
+ #~(list "--ignore" "lib/iris/tests/test_cf.py"
+ "--ignore"
"lib/iris/tests/integration/netcdf/test_delayed_save.py"
+ "--ignore"
"lib/iris/tests/integration/netcdf/test_thread_safety.py"
+ "--ignore"
"lib/iris/tests/integration/plot/test_vector_plots.py"
+ "--ignore"
"lib/iris/tests/unit/analysis/regrid/test__CurvilinearRegridder.py"
+ "-k" (string-append "not test_python_versions"
+ " and not test_2d_coords_contour"
+ " and not test_grouped_dim"
+ " and not test_ungrouped_dim"))
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'check 'build-std-names
+ (lambda _
+ ;; Need to build lib/iris/std_names.py before
+ ;; running the tests.
+ (invoke "python" "setup.py" "std_names")
+ ;; Replace some executable paths.
+ (let ((nc #$(this-package-native-input "netcdf")))
+ (substitute* "lib/iris/tests/stock/netcdf.py"
+ (("env_bin_path\\(\"ncgen\"\\)")
+ (format #f "\"~a/bin/ncgen\"" nc)))
+ (substitute* "lib/iris/tests/__init__.py"
+ (("env_bin_path\\(\"ncdump\"\\)")
+ (format #f "\"~a/bin/ncdump\"" nc))))))
+ ;; To avoid the antlr4 error from cf-units.
+ (delete 'sanity-check))))
+ (native-inputs (list netcdf
+ python-click
+ python-filelock
+ python-imagehash
+ python-pytest
+ python-setuptools-scm
+ python-wheel))
+ (propagated-inputs (list python-cartopy
+ python-cf-units
+ python-cftime
+ python-dask
+ python-distributed
+ python-matplotlib
+ python-netcdf4
+ python-numpy
+ python-pyproj
+ python-scipy
+ python-shapely
+ python-xxhash))
+ (home-page "https://github.com/SciTools/iris")
+ (synopsis "Library for analysing and visualising Earth science data")
+ (description
+ "Iris is a Python library for analysing and visualising Earth
++science data. It excels when working with multi-dimensional Earth Science
++data, where tabular representations become unwieldy and inefficient. Iris
++implements a data model based on the CF conventions.")
+ (license license:lgpl3+)))
+
(define-public tegola
(package
(name "tegola")
--
2.34.1