Skip to content

Conversation

@idanmiara
Copy link
Contributor

@idanmiara idanmiara commented Jul 22, 2021

Overview

This fix add support for BoundingBox, Complex inputs/outputs and extend the relevant docs + tests.

Related Issue / Discussion

v4.5.0 release #613
main implementation #588
docs #612

Contribution Agreement

(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

  • I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
  • I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

@coveralls
Copy link

coveralls commented Jul 22, 2021

Coverage Status

Coverage remained the same at 0.0% when pulling 64157f2 on talos-gis:bbox into 8624d4d on geopython:main.

@idanmiara idanmiara force-pushed the bbox branch 2 times, most recently from c435c3c to 654233a Compare July 22, 2021 12:45
@idanmiara idanmiara changed the title OGC API - Processes: BoundingBox input OGC API - Processes: BoundingBox, Complex and reference inputs Jul 22, 2021
@idanmiara idanmiara mentioned this pull request Jul 22, 2021
1 task
@idanmiara idanmiara changed the title OGC API - Processes: BoundingBox, Complex and reference inputs OGC API - Processes: BoundingBox, Complex and reference Input/Output + tests Jul 25, 2021
@idanmiara
Copy link
Contributor Author

idanmiara commented Jul 25, 2021

@cehbrecht I tried to support GeoJSON input also inline inside the request and also via a reference.
https://github.com/geopython/pywps/pull/614/files#diff-3dfc734e5dee6eba305a9939b9f1dd809679ae210baa3169b2a22814de8b061fR541
https://github.com/geopython/pywps/pull/614/files#diff-3dfc734e5dee6eba305a9939b9f1dd809679ae210baa3169b2a22814de8b061fR590

I stumbled upon the problem that if I used a reference then the data inside the ComplexInput is represented as a string (which we need to apply json.loads(s) to get the dict), whereas if I insert the data inline then the data insde the ComplexInput is a dict.

Trying to preserve maximum backwards compatibility, i.e not to break usage like:
https://github.com/geopython/pywps/blob/main/tests/test_complexdata_io.py#L117

I eventually inserted the json.loads logic inside the data_as_json function:

c054817#diff-1504dae61cda8378b070b94031958e8f3a2c954f16959a33876f9411ec249409R323
8c188a4#diff-3dfc734e5dee6eba305a9939b9f1dd809679ae210baa3169b2a22814de8b061fR119

Do you have a more elegant way for doing so?

I think otherwise this PR is ready, and I'd be happy if it can make it into v4.5.

@idanmiara
Copy link
Contributor Author

Please review
@jachym @tomkralidis @huard @cehbrecht
I'm not sure what's up with the @coveralls as I did add relevant tests (and docs :)

@cehbrecht cehbrecht self-requested a review August 9, 2021 10:48
@cehbrecht
Copy link
Collaborator

@idanmiara Looks good to me :) We can look at improvements later on. I have another PR in the pipeline before making 4.5 release.

@cehbrecht cehbrecht merged commit ec6f6b5 into geopython:main Aug 9, 2021
@idanmiara
Copy link
Contributor Author

Thanks @cehbrecht!

cehbrecht pushed a commit to cehbrecht/pywps that referenced this pull request Aug 9, 2021
cehbrecht added a commit that referenced this pull request Aug 12, 2021
* update changelog

* Bump version: 4.4.4 → 4.5.0

* update with ogcapi bbox p4 #614

Co-authored-by: Pingu Carsti <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants