-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Schema fixes #318
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
Schema fixes #318
Conversation
|
@tiangolo please let me know if this is alright. Seemed simpler to implement my thoughts than put them all in comments. Look at the two separate commits as they separate the work into rearrangement and changes. |
Codecov Report
@@ Coverage Diff @@
## json-schema-extra #318 +/- ##
================================================
Coverage 100% 100%
================================================
Files 14 13 -1
Lines 1770 1761 -9
Branches 338 340 +2
================================================
- Hits 1770 1761 -9 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool! I like it.
Seemed simpler to implement my thoughts than put them all in comments.
Absolutely, thanks for putting in the time to do it.
pydantic/fields.py
Outdated
| @@ -141,12 +87,14 @@ def __init__( | |||
| self.allow_none: bool = allow_none | |||
| self.parse_json: bool = False | |||
| self.shape: Shape = Shape.SINGLETON | |||
| self._schema: Schema = schema | |||
| self._schema: 'schema.Schema' = schema | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great. I thought it was necessary to import schema for this to work.
|
After this, I would like to submit another PR to change But I'll wait for this PR to be finished to avoid conflicts. ...Or let me know if you would prefer me to create a PR to this branch before merging. |
|
fine by me, I've renamed |
* Add additional parameters to Schema for validation and annotation (#311) * Add tests for validation declared via Schema class in defaults * Add validations to field from declarations in Schema * Add annotations in generated JSON Schema from validations via Schema * Augment tests for schema generation * Simplify validations from Schema in fields, from coverage hints * Update schema test to use the spec plural "examples" * Add docs and simple example of the additional parameters for Schema * Update history * Fix number of PR in HISTORY * Refactor check for numeric types, remove break to make coverage happy * Fix typo in docs, I confused gt with maximum * Finish docstring for Schema (I had forgotten about it) * Implement code review requests and lenient_issubclass with tests * Move Schema to its now file to extract from fields.py but avoid circular imports * Control coverage * Schema fixes (#318) * rearrange code * cleanup get_annotation_from_schema * fix typo * rename _schema to schema
Some tweaks to #311.