Skip to content

version 2 roadmap

Zhang Yunjun edited this page Mar 26, 2024 · 6 revisions

The mintpy version 2.0 in mind:

New features

  • Support ifgramStack.vrt file, to link all interferogram products, in addition to the current reloaded ifgramStack.h5 file. Benefits: 1) significantly smaller size; 2) easier to update (adding new interferograms) than HDF5 file. Drawbacks: 1) the mintpy data folder will not be independent anymore. [from Heresh]

Module structure

A re-organization of the sub-modules is needed, to follow the Python API standard better, and to facilitate the re-usability and maintenance. Here is the preliminary plane.

API syntax

  • Add API document with usage extracted from code and with the source link, e.g. geocube

  • Use snake_case for all APIs, the rules are: snake_case for all functions and their arguments, the "_" can be omitted only if 1) it's a func argument, AND 2) the leading word can be abbreviated as one letter, e.g. fname, dname, xstep, etc. The incomplete list is as below:

    • readfile.read(fname, dname=None, xstep=1, ystep=1, dtype=None, no_data_values=None, verbose=True)
  • Use verbose to replace print_msg as the arg name.

  • Use gnss to replace gps in all circumstances.

Documentation

  • Use neutral names for different coordinate systems (WGS84 and UTM) for the following attribute and option names. Solution: use SNWE instead?
    • attributes: REF_LAT/LON, LAT/LON_REF1/2/3/4
    • template options: mintpy.subset/reference.lalo, mintpy.network.aoiLALO, mintpy.geocode.laloStep
    • script options: geocode, reference_point, save_gbis/kmz/roipac, subset, view/tsview