Python 3 release
From this version onwards, pysiral only supports python 3 and support of pysiral for python 2 is discontinued. Functionality is currently only guaranteed with python 3.7 and test of further version will follow in later releases.
The conversion to python 3 is the main change of this release and this includes changes in dependancies, since especially the treedict
package that has been used for configuration management had to be replaced. The refactoring was also used to remove obsolete code parts and improve the pysiral configuration management.
Specifically the following changes are included in v0.8.0:
Removed old Level-1 pre-processor
The Level-1 pre-processor module (l1bpreproc
) and all associated code has been removed in pysiral v0.8. The modernized l1preproc
module should be used for all developments and currently supports the most recent versions of ERS-1/2, Envisat, CryoSat-2 and Sentinel-3A/B
Configuration data as global variable
In the previous versions of pysiral, configuration data could be accessed with via pysiral.config.ConfigInfo()
. This class was supposed to initialized during the code, causing the configuration files to be read often more than once. Now the configuration data is parsed and stored as a global variable (pysiral.psrlcfg
) during the first import of pysiral. The content and functionaly has been expanded by dedicated classes instead of the previous configuration dictionary
Removed unused code
Several pysiral modules have been removed, as there are not longer used:
esa
io_adapter
icesat
l1bpreproc
and all associated code in other sub-moduleslegacy
maptools
orbit
path
Expanded unit tests
Though far from full code coverage, tests procedures have been added to test the pysiral configuration management