v0.31.x series¶
v0.31.0 (5th September 2025)¶
This major release updates the Expert interface entry points to make them more comprehensive, and transitions the data management system to a package manager-like solution.
Warning
This version introduces major changes to the Expert interface and data delivery. Read the following for migration instructions.
Expert interface update. The changes made to the Expert interface are only naming changes. The mapping between the old and new names is as follows:
Old name (in
eradiate.kernel)New name
KernelDictTemplateUpdateMapTemplateInitParameterUpdateParameterUpdateParameter.FlagsTypeIDLookupStrategyData delivery. The new data delivery system is broken down into an
AssetManager, which manages data downloads and makes them available for consumption, and aFileResolver, which looks up the filesystem when resources are requested. For end-users, the main difference is that after installing or updating Eradiate, they should calleradiate data installin a terminal instead oferadiate data fetch.
Deprecated¶
⚠️ The
eradiate.notebook.tutorialsmodule is now deprecated, and its contents are now ineradiate.tutorials. Theeradiate.notebook.tutorialsIPYthon extension is replaced byeradiate.tutorials.The
eradiate showcommand is deprecated in favour oferadiate sys-info.
Removed¶
⚠️ The experimental
eradiate.scenes.biosphere.canopiesmodule is removed (PR493). This, in particular, removes thewellington_citrus_orchard()function. Instead, use the canopy loader.
Added¶
🖥️ Added support of the Robot framework to generate rich HTML test reports (PR478).
🖥️ Added new regression tests based on bias-variance ratios (PR483).
Added a
get_mode()getter that aims to replacemode()(PR486). Themode()getter remains available for compatibility.Added the
tuber0.1 nm-resolution CKD database (PR495).Added a converter for libRadtran’s NetCDF aerosol data files (PR499).
The
eradiate --versionflag now displays version information in the terminal (PR508).
Changed¶
⚠️ Expert interface entry points have been renamed for clarity (PR484):
KernelDictTemplateis nowKernelDict.UpdateMapTemplateis nowKernelSceneParameterMap.InitParameteris nowDictParameterand matches thedict_parameter()decorator.UpdateParameteris nowSceneParameterand matches thescene_parameter()decorator.The
UpdateParameter.Flagsenum is no longer in theUpdateParameternamespace and is now namedKernelSceneParameterFlags.TypeIDLookupStrategyis nowSearchSceneParameter.
⚠️ The
get_mode()getter now raises anUnsetModeErrorif no active mode is selected (PR486).⚠️ The data handling infrastructure has been overhauled (PR493; see Data guide introduction for details):
File paths are now resolved by an offline file resolver, accessed as
eradiate.fresolver.The
eradiate data fetchcommand no longer exists and is replaced byeradiate data install.Settings have been updated to adapt to the new data handling infrastructure.
⚠️ The settings pertaining to data management have changed (PR493). Now, use
DATA_PATHto control downloaded data location,DATA_URLto control the remote registry location, andPATHto add lookup locations to the file resolver. The following settings are no longer relevant:DATA_STORE_URLSMALL_FILES_REGISTRY_URLSMALL_FILES_REGISTRY_REVISION
⚠️ The
ERADIATE_ENVenvironment variable is no longer used (PR493).⚠️ The default monochromatic dataset is now
komodo(PR493). That default was not used consistently before.📖 Documentation layout is reorganized for improved maintainability (PR497).
⚠️ The
RectangleTargetclass now accepts a normal-based parametrization (PR500).⚠️ The
eradiate.notebook.tutorialsmodule is now deprecated, and its contents are now ineradiate.tutorials. Theeradiate.notebook.tutorialsIPYthon extension is replaced byeradiate.tutorials.The
eradiate showcommand is renamederadiate sys-info(PR508).
Fixed¶
🖥️ Fixed logger configuration inconsistencies depending on the pytest tests execution order (PR478).
Added missing irradiance spectrum scene parameters for the
AstroObjectIlluminationclass (PR494).Aligned canonical spectral range with actual absorption database limits (PR498).
Fixed
film_to_angular()when used on data with multiple spectral channels (PR501).The
ParticleLayerclass can now use aerosol property datasets with a single wavelength (PR502).Improved the error message when failing to load a solar irradiance spectrum (PR507).
Internal changes¶
🖥️ The
mode()getter is now a thin compatibility wrapper aroundget_mode()(PR486).🖥️ Added a GitHub CI supporting Robot reports generation (PR482).
🖥️ Improved post-processing pipeline test efficiency (PR492).
🖥️ All
DataStoreclasses are replaced byFileResolverandAssetManagerclasses (PR493).🖥️ Refactored Converters to provide a more modular data conversion toolkit (PR493).
🖥️ Transitioned development requirements to PEP 735 dependency groups instead of extras (PR493).
🖥️ Factored CLI terminal display components into a module to avoid code duplication (PR493).
🖥️ The postprocessing pipeline definitions were moved to a separate package that can be referenced at driver construction (PR506).