Releases: Automattic/mongoose
Releases · Automattic/mongoose
8.9.4
8.9.4 / 2025-01-09
- fix(document): fix document not applying manual populate when using a function in schema.options.ref #15138 IchirokuXVI
- fix(model): make Model.validate() static correctly cast document arrays #15169 #15164
- fix(model): allow passing validateBeforeSave option to bulkSave() to skip validation #15161 #15156
- fix(schema): allow multiple self-referencing discriminator schemas using Schema.prototype.discriminator #15142 #15120
- types: avoid BufferToBinary<> wiping lean types when passed to generic functions #15160 #15158
- docs: fix <code> in header ids #15159
- docs: fix header in field-level-encryption.md #15137 damieng
8.9.3
8.9.3 / 2024-12-30
- fix(schema): make duplicate index error a warning for now to prevent blocking upgrading #15135 #15112 #15109
- fix(model): handle document array paths set to non-array values in Model.castObject() #15124 #15075
- fix(document): avoid using childSchemas.path for compatibility with pre-Mongoose-8.8 schemas #15131 #15071
- fix(model): avoid throwing unnecessary error if updateOne() returns null in save() #15126
- perf(cursor): clear the stack every time if using populate with batchSize to avoid stack overflows with large docs #15136 #10449
- types: make BufferToBinary avoid Document instances #15123 #15122
- types(model+query): avoid stripping out virtuals when calling populate with paths generic #15132 #15111
- types(schema): add missing removeIndex #15134
- types: add cleanIndexes() to IndexManager interface #15127
- docs: move search endpoint to netlify #15119
8.9.2
8.9.2 / 2024-12-19
- fix(schema): avoid throwing duplicate index error if index spec keys have different order or index has a custom name #15112 #15109
- fix(map): clean modified subpaths when overwriting values in map of subdocs #15114 #15108
- fix(aggregate): pull session from transaction local storage for aggregation cursors #15094 IchirokuXVI
- types: correctly handle union types in BufferToBinary and related helpers #15103 #15102 #15057
- types: add UUID to RefType #15115 #15101
- docs: remove link to Mongoose 5.x docs from dropdown #15116
- docs(connection+document+model): remove remaining references to remove(), clarify that deleteOne() does not execute until then() or exec() #15113 #15107
8.9.1
8.9.1 / 2024-12-16
- fix(connection): remove heartbeat check in load balanced mode #15089 #15042 #14812
- fix(discriminator): gather childSchemas when creating discriminator to ensure $getAllSubdocs() can properly get all subdocs #15099 #15088 #15092
- fix(model): handle discriminators in castObject() #15096 #15075
- fix(schema): throw error if duplicate index definition using unique in schema path and subsequent .index() call #15093 #15056
- fix: mark documents that are populated using hydratedPopulatedDocs option as populated in top-level doc #15080 #15048
- fix(document+schema): improve error message for get() on invalid path #15098 #15071
- docs: remove more callback doc references & some small other changes #15095
8.9.0
8.9.0 / 2024-12-13
- feat: upgrade mongodb -> 6.12
- feat: add int32 schematype #15054 aditi-khare-mongoDB
- feat: add double schematype #15061 aditi-khare-mongoDB
- feat: allow specifying error message override for duplicate key errors unique: true #15059 #12844
- feat(connection): add support for Connection.prototype.bulkWrite() with MongoDB server 8.0 #15058 #15028
- feat: add forceRepopulate option for populate() to allow avoiding repopulating already populated docs #15044 #14979
- fix(connection): remove heartbeat check in load balanced mode #15089 #15042
- fix(query): clone PopulateOptions when setting _localModel to avoid state leaking between subpopulate instances #15082 #15026
- types: add splice() to DocumentArray to allow adding partial objects with splice() #15085 #15041
- types(aggregate): add $firstN, $lastN, $bottom, $bottomN, $minN and $maxN operators #15087 mlomnicki
- docs: Remove merge conflict markers #15090 sponrad
8.8.4
8.8.3
8.8.3 / 2024-11-26
- fix: disallow using $where in match
- perf: cache results from getAllSubdocs() on saveOptions, only loop through known subdoc properties #15055 #15029
- fix(model+query): support overwriteDiscriminatorKey for bulkWrite updateOne and updateMany, allow inferring discriminator key from update #15046 #15040
7.8.3
8.8.2
8.8.2 / 2024-11-18
- fix(model): handle array filters when casting bulkWrite #15036 #14978
- fix(model): make diffIndexes() avoid trying to drop default timeseries collection index #15035 #14984
- fix: save execution stack in query as string #15039 durran
- types(cursor): correct asyncIterator and asyncDispose for TypeScript with lib: 'esnext' #15038
- docs(migrating_to_8): add note about removing findByIdAndRemove #15024 dragontaek-lee
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