Skip to content

Commit

Permalink
Merge pull request easybuilders#22197 from pavelToman/20250122130046_…
Browse files Browse the repository at this point in the history
…new_pr_wrf-python134120241111

{geo}[foss/2024a] wrf-python v1.3.4.1-20241111, basemap v1.4.1, Cartopy v0.24.1
  • Loading branch information
boegel authored Jan 22, 2025
2 parents cb90b6e + c294453 commit 2f026ee
Show file tree
Hide file tree
Showing 3 changed files with 160 additions and 0 deletions.
59 changes: 59 additions & 0 deletions easybuild/easyconfigs/b/basemap/basemap-1.4.1-foss-2024a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# The newer version require also the installation of basemap-data.
# Conveniently, the tarball contains that too, so that is the one
# being used here.
# Based on basemap-1.2.2-foss-2020a-Python-3.8.2.eb
# Author: J. Sassmannshausen (Imperial College London/UK)

easyblock = 'PythonBundle'

name = 'basemap'
version = '1.4.1'

homepage = 'https://matplotlib.org/basemap/'
description = """The matplotlib basemap toolkit is a library for plotting
2D data on maps in Python"""

toolchain = {'name': 'foss', 'version': '2024a'}

builddependencies = [
('Cython', '3.0.10'),
]

dependencies = [
('Python', '3.12.3'),
('matplotlib', '3.9.2'),
('GEOS', '3.12.2'),
('Pillow', '10.4.0'),
('pyproj', '3.7.0'),
]

use_pip = True
sanity_pip_check = True

local_preinstallopts = "cd packages/%(name)s && "
# remote strict upper limit for required Python packages for recent Python versions
local_preinstallopts += "sed -i 's/< [0-9.]*; python_version >=/; python_version >=/g' requirements.txt && "
local_preinstallopts += "GEOS_DIR=$EBROOTGEOS"

exts_list = [
('pyshp', '2.3.1', {
'modulename': 'shapefile',
'checksums': ['4caec82fd8dd096feba8217858068bacb2a3b5950f43c048c6dc32a3489d5af1'],
}),
('basemap_data', version, {
'modulename': 'mpl_toolkits.basemap_data',
'preinstallopts': "cd packages/%(name)s && GEOS_DIR=$EBROOTGEOS",
'source_urls': ['https://github.com/matplotlib/basemap/archive/'],
'sources': ['v%(version)s.tar.gz'],
'checksums': ['730b1e2ff5eb31c73680bd8ebabc6b11adfc587cfa6832c528a8a82822e5a490'],
}),
(name, version, {
'modulename': 'mpl_toolkits.basemap',
'preinstallopts': local_preinstallopts,
'source_urls': ['https://github.com/matplotlib/basemap/archive/'],
'sources': ['v%(version)s.tar.gz'],
'checksums': ['730b1e2ff5eb31c73680bd8ebabc6b11adfc587cfa6832c528a8a82822e5a490'],
}),
]

moduleclass = 'vis'
54 changes: 54 additions & 0 deletions easybuild/easyconfigs/c/Cartopy/Cartopy-0.24.1-foss-2024a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
easyblock = 'PythonBundle'

name = 'Cartopy'
version = '0.24.1'

homepage = 'https://scitools.org.uk/cartopy/docs/latest/'
description = """Cartopy is a Python package designed to make drawing maps for data analysis and visualisation easy."""

toolchain = {'name': 'foss', 'version': '2024a'}

builddependencies = [
('Cython', '3.0.10'),
]
dependencies = [
('Python', '3.12.3'),
('Python-bundle-PyPI', '2024.06'),
('Fiona', '1.10.1'),
('GDAL', '3.10.0'),
('GEOS', '3.12.2'),
('matplotlib', '3.9.2'),
('pyproj', '3.7.0'),
('SciPy-bundle', '2024.05'),
('Shapely', '2.0.6'),
('lxml', '5.3.0'),
('Pillow', '10.4.0'),
('PROJ', '9.4.1'),
('PyYAML', '6.0.2'),
]

use_pip = True
sanity_pip_check = True

exts_list = [
('OWSLib', '0.32.0', {
'checksums': ['7513860d3102ae8d4dc5efd8652ff3c61eca3a8cb220d6c8601121357cd2b01a'],
}),
('pyepsg', '0.4.0', {
'checksums': ['2d08fad1e7a8b47a90a4e43da485ba95705923425aefc4e2a3efa540dbd470d7'],
}),
('pykdtree', '1.3.13', {
'checksums': ['3accf852e946653e399c3d4dbbe119dbc6d3f72cfd2d5a95cabf0bf0c7f924fe'],
}),
('pyshp', '2.3.1', {
'modulename': 'shapefile',
'checksums': ['4caec82fd8dd096feba8217858068bacb2a3b5950f43c048c6dc32a3489d5af1'],
}),
(name, version, {
'preinstallopts': r"sed -i 's/dynamic = \[\"version\"\]/version = \"%(version)s\"/g' pyproject.toml && ",
'sources': ['cartopy-%(version)s.tar.gz'],
'checksums': ['01c910d5634c69a7efdec46e0a17d473d2328767f001d4dc0b5c4b48e585c8bd'],
}),
]

moduleclass = 'geo'
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
easyblock = 'PythonBundle'

name = 'wrf-python'
version = '1.3.4.1-20241111'
local_commit = '5711683'

homepage = 'https://wrf-python.readthedocs.io'
description = """A collection of diagnostic and interpolation routines for use with output from
the Weather Research and Forecasting (WRF-ARW) Model."""

toolchain = {'name': 'foss', 'version': '2024a'}
toolchainopts = {'pic': True}

builddependencies = [
('CMake', '3.29.3'),
('scikit-build-core', '0.10.6'),
]
dependencies = [
('Python', '3.12.3'),
('SciPy-bundle', '2024.05'),
('netcdf4-python', '1.7.1.post2'),
('xarray', '2024.11.0'),
('matplotlib', '3.9.2'),
('Cartopy', '0.24.1'),
('basemap', '1.4.1'),
('wrapt', '1.16.0'),
]

use_pip = True

exts_list = [
(name, version, {
'modulename': 'wrf',
# download latest commit with new build system - old one is not compatible with python 3.12
# see https://github.com/NCAR/wrf-python/issues/217 and https://github.com/NCAR/wrf-python/pull/242
'source_urls': ['https://github.com/NCAR/wrf-python/archive/'],
'sources': [{
'download_filename': '%s.tar.gz' % local_commit,
'filename': '%%(name)s-%%(version)s-%s.tar.gz' % local_commit,
}],
'checksums': ['b501097ae8fbf121420371b1dc8911a8900968e4d63726a454886f855db618a5'],
}),
]

sanity_pip_check = True

moduleclass = 'geo'

0 comments on commit 2f026ee

Please sign in to comment.