From 80ae926fe34523aea630384780baae6caf330566 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 17:46:59 +0000 Subject: [PATCH 01/15] Update citation metadata for v0.2.2 release Changes: - Updated CITATION.cff with v0.2.2, release date, and corrected URLs - Fixed author names and ORCID in CITATION.cff and .zenodo.json - Updated README software citation to reflect v0.2.2 - Added placeholder DOI (to be updated after Zenodo release) Prepares repository for Zenodo DOI assignment. Co-Authored-By: Claude Opus 4.6 --- .zenodo.json | 4 ++-- CITATION.cff | 17 +++++++++-------- README.md | 15 ++++++++------- 3 files changed, 19 insertions(+), 17 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index c502bbd..7bae43d 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -3,14 +3,14 @@ "description": "SpiPy is a Python implementation of SPIRES (SPectral Inversion of REflectance from Snow), a spectral unmixing algorithm for analyzing snow reflectance data from satellite imagery. It retrieves snow properties (grain size, dust concentration, fractional snow-covered area) using lookup tables generated from Mie-scattering theory. This implementation features a hybrid Python/C++ architecture achieving 3000x speedup over pure Python implementations.", "creators": [ { - "name": "Bair, Ned", + "name": "Bair, Edward H.", "affiliation": "University of California, Santa Barbara", "orcid": "0000-0002-7654-3210" }, { "name": "Griessbaum, Niklas", "affiliation": "Leidos, Inc.", - "orcid": "0000-0000-0000-0000" + "orcid": "0009-0006-4383-6696" } ], "license": "MIT", diff --git a/CITATION.cff b/CITATION.cff index 46dd0a5..6cebc5f 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -3,19 +3,20 @@ message: "If you use this software, please cite both the software and the algori title: "SpiPy: Python implementation of SPIRES snow property inversion" authors: - family-names: Bair - given-names: Ned + given-names: Edward H. email: edwardbair@ucsb.edu affiliation: "University of California, Santa Barbara" - orcid: "https://orcid.org/0000-0002-7654-3210" # Update with actual ORCID if available + orcid: "https://orcid.org/0000-0002-7654-3210" - family-names: Griessbaum given-names: Niklas affiliation: "Leidos, Inc." - orcid: "https://orcid.org/0000-0000-0000-0000" # Update with actual ORCID if available -version: 0.2.0 -date-released: 2024-11-06 -repository-code: "https://github.com/edwardbair/SpiPy" -url: "https://github.com/edwardbair/SpiPy" -license: MIT # Update if different + orcid: "https://orcid.org/0009-0006-4383-6696" +version: 0.2.2 +date-released: 2026-02-23 +repository-code: "https://github.com/NiklasPhabian/SpiPy" +url: "https://spipy.readthedocs.io" +license: MIT +doi: 10.5281/zenodo.XXXXXXX # Will be updated after Zenodo release keywords: - remote sensing - snow properties diff --git a/README.md b/README.md index 963d011..1b25b3f 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ **[📦 View Source on GitHub](https://github.com/NiklasPhabian/SpiPy)** | **[📖 Documentation](https://spipy.readthedocs.io)** | **[🐛 Report Issues](https://github.com/NiklasPhabian/SpiPy/issues)** -SpiPy is a Python implementation of [SPIRES](https://ieeexplore.ieee.org/document/9290428) (SPectral Inversion of REflectance from Snow), originally implemented in MATLAB ([SPIRES GitHub repository](https://github.com/edwardbair/SPIRES)). +SpiPy is a Python implementation of [SPIRES](https://ieeexplore.ieee.org/document/9290428) (Snow Property Inversion From Remote Sensing), originally implemented in MATLAB ([SPIRES GitHub repository](https://github.com/edwardbair/SPIRES)). ## Overview @@ -239,13 +239,14 @@ If you use this software, please cite the algorithm paper, software implementati **Software:** ```bibtex -@software{bair2024spipy, +@software{bair2026spipy, title={SpiPy: Python implementation of SPIRES snow property inversion}, - author={Bair, Ned and Griessbaum, Niklas}, - year={2024}, - url={https://github.com/edwardbair/SpiPy}, - version={0.2.0}, - note={See CITATION.cff for full metadata} + author={Bair, Edward H. and Griessbaum, Niklas}, + year={2026}, + url={https://github.com/NiklasPhabian/SpiPy}, + version={0.2.2}, + doi={10.5281/zenodo.XXXXXXX}, + note={DOI will be updated after Zenodo release. See CITATION.cff for full metadata} } ``` From 368f34f4bccd42a16dcd9213cc91c8094db71cb5 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 17:57:48 +0000 Subject: [PATCH 02/15] Bump version to 0.2.4 for Zenodo integration Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index 6cebc5f..da623c8 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -11,7 +11,7 @@ authors: given-names: Niklas affiliation: "Leidos, Inc." orcid: "https://orcid.org/0009-0006-4383-6696" -version: 0.2.2 +version: 0.2.4 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" From 98f4f7cb0611bb85e73200fd249d19fb449eece4 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:03:29 +0000 Subject: [PATCH 03/15] Fix Zenodo grant ID format issue Zenodo requires grant IDs from their database (OpenAIRE format). Moved funding information to notes field instead. Co-Authored-By: Claude Opus 4.6 --- .zenodo.json | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index 7bae43d..1b6a591 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -32,9 +32,5 @@ "scheme": "doi" } ], - "grants": [ - { - "id": "W913E523C0002" - } - ] + "notes": "This work was supported by contract W913E523C0002." } From e43df29199da94782d03a76a0b5b86cb55aca520 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:03:50 +0000 Subject: [PATCH 04/15] Bump version to 0.2.5 for corrected Zenodo metadata Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index da623c8..c18c58f 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -11,7 +11,7 @@ authors: given-names: Niklas affiliation: "Leidos, Inc." orcid: "https://orcid.org/0009-0006-4383-6696" -version: 0.2.4 +version: 0.2.5 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" From 5e4846a44c817a1eed55308b35cdb66ea80c55b9 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:06:03 +0000 Subject: [PATCH 05/15] Remove ORCID fields from .zenodo.json to fix Zenodo validation Zenodo GitHub integration is having issues with ORCID format. Removing ORCIDs from .zenodo.json (they remain in CITATION.cff). Co-Authored-By: Claude Opus 4.6 --- .zenodo.json | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index 1b6a591..9655220 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -4,13 +4,11 @@ "creators": [ { "name": "Bair, Edward H.", - "affiliation": "University of California, Santa Barbara", - "orcid": "0000-0002-7654-3210" + "affiliation": "University of California, Santa Barbara" }, { "name": "Griessbaum, Niklas", - "affiliation": "Leidos, Inc.", - "orcid": "0009-0006-4383-6696" + "affiliation": "Leidos, Inc." } ], "license": "MIT", From 766a16b3767a9fde7a57610e1c13fa6f1f0384cb Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:06:23 +0000 Subject: [PATCH 06/15] Bump version to 0.2.6 Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index c18c58f..749bc26 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -11,7 +11,7 @@ authors: given-names: Niklas affiliation: "Leidos, Inc." orcid: "https://orcid.org/0009-0006-4383-6696" -version: 0.2.5 +version: 0.2.6 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" From 4fb96da9b89cdd1bde81ae9b5e719ba3045b1c94 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:07:16 +0000 Subject: [PATCH 07/15] Add ORCIDs back in URL format for Zenodo compatibility Using full ORCID URLs (https://orcid.org/...) instead of bare numbers, which Zenodo's API may accept better. Co-Authored-By: Claude Opus 4.6 --- .zenodo.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index 9655220..7f1d401 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -4,11 +4,13 @@ "creators": [ { "name": "Bair, Edward H.", - "affiliation": "University of California, Santa Barbara" + "affiliation": "University of California, Santa Barbara", + "orcid": "https://orcid.org/0000-0002-7654-3210" }, { "name": "Griessbaum, Niklas", - "affiliation": "Leidos, Inc." + "affiliation": "Leidos, Inc.", + "orcid": "https://orcid.org/0009-0006-4383-6696" } ], "license": "MIT", From 7288fa83e6b9900ca32a33706865a93d797ae2a2 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:07:27 +0000 Subject: [PATCH 08/15] Bump version to 0.2.7 Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index 749bc26..5e2614a 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -11,7 +11,7 @@ authors: given-names: Niklas affiliation: "Leidos, Inc." orcid: "https://orcid.org/0009-0006-4383-6696" -version: 0.2.6 +version: 0.2.7 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" From 4f248624ecdbe4c7f2646a63b9048b911779369a Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:13:52 +0000 Subject: [PATCH 09/15] Fix ORCIDs for both authors Corrected ORCIDs: - Niklas Griessbaum: 0000-0001-5037-6266 - Edward H. Bair: 0000-0002-6554-387X Co-Authored-By: Claude Opus 4.6 --- .zenodo.json | 4 ++-- CITATION.cff | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index 7f1d401..61b6f1a 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -5,12 +5,12 @@ { "name": "Bair, Edward H.", "affiliation": "University of California, Santa Barbara", - "orcid": "https://orcid.org/0000-0002-7654-3210" + "orcid": "https://orcid.org/0000-0002-6554-387X" }, { "name": "Griessbaum, Niklas", "affiliation": "Leidos, Inc.", - "orcid": "https://orcid.org/0009-0006-4383-6696" + "orcid": "https://orcid.org/0000-0001-5037-6266" } ], "license": "MIT", diff --git a/CITATION.cff b/CITATION.cff index 5e2614a..fdee4cc 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -6,11 +6,11 @@ authors: given-names: Edward H. email: edwardbair@ucsb.edu affiliation: "University of California, Santa Barbara" - orcid: "https://orcid.org/0000-0002-7654-3210" + orcid: "https://orcid.org/0000-0002-6554-387X" - family-names: Griessbaum given-names: Niklas affiliation: "Leidos, Inc." - orcid: "https://orcid.org/0009-0006-4383-6696" + orcid: "https://orcid.org/0000-0001-5037-6266" version: 0.2.7 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" From 9ed6650ec80598c23af3a68a8bf194cad8efdd18 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:14:03 +0000 Subject: [PATCH 10/15] Bump version to 0.2.8 Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CITATION.cff b/CITATION.cff index fdee4cc..2f321f4 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -11,7 +11,7 @@ authors: given-names: Niklas affiliation: "Leidos, Inc." orcid: "https://orcid.org/0000-0001-5037-6266" -version: 0.2.7 +version: 0.2.8 date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" From cec7a8df0288efd53dc5d96289e98ef9fdb3ee69 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:18:26 +0000 Subject: [PATCH 11/15] Add Zenodo DOI to citation metadata Updates: - CITATION.cff: Added DOI 10.5281/zenodo.18747284 - README.md: Updated software citation with DOI and version 0.2.8 - README.md: Added Zenodo DOI badge Co-Authored-By: Claude Opus 4.6 --- CITATION.cff | 2 +- README.md | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 2f321f4..59d2d74 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -16,7 +16,7 @@ date-released: 2026-02-23 repository-code: "https://github.com/NiklasPhabian/SpiPy" url: "https://spipy.readthedocs.io" license: MIT -doi: 10.5281/zenodo.XXXXXXX # Will be updated after Zenodo release +doi: 10.5281/zenodo.18747284 keywords: - remote sensing - snow properties diff --git a/README.md b/README.md index 1b25b3f..ae19a9c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # SpiPy [![PyPI version](https://badge.fury.io/py/spires.svg)](https://pypi.org/project/spires/) +[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18747284.svg)](https://doi.org/10.5281/zenodo.18747284) [![Documentation Status](https://readthedocs.org/projects/spipy/badge/?version=latest)](https://spipy.readthedocs.io/en/latest/?badge=latest) [![Build and Test](https://github.com/NiklasPhabian/SpiPy/workflows/Build%20and%20Test/badge.svg)](https://github.com/NiklasPhabian/SpiPy/actions) [![Python 3.9-3.14](https://img.shields.io/badge/python-3.9--3.14-blue.svg)](https://github.com/NiklasPhabian/SpiPy) @@ -244,9 +245,9 @@ If you use this software, please cite the algorithm paper, software implementati author={Bair, Edward H. and Griessbaum, Niklas}, year={2026}, url={https://github.com/NiklasPhabian/SpiPy}, - version={0.2.2}, - doi={10.5281/zenodo.XXXXXXX}, - note={DOI will be updated after Zenodo release. See CITATION.cff for full metadata} + version={0.2.8}, + doi={10.5281/zenodo.18747284}, + note={See CITATION.cff for full metadata} } ``` From 9d8648fad66ac050fe7fb9444245eea0eb2e5cc9 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:36:48 +0000 Subject: [PATCH 12/15] Add LUT files for MODIS, HLS, and OLI via Git LFS Added three lookup table files properly tracked with Git LFS: - lut_HLSS30_b1to13_3um_dust.mat (101 MB) - lut_modis_b1to7_3um_dust.mat (537 MB) - lut_oli_b1to7_3um_dust.mat (55 MB) Also added tests/.gitattributes to ensure *.mat files use LFS. Co-Authored-By: Claude Opus 4.6 --- tests/.gitattributes | 1 + tests/data/lut_HLSS30_b1to13_3um_dust.mat | 3 +++ tests/data/lut_modis_b1to7_3um_dust.mat | 3 +++ tests/data/lut_oli_b1to7_3um_dust.mat | 3 +++ 4 files changed, 10 insertions(+) create mode 100644 tests/.gitattributes create mode 100644 tests/data/lut_HLSS30_b1to13_3um_dust.mat create mode 100644 tests/data/lut_modis_b1to7_3um_dust.mat create mode 100644 tests/data/lut_oli_b1to7_3um_dust.mat diff --git a/tests/.gitattributes b/tests/.gitattributes new file mode 100644 index 0000000..4d5d840 --- /dev/null +++ b/tests/.gitattributes @@ -0,0 +1 @@ +*.mat filter=lfs diff=lfs merge=lfs -text diff --git a/tests/data/lut_HLSS30_b1to13_3um_dust.mat b/tests/data/lut_HLSS30_b1to13_3um_dust.mat new file mode 100644 index 0000000..c304c4c --- /dev/null +++ b/tests/data/lut_HLSS30_b1to13_3um_dust.mat @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5f635a2e90bde0a3c365b1b0331d5167705cdd19254893b19902d2aff9e61b7 +size 105168723 diff --git a/tests/data/lut_modis_b1to7_3um_dust.mat b/tests/data/lut_modis_b1to7_3um_dust.mat new file mode 100644 index 0000000..9dfa900 --- /dev/null +++ b/tests/data/lut_modis_b1to7_3um_dust.mat @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a82d6b829f945f3308c6860888865bc1c62502ad9ed1ac3b64dd205f68a4600b +size 562473461 diff --git a/tests/data/lut_oli_b1to7_3um_dust.mat b/tests/data/lut_oli_b1to7_3um_dust.mat new file mode 100644 index 0000000..471a096 --- /dev/null +++ b/tests/data/lut_oli_b1to7_3um_dust.mat @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1e80c2455ed9a5dd67e210bc38fef77019a543c1c6f596816980f017e8971cf +size 56937951 From ebf052ab79ba6da44e732653658f0e7339c20c10 Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:40:16 +0000 Subject: [PATCH 13/15] Update tests/data README to document new LUT files Added documentation for newly added LUT files in repository: - lut_HLSS30_b1to13_3um_dust.mat (HLS) - lut_modis_b1to7_3um_dust.mat (MODIS) - lut_oli_b1to7_3um_dust.mat (Landsat OLI) Updates: - Organized files into LUT and imagery subsections - Added usage examples for all LUT types - Clarified that most LUTs are now in repo via LFS - Updated CI/CD behavior notes for both GitHub and GitLab - Noted LUT_MODIS.mat is now legacy format Co-Authored-By: Claude Opus 4.6 --- tests/data/README.md | 57 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 45 insertions(+), 12 deletions(-) diff --git a/tests/data/README.md b/tests/data/README.md index 26a2f2a..25954ba 100644 --- a/tests/data/README.md +++ b/tests/data/README.md @@ -4,13 +4,27 @@ This directory contains test data for the SpiPy package. ## Files in Repository (via Git LFS) -Small test data files suitable for CI/CD: +### Lookup Tables - **lut_sentinel2b_b2to12_3um_dust.mat** (70 MB) - Lookup table for Sentinel-2B bands 2-12 with dust parameters - Essential for all Sentinel-2 tests - Also available on Zenodo (see below) +- **lut_HLSS30_b1to13_3um_dust.mat** (101 MB) + - Lookup table for HLS (Harmonized Landsat Sentinel-2) bands 1-13 with dust parameters + - For HLS30 product testing + +- **lut_modis_b1to7_3um_dust.mat** (537 MB) + - Lookup table for MODIS bands 1-7 with dust parameters + - For MODIS testing + +- **lut_oli_b1to7_3um_dust.mat** (55 MB) + - Lookup table for Landsat OLI bands 1-7 with dust parameters + - For Landsat 8/9 testing + +### Test Imagery Subsets + - **sentinel_r_subset.nc** (2.85 MB) - Small spatial subset (50×50 pixels) of full reflectance data - For quick integration tests @@ -26,14 +40,17 @@ Full-resolution test data available on Zenodo: ### Lookup Tables [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18701286.svg)](https://doi.org/10.5281/zenodo.18701286) -- **LUT_MODIS.mat** (537 MB) - - MODIS lookup table generated from Mie-scattering theory - - Download: https://zenodo.org/records/18701286/files/LUT_MODIS.mat +**Note:** Most lookup tables are now included in the repository via Git LFS. Only download from Zenodo if you need legacy formats or have LFS issues. - **lut_sentinel2b_b2to12_3um_dust.mat** (70 MB) - Sentinel-2B lookup table (also in repository via LFS) - Download: https://zenodo.org/records/18701286/files/lut_sentinel2b_b2to12_3um_dust.mat +- **LUT_MODIS.mat** (537 MB) + - Legacy MODIS lookup table format + - For compatibility with older tests + - Download: https://zenodo.org/records/18701286/files/LUT_MODIS.mat + ### Test Imagery [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18704072.svg)](https://doi.org/10.5281/zenodo.18704072) @@ -50,26 +67,35 @@ Full-resolution test data available on Zenodo: ### For Development -The subset files are sufficient for most development and testing: +All lookup tables and test subsets are included in the repository via Git LFS: ```python import xarray as xr import spires -# Use subset files (in repository) +# Sentinel-2 example r = xr.open_dataset('tests/data/sentinel_r_subset.nc') r0 = xr.open_dataset('tests/data/sentinel_r0_subset.nc') -lut = spires.LutInterpolator('tests/data/lut_sentinel2b_b2to12_3um_dust.mat') +lut_s2 = spires.LutInterpolator('tests/data/lut_sentinel2b_b2to12_3um_dust.mat') + +# MODIS example +lut_modis = spires.LutInterpolator('tests/data/lut_modis_b1to7_3um_dust.mat') + +# Landsat OLI example +lut_oli = spires.LutInterpolator('tests/data/lut_oli_b1to7_3um_dust.mat') + +# HLS example +lut_hls = spires.LutInterpolator('tests/data/lut_HLSS30_b1to13_3um_dust.mat') ``` ### For Full Tests -To run tests with full-resolution data, download from Zenodo: +To run tests with full-resolution imagery, download from Zenodo: ```bash cd tests/data -# Download lookup tables +# Download legacy MODIS LUT (if needed for compatibility tests) curl -L -o LUT_MODIS.mat https://zenodo.org/records/18701286/files/LUT_MODIS.mat # Download full test imagery (large!) @@ -90,9 +116,16 @@ python scripts/download_test_data.py --imagery ## CI/CD Behavior GitHub Actions: -- Uses subset files by default (fast, no quota issues) -- Skips tests requiring LUT_MODIS.mat (MODIS-specific tests) -- Can be configured to download full files from Zenodo if needed +- All lookup tables (Sentinel-2, MODIS, OLI, HLS) are available via Git LFS +- Uses subset imagery files by default (fast tests) +- Downloads `lut_sentinel2b_b2to12_3um_dust.mat` from Zenodo to avoid LFS quota +- Skips tests requiring legacy LUT_MODIS.mat format +- Full-resolution imagery can be downloaded from Zenodo if needed + +GitLab CI: +- Configured with `GIT_LFS_SKIP_SMUDGE: "1"` to avoid LFS quota issues +- Downloads required LUTs from Zenodo on-demand +- Uses same test approach as GitHub Actions ## Citation From 6edd6ac82cb96614789bf32e38e1b492fdfd730d Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:41:21 +0000 Subject: [PATCH 14/15] Update README to document all LUTs available on Zenodo All four lookup tables are now available on Zenodo: - lut_sentinel2b_b2to12_3um_dust.mat - lut_HLSS30_b1to13_3um_dust.mat - lut_modis_b1to7_3um_dust.mat - lut_oli_b1to7_3um_dust.mat Added download links for all LUTs from Zenodo as alternative to LFS. Co-Authored-By: Claude Opus 4.6 --- tests/data/README.md | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/tests/data/README.md b/tests/data/README.md index 25954ba..dc28d39 100644 --- a/tests/data/README.md +++ b/tests/data/README.md @@ -40,12 +40,24 @@ Full-resolution test data available on Zenodo: ### Lookup Tables [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18701286.svg)](https://doi.org/10.5281/zenodo.18701286) -**Note:** Most lookup tables are now included in the repository via Git LFS. Only download from Zenodo if you need legacy formats or have LFS issues. +**Note:** All lookup tables are included in the repository via Git LFS. Download from Zenodo if you have LFS quota issues or prefer direct downloads. - **lut_sentinel2b_b2to12_3um_dust.mat** (70 MB) - Sentinel-2B lookup table (also in repository via LFS) - Download: https://zenodo.org/records/18701286/files/lut_sentinel2b_b2to12_3um_dust.mat +- **lut_HLSS30_b1to13_3um_dust.mat** (101 MB) + - HLS (Harmonized Landsat Sentinel-2) lookup table (also in repository via LFS) + - Download: https://zenodo.org/records/18701286/files/lut_HLSS30_b1to13_3um_dust.mat + +- **lut_modis_b1to7_3um_dust.mat** (537 MB) + - MODIS lookup table (also in repository via LFS) + - Download: https://zenodo.org/records/18701286/files/lut_modis_b1to7_3um_dust.mat + +- **lut_oli_b1to7_3um_dust.mat** (55 MB) + - Landsat OLI lookup table (also in repository via LFS) + - Download: https://zenodo.org/records/18701286/files/lut_oli_b1to7_3um_dust.mat + - **LUT_MODIS.mat** (537 MB) - Legacy MODIS lookup table format - For compatibility with older tests @@ -90,11 +102,17 @@ lut_hls = spires.LutInterpolator('tests/data/lut_HLSS30_b1to13_3um_dust.mat') ### For Full Tests -To run tests with full-resolution imagery, download from Zenodo: +To run tests with full-resolution imagery or download LUTs without LFS, get from Zenodo: ```bash cd tests/data +# Download all LUTs from Zenodo (alternative to LFS) +curl -L -o lut_sentinel2b_b2to12_3um_dust.mat https://zenodo.org/records/18701286/files/lut_sentinel2b_b2to12_3um_dust.mat +curl -L -o lut_HLSS30_b1to13_3um_dust.mat https://zenodo.org/records/18701286/files/lut_HLSS30_b1to13_3um_dust.mat +curl -L -o lut_modis_b1to7_3um_dust.mat https://zenodo.org/records/18701286/files/lut_modis_b1to7_3um_dust.mat +curl -L -o lut_oli_b1to7_3um_dust.mat https://zenodo.org/records/18701286/files/lut_oli_b1to7_3um_dust.mat + # Download legacy MODIS LUT (if needed for compatibility tests) curl -L -o LUT_MODIS.mat https://zenodo.org/records/18701286/files/LUT_MODIS.mat From 09ac346c29d77287ce6bb23061705a0ca4ef72cc Mon Sep 17 00:00:00 2001 From: niklas Date: Mon, 23 Feb 2026 18:45:53 +0000 Subject: [PATCH 15/15] Remove incorrect LUT_MODIS.mat Zenodo reference LUT_MODIS.mat is not available on Zenodo. Only the four new format LUT files are on Zenodo. Legacy tests will need to be updated to use lut_modis_b1to7_3um_dust.mat instead. Co-Authored-By: Claude Opus 4.6 --- tests/data/README.md | 5 ----- 1 file changed, 5 deletions(-) diff --git a/tests/data/README.md b/tests/data/README.md index dc28d39..3d59383 100644 --- a/tests/data/README.md +++ b/tests/data/README.md @@ -58,11 +58,6 @@ Full-resolution test data available on Zenodo: - Landsat OLI lookup table (also in repository via LFS) - Download: https://zenodo.org/records/18701286/files/lut_oli_b1to7_3um_dust.mat -- **LUT_MODIS.mat** (537 MB) - - Legacy MODIS lookup table format - - For compatibility with older tests - - Download: https://zenodo.org/records/18701286/files/LUT_MODIS.mat - ### Test Imagery [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18704072.svg)](https://doi.org/10.5281/zenodo.18704072)