Releases: pytroll/satpy
Version 0.58.0
Issues Closed
- Issue 3192 - DifferenceCompositor
- Issue 3171 - Add
fsspec
support to Landsat reader - Issue 3167 -
AlignmentError
due to addition of time bounds when calling.to_xarray()
on a timeseries blended multiscene (PR 3170 by @sfinkens) - Issue 3162 - For FCI L1C, calculating the mean of
ir_105_time
fails with IndexError - Issue 3158 - reduce_data isn't called for the VIIRS nearest resampler
- Issue 3156 -
oli_tirs_l1_tif
reader incompatible withxarray
: missingrasterio
engine support
In this release 6 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 3191 - Use token kwarg in dask map_blocks call instead of name
- PR 3187 - Fix AWIPS tiled writer not being computed properly when compute=False
- PR 3186 - Optimize AWIPS Tiled writer and remove use of dask delayed
- PR 3175 - Use maximum end time from attributes for time bounds
- PR 3172 - Update VIIRS composites to use map_blocks instead of delayed
- PR 3170 - Fix adding time bounds to timeseries (3167, 3167)
Features added
- PR 3177 - Add cloud clear option to ACSPO reader
- PR 3174 - Add ABI L2 SST data quality filtering
- PR 3169 - Add surface type and terrain elevation to the AWS L1b loading
- PR 3155 - Refactor enhancements
Backward incompatible changes
- PR 3177 - Add cloud clear option to ACSPO reader
Refactoring
- PR 3155 - Refactor enhancements
In this release 12 pull requests were closed.
Version 0.57.0 (2025/06/13)
Issues Closed
- Issue 3138 - Possible typo with "Remote Reading" documentation using simplecache configuration (PR 3145 by @djhoese)
- Issue 3131 - Tests fail locally if run with python3.13
- Issue 3117 - Can't compare areas with different projections.
- Issue 3094 - cmsaf_claas2 reader needs an update for claas3 data
- Issue 3073 - missing term to compute reflectance for viirs_compact ?
- Issue 3038 - Support variations of AWS MWR L1C filename (PR 3039 by @TAlonglong)
- Issue 3026 - FCI platform name inconsistent between L1 and L2 (PR 3132 by @TAlonglong)
- Issue 2935 - hrv_clouds analogue for FCI?
- Issue 2906 - Resample HRV channel of Eumetsat image
- Issue 2810 - Issues about fog composites
- Issue 2809 - Read the EUMETSAT Test Data for MTG Using Satpy
- Issue 2756 - Extensive NaN Pixels and Ringed Artifacts After Geostationary Satellite Image Projection
- Issue 2752 - Replacement of deprecated
datetime.datetime.utcnow()
(PR 3126 by @pjuda) - Issue 2670 - Add missing EUMeTrain RGBs for SEVIRI and FCI
- Issue 2659 - Tropomi l2 reader ValueError: No supported files found
- Issue 1337 - I'm getting this error when i fire pip install satpy
- Issue 304 - Finalize Sentinel-2 MSI reader
In this release 17 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 3149 - Fix incorrect wavelength for AHI B04
- PR 3140 - Fix satpy.readers import warnings and exception types
- PR 3139 - Add missing metadata to 'ahi_l2_nc' reader
- PR 3135 - Fix more invalid sphinx object references
- PR 3125 - Fix ACSPO reader using binary operations on signed integers
- PR 3120 - Fix invalid documentation references to python objects
- PR 2993 - fix: li missing platform name
Features added
- PR 3134 - Add volcanic_emissions in composites and enhancements fci.yaml
- PR 3129 - Implement FCI "Flames" fire visualisation
- PR 3127 - Refactor reader imports
- PR 3126 - Replace deprecated utcnow (2752)
- PR 3122 - Refactor satpy.writers to separate modules
- PR 3084 - Updated the grid size to read claas3 data
- PR 3039 - Add filename variations to AWS MWR L1C (3038)
- PR 2879 - Initial implementation of EUMETSAT IASI-NG reader
Documentation changes
- PR 3145 - Fix typo in simplecache usage (3138)
- PR 3143 - Add page for specific reader documentation
- PR 3135 - Fix more invalid sphinx object references
- PR 3120 - Fix invalid documentation references to python objects
- PR 3119 - Small Update to MultiScene documentation
Backward incompatible changes
Clean ups
- PR 3135 - Fix more invalid sphinx object references
- PR 3132 - Move fci platform name translate to fci base (3026)
- PR 3127 - Refactor reader imports
- PR 3124 - Refactor resampler module to submodules
In this release 26 pull requests were closed.
Version 0.56.0 (2025/04/24)
Issues Closed
- Issue 3108 - Custom composite for reader 'generic_image'
- Issue 3105 - gradient_search and native resampling not working with GOES-18
- Issue 3104 - Replace all blue colors with transparent color
- Issue 3103 - GeoTIFF. Reader 'generic_image'. No supported files found
- Issue 3098 - SEVIRI. Where is built-in composite group_radiance_alpha defined?
- Issue 3095 - Unable to run operations of MTG xarray.Dataset
- Issue 3092 - maskingcompositor assumes the mask to be 2d array (PR 3093 by @TAlonglong)
- Issue 3067 -
fci_l1c_nc
reader drops channel attributeradiance_unit_conversion_coefficient
when more than one file is loaded (PR 3111 by @ClementLaplace) - Issue 3015 - extrapolation of satellite relative azimuiths? (PR 3017 by @simonrp84)
In this release 9 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 3115 - Fix padding for FCI xx coverage
- PR 3113 - Fix angles tests computing xarray DataArrays instead of dask arrays
- PR 3111 - Fix unit radiance attrs (3067)
- PR 3110 - Improve handling of category products in VIIRS EDR reader
- PR 3093 - Fix 3D masks with size 1 dimension in MaskingCompositor (3092)
- PR 3088 - Deprecate "cira_day_convection" in favor of "convection"
- PR 3017 - Fix SLSTR angle interpolation. (3015)
- PR 3016 - Update scale factor and offset [viirs_l1b]
Features added
- PR 3115 - Fix padding for FCI xx coverage
- PR 3112 - Fci l1c handle other coverage
- PR 3097 - Add SWIR composite to Sentinel-2/MSI.
- PR 3091 - Fix
RatioCompositor
standard_name
handling - PR 3090 - Add enhancement trace logging and print function
- PR 3089 - Add ABI Day Cloud Type ("cloud_type") RGB
- PR 3087 - Add ABI Blowing Snow RGB
- PR 3080 - Add reader for EarthCARE MSI L1 data
- PR 3040 - Unpin dask
- PR 2891 - Update VIIRS L1b reader to use additional netcdf attributes
Backward incompatible changes
- PR 3088 - Deprecate "cira_day_convection" in favor of "convection"
In this release 19 pull requests were closed.
Version 0.55.0 (2025/03/21)
Issues Closed
- Issue 3079 - FCI - Creating corrected single channel imagery to be used for composite creation OUTSIDE of compositors
- Issue 3075 - SAA & SZA for FCI Level 1NC
- Issue 3066 - NetCDF4FileHandler faults when using obj.dict called when object is a compound variable. (PR 3069 by @mataeui)
- Issue 3062 - abi_l2_nc reader does not support GOES-18 Cloud & Moisture Imagery Multiband mesoscale products from NOAA AWS
- Issue 3053 - No conversion matrix found for platform GOES-19 (PR 3054 by @simonrp84)
- Issue 3052 - Reader for NWC SAF HRW (high resolution winds) data (PR 3070 by @pnuu)
- Issue 3043 - RuntimeError: NetCDF: HDF error OR Segmentation fault
- Issue 3027 - Cannot generate composites on bigger extents using MTG FCI Level-1c files
- Issue 2898 - units attribute is not CF conform for the for AMV datasets in the fci_l2_nc reader (PR 3031 by @YouvaEUMex)
- Issue 2854 - Unexpected floats when reading LI L2 LFL data (PR 2998 by @ClementLaplace)
- Issue 2773 - Resampling with gradient search results in interlacing image artefacts if corner pixels have no data
- Issue 2179 - MergeError in
to_xarray_dataset
for Scenes containing data from seviri_l1b_nc reader (PR 2827 by @BENR0)
In this release 12 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 3085 - Refactor "compute_relative_azimuth" to be more flexible
- PR 3082 - Add workaround so dask arrays are optimized in Delayed writing
- PR 3074 - Fix plugin tests not completely cleaning up after themselves
- PR 3069 - Prevent call to obj.dict when obj is a compound variable. (3066)
- PR 3063 - add capability for M1 and M2 in MCMIP abi_l2_nc reader
- PR 3057 - Fix LightningTimeCompositor failing when data outside of the time range is passed
- PR 3055 - Update 'oci_l2_bgc' to allow .nc4 and .nc filename extensions
- PR 3048 - Change sensor attribute to lowercase in FCI L2 NetCDF reader
- PR 3046 - Fix MWR Polarisation
- PR 3031 - Fix the handling of AMVs unit to units by applying suggestion in #2898 (2898)
- PR 3028 - add missing dependency for vii_l1b_reader
- PR 2998 - Correct Unexpected floats when reading LI L2 LFL (2854)
Features added
- PR 3070 - Add a reader for NWC SAF GEO HRW data (3052)
- PR 3064 - Add remote reading for hrit seviri
- PR 3059 - Add more datasets to IASI L2 reader
- PR 3054 - Add GOES-19 RGB2XYZ matrix for
true_color_reproduction
(3053) - PR 3050 - Add VolcanicAsh product to VIIRS EDR reader
- PR 3044 - Add VIIRS EDR datasets
- PR 3041 - Fix MVIRI tests with unstable dependencies
- PR 3023 - Add reader for CAMEL emissivity datasets.
- PR 3022 - Combine low level moisture with a cloud mask
- PR 3002 - ISCCP-NG level 1g reader
- PR 2998 - Correct Unexpected floats when reading LI L2 LFL (2854)
- PR 2997 - Prepare for channel-specific SEVIRI calibration
- PR 2895 - Add flash age compositor for li instruments
- PR 2827 - Fix
to_xarray_dataset
merge error with conflicting values in coordinate (2179) - PR 913 - Modis l2 available datasets
Documentation changes
- PR 3068 - Update sphinx to use new sphinx.ext.apidoc extension
- PR 3065 - Fix slack invite link in contributing docs
- PR 3036 - DOC: Clarify satpy.yaml use with nested dictionaries
Clean ups
- PR 3085 - Refactor "compute_relative_azimuth" to be more flexible
- PR 3081 - Refactor MODIS readers to avoid extra dask tasks
- PR 3068 - Update sphinx to use new sphinx.ext.apidoc extension
- PR 3059 - Add more datasets to IASI L2 reader
- PR 2992 - Fix Pylint complaints for GLD360-reader.
In this release 35 pull requests were closed.
Version 0.54.0 (2025/01/20)
Issues Closed
- Issue 3020 - Re-implement essl_colorized_low_level_moisture using colorize (PR 3021 by @gerritholl)
- Issue 3009 - artefacts in FCI RGBs using 3.8 µm (PR 3013 by @gerritholl)
- Issue 2991 - Resampling MTG FCI high res bands fails when the resample includes bands at different spatial resolutions
- Issue 2981 - Fix the bug with
satpy
when usingnumpy 2.x
which leads toSEVIRI
resampled files having a double size (PR 2983 by @pkhalaj) - Issue 2979 - Improving resolution when setting extent
- Issue 2977 - CRS data is being printed to title of image
- Issue 2975 - can't create ABI geo_color composite
- Issue 2963 - ahi_hrit reader cannot create a Scene
- Issue 2814 - Reading LI L2 point data is not daskified (PR 2985 by @ClementLaplace)
- Issue 2566 - Wrong version numbers at readthedocs
- Issue 1997 - Resampling from SwathDefinition to AreaDefinition fails with OSError and AssertionError
- Issue 1788 - integration / regression tests that compare images
- Issue 1755 - Store project metadata in pyproject.toml
- Issue 1240 - iber projection lost in the North Pacific
In this release 14 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 3035 - Pin dask to avoid dataframe problem
- PR 3030 - Fix sdist tarball including unnecessary files
- PR 2995 - Add new ABI L2 "CPS" variable name for Cloud Particle Size
- PR 2985 - li2_nc reader daskified (2814)
- PR 2983 - Fix dtype promotion in SEVIRI native reader (2981)
- PR 2976 - Fix dtype promotion in
mersi2_l1b
reader - PR 2969 - Fix geos proj parameters for Insat 3d satellites
- PR 2959 - Modified the issue with the calibration coefficient indices for FY-3 satellite data reader
Features added
- PR 3034 - Set issue type in templates
- PR 3021 - Change ESSL colorisation approach (3020)
- PR 3013 - Clip negative FCI radiances (3009)
- PR 3007 - Add t865 dataset to olci l2 list (1767)
- PR 2999 - Add Accsos image comparison tests
- PR 2941 - Refactor MVIRI dataset access
- PR 2565 - Add level-1 readers for the arctic weather satelliter data
Clean ups
- PR 3030 - Fix sdist tarball including unnecessary files
- PR 3014 - Remove xarray-datatree dependency from CI
- PR 3010 - Remove version limit on pytest in CI
In this release 18 pull requests were closed.
Version 0.53.0 (2024/11/08)
Issues Closed
- Issue 2960 - netcdf4 version causes error (PR 2961 by @sfinkens)
- Issue 2952 - Altitude, LandCover, and LandSeaMask are missing in the
mersi_ll_l1b
reader for FY3E L1B (PR 2953 by @chorng) - Issue 2948 - "Missing" platform abbreviation causes unexpected error when loading data array in Scene (PR 2949 by @joleenf)
In this release 3 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 2971 - Pin flexparser before it breaks pint
- PR 2970 - Remove rayleigh correction on VIIRS false_color for I02 band
- PR 2968 - Remove unneeded call to private scipy function in SAR reader
- PR 2965 - Fix MODIS readers chunking compatibility with newer dask
- PR 2961 - Fix CF writer crashing with netcdf development version (2960)
- PR 2957 - Bugfix the VIIRS lowres version of the day-microphysics.
- PR 2956 - Fix cira stretch upcasting the data
- PR 2954 - Fix Rayleigh correction to use the same datatype as the input data
- PR 2950 - Fix dtype promotion in
SunZenithReduction
- PR 2949 - Add more platforms to VIIRS EDR reader (2948)
- PR 2930 - Fix data type when getting a line offset for a segmented hrit_jma
Features added
- PR 2973 - Remove flexparser pinning
- PR 2953 - Add altitude, landcover, and landseamask to mersi_ll_l1b reader (2952)
- PR 2946 - Update MODIS L1b reader with additional geoinfo datasets
In this release 14 pull requests were closed.
Version 0.52.1 (2024/10/23)
Issues Closed
- Issue 2942 - 0.52.0 breaks
seviri_l2_grib
-reader with 'EUML2GribFileHandler' object has no attribute '_ssp_lon' (PR 2943 by @strandgren)
In this release 1 issue was closed.
Pull Requests Merged
Bugs fixed
In this release 2 pull requests were closed.
Version 0.52.0 (2024/10/18)
Issues Closed
- Issue 2922 - fci_l1c_nc reader ignoring MTG FDHSI segment 41
- Issue 2920 - SEVIRI/FCI Water Vapour channel different normalization?
- Issue 2917 - Unpin mamba version in CI
- Issue 2914 - save.dataset - problem with MTG
- Issue 2909 - RuntimeError while compositing after resampling datasets
- Issue 2907 - The debug run reports an error, but there is no problem running after stopping at the breakpoint
- Issue 2900 - Eliminate dependency on external binaries of PublicDecompWT (xRITDecompress) by using pyPublicDecompWT
- Issue 2897 - generic_image reader returns data as float64 for PNG images
- Issue 2887 - "Don't know how to open the following files" ERROR in MTG-I1 LI data.
- Issue 2884 - MODIS and SEADAS test failures (PR 2886 by @djhoese)
- Issue 2869 - ninjogeotiff writer should write gradient for P mode images (PR 2870 by @gerritholl)
- Issue 2864 - Documentation takes too long to build (PR 2875 by @djhoese)
- Issue 2839 - Help about Netcdf Data
- Issue 1974 - debug_on() could write relevant versions
- Issue 1266 - Can pytroll process MetOp L0 Data?
In this release 15 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 2939 - Fix bogus no_op implementation
- PR 2938 - Update Landsat reader for compatibility with Pyspectral.
- PR 2926 - Import DataTree from xarray
- PR 2923 - Fix data promotion in
generic_image
reader andsatpy.composites.add_bands
- PR 2916 - Fix deprecated "compositor" usage in modifier definitions
- PR 2910 - Remove deprecated usage of pyspectral's download_luts aerosol_type
- PR 2896 - Bugfix for Sentinel-2 radiance calculation
- PR 2886 - Update pyhdf-based arrs to be manually tokenized (2884)
Features added
- PR 2936 - Drop python 3.9 (2741)
- PR 2933 - Add no-op image_ready enhancement
- PR 2931 - Enhance visibility of missing dependencies
- PR 2929 - Replace patched
print
with capsys fixture - PR 2927 - Use spline interpolation for faster processing
- PR 2925 - Fix types to allow float32 computations for SAR-C
- PR 2913 - Update
check_satpy
to use newshow_version
to display package versions - PR 2905 - Mcd12q1 draft
- PR 2904 - Add reader for Landsat L1 data
- PR 2902 - Add OCI L2 BGC reader
- PR 2899 - Switch from Mambaforge to Miniforge
- PR 2893 - Fix AAPP L1b reader not to up-cast data to float64
- PR 2870 - Include gradient/axisintercept for mode p (2869)
- PR 2717 - Add combined GRIB reader for both SEVIRI and FCI L2 products
Documentation changes
- PR 2915 - Improve SEVIRI metadata documentation
- PR 2890 - Fixing contributing.rst access on windows systems
- PR 2875 - Make documentation generation faster (2864, 2864)
In this release 25 pull requests were closed.
Version 0.51.0 (2024/08/15)
Issues Closed
- Issue 2881 - seviri_l2_grib-reader support for filename patterns of files coming from EUMETCast-Europe (PR 2882 by @fwfichtner)
- Issue 2877 - NWCSAF GEO images black with numpy 2
- Issue 2872 - nwcsaf-geo reader turns uint8 into int64 on numpy 2.0 (PR 2874 by @gerritholl)
- Issue 2859 - LI L2 Accumulated products retrieved from archive ("ARC" 10-min files) have faulty reading (PR 2867 by @ameraner)
- Issue 2836 - Confusing documentation for creating a Scene without a filename or reader (PR 2868 by @joleenf)
In this release 5 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 2876 - Fix AWIPS tiled writer handling of odd units in VIIRS EDR products
- PR 2874 - Avoid accidental NWCSAF-GEO type promotion (2872)
- PR 2867 - Fix LI L2 reader for accumulated products from archive (2859)
- PR 2866 - Fix FCI L1c reader for African products
Features added
- PR 2882 - support FIRG file-patterns coming from EUMETCast-Europe (2881)
- PR 2867 - Fix LI L2 reader for accumulated products from archive (2859)
- PR 2863 - Adapt the SEVIRI native format reader in Satpy to support remote reading
- PR 2862 - Update thresholds for FCI geo_color low-level cloud layer
- PR 2843 - feat: Enable to read for the Q4 coverage and the IQTI files for the fci l1c data
- PR 1916 - Add Gld360 ualf2 reader
Documentation changes
In this release 11 pull requests were closed.
Version 0.50.0 (2024/07/26)
Issues Closed
- Issue 2860 - Something is wrong with ami_l1b reader
- Issue 2856 - Typo or wrong syntax in examples setting chunk size - documentation (PR 2857 by @djhoese)
- Issue 2855 - MTG LI data
- Issue 2834 - geotiff writer fails with dask distributed
- Issue 2830 - Sentinel-1 sar-c safe reader consumes too much memory and a lot of time
- Issue 2826 - Speed up the test with satpy
- Issue 2823 - Documentation under "Developer's Guide" wrong for "Development installation"
- Issue 2820 - Problems in creating hrv_clouds RGB composite with FES Seviri data
- Issue 2805 -
bucket_sum
resampler fails due to unexpectedfill_value
kwarg - Issue 2732 - Replace pytest-lazyfixture for pytest >= 8.0
- Issue 2724 - Composite snow_age fails (no 'area') after composite cloud_phase (PR 2818 by @mraspaud)
- Issue 2705 - olci_l1b-reader and xarray=2023.12.0 are seemingly incompatible
- Issue 2365 - satpy slstr l1b reading issue
- Issue 1746 - bucket sum resampler: TypeError: get_sum() got an unexpected keyword argument 'fill_value'
- Issue 1209 - OLCI reader can't process quality flags (PR 2687 by @yufeizhu600)
- Issue 1206 - Add gallery of areas to documentation (PR 2167 by @BENR0)
- Issue 368 - Add ability to set output image size for
Scene.show
(PR 2816 by @ludwigVonKoopa)
In this release 17 issues were closed.
Pull Requests Merged
Bugs fixed
- PR 2858 - Fix default AWIPS tiled _FillValue of -1 for newer versions of xarray
- PR 2851 - Fix start/end time properties of
hrit_jma
reader () - PR 2842 - Fix VIIRS EDR using the wrong geolocation arrays
- PR 2835 - Fix DayNightCompositor compatibility with numpy 2
- PR 2833 - Fix conversion of valid_range metadata to tuple in viirs_edr reader
- PR 2824 - add import rioxarray where readers actually need them
- PR 2819 - Ensure lazyness of the olci nc reader
- PR 2818 - Fix uniqueness of hdf5-based dask arrays (2724)
Features added
- PR 2853 - Add first version of LI composites and enhancements for point and accumulated products
- PR 2850 - Add parallel test execution to CI with pytest-xdist library
- PR 2840 - Add a testing utility for faking reading
- PR 2838 - Add MERSI3 / FY3F support.
- PR 2837 - Fix gcps type for newer rioxarray versions
- PR 2832 - Add a read-only FSFile.fs property
- PR 2817 - Implement support to set alpha range in create_colormap and yaml colorize enhancements
- PR 2806 - Add ability to clip AMI negative radiances
- PR 2783 - Add support for Sentinel-2 MSI L2A SAFE datasets
- PR 2687 - add support of masking olci l1b products by using quality flags (1209)
- PR 2603 - Changes to Eumetsat L2 BUFR reader
- PR 2167 - Automatic list with overviews of inlcuded area definitions for the documentation (1206)
- PR 1637 - Change default filename for cf writer to be compatible with satpy_cf_nc reader
Documentation changes
- PR 2857 - Fix typo in chunk setting example (2856)
- PR 2817 - Implement support to set alpha range in create_colormap and yaml colorize enhancements
- PR 2816 - Add resized area example to resampling documentation (368)
- PR 2812 - doc: move reader table to reading section
Clean ups
- PR 2844 - Add more test skips when numba is involved in the unstable CI
- PR 2841 - Revert CI env change so geotiepoints comes from conda-forge
In this release 27 pull requests were closed.