All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fix odc-stac to version <= 0.3.9 due to error in auto chunks.
search
is now parallelized using datetime.
datacube
mask_with
parameters supports nowcloud_mask
(cnn cloudmask from EDA).
- items
Datetime
are automatically converted in nanoseconds. - AssetMapper is now also in the search part for only requesting the needed assets.
- datacube cloud masked when using
groupby_date
.
- accessors are now more compatible for dataarray and dataset.
ed.clip
accessor now manages first bounding box then clip geometry to be faster.- New whittaker function that is about 20 times faster. Beware, lambda from previous whittaker must be multiplied by 10 000 to have same results.
- Better management of mixing several cloud cover a same day to ensure highest clear coverage.
- Better management of cloud mask and error messages.
groupby_date
is now performed after processing the cloudmask in order to ensure a better compatibility.
- type str/list for
datacube
mask_with
kwarg.
- unit tests for mask.
mask_with
now supports list. If so, if the first mask type is not available for a collection, it will switch to the second mask.
- Wrong clear_percent/clear_pixels when having multiple geometries in datacube request
properties
of datacube is now a boolean or a list, not None by default.- Missing crs after whittaker.
- Scaled/asset when duplicated datetimes.
- Chunks asked in datacube are not the same as the output (due du smallest dims).
- Autoconverting list/dict coords to string for zarr compatibility
- Issue when having different time size between sensor and cloudmask.
- Issue with time when resample between datacube and cloudmask datacube.
ag_cloud_mask_items
queries items per batch.
GeoSeries
supported in GeometryManager.ed.sel_nearest_dates
accessor avoid duplicated times.- Issue when managing multiple indices with accessor
xr.ed
. - Issue when same datetime when rescaling dataset.
mode
for zonal stats inoperations.reducers
.
ag_cloud_mask_items
queries items per batch.
- Typing decorator, expected new typing library.
_typer
with kwargs to other functions.
_typer
supports custom types.
zonal_stats
outputs only valid geometries. SetTrue
. toraise_missing_geometry
to have the old behavior.zonal_stats
with geocube now managesall_touched
.
- some issues with
_typer
from accessor. zonal_stats
manages index independently from row.
ed.whittaker
adapted from pywapor github.ed.zonal_stats
using newgeocube
zonal_stats engine.
zonal_stats
now usesgeocube
as default processing method.
ed.plot_index
deprecated, useed.plot_band
instead.
_typer
has a better args management.available_indices
returns only indices that can be computed.
- better management of
col_wrap
ined
xarray accessor.
- some bugs in xarray
ed
accessor.
- xarray
ed
accessor.
to_wkt
for GeometryManager.
- Add docstring thanks to @piclem.
- Token support thanks to @luisageo6.
groupby_date=None
is also transferred tomask_with
.mask_with="native"
also works when no assets is given.clear_cover
is greater or equal (and not anymore greater).
properties
parameters for datacube creation.
collections
from datacube now supports in args.
- Modify dims attributs to sizes for xarray.
- Ability to query assets in the search items.
- Missing json due to pypi installation.
- Multisensors datacube now support
stackstac
.
- Auth datacube
earthdaily.earthdatastore.Auth().datacube(...)
function now manages multiple collections. - Uses
fields
to query only assets asked over Skyfox/EDS (better performance).
asset_mapper
has now all assets from available collections.
- Optimization (dask-native) for cloudmasks (Sentinel-2, Venus, ag-cloud-mask), except Landsat.
- Default chunks using odc is now
x="auto"
andy="auto"
. geobox
orgeopolygon
is used to have a preclipped datacube to the bounding box of the geometry. It enhances performances.
- Load json config for
Auth
. - Remove kwargs of
geobox
for native cloudmask in order to parse newgeobox
.
- Tests for python 3.12.
- handle cross calibration (harmonization) using private collection.
Auth
automatically to EarhtDataStore after 3600 seconds.Auth
now supports presign_urls parameter.load_pivot_corumba
in datasets.
- Perfect dimension compatibility between cloudmask and sensor datacube using
geobox
. - Force loading native landsat cloudmask because not compatible with dask.
- issue with unlogged datacube and non-geodataframe intersects.
- for element84 sentinel-2-l2a collection,
boa_offset_applied
is set to True since 2022-02-28. - added
nir
band inboa_offset_applied
control. - fix percentage in landsat agriculture cloudmask .
- fix bug in
setup.py
using gh actions.
intersects
argument in search/datacube now supports wkt/geojson/geopandas.common_band_names
default set to True in datacube creation. It uses the new Assets Mapper in order to define to best suitable bands according to user needs.clear_cover
argument in the datacube method when using theearthdatastore.Auth
method.datasets.load_pivot()
to load a GeoDataFrame of a pivot in Nebraska (alternates between corn or soy between years).preload_mask
in authenticated datacube method set toTrue
by default to load, if enough virtual memory.- Several tests to check and validate code.
- Better performances for cloud mask statistics by checking data type.
- masks statistics are not anymore suffixed with the cloudmask type :
clear_percent
andclear_pixels
. Warns with a DeprecationWarning. - all queries in
post_query
must return True to keep the item. If a key doesn't exist, considers the result as False (instead of failling). - default chunks are now
x=512
andy=512
for odc-stac.
- search
post_query
do not block if some properties are not available on all items. - some scale/offsets were not supported due to missing scale/offsets from previous assets.
- issues when computing datacube using Landsat cloudmask (
qa_pixel
). intersects
now supports several geometries and don't force selection on the first index.
- When asking
ag_cloud_mask
, keep only sensor items that haveeda:ag_cloud_mask_available=True
.
earthdaily.earthdatastore.cube_utils.zonal_stats_numpy
to compute local statistics using numpy functions. Best when high number of geometries.
zonal_stats
default parameters rasterizes now whole vector in order to be really faster faster. Previous behavior is available by selectingmethod="standard"
.
- Fix when number of
ag_cloud_mask
is lower than number of sensor items
- Add
stats
name as dimension
zonal_stats
output "feature" (not "feature_name") andstats
dimensions
- Automatic presigned url when needed, just specify argument
prefer_alternate="download"
in search. zonal_stats
function available inearthdatastore.cube_utils
module.- An exemple on how to use
.env
credentials.
- Python version must be at least 3.10.
- Gdal version must be at least 3.7.0.
- A better documentation.
- First public release under the name of earthdaily.
- module earthdatastore gathers all cube fonctions.
- earthdatastore.Auth() allows methods for search and datacube creation.
- Add if missing default scale/offset factor to collection (landsat-c2l2-sr, landsat-c2l2-st, landsat-c2l1).