0.10.2
Changes in 0.10.2
Enhancements
-
Added new module
xcube.core.subsampling
for function
subsample_dataset(dataset, step)
that is now used by default
to generate the datasets level of multi-level datasets. -
Added new setting
Authentication.IsRequired
to thexcube serve
configuration. If set totrue
, xcube Server will reject unauthorized
dataset requests by returning HTTP code 401. -
For authorized clients, the xcube Web API provided by
xcube serve
now allows granted scopes to contain wildcard characters*
,**
,
and?
. This is useful to give access to groups of datasets, e.g.
the scoperead:dataset:*/S2-*.zarr
permits access to any Zarr
dataset in a subdirectory of the configured data stores and
whose name starts with "S2-". (#632) -
xcube serve
used to shut down with an error message
if it encountered datasets it could not open. New behaviour
is to emit a warning and ignore such datasets. (#630) -
Introduced helper function
add_spatial_ref()
of packagexcube.core.gridmapping.cfconv
that allows
adding a spatial coordinate reference system to an existing
Zarr dataset. (#629) -
Support for multi-level datasets has been improved:
- Introduced new parameters for writing multi-level datasets with the
"file", "s3", and "memory" data stores (#617). They arebase_dataset_id
: If given, the base dataset will be linked only
with the value ofbase_dataset_id
, instead of being copied as-is.
This can save large amounts of storage space.tile_size
: If given, it forces the spatial dimensions to be
chunked accordingly.tile_size
can be a positive integer
or a pair of positive integers.num_levels
: If given, restricts the number of resolution levels
to the given value. Must be a positive integer to be effective.
- Added a new example notebook
5_multi_level_datasets.ipynb
that demonstrates writing and opening multi-level datasets with the
xcube filesystem data stores. - Specified xcube Multi-Resolution Datasets
definition and format.
- Introduced new parameters for writing multi-level datasets with the
-
xcube gen2
returns more expressive error messages.
Fixes
-
Fixed problem where the dataset levels of multi-level datasets were
written without spatial coordinate reference system. In fact,
only spatial variables were written. (#646) -
Fixed problem where xcube Server instances that required
user authentication published datasets and variables for
unauthorised users. -
Fixed
FsDataAccessor.write_data()
implementations,
which now always return the passed indata_id
. (#623) -
Fixes an issue where some datasets seemed to be shifted in the
y-(latitude-) direction and were misplaced on maps whose tiles
are served byxcube serve
. Images with ascending y-values are
now tiled correctly. (#626)
Other
-
The
xcube level
CLI tool has been rewritten from scratch to make use
of xcube filesystem data stores. (#617) -
Deprecated numerous classes and functions around multi-level datasets.
The non-deprecated functions and classes ofxcube.core.mldataset
should
be used instead along with the xcube filesystem data stores for
multi-level dataset i/o. (#516)- Deprecated all functions of the
xcube.core.level
modulecompute_levels()
read_levels()
write_levels()
- Deprecated numerous classes and functions of the
xcube.core.mldataset
moduleFileStorageMultiLevelDataset
ObjectStorageMultiLevelDataset
open_ml_dataset()
open_ml_dataset_from_object_storage()
open_ml_dataset_from_local_fs()
write_levels()
- Deprecated all functions of the
-
Added packages
python-blosc
andlz4
to the xcube Python environment
for better support of Daskdistributed
and the Dask service
Coiled. -
Replace the dependency on the
rfc3339-validator
PyPI package with a
dependency on its recently created conda-forge package. -
Remove unneeded dependency on the no longer used
strict-rfc3339
package.
Full Changelog: v0.10.1...v0.10.2