From f1a08e4e18309c30d0f423ab8b8f90ccf0a4e80d Mon Sep 17 00:00:00 2001 From: Francis Charette Migneault Date: Fri, 6 Mar 2020 20:10:32 -0500 Subject: [PATCH] update changelog - fix #53, #58, #86 --- CHANGES.rst | 11 +++++++++++ config/weaver.ini.example | 3 +++ weaver/wps_restapi/api.py | 17 ++++++++++++----- 3 files changed, 26 insertions(+), 5 deletions(-) diff --git a/CHANGES.rst b/CHANGES.rst index c38d4396f..88f015c8c 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -359,9 +359,17 @@ Changes: unnecessary failures during edge case connexion problems. - Add support of ``title`` and ``version`` field of ``builtin`` processes. +- Provide HTTP links to corresponding items of job in status JSON body (#58). +- Provide OGC compliance of ``/results`` response schema as well as some expected ``code``/``description`` + fields in case where the request fails. +- Add ``/outputs`` providing the 'old' format of the job results as well as ``/inputs`` to retrieve + the inputs that were provided during job submission (#86). +- Add more reference/documentation links to `WPS-1/2` and update conformance references (#53). + Fixes: ------ +<<<<<<< 8b37e0af5db9f2071f2f51ffc1ab571ceb072161 - Patch ``builtin`` process execution failing since ``cwltool 2.x`` update. - Avoid long fetch operation using streamed request that defaulted to chuck size of 1. Now, we use an appropriate size according to available memory. @@ -383,6 +391,9 @@ Changes: - Provide a way to override the external URL reported by `WPS-1/2` and `WPS-REST` via configuration settings allowing for more advanced server-side results in response bodies. +======= +- Handle additional trailing slash resulting in ``NotFound`` that corresponds to a valid route without the slash. +>>>>>>> update changelog - fix #53, #58, #86 `1.2.0 `_ (2020-03-06) ======================================================================== diff --git a/config/weaver.ini.example b/config/weaver.ini.example index 915a9675d..9dfbfc564 100644 --- a/config/weaver.ini.example +++ b/config/weaver.ini.example @@ -77,6 +77,9 @@ weaver.wps_workdir = # --- Weaver WPS metadata --- # all attributes under "metadata:main" can be specified as 'weaver.wps_metadata_' # (reference: https://pywps.readthedocs.io/en/master/configuration.html#metadata-main) +weaver.wps_ref = http://schemas.opengis.net/wps/ +weaver.wps_doc = http://docs.opengeospatial.org/is/14-065/14-065.html +# WPS metadata weaver.wps_metadata_identification_title=Weaver weaver.wps_metadata_identification_abstract=Weaver internal WPS used for demo and testing. weaver.wps_metadata_identification_keywords=Weaver,WPS,OGC diff --git a/weaver/wps_restapi/api.py b/weaver/wps_restapi/api.py index 26daf546d..81cacb1cd 100644 --- a/weaver/wps_restapi/api.py +++ b/weaver/wps_restapi/api.py @@ -56,6 +56,8 @@ def api_frontpage(request): weaver_api_ref = settings.get("weaver.wps_restapi_ref", None) if weaver_api else None weaver_wps = asbool(settings.get("weaver.wps")) weaver_wps_url = get_wps_url(settings) if weaver_wps else None + weaver_wps_doc = settings.get("weaver.wps_doc", None) if weaver_wps else None + weaver_wps_ref = settings.get("weaver.wps_ref", None) if weaver_wps else None weaver_conform_url = weaver_url + sd.api_conformance_service.path weaver_process_url = weaver_url + sd.processes_service.path weaver_links = [ @@ -90,7 +92,9 @@ def api_frontpage(request): "api": weaver_api_def, "ref": weaver_api_ref}, {"name": "wps", "enabled": weaver_wps, - "url": weaver_wps_url}, + "url": weaver_wps_url, + "doc": weaver_wps_doc, + "ref": weaver_wps_ref}, ], "links": weaver_links, } @@ -112,13 +116,16 @@ def api_conformance(request): # noqa: F811 """Weaver specification conformance information.""" # TODO: follow updates with https://github.com/geopython/pygeoapi/issues/198 conformance = {"conformsTo": [ - "http://www.opengis.net/spec/wfs-1/3.0/req/core", - "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", + # "http://www.opengis.net/spec/wfs-1/3.0/req/core", + # "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", # "http://www.opengis.net/spec/wfs-1/3.0/req/html", - "http://www.opengis.net/spec/wfs-1/3.0/req/geojson", + # "http://www.opengis.net/spec/wfs-1/3.0/req/geojson", + "http://schemas.opengis.net/wps/1.0.0/", + "http://schemas.opengis.net/wps/2.0/", "http://www.opengis.net/spec/WPS/2.0/req/service/binding/rest-json/core", - "http://www.opengis.net/spec/WPS/2.0/req/service/binding/rest-json/oas30", + # "http://www.opengis.net/spec/WPS/2.0/req/service/binding/rest-json/oas30", # "http://www.opengis.net/spec/WPS/2.0/req/service/binding/rest-json/html" + "https://github.com/opengeospatial/wps-rest-binding", ]} return HTTPOk(json=conformance)