Skip to content

Python 3 release

Compare
Choose a tag to compare
@shendric shendric released this 24 Apr 15:48
7429d45

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-modules
  • legacy
  • maptools
  • orbit
  • path

Expanded unit tests

Though far from full code coverage, tests procedures have been added to test the pysiral configuration management