The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.9.0 - 2022-09-25
-
Create new generic types to support generic collection types (#240 by @erny & @art049)
Thus, it's now possible to define models like this in python 3.9+ 🚀:
class User(Model): scopes: list[str] friendsIds: list[ObjectId] skills: set[str]
-
Allow using generators with
in_
andnot_in
(#270 by @art049)
-
Fix
EmbeddedModel
generics definition with a customkey_name
(#269 by @art049) -
Raise a
TypeError
when defining aReference
in a generic(List, Dict, Tuple, ...) containing EmbeddedModels (#269 by @art049)
0.8.0 - 2022-09-09
-
Allow Index definition (feature documentation) (#255 by @art049)
-
Allow using the
Config.extra
attribute from pydantic (#259 by @art049)
-
Fix embedded models parsing with custom
key_name
(#262 by @iXB3) -
Fix
engine.save
using an embedded model as a primary key (#258 by @art049) -
Fix engine creation typo in the documentation (#257 by @art049)
0.7.1 - 2022-09-02
0.7.0 - 2022-08-30
-
Add new SyncEngine, support async and sync code (#231 by @tiangolo)
-
Friendly interface for session and transactions (#244 by @art049)
-
Implement the
engine.remove
method to allow instance deletion from a query (#147 & #237 by @joeriddles & @art049)
0.6.0 - 2022-08-24
-
Upgrade types and add support for instance autocompletion with
dataclass_transform
(VS Code autocompletion) (#230 by @tiangolo)
-
Fix using the shared session when updating a document (#227 by @tiangolo)
-
Allow models to contain string-based datetime fields that indicate UTC (#136 by @kfox)
-
Fix
Reference
usage with non the non default primary key (#184 by @dynalz) -
Fix
key_name
use on EmbeddedModels (#195 by @jvanegmond)
0.5.0 - 2022-06-01
0.4.0 - 2022-04-23
-
Update and copy methods:
- Updating multiple fields at once is now directly possible from a pydantic model or a dictionary (feature documentation, sample use case with FastAPI)
- Changing the primary field of an instance is now easier (documentation)
-
Update example in README (#192 by @jasper-moment)
-
⬆️ Update motor requirement from >=2.1.0,<2.5.0 to >=2.1.0,<2.6.0 (#160 by @dependabot[bot])
-
⬆️ Update typer requirement from ^0.3.2 to ^0.4.1 (#214 by @dependabot[bot])
-
⬆️ Update mypy requirement from ^0.910 to ^0.942 (#215 by @dependabot[bot])
-
⬆️ Update fastapi requirement from >=0.61.1,<0.67.0 to >=0.61.1,<0.69.0 (#166 by @dependabot[bot])
-
⬆️ Update fastapi requirement from >=0.61.1,<0.64.0 to >=0.61.1,<0.67.0 (#150 by @dependabot[bot])
-
⬆️ Update mypy requirement from ^0.812 to ^0.910 (#142 by @dependabot[bot])
-
⬆️ Update pytest-asyncio requirement from ^0.14.0 to ^0.15.0 (#125 by @dependabot[bot])
-
⬆️ Update motor requirement from >=2.1.0,<2.4.0 to >=2.1.0,<2.5.0 (#124 by @dependabot[bot])
-
⬆️ Update importlib-metadata requirement from >=1,<4 to >=1,<5 (#126 by @dependabot[bot])
-
⬆️ Update pydocstyle requirement from ^5.1.1 to ^6.0.0 (#119 by @dependabot[bot])
-
⬆️ Update isort requirement from ~=5.7.0 to ~=5.8.0 (#122 by @dependabot[bot])
-
⬆️ Update flake8 requirement from ~=3.8.4 to ~=3.9.0 (#116 by @dependabot[bot])
0.3.5 - 2021-05-12
- Change allowed pydantic versions to handle CVE-2021-29510 by @art049
0.3.4 - 2021-03-04
-
Fix modified mark clearing on save for nested models (#88 by @Olegt0rr)
-
Don't replace default field description for ObjectId (#82 by @Olegt0rr)
-
CI Matrix with Standalone instances, ReplicaSets and Sharded clusters (#91 by @art049)
-
Update mkdocstrings requirement from ^0.14.0 to ^0.15.0 (#110 by @dependabot[bot])
-
Update mkdocs-material requirement from ^6.0.2 to ^7.0.3 (#111 by @dependabot[bot])
-
Update mypy requirement from ^0.800 to ^0.812 (#106 by @dependabot[bot])
0.3.3 - 2021-02-13
-
Remove
bypass_document_validation
save option to avoidNot Authorized
errors (#85 by @Olegt0rr) -
Fix microseconds issue: use truncation instead of round (#100 by @erny)
-
Add py.typed to ship typing information for mypy (#101 by @art049)
-
Fix datetime field default example value naiveness (#103 by @art049)
-
Update pytz requirement from ^2020.1 to ^2021.1 (#98 by @dependabot[bot])
-
Update mkdocstrings requirement from ^0.13.2 to ^0.14.0 (#92 by @dependabot[bot])
-
Update mypy requirement from ^0.790 to ^0.800 (#97 by @dependabot[bot])
-
Update isort requirement from ~=5.6.4 to ~=5.7.0 (#90 by @dependabot[bot])
-
Update fastapi requirement from >=0.61.1,<0.63.0 to >=0.61.1,<0.64.0 (#84 by @dependabot[bot])
0.3.2 - 2020-12-15
-
Migrate to the updated prettier precommit hook (#74 by @art049)
-
Update uvicorn requirement from ^0.12.1 to ^0.13.0 (#67 by @dependabot[bot])
-
Update mypy requirement from ^0.782 to ^0.790 (#48 by @dependabot[bot])
-
Update importlib-metadata requirement from ^1.0 to >=1,<4 (#54 by @dependabot[bot])
-
Update flake8 requirement from ==3.8.3 to ==3.8.4 (#47 by @dependabot[bot])
-
Update fastapi requirement from ^0.61.1 to >=0.61.1,<0.63.0 (#59 by @dependabot[bot])
0.3.1 - 2020-11-16
0.3.0 - 2020-11-09
- Deprecate usage of
__collection__
to customize the collection name. Prefer thecollection
Config option (more details)
-
Allow parsing document with unset fields defaults (documentation) (#28 by @art049)
-
Integration with Pydantic
Config
class (#37 by @art049):- It's now possible to define custom
json_encoders
on the Models - Some other
Config
options provided by Pydantic are now available (more details)
- It's now possible to define custom
0.2.1 - 2020-10-25
- Fix combined use of
skip
andlimit
withengine.find
(#25 by @art049)
0.2.0 - 2020-10-25
- Deprecate
AIOEngineDependency
to prefer a global engine object, more details (#21 by @art049)
- Add sorting support (#17 by @adriencaccia)
- Support motor 2.3.0 (#20 by @art049)
- Fix FastAPI usage with References (#19 by @art049)
- Adding a CONTRIBUTING.md file to the root directory with link to docs (#8 by @sanders41)
- Raw Query Usage Documentation Fix (#10 by @adeelsohailahmed)
- Update Filtering to include Bitwise Operator Warning (#24 by @adeelsohailahmed)