Client release v1.8.1
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
anddirectory
fields as lists of strings, of a length equal to that
of thefiles
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 asfrom_shape
but returns an iterator (from_shape docs),subtile
that adds the ability to subdivide tiles (subtile docs), androwcol_to_latlon
andlatlon_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. Theraster_client
parameter has been removed from thefrom_latlon
,from_key
,from_shape
, andassign
DLTile 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
anddirectory
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
, anddltile
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. Thesave=
parameter has been removed as the resulting download is always saved
to disk, to a file named by theoutfile_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)