Releases: Automattic/mongoose
Releases · Automattic/mongoose
8.7.2
8.7.2 / 2024-10-17
- fix(document): recursively clear modified subpaths when setting deeply nested subdoc to null #14963 #14952
- fix(populate): handle array of ids with parent refPath #14965
- types: make Buffers into mongodb.Binary in lean result type to match runtime behavior #14967
- types: correct schema type inference when using nested typeKey like type: { type: String } #14956 #14950
- types: re-export DeleteResult and UpdateResult from MongoDB Node.js driver #14947 #14946
- docs(documents): add section on setting deeply nested properties, including warning about nullish coalescing assignment #14972
- docs(model): add more info on acknowledged: false, specifically that Mongoose may return that if the update was empty #14957
8.7.1
8.7.1 / 2024-10-09
8.7.0
8.7.0 / 2024-09-27
- feat(model): add Model.applyVirtuals() to apply virtuals to a POJO #14905 #14818
- feat: upgrade mongodb -> 6.9.0 #14914
- feat(query): cast $rename to string #14887 #3027
- feat(SchemaType): add getEmbeddedSchemaType() method to SchemaTypes #14880 #8389
- fix(model): throw MongooseBulkSaveIncompleteError if bulkSave() didn't completely succeed #14884 #14763
- fix(connection): avoid returning readyState = connected if connection state is stale #14812 #14727
- fix: depopulate if push() or addToSet() with an ObjectId on a populated array #14883 #1635
- types: make __v a number, only set __v on top-level documents #14892
8.6.4
8.6.4 / 2024-09-26
- fix(document): avoid massive perf degradation when saving new doc with 10 level deep subdocs #14910 #14897
- fix(model): skip applying static hooks by default if static name conflicts with aggregate middleware #14904 dragontaek-lee
- fix(model): filter applying static hooks by default if static name conflicts with mongoose middleware #14908 dragontaek-lee
8.6.3
8.6.2
8.6.2 / 2024-09-11
- fix: make set merge deeply nested objects #14870 #14861 ianHeydoc
- types: allow arbitrary keys in query filters again (revert #14764) #14874 #14863 #14862 #14842
- types: make SchemaType static setters property accessible in TypeScript #14881 #14879
- type(inferrawdoctype): infer Date types as JS dates rather than Mongoose SchemaType Date #14882 #14839
8.6.1
8.6.1 / 2024-09-03
- fix(document): avoid unnecessary clone() in applyGetters() that was preventing getters from running on 3-level deep subdocuments #14844 #14840 #14835
- fix(model): throw error if bulkSave() did not insert or update any documents #14837 #14763
- fix(cursor): throw error in ChangeStream constructor if changeStreamThunk() throws a sync error #14846
- types(query): add $expr to RootQuerySelector #14845
- docs: update populate.md to fix missing match: { } #14847 makhoulshbeeb
8.6.0
8.6.0 / 2024-08-28
- feat: upgrade mongodb -> 6.8.0, handle throwing error on closed cursor in Mongoose with
MongooseError
instead ofMongoCursorExhaustedError
#14813 - feat(model+query): support options parameter for distinct() #14772 #8006
- feat(QueryCursor): add getDriverCursor() function that returns the raw driver cursor #14745
- types: change query selector to disallow unknown top-level keys by default #14764 alex-statsig
- types: make toObject() and toJSON() not generic by default to avoid type widening #14819 #12883
- types: avoid automatically inferring lean result type when assigning to explicitly typed variable #14734
8.5.5
8.5.5 / 2024-08-28
- fix(populate): fix a couple of other places where Mongoose gets the document's _id with getters #14833 #14827 #14759
- fix(discriminator): shallow clone Schema.prototype.obj before merging schemas to avoid modifying original obj #14821
- types: fix schema type based on timestamps schema options value #14829 #14825 ark23CIS
8.5.4
8.5.4 / 2024-08-23
- fix: add empty string check for collection name passed #14806 Shubham2552
- docs(model): add 'throw' as valid strict value for bulkWrite() and add some more clarification on throwOnValidationError #14809