Changelog
Beanie project
1.28.0 - 2024-12-05
Fix kwargs/args untyped
Update pre-commit
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1046
Drop support for python 3.7
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1044
Add missing type hint to find_many_in_all
method
- Author - vasuman
- PR https://github.com/BeanieODM/beanie/pull/1068
Add documentdb compatibility to fetch_links
- Author - whitfin
- PR https://github.com/BeanieODM/beanie/pull/1042
Fix issues caused by #1044
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1053
Feat(skip_index): possibility added to skip index actions
- Author - jorma16
- PR https://github.com/BeanieODM/beanie/pull/942
Fix pydanticobjectid fields being parsed into str
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1060
Modify tests to not raise deprecation warnings
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1047
Add python 3.13 and jit into testing
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1051
Handle limit and session in .count() method
1.27.0 - 2024-10-06
Add tests on all major mongo version
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1034
Fix return type from document update
Fix expression type hint not allowing some type https://github.com/beanieodm/beanie/issues/1020
Fix type hint using pymongo client session instead of motor client session
Fix logical operator typing #1000
Use session in document insert
Use sequence instead of list in init_beanie
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/1015
Replace deprecated datetime.utcnow with datetime.now
Fix uniondoc type hint missing in init_beanie and on findinterface
Add test to ensure dict with enum keys are encoded properly
Project publishing instruction + changelog generation script
Revert project publishing gh action
Extend motor option to beanie
- Author - Dudesons
- PR https://github.com/BeanieODM/beanie/pull/995
Fix regex storing
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/989
Remove links to ko-fi from the project
Fix typo in source code comment in inheritance.md
- Author - fnogatz
- PR https://github.com/BeanieODM/beanie/pull/984
Fix gh action to grant permissions and use tags
Fix: example of find by id and link to finding-documents
Fix incorrect type serialization when dumping to python
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/968
Use ruff format instead of black
Gh action: set new version and publish on push
Feature / fix: allow settings to be inherited and extended (fixes #644)
Fix: issue #951
Allow unordered parameter on bulkwriter
Fix: set default value in findinterface._inheritance_inited to avoid …
Fix example in multi-model.md
- Author - gianpaj
- PR https://github.com/BeanieODM/beanie/pull/932
Add missing type signature to basefindcomparisonoperator
constructor
Removed calls to function causing deprecation warning where possible
- Author - 07pepa
- PR https://github.com/BeanieODM/beanie/pull/917
Update migrations.md
1.26.0 - 2024-05-01
Feature: soft delete
Update deprecated call of general_plain_validator_function (#676)
Annotate decorators that wrap document
methods (#679)
- Author - Maxim
- PR https://github.com/roman-right/beanie/pull/886
Update relations docs to indicate that backlinks are virtual.
Docs: fix typo (#869)
Add possibility of leveraging enum in find query
- Author - Danil
- PR https://github.com/roman-right/beanie/pull/868
Handle typeerror in validator of pydanticobjectid
1.25.0 - 2024-01-24
Encode Date Objects
Fix: Findinterface Type-Hints Break On View Models
Fix: Count With Text Queries And Links
Update Migration Command To Enable/Disable Transactions
Sync Method
Limit Nesting Level Of Linked Documents
WARNING: This is a breaking change. Please, read the docs before updating.
1.24.0 - 2023-12-24
Exclude revision_id From The get_changes Method
Add Support For Custom Bucket Fields In Time Series
Add Bson Maxkey And Minkey
Update Model During Save Validation
Fix init_beanie document_models Type Hint
Fix Encoding Keys In Mapping
Branch Of Encoder
Improve Write Performances
Doc Update: Queue
Tests For Indexed Fields
Rework Revision
Add Missing Type Signature To Document
Constructor
- Author - None
- PR https://github.com/roman-right/beanie/pull/813
1.23.6 - 2023-11-12
Fix Multiprocessing Mode
1.23.5 - 2023-11-12
Multiprocessing Mode For Init
1.23.4 - 2023-11-12
Args For get_model_dump
1.23.3 - 2023-11-08
Fix Id Notation
1.23.2 - 2023-11-08
Fix Aggregations With Text Queries
Handle Annotated Indexes
Fix Docstring
Build Aggregation Pipeline From Find Query Without Fetch
1.23.1 - 2023-10-23
Fix: Issue #631
Replace Custom 'Hidden=True' Field Attribute With Builtin 'Exclude=True'
Add Support For Indexed Custom Pydantic Fields
1.23.0 - 2023-10-15
Refactor Encoder
Preserve Sort/Skip/Limit For Aggregations
Update Pre-Commit Hooks
Fixed Link Validation
Fix: pydantic_core._pydantic_core.Url object is not iterable
Simplify And Fix DecimalAnnotation
- Author - George Sakkis
-
Issues:
Simplify BsonBinary
Minor Fixes
Replace Encoder With get_dict In The replace_one Method
1.22.6 - 2023-09-16
Update Precommit Hooks & CI
1.22.5 - 2023-09-13
Fix: Unify Methods for Retrieving Field's Extra Parameters During Backlink Processing
- Author - Roman Right
-
Issues:
1.22.4 - 2023-09-13
Fix Numpy Array Incompatability
1.22.3 - 2023-09-13
Refactor: Simplify UpdateMany And UpdateOne await Method
1.22.2 - 2023-09-13
Fix get_field_type & Generalize extract_id_class
1.22.1 - 2023-09-13
Fix | list_collection_names Requires Unnecessary Privileges
- Author - Marina
- PR https://github.com/roman-right/beanie/pull/681
- Issues:
- [BUG] Can't use a View if the user doesn't have full read privileges to all collections
1.22.0 - 2023-09-13
Fix | August 2023
- Author - Roman Right
- PR https://github.com/roman-right/beanie/pull/669
-
Issues:
-
[BUG] Issue with
List[Link[Type]]
whenfetch_all_links
is called - Loosen type requirement for
insert_many()
? - [BUG] Updating documents with a frozen BaseModel as field raises TypeError
- [BUG] Not operator cant be on top level
- [BUG]
Text
query doesn't work withfetch_links=True
- [BUG] List type fields in updated model record do not get update.
- [BUG] Undefined behavior when chaining update methods
- [BUG] Revision Id is in Responsemodel
- [BUG] Custom types like bson.Binary require
__get_pydantic_core_schema__
- [BUG]
validate_on_save
doesn't work withDocument.save()
- [BUG] Beanie persists
root
field - Beanie 1.21 still triggers many deprecation warnings with Pydantic v2
- [BUG] TypeError: expected 1 argument, got 0 when beanie.Document has method wrapped in pydantic.validate_call
1.21.0 - 2023-08-03
Pydantic bump | final
1.21.0b1 - 2023-07-21
Bump pydantic | beta 1
1.21.0b0 - 2023-07-19
Bump pydantic | beta 0
1.20.0 - 2023-06-30
Docs: queue battery
1.20.0b1 - 2023-06-09
Feature: custom init classmethod
1.20.0b0 - 2023-06-09
Feature: optional batteries
1.19.2 - 2023-05-25
Fix: issues opened before 2023.05
1.19.1 - 2023-05-22
Fix: update forward refs during nested links check
Fix: session in iterative transactions
1.19.0 - 2023-05-05
Feat/back refs
Feat: add box operator
Fix table of contents not showing all classes
Return bulkwriteresult response from motor
Fix typing in 'document.get(...)'
- Author - Yallxe
- PR https://github.com/roman-right/beanie/pull/526
Init view's cache
Kwargs arguments for elemmatch operator
1.18.1 - 2023-05-04
Keep nulls config
1.18.0 - 2023-03-31
Prevent the models returned from find_all to be modified in the middle of modifying
Allow change class_id and use name settings in uniondoc
Fix: make revision_id
not show in schema
Fix: added re.pattern support to common encoder suite
- Author - Ilia
- PR https://github.com/roman-right/beanie/pull/511
Fix other issues
1.18.0b1 - 2023-02-09
Fix
- Don't create state on init for docs with custom id types
Implementation
1.18.0b0 - 2023-01-30
Feature
- feat: convert updates to be atomic operations
Implementation
1.17.0 - 2023-01-19
Feature
- Add links to views
Implementation
1.16.8 - 2022-01-05
Fix
- Already inserted Links will throw DuplicateKeyError on insert of wrapping doc
Implementation
1.16.7 - 2023-01-03
Fix
- sort many args
Implementation
1.16.6 - 2022-12-27
Feature
- Previous saved state
Implementation
1.16.5 - 2022-12-27
Deprecation
- Raises exception if
Collection
inner class was used as it is not supported more
Backported to
Implementation
1.16.4 - 2022-12-20
Fix
- [BUG] Initiating self-referencing documents with nested links breaks due to uncaught request loop
- Nested lookups for direct links
Implementation
1.16.3 - 2022-12-19
Fix
Implementation
1.16.2 - 2022-12-19
Fix
- [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()
Implementation
1.16.1 - 2022-12-17
Feature
- Remove yarl dependency
Implementation
1.16.0 - 2022-12-17
Feature
- Support for fetching deep-nested Links
Implementation
1.16.0b3 - 2022-11-28
Feature
- Lazy parsing for find many
Implementation
1.15.4 - 2022-11-18
Fix
- Wrong inheritance behavior with non-rooted documents
Implementation
1.15.3 - 2022-11-10
Fix
- Deepcopy dict before encode it to save the original
Implementation
1.15.2 - 2022-11-09
Fix
- Use Settings inner class in migrations internals
- Fix inheritance: mark root docs with
_inheritance_inited = True
Implementation
1.15.1 - 2022-11-07
Fix
- Pass pymongo kwargs to the bulk writer
Implementation
1.15.0 - 2022-11-05
Feature
- The sync version was moved to a separate project
Breaking change
- There is no sync version here more. Please use Bunnet instead
Implementation
1.14.0 - 2022-11-04
Feature
- Multi-model behavior for inherited documents
Breaking change
- The inner class
Collection
is not supported more. Please, useSettings
instead.
Implementation
1.13.1 - 2022-10-26
Fix
- Remove redundant async things from sync interface
Implementation
1.13.0 - 2022-10-22
Improvement
- Sync interface
Implementation
1.12.1 - 2022-10-17
Improvement
- Clone interface for query objects
Implementation
1.12.0 - 2022-10-06
Improvement
- Optional list of links field
Implementation
1.11.12 - 2022-09-28
Improvement
- Change before_event, after_event signature to be more pythonic
Implementation
1.11.11 - 2022-09-26
Fix
- Remove prints
Implementation
1.11.10 - 2022-09-20
Improvement
- Adding Update Action
Implementation
1.11.9 - 2022-08-19
Fix
- Move set state and swap revision to init to avoid problems with subdocs
- Issue https://github.com/roman-right/beanie/issues/294
- Issue https://github.com/roman-right/beanie/issues/310
1.11.8 - 2022-08-17
Improvement
- Skip sync parameter for instance updates
1.11.7 - 2022-08-02
Improvement
- Decimal128 encoding
Implementation
1.11.6 - 2022-06-24
Fix
- Roll back projections fix, as it was valid
1.11.5 - 2022-06-24
Fix
- Projection fix for aggregations
1.11.4 - 2022-06-13
Improvement
- Link as FastAPI output
1.11.3 - 2022-06-10
Improvement
- Motor3 support
Implementation
1.11.2 - 2022-06-06
Fix
- Dnt inherit excludes
Implementation
1.11.1 - 2022-05-31
Features
- Allow extra
- Distinct
Implementation
- Author - Robert Rosca
- PR https://github.com/roman-right/beanie/pull/263
- Author - Никита
- PR https://github.com/roman-right/beanie/pull/268
1.11.0 - 2022-05-06
Features
- Multi-model mode
- Views
1.10.9 - 2022-05-06
Improvement
- pymongo_kwargs for insert many
1.10.8 - 2022-04-13
Fix
- Match step after limit step
Implementation
1.10.7 - 2022-04-12
Fix
- Empty update fails on revision id turned on
Implementation
1.10.6 - 2022-04-12
Improvement
- Single syntax for find by id
Implementation
1.10.5 - 2022-04-11
Improvement
- Avoid creating redundant query object
Implementation
1.10.4 - 2022-03-24
Improvement
- Allow custom MigrationNode for build
Implementation
1.10.3 - 2022-02-29
Improvement
- Delete action
Implementation
1.10.2 - 2022-02-28
Improvement
- Bulk writer for upsert
Implementation
1.10.1 - 2022-02-24
Improvement
- Skip actions
Implementation
1.10.0 - 2022-02-24
Improvement
- Timeseries collections support
- Pymongo kwargs for find, aggregate, update and delete operations
Implementation
1.9.2 - 2022-02-22
Improvement
- First or None for find queries
Implementation
1.9.1 - 2022-02-11
Improvement
- Add support for py.typed file
Implementation
- Author - Nicholas Smith
- PR - https://github.com/roman-right/beanie/pull/201
1.9.0 - 2022-02-11
Breaking Change
- Property allow_index_dropping to be default False. Indexes will not be deleted by default
Implementation
- Author - Nicholas Smith
- PR - https://github.com/roman-right/beanie/pull/196
1.8.13 - 2022-02-10
Improvement
- Add state_management_replace_objects setting
Implementation
- Author - Paul Renvoisé
- PR - https://github.com/roman-right/beanie/pull/197
1.8.12 - 2022-01-06
Improvement
- Add exclude_hidden to dict() to be able to keep hidden fields hidden when the exclude parameter set
Implementation
- Author - Yallxe
- PR - https://github.com/roman-right/beanie/pull/178
1.8.11 - 2021-12-30
Improvement
- Only safe pydantic version are allowed. https://github.com/samuelcolvin/pydantic/security/advisories/GHSA-5jqp-qgf6-3pvh
1.8.10 - 2021-12-29
Fix
- Revision didn't swap previous revision id and the current one on getting objects from db
1.8.9 - 2021-12-23
Improvement
- Deep search of updates for the
save_changes()
method
Kudos
- Thanks, Tigran Khazhakyan for the deep search algo here
1.8.8 - 2021-12-17
Added
- Search by linked documents fields (for pre-fetching search only)
1.8.7 - 2021-12-12
Fixed
- Binary encoder issue
1.8.6 - 2021-12-14
Improved
- Encoder
1.8.5 - 2021-12-09
Added
Optional[Link[Sample]]
is allowed field type syntax now
1.8.4 - 2021-12-12
Fixed
- DateTime bson type
1.8.3 - 2021-12-07
Added
- Subclasses inherit event-based actions
1.8.2 - 2021-12-04
Fixed
- Encoder priority
1.8.1 - 2021-11-30
Added
- Key-based call of subfields in the query builders
1.8.0 - 2021-11-30
Added
- Relations
Implementation
1.7.2 - 2021-11-03
Fixed
revision_id
is hidden in the api schema
Implementation
1.7.1 - 2021-11-02
Fixed
revision_id
is hidden in the outputs
Implementation
1.7.0 - 2021-10-12
Added
- Cache
- Bulk write
exists
- find query's method
Implementation
- PR - https://github.com/roman-right/beanie/pull/123
- PR - https://github.com/roman-right/beanie/pull/122
- PR - https://github.com/roman-right/beanie/pull/129
1.6.1 - 2021-10-06
Update
- Customization support. It is possible to change query builder classes, used in the classes, which are inherited from the Document class
Implementation
1.6.0 - 2021-09-30
Update
- Validate on save
Implementation
1.5.1 - 2021-09-27
Update
- Simplification for init_beanie function
Implementation
1.5.0 - 2021-09-27
Update
- Custom encoders to be able to configure, how specific type should be presented in the database
Implementation
- Author - Nazar Vovk
- PR - https://github.com/roman-right/beanie/pull/91
1.4.0 - 2021-09-13
Added
- Document state management
Implementation
1.3.0 - 2021-09-08
Added
- Active record pattern
Implementation
1.2.8 - 2021-09-01
Fix
- Delete's return annotation
Implementation
1.2.7 - 2021-09-01
Update
- Annotations for update and delete
Implementation
- Author - Anthony Shaw
- PR - https://github.com/roman-right/beanie/pull/106
1.2.6 - 2021-08-25
Fixed
- MongoDB 5.0 in GH actions
Implementation
1.2.5 - 2021-07-21
Fixed
- Indexed fields work with aliases now
Implementation
- Author - Kira
- Issue - https://github.com/roman-right/beanie/issues/96
1.2.4 - 2021-07-13
Fixed
- Aggregation preset method outputs
Implementation
1.2.3 - 2021-07-08
Fixed
- Pyright issues
Added
- Doc publishing on merge to the main branch
Implementation
- Issue - https://github.com/roman-right/beanie/issues/87
- Issue - https://github.com/roman-right/beanie/issues/70
1.2.2 - 2021-07-06
Fixed
- Bool types in search criteria
Implementation
1.2.1 - 2021-07-06
Fixed
- Document, FindQuery, Aggregation typings
Implementation
- Author - Kira
- Issue - https://github.com/roman-right/beanie/issues/69
1.2.0 - 2021-06-25
Added
- Upsert
Implementation
1.1.6 - 2021-06-21
Fix
- Pydantic dependency version ^1.5
Implementation
1.1.5 - 2021-06-17
Fix
- Convert document id to the right type in the
get()
method
Implementation
1.1.4 - 2021-06-15
Changed
- Stricter flake8 and fixing resulting errors
Implementation
1.1.3 - 2021-06-15
Added
- MyPy to pre-commit
Fixed
- Typing errors
Implementation
1.1.2 - 2021-06-14
Changed
- Skip migration test when transactions not available
Implementation
1.1.1 - 2021-06-14
Added
- Save method
Implementation
1.1.0 - 2021-06-02
Added
- Custom id types.
Implementation
1.0.6 - 2021-06-01
Fixed
- Typo in the module name.
Implementation
1.0.5 - 2021-05-25
Fixed
- Typing.
Implementation
1.0.4 - 2021-05-18
Fixed
aggregation_model
->projection_model
Implementation
1.0.3 - 2021-05-16
Added
- Index kwargs in the Indexed field
Implementation
- Author - Michael duPont
- PR - https://github.com/roman-right/beanie/pull/32
1.0.2 - 2021-05-16
Fixed
- Deprecated import
Implementation
- Author - Oliver Andrich
- PR - https://github.com/roman-right/beanie/pull/33
1.0.1 - 2021-05-14
Fixed
Document
self annotation
Implementation
1.0.0 - 2021-05-10
Added
- QueryBuilder
Changed
- Document class was reworked. Documentation
Implementation
0.4.3 - 2021-04-25
Fixed
- PydanticObjectId openapi generation
0.4.2 - 2021-04-20
Added
- Python ^3.6.1 support.
Fixed
- Documents init order in migrations
0.4.1 - 2021-04-19
Added
- Projections support to reduce database load
Implementation
- Author - Nicholas Smith
- Issue - https://github.com/roman-right/beanie/issues/16
0.4.0 - 2021-04-18
Added
Changed
0.4.0b1 - 2021-04-14
Added
- Migrations
inspect_collection
Document methodcount_documents
Document method
Changed
- Session can be provided to the most of the Document methods
Removed
- Internal
DocumentMeta
class.
0.3.4 - 2021-04-09
Changed
Indexed(...)
field supports index types.
Implementation
- Author - Joran van Apeldoorn
0.3.3 - 2021-04-09
Added
- Simple indexes via type hints.
Implementation
- Author - Joran van Apeldoorn
0.3.2 - 2021-03-25
Added
init_beanie
supports also lists of strings with model paths as thedocument_models
parameter.
Implementation
- Author - Mohamed Nesredin
0.3.1 - 2021-03-21
Added
skip
,limit
andsort
parameters in thefind_many
andfind_all
methods. Documentation
0.3.0 - 2021-03-19
Added
Collection
- internal class of theDocument
to set up additional properties.- Indexes support.
Changed
- Breaking change:
init_beanie
is async function now.
Deprecated
- Internal
DocumentMeta
class. Will be removed in 0.4.0.