* WIP
* WIP - make test_model_definition tests pass
* WIP - make test_model_methods pass
* WIP - make whole test suit at least run - failing 49/443 tests
* WIP fix part of the getting pydantic tests as types of fields are now kept in core schema and not on fieldsinfo
* WIP fix validation in update by creating individual fields validators, failing 36/443
* WIP fix __pydantic_extra__ in intializing model, fix test related to pydantic config checks, failing 32/442
* WIP - fix enum schema in model_json_schema, failing 31/442
* WIP - fix copying through model, fix setting pydantic fields on through, fix default config and inheriting from it, failing 26/442
* WIP fix tests checking pydantic schema, fix excluding parent fields, failing 21/442
* WIP some missed files
* WIP - fix validators inheritance and fix validators in generated pydantic, failing 17/442
* WIP - fix through models setting - only on reverse side of relation, but always on reverse side, failing 15/442
* WIP - fix through models setting - only on reverse side of relation, but always on reverse side, failing 15/442
* WIP - working on proper populating __dict__ for relations for new schema dumping, some work on openapi docs, failing 13/442
* WIP - remove property fields as pydantic has now computed_field on its own, failing 9/442
* WIP - fixes in docs, failing 8/442
* WIP - fix tests for largebinary schema, wrapped bytes fields fail in pydantic, will be fixed in pydantic-core, remaining is circural schema for related models, failing 6/442
* WIP - fix to pk only models in schemas
* Getting test suites to pass (#1249)
* wip, fixing tests
* iteration, fixing some more tests
* iteration, fixing some more tests
* adhere to comments
* adhere to comments
* remove unnecessary dict call, re-add getattribute for testing
* todo for reverse relationship
* adhere to comments, remove prints
* solve circular refs
* all tests pass 🎉
* remove 3.7 from tests
* add lint and type check jobs
* reforat with ruff, fix jobs
* rename jobs
* fix imports
* fix evaluate in py3.8
* partially fix coverage
* fix coverage, add more tests
* fix test ids
* fix test ids
* fix lint, fix docs, make docs fully working scripts, add test docs job
* fix pyproject
* pin py ver in test docs
* change dir in test docs
* fix pydantic warning hack
* rm poetry call in test_docs
* switch to pathlib in test docs
* remove coverage req test docs
* fix type check tests, fix part of types
* fix/skip next part of types
* fix next part of types
* fix next part of types
* fix coverage
* fix coverage
* fix type (bit dirty 🤷)
* fix some code smells
* change pre-commit
* tweak workflows
* remove no root from tests
* switch to full python path by passing sys.executable
* some small refactor in new base model, one sample test, change makefile
* small refactors to reduce complexity of methods
* temp add tests for prs against pydantic_v2
* remove all references to __fields__
* remove all references to construct, deprecate the method and update model_construct to be in line with pydantic
* deprecate dict and add model_dump, todo switch to model_dict in calls
* fix tests
* change to union
* change to union
* change to model_dump and model_dump_json from dict and json deprecated methods, deprecate them in ormar too
* finish switching dict() -> model_dump()
* finish switching json() -> model_dump_json()
* remove fully pydantic_only
* switch to extra for payment card, change missed json calls
* fix coverage - no more warnings internal
* fix coverage - no more warnings internal - part 2
* split model_construct into own and pydantic parts
* split determine pydantic field type
* change to new field validators
* fix benchmarks, add codspeed instead of pytest-benchmark, add action and gh workflow
* restore pytest-benchmark
* remove codspeed
* pin pydantic version, restore codspeed
* change on push to pydantic_v2 to trigger first one
* Use lifespan function instead of event (#1259)
* check return types
* fix imports order, set warnings=False on json that passes the dict, fix unnecessary loop in one of the test
* remove references to model's meta as it's now ormar config, rename related methods too
* filter out pydantic serializer warnings
* remove choices leftovers
* remove leftovers after property_fields, keep only enough to exclude them in initialization
* add migration guide
* fix meta references
* downgrade databases for now
* Change line numbers in documentation (#1265)
* proofread and fix the docs, part 1
* proofread and fix the docs for models
* proofread and fix the docs for fields
* proofread and fix the docs for relations
* proofread and fix rest of the docs, add release notes for 0.20
* create tables in new docs src
* cleanup old deps, uncomment docs publish on tag
* fix import reorder
---------
Co-authored-by: TouwaStar <30479449+TouwaStar@users.noreply.github.com>
Co-authored-by: Goran Mekić <meka@tilda.center>
* Fix property_fields not being inherited. Fix for #774.
* Fix coverage
* Fix coverage by removing set attribute update - during inheriting the current property fields are not set yet.
* feat: add check columns class
* feat: write document of check columns part
* test: write a test for check columns constraints
* fix: debuging test exception raise mysql
* fix: set pragma no cover to ignore cov
* fix: ignore pytest raise in python 3.x not 10
* feat: set constraint name for check columns
* refactor: support index and check overwrites
* fix: debuging check constraint arguments
* fix: debug coverage all code tests
* fix: pass the map of type constraint to counter
* refactor: edit check name replace sapce underline
* refactor: write new function copy constraints
* test: write test for invalid constraint type
* fix: debug text cluase replaced names
* fix: set pragma no cover for result returned
* refactor: no coverage for main if statement
* perf: change get constraint copy func code
* fix: fix bug in mypy typing check
* add __cache__ property into PydanticMixin
* add new test for exclude fields on relations
* fix the return type from __cache__ property
* run pre-commit lints/checks
Co-authored-by: collerek <collerek@gmail.com>