Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

draft-next "contains", "minContains", "maxContains", and related "unevaluatedProperties" support #95

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

handrews
Copy link
Contributor

Fixes #93. I was cleaning up local branches and realized I never posted this one. I don't expect this to go into 0.10.1 but (like the PRs I rebased today) I had to put the CHANGELOG entry somewhere. I expect to rebase and move it whenever appropriate.


"contains" now supports both objects and arrays, and while it produces the same annotations, it now reads annotations from
minContains and maxContains, which no are no longer assertions.

"contains" now also impacts "unevaluatedProperties", so that keyword gets a new version as well.

This also removes the need to ever un-fail another keyword's result, although the pass_() method still has other internal uses.

"contains" now supports both objects and arrays, and while it
produces the same annotations, it now reads annotations from
 minContains and maxContains, which no are no longer assertions.

"contains" now also impacts "unevaluatedProperties", so that keyword
gets a new version as well.

This also removes the need to ever un-fail another keyword's result,
although the pass_() method still has other internal uses.
@codecov-commenter
Copy link

codecov-commenter commented Apr 10, 2023

Codecov Report

Patch coverage: 56.25% and project coverage change: -0.89 ⚠️

Comparison is base (aa16362) 92.06% compared to head (e3a2744) 91.17%.

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #95      +/-   ##
==========================================
- Coverage   92.06%   91.17%   -0.89%     
==========================================
  Files          21       21              
  Lines        2003     2039      +36     
  Branches      427      434       +7     
==========================================
+ Hits         1844     1859      +15     
- Misses        101      122      +21     
  Partials       58       58              
Impacted Files Coverage Δ
jschon/catalog/_2019_09.py 100.00% <ø> (ø)
jschon/catalog/_2020_12.py 100.00% <ø> (ø)
jschon/catalog/_next.py 100.00% <ø> (ø)
jschon/vocabulary/applicator.py 92.06% <54.34%> (-7.15%) ⬇️
jschon/vocabulary/validation.py 99.37% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@handrews
Copy link
Contributor Author

Oh, now I remember why I didn't post these- only the draft-next tests will cover the changes, so the code cov fails. I had plans to add infrastructure to test draft-next but skip the unimplemented tests, but I never got around to that.

@handrews handrews marked this pull request as draft April 19, 2023 17:43
@handrews
Copy link
Contributor Author

This needs significant rework based on comments in #80 about keyword class organization. I'll move it off of "draft" status once that's done.

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.

support draft-next "contains", "minContains", and "maxContains"
2 participants