Closed justin-tay closed 7 months ago
:warning: Please install the to ensure uploads and comments are reliably processed by Codecov.
Attention: Patch coverage is 78.57143%
with 291 lines
in your changes missing coverage. Please review.
Project coverage is 78.85%. Comparing base (
e95642c
) to head (d008b9b
). Report is 90 commits behind head on master.
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@justin-tay Nice work on zero required failures, and only one optional failure! :)
Performance of 1.30.0 was looking amazing too: https://www.creekservice.org/json-schema-validation-comparison/performance
Off the back of these performance and functional improvements.... https://github.com/creek-service/creek-kafka/issues/491
Closes #940, closes #939, closes #936, closes #935, closes #889, closes #881, closes #857, closes #831, closes #286
This should not contain any breaking changes from 1.3.0
The document updates in this PR assume it will be released as 1.3.1
The following keywords were refactored to improve performance and meet the functional requirements.
In particular this converts the
unevaluatedItems
andunevaluatedProperties
validators to use annotations to perform the evaluation instead of the current mechanism which affects performance. This also refactors$recursiveRef
to not rely on that same mechanism.unevaluatedProperties
unevaluatedItems
properties
patternProperties
items
/additionalItems
prefixItems
/items
contains
$recursiveRef
This also fixes the issue where the
unevaluatedItems
keyword does not take into account thecontains
keyword when performing the evaluation.This also fixes cases where
anyOf
short-circuits to not short-circuit the evaluation if a adjacentunevaluatedProperties
orunevaluatedItems
keyword exists.This should fix most of the remaining functional and performance issues.
Functional
fail: r:0 (0.0%) o:1 (0.0%)
fail: r:0 (0.0%) o:0 (0.0%)
fail: r:0 (0.0%) o:0 (0.0%)
fail: r:0 (0.0%) o:0 (0.0%)
fail: r:0 (0.0%) o:0 (0.0%)
fail: r:0 (0.0%) o:1 (0.2%)
Performance
NetworkNT 1.3.1
Everit 1.14.1