Releases: Open-EO/openeo-python-client
Releases · Open-EO/openeo-python-client
openEO Python client v0.12.0
Added
- Allow passing raw JSON string, JSON file path or URL to
Connection.download(),
Connection.execute()andConnection.create_job() - Add support for reverse math operators on DataCube in
applymode (#323) - Add
DataCube.print_json()to simplify exporting process graphs in Jupyter or other interactive environments (#324) - Raise
DimensionAlreadyExistsExceptionwhen trying toadd_dimension()a dimension with existing name (Open-EO/openeo-geopyspark-driver#205)
Changed
DataCube.execute_batch()now also guesses the output format from the filename,
and allows usingformatargument next to the currentout_format
to align with theDataCube.download()method. (#240)- Better client-side handling of merged band name metadata in
DataCube.merge_cubes()
Removed
openEO Python client v0.11.0
Added
- Add support for passing a PGNode/VectorCube as geometry to
aggregate_spatial,mask_polygon, ... - Add support for second order callbacks e.g.
is_validincountinreduce_dimension(#317)
Changed
- Rename
RESTJobclass name to less cryptic and more user-friendlyBatchJob.
OriginalRESTJobis still available as deprecated alias.
(#280) - Dropped default reducer ("max") from
DataCube.reduce_temporal_simple() - Various documentation improvements:
- Drop hardcoded
h5netcdfengine fromXarrayIO.from_netcdf_file()
andXarrayIO.to_netcdf_file()(#314) - Changed argument name of
Connection.describe_collection()fromnametocollection_id
to be more in line with other methods/functions.
Fixed
- Fix
context/conditionconfusion bug withcountcallback inDataCube.reduce_dimension()(#317)
openEO Python client v0.10.1 (LPS22 release)
Added
- Add
contextparameter toDataCube.aggregate_spatial(),DataCube.apply_dimension(),
DataCube.apply_neighborhood(),DataCube.apply(),DataCube.merge_cubes().
(#291) - Add
DataCube.fit_regr_random_forest()(#293) - Add
PGNode.update_arguments(), which combined withDataCube.result_node()allows to do advanced process graph argument tweaking/updating without using._pghacks. JobResults.download_files(): also download (by default) the job result metadata as STAC JSON file (#184)- OIDC handling in
Connection: try to automatically refresh access token when expired (#298) Connection.create_jobraises exception if response does not contain a valid job_id- Add
openeo.udf.debug.inspectfor using the openEOinspectprocess in a UDF (#302) - Add
openeo.util.to_bbox_dict()to simplify building a openEO style bbox dictionary, e.g. from a list or shapely geometry (#304)
Removed
- Removed deprecated (and non-functional)
zonal_statisticsmethod from oldImageCollectionClientAPI. (#144)
openEO Python client v0.10.0 (SRR3 release)
Added
- Add support for comparison operators (
<,>,<=and>=) in callback process building - Added
Connection.describe_process()to retrieve and show a single process - Added
DataCube.flatten_dimensions()andDataCube.unflatten_dimension
(Open-EO/openeo-processes#308, Open-EO/openeo-processes#316) - Added
VectorCube.run_udf(to avoid non-standardprocess_with_node(UDF(...))usage) - Added
DataCube.fit_class_random_forest()andConnection.load_ml_model()to train and load Machine Learning models
(#279) - Added
DataCube.predict_random_forest()to easily usereduce_dimensionwith apredict_random_forestreducer
using aMlModel(trained withfit_class_random_forest)
(#279) - Added
DataCube.resample_cube_temporal(#284) - Add
target_dimensionargument toDataCube.aggregate_spatial(#288) - Add basic configuration file system to define a default back-end URL and enable auto-authentication (#264, #187)
- Add
contextargument toDataCube.chunk_polygon() - Add
Connection.version_info()to list version information about the client, the API and the back-end
Changed
- Include openEO API error id automatically in exception message to simplify user support and post-mortem analysis.
- Use
Connection.default_timeout(when set) also on version discovery request - Drop
ImageCollectionfromDataCube's class hierarchy. - This practically removes very old (pre-0.4.0) methods like
date_range_filterandbbox_filterfromDataCube.
(#100, #278) - Deprecate
DataCube.send_jobin favor ofDataCube.create_jobfor better consistency (internally and with other libraries) (#276) - Update (autogenerated)
openeo.processesmodule to 1.2.0 release (2021-12-13) of openeo-processes - Update (autogenerated)
openeo.processesmodule to draft version of 2022-03-16 (e4df8648) of openeo-processes - Update
openeo.extra.spectral_indicesto a post-0.0.6 version of Awesome Spectral Indices
Removed
- Removed deprecated 'zonal_statistics' method from the 1.x version of the API.
- Deprecate old-style
DataCube.polygonal_mean_timeseries(),DataCube.polygonal_histogram_timeseries(),
DataCube.polygonal_median_timeseries()andDataCube.polygonal_standarddeviation_timeseries()
Fixed
openEO Python client v0.9.2
Added
- Add experimental support for
chunk_polygonprocess (Open-EO/openeo-processes#287) - Add support for
spatial_extent,temporal_extentandbandstoConnection.load_result() - Setting the environment variable
OPENEO_BASEMAP_URLallows to set a new templated URL to a XYZ basemap for the Vue Components library,OPENEO_BASEMAP_ATTRIBUTIONallows to set the attribution for the basemap (#260) - Initial support for experimental "federation:missing" flag on partial openEO Platform user job listings (Open-EO/openeo-api#419)
- Best effort detection of mistakenly using Python builtin
sumorallfunctions in callbacks (Forum #113) - Automatically print batch job logs when job doesn't finish successfully (using
execute_batch/run_synchronous/start_and_wait).
openEO Python client v0.9.1
Added
- Add
optionsargument toDataCube.atmospheric_correction(Open-EO/openeo-python-driver#91) - Add
atmospheric_correction_optionsandcloud_detection_optionsarguments toDataCube.ard_surface_reflectance(Open-EO/openeo-python-driver#91) - UDP storing: add support for "returns", "categories", "examples" and "links" properties (#242)
- Add
openeo.extra.spectral_indices: experimental API to easily compute spectral indices (vegetation, water, urban, ...) on aDataCube, using the index definitions from Awesome Spectral Indices
Changed
- Batch job status poll loop: ignore (temporary) "service unavailable" errors (Open-EO/openeo-python-driver#96)
- Batch job status poll loop: fail when there are too many soft errors (temporary connection/availability issues)
Fixed
- Fix
DataCube.ard_surface_reflectance()to use processard_surface_reflectanceinstead ofatmospheric_correction
openEO Python client v0.9.0
Added
- Add command line tool
openeo-auth token-clearto remove OIDC refresh token cache - Add support for OIDC device authorization grant without PKCE nor client secret,
(#225, openeo-api#410) - Add
DataCube.dimension_labels()(EP-4008) - Add
Connection.load_result()(EP-4008) - Add proper support for child callbacks in
fit_curveandpredict_curve(#229) ProcessBuilder: Add support forarray_element(data, n)throughdata[n]syntax (#228)ProcessBuilder: Add support foreqandneqthrough==and!=operators (EP-4011)- Add
DataCube.validate()for process graph validation (EP-4012 related) - Add
Connection.as_curl()for generating curl command to evaluate a process graph orDataCubefrom the command line - Add support in
DataCube.download()to guess output format from extension of a given filename
Changed
- Improve default handling of
crs(andbase/height) infilter_bbox: avoid explicitly sendingnullunnecessarily
(#233). - Update documentation/examples/tests: EPSG CRS in
filter_bboxshould be integer code, not string
(#233). - Raise
ProcessGraphVisitExceptionfromProcessGraphVisitor.resolve_from_node()(instead of genericValueError) DataCube.linear_scale_rangeis now a shortcut forDataCube.apply(lambda x:x.x.linear_scale_range( input_min, input_max, output_min, output_max)).
Instead of creating an invalid process graph that tries to invoke linear_scale_range on a datacube directly.- Nicer error message when back-end does not support basic auth (#247)
Removed
openEO Python client v0.8.2
Minor release to address version packaging issue.
openEO Python client v0.8.1
Added
- Support nested callbacks inside array arguments, for instance in
array_modify,array_create - Support
array_concat - add
ProcessGraphUnflattenerandPGNodeGraphUnflattenerto unflatten a flat dict representation of a process
graph to aPGNodegraph (EP-3609) - Add
Connection.datacube_from_flat_graphandConnection.datacube_from_jsonto construct aDataCube
from flat process graph representation (e.g. JSON file or JSON URL) (EP-3609) - Add documentation about UDP unflattening and sharing (EP-3609)
- Add
fit_curveandpredict_curve, two methods used in change detection
Changed
- Update
processes.pybased on 1.1.0 release op openeo-processes project processes.py: include all processes from "proposals" folder of openeo-processes project- Jupyter integration: Visual rendering for process graphs shown instead of a plain JSON representation.
- Migrate from Travis CI to GitHub Actions for documentation building and unit tests (#178, EP-3645)
Removed
- Removed unit test runs for Python 3.5 (#210)
openEO Python client v0.8.0
Added
- Allow, but raise warning when specifying a CRS for the geometry passed to
aggregate_spatialandmask_polygon,
which is non-standard/experimental feature, only supported by specific back-ends
(#204) - Add
optionalargument toParameterand fix re-encoding parameters with default value. (EP-3846) - Add support to test strict equality with
ComparableVersion - Jupyter integration: add rich HTML rendering for more backend metadata (Job, Job Estimate, Logs, Services, User-Defined Processes)
- Add support for filter_spatial
- Add support for aggregate_temporal_period
- Added class
Servicefor secondary web-services - Added a method
servicetoConnection - Add
Rfc3339.parse_dateandRfc3339.parse_date_or_datetime
Changed
- Disallow redirects on POST/DELETE/... requests and require status code 200 on
POST /resultrequests.
This improves error information wherePOST /resultwould involve a redirect. (EP-3889) - Class
JobLogEntrygot replaced with a more complete and re-usableLogEntrydict - The following methods return a
Serviceclass instead of a dict:tiled_viewing_serviceinImageCollection,ImageCollectionClientandDataCube,create_serviceinConnection
Deprecated
- The method
remove_serviceinConnectionhas been deprecated in favor ofdelete_servicein theServiceclass