NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3350 most downloaded on PyPI
Asynchronous Python ODM for MongoDB
Last release 1 months ago
07 Aug 2026
Ships fairly regularly
a new release about every 3 months
Nearly every release is documented
notes for 58 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
156 releases · first in 2021
One column per quarter.
Add distinct() to chained find queries
distinct() to chained find queriesFindQuery.exists()find_one() upsert resultsNot operator type hintSetRevisionId usageAuthor - smahn9123
PR https://github.com/BeanieODM/beanie/pull/1301
Author - gsakkis
PR https://github.com/BeanieODM/beanie/pull/1295
Author - tingQian
PR https://github.com/BeanieODM/beanie/pull/1317
Author - xianjianlf2
PR https://github.com/BeanieODM/beanie/pull/1346
Author - 0x5t4l1n
PR https://github.com/BeanieODM/beanie/pull/1345
Author - gaurav-hub319
PR https://github.com/BeanieODM/beanie/pull/1343
Add a DocumentDB sample and clarify computed-field and serializer limitations.
Add Context7 documentation metadata.
Authors - khelanmodi , pctablet505 , Sarthak-commits
PRs https://github.com/BeanieODM/beanie/pull/1306 , https://github.com/BeanieODM/beanie/pull/1341 , https://github.com/BeanieODM/beanie/pull/1334
Author - j-vanrav
PR https://github.com/BeanieODM/beanie/pull/1315
Do not raise DeprecationWarning internally when accessing bucket_rounding_second deprecated field by @staticxterm in #1238
bucket_rounding_second deprecated field by @staticxterm in #1238Full Changelog: 2.0.1...2.1.0
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1287
Author - vvuk
PR https://github.com/BeanieODM/beanie/pull/1276
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1275
Author - veeceey
PR https://github.com/BeanieODM/beanie/pull/1271
Author - veeceey
PR https://github.com/BeanieODM/beanie/pull/1269
Author - NoahStapp
PR https://github.com/BeanieODM/beanie/pull/1255
Author - smahn9123
PR https://github.com/BeanieODM/beanie/pull/1248
Author - gugu-py
PR https://github.com/BeanieODM/beanie/pull/1241
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1282
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1284
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1286
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1279
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1278
Author - Viicos
PR https://github.com/BeanieODM/beanie/pull/1123
Fix PydanticDeprecatedSince211: Accessing the 'model_fields' attribute on the instance is deprecated by @gsakkis in #1150
This release specifies and limits the last major supported version of Python to 3.13.
No version of Beanie is yet compatible with Python 3.14 and above.
Full Changelog: 2.0.0...2.0.1
Author - staticxterm
PR https://github.com/BeanieODM/beanie/pull/1225
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1218
Author - xcrong
PR https://github.com/BeanieODM/beanie/pull/1209
Author - kewldan
PR https://github.com/BeanieODM/beanie/pull/1204
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1203
Author - scarlet2131
PR https://github.com/BeanieODM/beanie/pull/1184
Author - CatBraaain
PR https://github.com/BeanieODM/beanie/pull/1154
Author - gsakkis
PR https://github.com/BeanieODM/beanie/pull/1150
This release moves away from Motor in favor of the PyMongo Async API . As a consequence of this, some Beanie internal fields and method names have bee
This release moves away from Motor in favor of the PyMongo Async API.
As a consequence of this, some Beanie internal fields and method names have been renamed to remove references to Motor.
If you have used the Motor API in your project, please check the official Motor to PyMongo Async migration guide to see what has changed and how to update your code.
Lastly, please check the updated Beanie documentation as well.
Document.get_motor_collection() → Document.get_pymongo_collection()
Document.get_settings().motor_db → Document.get_settings().pymongo_db
Document.get_settings().motor_collection → Document.get_settings().pymongo_collection
UnionDocument.get_motor_collection() → UnionDocument.get_pymongo_collection()
UnionDocument.get_settings().motor_db → UnionDocument.get_settings().pymongo_db
UnionDocument.get_settings().motor_collection → UnionDocument.get_settings().pymongo_collection
View.aggregate(...).motor_cursor → View.aggregate(...).get_cursor()
View.get_settings().motor_db → View.get_settings().pymongo_db
View.get_settings().motor_collection → View.get_settings().pymongo_collection
DocumentModel.aggregate(...).motor_cursor → DocumentModel.aggregate(...).get_cursor()
DocumentModel.find(...).aggregate(...).motor_cursor → DocumentModel.find(...).aggregate(...).get_cursor()
IndexModelField.from_motor_index_information() → IndexModelField.from_pymongo_index_information()
multiprocessing_mode attribute was removed from the Initializer class and as a parameter to init_beanie().
Full Changelog: 1.30.0...2.0.0
Author - hRtWzFe
PR https://github.com/BeanieODM/beanie/pull/1166
Author - Rishat-F
PR https://github.com/BeanieODM/beanie/pull/1136
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1113
fix: deprecate bucket_rounding_second in favor of bucket_rounding_seconds in TimeSeriesConfig by @m00rex in #1162
This release drops support for Python 3.8.
BulkWriter.__init__ bug when it has object_class param input by @hagd0520 in #1107first_or_none no longer mutates FindMany object (#1116) by @egorzh01 in #1178bucket_rounding_second in favor of bucket_rounding_seconds in TimeSeriesConfig by @m00rex in #1162Full Changelog: 1.29.0...1.30.0
Author - scarlet2131
PR https://github.com/BeanieODM/beanie/pull/1183
Author - egorzh01
PR https://github.com/BeanieODM/beanie/pull/1178
Author - unexceptable
PR https://github.com/BeanieODM/beanie/pull/1177
Author - kaperont
PR https://github.com/BeanieODM/beanie/pull/1163
Author - m00rex
PR https://github.com/BeanieODM/beanie/pull/1162
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1160
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/1159
Author - Taaku18
PR https://github.com/BeanieODM/beanie/pull/1144
Author - staticxterm
PR https://github.com/BeanieODM/beanie/pull/1141
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1139
Author - mattewid
PR https://github.com/BeanieODM/beanie/pull/1126
Author - hagd0520
PR https://github.com/BeanieODM/beanie/pull/1107
Author - dantetemplar
PR https://github.com/BeanieODM/beanie/pull/1099
Author - staticxterm
PR https://github.com/BeanieODM/beanie/pull/1081
This release fixes a regression introduced in Version 1.28.0 that caused errors with the generated JSON Schema. Shout-out to @staticxterm for helping
This release fixes a regression introduced in Version 1.28.0 that caused errors with the generated JSON Schema. Shout-out to @staticxterm for helping us resolve the issue.
Owner model missing in init_beanie in Inheritance documentation's Inserts example by @ksayer in #1090diacritic_sensitive parameter optional to support $text operator on Cosmos DB by @mykolaskrynnyk in #1089Full Changelog: 1.28.0...1.29.0
Author - staticxterm
PR https://github.com/BeanieODM/beanie/pull/1080
Author - ksayer
PR https://github.com/BeanieODM/beanie/pull/1090
Author - mykolaskrynnyk
PR https://github.com/BeanieODM/beanie/pull/1089
Author - dantetemplar
PR https://github.com/BeanieODM/beanie/pull/1100
Author - Viicos
PR https://github.com/BeanieODM/beanie/pull/1094
Author - mdaffad
PR https://github.com/BeanieODM/beanie/pull/1095
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1079
Author - staticxterm
PR https://github.com/BeanieODM/beanie/pull/1091
modify tests to not raise deprecation warnings by @07pepa in #1047
Drops support for Python 3.7
find_many_in_all method by @vasuman in #1068Full Changelog: 1.27.0...1.28.0
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1049
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1046
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1044
Author - vasuman
PR https://github.com/BeanieODM/beanie/pull/1068
Author - whitfin
PR https://github.com/BeanieODM/beanie/pull/1042
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1053
Author - jorma16
PR https://github.com/BeanieODM/beanie/pull/942
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1060
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1047
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1051
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1040
Replace deprecated datetime.utcnow with datetime.now
This is Beanie's first-ever community release! A big thanks to @roman-right and all the other contributors who made this possible!
basefindcomparisonoperator constructorFull Changelog: 1.26.0...1.27.0
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1034
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1030
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1023
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1022
Author - janas-adam
PR https://github.com/BeanieODM/beanie/pull/1021
Author - andraghetti
PR https://github.com/BeanieODM/beanie/pull/1018
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/1015
Author - adeelsohailahmed
PR https://github.com/BeanieODM/beanie/pull/1014
Author - CAPITAINMARVEL
PR https://github.com/BeanieODM/beanie/pull/1007
Author - adeelsohailahmed
PR https://github.com/BeanieODM/beanie/pull/1001
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/998
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/996
Author - Dudesons
PR https://github.com/BeanieODM/beanie/pull/995
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/989
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/986
Author - fnogatz
PR https://github.com/BeanieODM/beanie/pull/984
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/972
Author - fredowashere
PR https://github.com/BeanieODM/beanie/pull/970
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/968
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/962
Author - roman-right
PR https://github.com/BeanieODM/beanie/pull/961
Author - dotKokott
PR https://github.com/BeanieODM/beanie/pull/960
Author - IterableTrucks
PR https://github.com/BeanieODM/beanie/pull/952
Author - thiagosalvatore
PR https://github.com/BeanieODM/beanie/pull/948
Author - Robert-Nogueira
PR https://github.com/BeanieODM/beanie/pull/935
Author - gianpaj
PR https://github.com/BeanieODM/beanie/pull/932
Author - aaronted009
PR https://github.com/BeanieODM/beanie/pull/925
Author - 07pepa
PR https://github.com/BeanieODM/beanie/pull/917
Author - marwan-alloreview
PR https://github.com/BeanieODM/beanie/pull/915
Update deprecated call of general_plain_validator_function
document methods (#679)Author - Ali Moradi
PR https://github.com/roman-right/beanie/pull/901
Author - dslemusp
PR https://github.com/roman-right/beanie/pull/897
Author - Maxim
PR https://github.com/roman-right/beanie/pull/886
Author - Josh Borrow
PR https://github.com/roman-right/beanie/pull/904
Author - Valentin Oliver Loftsson
PR https://github.com/roman-right/beanie/pull/899
Author - Danil
PR https://github.com/roman-right/beanie/pull/868
Author - Christian Grotheer
PR https://github.com/roman-right/beanie/pull/861
WARNING: This is a breaking change. Please, read the docs before updating.
WARNING: This is a breaking change. Please, read the docs before updating.
Author - George Sakkis
PR https://github.com/roman-right/beanie/pull/816
Author - Guy Tsitsiashvili
PR https://github.com/roman-right/beanie/pull/819
Author - Benjamin Earle
PR https://github.com/roman-right/beanie/pull/826
Author - Mahmoud Mabrouk
PR https://github.com/roman-right/beanie/pull/828
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/831
WARNING: This is a breaking change. Please, read the docs before updating.
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/834
### Exclude revision_id From The get_changes Method - Author - Roman Right - PR ### Add Support For Custom Bucket Fields In Time Series - Author - Luc
Mapping Branch Of EncoderDocument Constructor### Fix Multiprocessing Mode - Author - Roman Right - PR
### Multiprocessing Mode For Init - Author - Roman Right - PR
### Args For get_model_dump - Author - Roman Right - PR
[1.23.3]: https://pypi.org/project/beanie/1.23.3
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/772
### Fix Aggregations With Text Queries - Author - Benjamin Earle - PR ### Handle Annotated Indexes - Author - Benjamin Earle - PR ### Fix Docstring -
### Fix: Issue #631 - Author - IterableTrucks - PR ### Replace Custom 'Hidden=True' Field Attribute With Builtin 'Exclude=True' - Author - George Sakk
[[BUG] Validation Error on parsing retrieved document's BSON Decimal128 field]
Author - George Sakkis
Issues:
# Update Precommit Hooks & CI - Author - George Sakkis - PR
# Fix: Unify Methods for Retrieving Field's Extra Parameters During Backlink Processing - Author - Roman Right - PR - Issues: - [[BUG] Optional[Backli
Author - Roman Right
Issues:
# Fix Numpy Array Incompatability - Author - Alex Lau - PR
# Refactor: Simplify UpdateMany And UpdateOne __await__ Method - Author - Muzaffer Cikay - PR
# Fix get_field_type & Generalize extract_id_class - Author - George Sakkis - PR
[[BUG] Can't use a View if the user doesn't have full read privileges to all collections]
Beanie 1.21 still triggers many deprecation warnings with Pydantic v2
Fixed Issues:
List[Link[Type]] when fetch_all_links is calledinsert_many()?Text query doesn't work with fetch_links=True__get_pydantic_core_schema__validate_on_save doesn't work with Document.save()root fieldPR https://github.com/roman-right/beanie/pull/636
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/636
PR https://github.com/roman-right/beanie/pull/624
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/624
PR https://github.com/roman-right/beanie/pull/620
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/620
Batteries. The first battery is the queue system. Doc: https://beanie-odm.dev/batteries/queue/
Batteries. The first battery is the queue system. Doc: https://beanie-odm.dev/batteries/queue/
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/603
PR https://github.com/roman-right/beanie/pull/590
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/590
PR https://github.com/roman-right/beanie/pull/575
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/575
Fix | 496 | Support aggregation chaining after find with fetch_links=True.
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/571
Fix: update forward refs during nested links check Fix: session in transactions
Fix: update forward refs during nested links check Fix: session in transactions
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/566
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/567
Some bug fixes and general improvements
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/557
Author - Anton Kriese
PR https://github.com/roman-right/beanie/pull/552
Author - Kai Schniedergers
PR https://github.com/roman-right/beanie/pull/546
Author - divyam234
PR https://github.com/roman-right/beanie/pull/542
Author - Yallxe
PR https://github.com/roman-right/beanie/pull/526
Author - Antonio Eugenio Burriel
PR https://github.com/roman-right/beanie/pull/521
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/517
Configure storing nulls in the database or not
Features:
Fix:
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/555
PR https://github.com/roman-right/beanie/pull/502
Author - Harris Tsim
PR https://github.com/roman-right/beanie/pull/502
Author - 설원준(Wonjoon Seol)/Dispatch squad
PR https://github.com/roman-right/beanie/pull/466
Author - Ivan GJ
PR https://github.com/roman-right/beanie/pull/478
Author - Ilia
PR https://github.com/roman-right/beanie/pull/511
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/518
Don't create state on init for docs with custom id types
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/486
feat: convert updates to be atomic operations
Author - Roman Right
PR https://github.com/roman-right/beanie/pull/481
PR https://github.com/roman-right/beanie/pull/472
Author - Sebastian Battle
PR https://github.com/roman-right/beanie/pull/472
Already inserted Links will throw DuplicateKeyError on insert of wrapping doc
Author - noaHson86
PR https://github.com/roman-right/beanie/pull/469
PR https://github.com/roman-right/beanie/pull/468
PR https://github.com/roman-right/beanie/pull/305
Author - Paul Renvoisé
PR https://github.com/roman-right/beanie/pull/305
Raises exception if Collection inner class was used as it is not supported more
1.15.5
1.14.1
[BUG] Initiating self-referencing documents with nested links breaks due to uncaught request loop
[BUG] Initiating self-referencing documents with nested links breaks due to uncaught request loop
Nested lookups for direct links
[BUG] revision_id field saved in MongoDB using save()/replace() on an existing document even if use_revision is False
[BUG]: Link fields interference/contamination
[BUG] find_one projection link
[BUG]: Link fields interference/contamination
[BUG]: ElemMatch on Document property of Type List[Link] fails with IndexError in relations.py convert_ids()
PR https://github.com/roman-right/beanie/pull/448
Support for fetching deep-nested Links
Author - Courtney Sanders
PR https://github.com/roman-right/beanie/pull/419
PR https://github.com/roman-right/beanie/pull/436
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Wrong inheritance behavior with non-rooted documents
Deepcopy dict before encode it to save the original
Use Settings inner class in migrations internals
Use Settings inner class in migrations internals
Fix inheritance: mark root docs with _inheritance_inited = True
Pass pymongo kwargs to the bulk writer
The sync version was moved to a separate project
Nothing published for this version
Multi-model behavior for inherited documents
Author - Vitaliy Ivanov
PR https://github.com/roman-right/beanie/pull/395
Your coding agent can read these notes before it upgrades. Set up the MCP server →