Closed fmigneault closed 6 months ago
Attention: 61 lines
in your changes are missing coverage. Please review.
Comparison is base (
9b76b22
) 85.17% compared to head (60d1c08
) 85.64%. Report is 2 commits behind head on master.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Changes
weaver.formats.ContentEncoding
with handlers for common encoding manipulation from input values.weaver.processes.builtin
definitions with itsCWL
representation and complementaryOGC API - Processes
reference implementation details. ThisProcess
will be automatically deployed atAPI
startup, and is employed to validate multiple parsing combinations of execution I/O values and encodings (fixes #379).OGC
BoundingBox
definition (bbox
andcrs
fields) asProcess
execution input value with appropriate schema validation (fixes #51).Unit of Measure
(UoM
) definition (measurement
anduom
fields) asProcess
execution input value with appropriate schema validation (fixes`#430).create_metalink
utility function to facilitate generation of a.meta4
or.metalink
file definition from a list of file link references (relates to #25).Fixes
weaver.wps_restapi.swagger_definitions.ExecuteInputValues
deserialization that sometimes silently dropped invalidJSON
-formatted inputs that did not fulfill schema validation. This was caused by a side effect regarding howweaver.wps_restapi.colander_extras.VariableSchemaNode
handled "unknown"JSON
properties
from submitted content. In cases where requiredProcess
inputs were causing the invalid schema,Job
execution would be aborted and the error would be reported due to "missing" inputs. However, if theJSON
failing schema validation happened to be nested under an optional input definition, theJob
execution could have resumed silently by omitting this input's value propagation to the downstreamCWL
,WPS
orOGC API - Processes
implementation, which could make it use an alternative default value than the real input that was submitted for theJob
.colander.Invalid
error when a schema validation failed, in order to better represent deeply nested schema using multipleoneOf
,anyOf
,allOf
schema nodes. Usingcolander.Invalid.asdict
, each dictionary key now properly indicates the specific path of sub-nodes with their relevant schema validation error.variable
schema node names to provide a{SchemaName}<{VariableName}>
representation, such that it can be more easily identified. Schema nodes with avariable
(i.e.: schema underadditionalProperties
) previously only indicated{VariableName}
, which made it complicated to follow reference schema classes that formed the error path. Each of the evaluated fields against each possiblevariable
schema will now report their corresponding nested schema validation error as{SchemaName}<{VariableName}>({field})
such that results can be understood.href
) dropping aschema
URL reference if provided explicitly. This parameter now remains within the produced content passed to theJob
, and forwarded to a remoteProcess
if applicable, but no further schema validation is accomplished with the value inschema
for the moment.ContentType.IMAGE_OGC_GEOTIFF
using invalid media-type name (missingi
inimage
).Job
input validation stripping additional parameters from provided Media-Type, potentially causing mismatching Content-Type validation against the correspondingProcess
description inputs. Types should now match exactly the originalProcess
definition, including any additional parameters and sub-types.anyOf
schema raisingcolander.Invalid
even when the property was marked as optional usingmissing=colander.drop
.$schema
ofOGC
nameReferenceType
being reported under everydataType
ofliteralDataDomains
for literalI/O
ofProcess
descriptions. The reference is not only included in theOpenAPI
definition as intended.References
pywps==4.6.0
)owslib==0.30.0
)pywps
andowslib
updates.To Do