Skip to content

Client release v1.8.1

Compare
Choose a tag to compare
@stephencpope stephencpope released this 22 Jun 17:49
· 433 commits to master since this release

General

  • Added a new common.dltile library that performs geospatial transforms and tiling operations.
  • Upgraded various dependencies: requests[security]>=2.25.1,<3,six>=1.15.0,blosc==1.10.2, mercantile>=1.1.3,Pillow>=8.1.1,protobuf>=3.14.0,<4,shapely>=1.7.1,<2,tqdm>=4.32.1,traitlets>=4.3.3,<6;python_version<'3.7',traitlets==5.0.5,<6;python_version>='3.7',markdown2>=2.4.0,<3,responses==0.12.1,freezegun==0.3.12,imagecodecs>=2020.5.30;python_version<'3.7',imagecodecs>=2021.5.20;python_version>='3.7',tifffile==2020.9.3;python_version<'3.7',tifffile==2021.4.8;python_version>='3.7'

Discover (alpha) - Added

  • Added an alpha Discover client. Discover allows users to organize and share assets with other users. As an alpha release, we reserve the right to modify the Discover client API without any guarantees about backwards compatibility. See the Discover API documentation for more details.

Metadata/Catalog V1 - Changed

  • breaking Image (Scene) metadata now accepts and returns the bucket and directory fields as lists of strings, of a length equal to that
    of the files fields. This allows the file assets making up an image to live in different locations. When creating new images,
    a simple string can still be provided for these fields. It will automatically be converted to a list of (duplicated) strings as
    necessary. As most users will never interact with these fields, the change should not affect user code.

Metadata/Catalog V1/Catalog V2 - Changed

  • derived_params field for Image (scene) metadata now supported for product-specific service-implemented "native derived bands" which may
    only be created for core products.

Scenes - Changed

  • Scenes now uses the client-side dltile library to make DLTiles. This improves performance when creating a large number of DLTile objects.
  • Scenes DLTile from_shape now has a parameter to return tile keys only instead of full tile objects. Usage details can be found in the docs.
  • Scenes DLTile now has new methods: iter_from_shape that takes the same arguments as from_shape but returns an iterator (from_shape docs), subtile that adds the ability to subdivide tiles (subtile docs), and rowcol_to_latlon and latlon_to_rowcol which converts pixel coordinates to spatial coordinates and vice versa (rowcol_to_latlon docs and latlon_to_rowcol docs).
  • Scenes DLTile now has a new parameter tile_extent which is the total size of the tile in pixels including padding. Usage details can be found in the docs.
  • breaking Removed the dependence on Raster for tiling. The raster_client parameter has been removed from the from_latlon, from_key, from_shape, and assignDLTile methods.
  • Tiling using from_shape may return a different number of tiles compared to previous versions under certain conditions. These tiles are usually found in overlapping areas between UTM zones and should not affect the overall coverage.
  • DLTile geospatial transformations are guaranteed to be within eight decimal points of the past implementation.
  • DLTile errors now come from the dltile library and error messages should now be more informative.
  • When specifying output bounds in a spatial reference system different from the underlying raster, a densified representation of the bounding box is used internally to ensure that the returned image fully covers the bounds. For certain methods (like mosaic) this may change the returned image dimensions, depending on the SRSs involved.
  • breaking As with the Metadata v1 client changes, the bucket and directory fields of the Scene properties are now multi-valued lists.
  • Scenes does not support writing GeoTiffs to file-like objects. Non-JPEG GeoTiffs are always uncompressed.

Raster - Changed

  • dltiles_from_shape, dltiles_from_latlon, and dltile have been removed. It is
    strongly recommended to test any existing code which uses the Raster API when upgrading to this
    release.
  • Fully masked arrays are now supported and are the default. Usage details can be found in the docs
  • Added support to draw progress bar. Usage details can be found in the docs.
  • The signature and return value of Raster.raster() have changed. The save= parameter has been removed as the resulting download is always saved
    to disk, to a file named by the outfile_basename= parameter. The method returns a tuple containing the name of the resulting file and the metadata
    for the retrieval, which is now an ordinary Python dictionary.
  • As with Scenes, when specifying output bounds in a spatial reference system different from the underlying raster, a densified representation of the bounding box is used internally to ensure that the returned image fully covers the bounds. For certain methods (like mosaic) this may change the returned image dimensions, depending on the SRSs involved.

(Note: v1.8.0 was an internal-only release)