* Make discriminators work with multiple keys pointing to the same schema
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Added support for passing pathlib.Path as a format to JSON schema
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Added unit test
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* reorder required to resolve it's imports
* add tests
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: fft001 <nicolas.wicht@cognex.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Fix object instance comparison. Add test.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: James Bezuk <james.bezuk@cognex.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Stop modifying behavior of yaml on load
Only modify a copy of ``SafeLoader`` to ensure that we don't change the behaviour of ``pyyaml`` for everyone.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update util.py
Try to address the CodeQL warning.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Non-functional commit to trigger the github worklow checks hoping that the codecov isue is resolved.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Move explicit call to `JsonSchemaObject` for parsing to calling a class variable instead.
* Add contrived test
* ignore unittest for pydantic v1
* Fix format
---------
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Add json schema extra for pydantic v2 Field with readOnly/writeOnly
* Run formatter
* Fix field
* dump raw extra keys
* remove unused field
---------
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Fix default for annotated field in pydantic v2
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Move v2 logic to v2 model
---------
Co-authored-by: ferris <ferris@devdroplets.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* setup usecase
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Support discriminator in array
* Support discriminator in array
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* with pydantic v2, use pydantic.AwareDatetime instead of datetime
Openapi spec says that type string with format "date-time" must have a timezone.
Therefore, we need pydantic.AwareDatetime here.
* Add unittest
---------
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Support custom formatters for CodeFormatter
* Add custom formatters argument
* Add graphql to docs/supported-data-types.md
* Add test
custom formatter for custom-scalar-types.graphql;
* Run poetry run scripts/format.sh
* Add simple doc
* Update Scalar.jinja2
* Update Scalar.jinja2 2
* Add test
generation datamodel from github graphql api https://docs.github.com/en/graphql/overview/public-schema
* Fix test test_main_graphql_github_api
* Remove test test_main_graphql_github_api
* Add new argument `additional-imports`
* Add new argument `additional-imports` to docs
* Add test:
graphql schema with custom imports (using additional-imports argument)
* Fix test test_main_graphql_additional_imports:
to tests for isort 4 and isort 5
* REsolve conflict
* Add scalar data type and template for this
* Add union data type and template for this
* Updater union template
* Add typing.TypeAlias to default imports
* Add graphql parser
* Add first test
* Formatted code style
* Fix for test_main_simple_star_wars
* Use poetry run ./scripts/format.sh
* Fix `typename__` field for graphql object
Set default literal value for `typename__` field
* Add graphql docs
* Add test:
Check all GraphQL field types;
* Add test:
Check custom scalar py type;
* Add test:
Check graphql field aliases;
* Run poetry run ./scripts/format.sh
* Update graphql docs:
Add section `Custom scalar types`;
* poetry run ./scripts/format.sh
* Skips failure
I don't know what the ramifications of this change are, but I know this change seems to skip the error when data classes from json schema
* Add unittest
* Fix unittest
---------
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
* Prepend fields with leading numbers with `special_field_name_prefix`
* 📄Change documentation of `--remove-special-field-name-prefix`
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Missing underscore
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Fix missing constr import issue
Add duplicate field constraints test case
* Remove unused imports
* Fix adding imports
* get original field to get imports
* Fix types
* ignore coverage
* Remove unused imports