You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Added return value details (property `returns`) for the schemas with the subtype `process-graph`. [API#350](https://github.com/Open-EO/openeo-api/issues/350)
25
+
-`apply_neighborhood`: Clarify behavior for data cubes returned by the child processes and for that add the exception `DataCubePropertiesImmutable`.
26
+
- Added a guide for implementors that describes numerours implementation details for processes that could not be covered in the specifications itself, for example a recommended implementation for the `if` process. [#246](https://github.com/Open-EO/openeo-processes/issues/246)
27
+
28
+
### Changed
29
+
- Added `proposals` folder for experimental processes. Experimental processes are not covered by the CHANGELOG and MAY include breaking changes! [#196](https://github.com/Open-EO/openeo-processes/issues/196), [#207](https://github.com/Open-EO/openeo-processes/issues/207), [PSC#8](https://github.com/Open-EO/PSC/issues/8)
30
+
- Moved the experimental process `run_udf_externally` to the proposals.
31
+
- Moved the rarely used and implemented processes `cummax`, `cummin`, `cumproduct`, `cumsum`, `debug`, `filter_labels`, `load_result`, `load_uploaded_files`, `resample_cube_temporal` to the proposals.
32
+
- Exception messages have been aligned always use ` instead of '. Tooling could render it with CommonMark.
33
+
-`load_collection` and `mask_polygon`: Also support multi polygons instead of just polygons. [#237](https://github.com/Open-EO/openeo-processes/issues/237)
34
+
-`run_udf` and `run_udf_externally`: Specify specific (extensible) protocols for UDF URIs.
35
+
-`resample_cube_spatial` and `resample_spatial`: Aligned with GDAL and added `rms` and `sum` options to methods. Also added better descriptions.
36
+
-`resample_cube_temporal`: Process has been simplified and only offers the nearest neighbor method now. The `process` parameter has been removed, the `dimension` parameter was made less restrictive, the parameter `valid_within` was added. [#194](https://github.com/Open-EO/openeo-processes/issues/194)
37
+
38
+
### Deprecated
39
+
-`GeometryCollection`s are discouraged in all relevant processes.
40
+
41
+
### Removed
42
+
43
+
- Removed the experimental processes `aggregate_spatial_binary` and `reduce_dimension_binary`. [#258](https://github.com/Open-EO/openeo-processes/issues/258)
44
+
45
+
### Fixed
46
+
- Clarify that the user workspace is server-side. [#225](https://github.com/Open-EO/openeo-processes/issues/225)
47
+
- Clarify that the `condition` parameter for `array_filter` works also on indices and labels.
48
+
- Clarify contradicting statements in `filter_temporal` for the default value of the `dimension` parameter. By default *all* temporal dimensions are affected by the process. [#203](https://github.com/Open-EO/openeo-processes/issues/203)
49
+
- Clarify how the parameters passed to the overlap resolver correspond to the data cubes. [#184](https://github.com/Open-EO/openeo-processes/issues/184)
50
+
- Improve and clarify specifications for `is_nan`, `is_nodata`, `is_valid`. [#189](https://github.com/Open-EO/openeo-processes/issues/189)
51
+
- Improve and clarify specifications for `all` and `any`. [#189](https://github.com/Open-EO/openeo-processes/issues/199)
52
+
-`array_element`: Clarify that `ArrayNotLabeled` exception is thrown when parameter `label` is specified and the given array is not labeled.
53
+
-`array_apply`, `array_element`, `array_filter`: Added the `minimum: 0` constraint to all schemas describing zero-based indices (parameter `index`).
54
+
-`array_labels`: Clarified the accepted data type for array elements passed to the parameter `data`.
55
+
-`merge_cubes`: Clarified the dimension label order after the merge. [#212](https://github.com/Open-EO/openeo-processes/issues/212)
56
+
-`merge_cubes`: Clarified the fourth example. [#266](https://github.com/Open-EO/openeo-processes/issues/266)
57
+
- Fixed typos, grammar issues and other spelling-related issues in many of the processes.
58
+
- Fixed the examples `array_contains_nodata` and `array_find_nodata`.
59
+
- Fixed links to openEO glossary and added links to data cube introduction. [#216](https://github.com/Open-EO/openeo-processes/issues/216)
60
+
- Fixed description of `apply_dimension` with regards to reference systems. Made description easier to understand, too. [#234](https://github.com/Open-EO/openeo-processes/issues/234)
61
+
- Clarified disallowed characters in subtype `file-path`.
62
+
- Clarified that UDF source code must contain a newline/line-break (affects `run_udf`).
63
+
-`aggregate_spatial`, `aggregate_spatial_binary`: Clarified that Features, Geometries and GeometryCollections are a single entity in computations. Only FeatureCollections are multiple entities. [#252](https://github.com/Open-EO/openeo-processes/issues/252)
64
+
-`aggregate_spatial`: Clarified that the values have no predefined order and reducers such as `first` and `last` return unpredictable results. [#260](https://github.com/Open-EO/openeo-processes/issues/260)
65
+
-`load_collection`, parameter `spatial_extent`: Clarified that all pixels that are inside the bounding box of the given polygons but do not intersect with any polygon have to be set to no-data (`null`). [#256](https://github.com/Open-EO/openeo-processes/issues/256)
66
+
-`load_collection`: Clarified that the parameters are recommended to be used in favor of `filter_*` processes.
67
+
-`aggregate_temporal` and `aggregate_temporal_period`: Clarified that reducers are also executed for intervals/periods with no data. [#263](https://github.com/Open-EO/openeo-processes/issues/263)
68
+
-`dimension_labels`: Clarified that the process fails with a `DimensionNotAvailable` exception, if a dimension with the specified name does not exist.
69
+
70
+
## [1.0.0] - 2020-07-31
11
71
12
72
### Added
13
73
-`subtype-schemas.json`: A list of predefined subtypes is available as JSON Schema; Moved over from openeo-api.
@@ -41,13 +101,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
41
101
-`aggregate_temporal`: Fixed outdated message for exception `TooManyDimensions`.
42
102
-`clip`: Fixed examples.
43
103
-`linear_scale_range`: Clarify that the process implicitly clips the values. [#159](https://github.com/Open-EO/openeo-processes/issues/159)
44
-
-`mean`: Clarify behaviour for arrays with `null`-values only.
-`first`, `last`, `max`, `mean`, `median`, `min`, `sd`, `variance`: Clarify behavior for arrays with `null`-values only.
48
108
- Clarified (and fixed if necessary) for all processes in the "cubes" category the descriptions for the returned data cube. [#149](https://github.com/Open-EO/openeo-processes/issues/149)
49
109
50
-
## 1.0.0-rc.1 - 2020-01-31
110
+
## [1.0.0-rc.1] - 2020-01-31
51
111
52
112
### Added
53
113
- Processes:
@@ -159,3 +219,13 @@ First version which is separated from the openEO API. Complete rework of all pro
159
219
160
220
## Legacy versions
161
221
Older versions of the processes were released as part of the openEO API, see the corresponding changelog for more information.
Copy file name to clipboardExpand all lines: README.md
+18-4
Original file line number
Diff line number
Diff line change
@@ -6,12 +6,15 @@ openEO develops interoperable processes for big Earth observation cloud processi
6
6
7
7
## Versions / Branches
8
8
9
-
The [master branch](https://github.com/Open-EO/openeo-processes/tree/master) is the 'stable' version of the openEO processes specification. The latest release is version **1.0.0**. The [draft branch](https://github.com/Open-EO/openeo-processes/tree/draft) is where active development takes place.
9
+
The [master branch](https://github.com/Open-EO/openeo-processes/tree/master) is the 'stable' version of the openEO processes specification. An exception is the [`proposals`](proposals/) folder, which provides experimental new processes currently under discussion. They may still change, but everyone is encouraged to implement them and give feedback.
10
+
11
+
The latest release is version **1.1.0**. The [draft branch](https://github.com/Open-EO/openeo-processes/tree/draft) is where active development takes place. PRs should be made against the draft branch.
10
12
11
13
| Version / Branch | Status | openEO API versions |
|[1.0.0](https://processes.openeo.org/1.0.0/)| legacy version | 1.x.x |
15
18
|[1.0.0 RC1](https://processes.openeo.org/1.0.0-rc.1/)| legacy version | 1.x.x |
16
19
|[0.4.2](https://processes.openeo.org/0.4.2/)| legacy version | 0.4.x |
17
20
|[0.4.1](https://processes.openeo.org/0.4.1/)| legacy version | 0.4.x |
@@ -25,7 +28,18 @@ See also the [changelog](CHANGELOG.md) for the changes between versions and the
25
28
26
29
This repository contains a set of files formally describing the openEO Processes:
27
30
28
-
* The `*.json` files provide the process specifications as defined by the openEO API.
31
+
* The `*.json` files provide stable process specifications as defined by openEO. Stable processes need at least two implementations and a use-case example added to the [`examples`](examples/) folder *or* consensus from the openEO PSC.
32
+
* The `*.json` files in the [`proposals`](proposals/) folder provide proposed new process specifications that are still experimental and subject to change, including breaking changes. Everyone is encouraged to base their work on the proposals and give feedback so that eventually the processes evolve into stable process specifications.
33
+
*[implementation.md](meta/implementation.md) in the `meta` folder provide some additional implementation details for back-ends. For back-end implementors, it's highly recommended to read them.
29
34
*[subtype-schemas.json](meta/subtype-schemas.json) in the `meta` folder defines common data types (`subtype`s) for JSON Schema used in openEO processes.
30
35
* The [`examples`](examples/) folder contains some useful examples that the processes link to. All of these are non-binding additions.
31
-
* The [`tests`](tests/) folder can be used to test the process specification for validity and and consistent "style". It also allows to render the processes in a web browser.
36
+
* The [`tests`](tests/) folder can be used to test the process specification for validity and consistent "style". It also allows rendering the processes in a web browser.
37
+
38
+
39
+
## Process
40
+
41
+
* All new processes must be added to the [`proposals`](proposals/) folder.
42
+
* Processes will only be moved from proposals to the stable process specifications once there are at least two implementations and an example process in the [`examples`](examples/) folder showing it in a use case. This doesn't require a PSC vote individually as it's not a breaking change, just an addition.
43
+
* The [`proposals`](proposals/) folder allows breaking changes without a PSC vote and without increasing the major version number (i.e. a breaking change in the proposals doesn't require us to make the next version number 2.0.0).
44
+
* The proposals are released as experimental processes with the other processes.
45
+
* Each release and all breaking changes in the stable process specifications must go through PSC vote.
Copy file name to clipboardExpand all lines: add.json
+1-1
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
{
2
2
"id": "add",
3
3
"summary": "Addition of two numbers",
4
-
"description": "Sums up the two numbers `x` and `y` (*x + y*) and returns the computed sum.\n\nNo-data values are taken into account so that `null` is returned if any element is such a value.\n\nThe computations follow [IEEE Standard 754](https://ieeexplore.ieee.org/document/8766229) whenever the processing environment supports it.",
4
+
"description": "Sums up the two numbers `x` and `y` (*`x + y`*) and returns the computed sum.\n\nNo-data values are taken into account so that `null` is returned if any element is such a value.\n\nThe computations follow [IEEE Standard 754](https://ieeexplore.ieee.org/document/8766229) whenever the processing environment supports it.",
Copy file name to clipboardExpand all lines: add_dimension.json
+1-1
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
{
2
2
"id": "add_dimension",
3
3
"summary": "Add a new dimension",
4
-
"description": "Adds a new named dimension to the data cube.\n\nAfterwards, the dimension can be referenced with the specified `name`. If a dimension with the specified name exists, the process fails with a `DimensionExists` error. The dimension label of the dimension is set to the specified `label`.",
4
+
"description": "Adds a new named dimension to the data cube.\n\nAfterwards, the dimension can be referred to with the specified `name`. If a dimension with the specified name exists, the process fails with a `DimensionExists` exception. The dimension label of the dimension is set to the specified `label`.",
0 commit comments