Releases: Automattic/mongoose
Releases · Automattic/mongoose
8.8.1
8.8.1 / 2024-11-08
- perf: make a few micro-optimizations to help speed up findOne() #15022 #14906
- fix: apply embedded discriminators to subdoc schemas before compiling top level model so middleware applies correctly #15001 #14961
- fix(query): add overwriteImmutable option to allow updating immutable properties without disabling strict mode #15000 #8619
8.8.0
8.8.0 / 2024-10-31
- feat: upgrade mongodb -> ~6.10 #14991 #14877
- feat(query): add schemaLevelProjections option to query to disable schema-level select: false #14986 #11474
- feat: allow defining virtuals on arrays, not just array elements #14955 #2326
- feat(model): add applyTimestamps() function to apply all schema timestamps, including subdocuments, to a given POJO #14943 #14698
- feat(model): add hideIndexes option to syncIndexes() and cleanIndexes() #14987 #14868
- fix(query): make sanitizeFilter disable implicit $in #14985 #14657
- fix(model): avoid unhandled error if createIndex() throws a sync error #14995
- fix(model): avoid throwing TypeError if bulkSave()'s bulkWrite() fails with a non-BulkWriteError #14993
- types: added toJSON:flattenObjectIds effect #14989
- types: add
__v
to lean() result type and ModifyResult #14990 #12959 - types: use globalThis instead of global for NativeDate #14992 #14988
- docs(change-streams): fix markdown syntax highlighting for script output example #14994
8.7.3
8.7.3 / 2024-10-25
- fix(cursor): close underlying query cursor when calling destroy() #14982 #14966
- types: add JSONSerialized helper that can convert HydratedDocument to JSON output type #14981 #14451
- types(model): convert InsertManyResult to interface and remove unnecessary insertedIds override #14977
- types(connection): add missing sanitizeFilter option #14975
- types: improve goto definition for inferred schema definitions #14968 forivall
- docs(migration-guide-v7): correct link to the section "Id Setter" #14973 rb-ntnx
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