Releases: Automattic/mongoose
Releases · Automattic/mongoose
9.1.1
9.1.0
9.1.0 / 2025-12-29
- feat(model): make pathsToSave handle saving just a subpath of a modified path #15896
- feat(document+model): pass options to pre('deleteOne') and update+options to pre('updateOne') hooks #15908 #15870
- feat(versioning): optimistic concurrency exclude option, update docs for optimisticConcurrency options #15917 #15915 #15912 AbdelrahmanHafez
- feat(document): add support for getAtomics() to allow custom container types to utilize atomics #15817
- perf: optimize Object.keys() checks and optional chaining #15865 AbdelrahmanHafez
- fix: add support for typescript style enums #15914 #15913 mjfwebb
- fix(document): when cloning a doc with subdocs, make sure the subdocs parent is the cloned doc #15904 #15901
- types(models): support Mongoose query casting in AnyBulkWriteOperation filter property #15918 #15910
- types: allow calling create() with TRawDocType for better generics support #15903 #15902
- types(document): add id virtual getter by default to HydrateDocument<> if TOverrides is Record<string, never> #15906 #15900
- docs(schema): add lean to list of schema options #15907 #15894 #12081
8.21.0
8.21.0 / 2025-12-29
8.20.4
9.0.2
9.0.2 / 2025-12-17
- fix(model): trigger error post hook on bulkwrite when pre-hook throws an error #15882 AbdelrahmanHafez
- fix(document): use bitwise OR to accumulate version mode flags #15893 AbdelrahmanHafez
- types(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators #15891 #15887 #15779
- types(schema): correctly infer virtuals, methods on hydrated doc type from schema options #15892
- types: fixed this parameter type detection for methods with arguments #15885 I-Enderlord-I
- types: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior #15815 #15814 JavaScriptBach
- docs: improve colors on dark mode #15879 AbdelrahmanHafez
- docs(model): add overwriteImmutable option #15884 AbdelrahmanHafez
- refactor: remove internal callbacks for buffering #15890
8.20.3
8.20.3 / 2025-12-15
- perf: use Object.hasOwn instead of Object#hasOwnProperty #15875 AbdelrahmanHafez
- fix: improve error when calling Document.prototype.init() with null/undefined #15812 Vegapunk-debug
- types(schema): avoid treating paths with default: null as required #15889
- types(schema): allow partial statics to schema.statics() #15780
9.0.1
9.0.1 / 2025-12-05
- perf: use native Buffer.equals() for buffer comparison #15821 AbdelrahmanHafez
- fix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re #15781 #15819 AbdelrahmanHafez
- fix(bulkWrite): pass overwriteImmutable option to castUpdate fixes #15782 #15781 jhaayushkumar
- fix(schema): Add enumValues property to Number enum for consistency with String enum #15824 AkaHarshit
- fix: incorrect variable bug in double casting #15849 #15848 lomesh2312
- fix: clear timeout in collection operations #15852 techcodie
- types(query+model): use function overrides instead of | Query<any, any> to support using Query as filter #15791 #15779
- docs(migrating_to_9): clarify removing next() from pre middleware #15813
- docs: add dark mode support and CSS improvements #15753
- docs: Mongoose compatibility page updates #15797 alexbevi
- docs: Add closing backticks to code block in migration guide #15783 isnifer
- docs: fix documentation link in connection.js #15804 salittle0
8.20.2
7.8.8
9.0.0
9.0.0 / 2025-11-21
- BREAKING CHANGE: drop support for callback-based pre middleware, e.g.
next()inpre()hooks - BREAKING CHANGE: update to MongoDB Node driver v7
- BREAKING CHANGE: make UUID schema type return bson UUIDs #15378
- BREAKING CHANGE: make findOne(null), find(null), etc. throw an error instead of returning first doc #15019 #14948
- BREAKING CHANGE: disallow update pipelines by default, require updatePipeline option #15586 #14424
- BREAKING CHANGE: call virtual ref function with subdoc, not top-level doc #14652 #12440 #12363
- BREAKING CHANGE(types): make create() and insertOne() params more strict, remove generics to prevent type inference #15587 #15355
- BREAKING CHANGE(types): make FilterQuery properties no longer resolve to any in TypeScript #15422
- BREAKING CHANGE(types): change
thisto HydratedDocument for default() and required(), HydratedDocument | Query for validate() #15020 #14696 - BREAKING CHANGE(types): make id a virtual in TypeScript rather than a property on Document base class #15572 #13079
- BREAKING CHANGE(types): consolidate RootQuerySelector, Condition, etc. types with MongoDB driver's #15593
- BREAKING CHANGE: asyncify update validators, SchemaType.prototype.doValidate(), save hooks for improved stack traces #15312
- BREAKING CHANGE: remove bson as direct dependency, use mongodb/lib/bson instead #15576 #15154
- BREAKING CHANGE: remove _executionStack, make validate() async function and call Kareem hooks directly vs through wrappers #15298 #14906
- BREAKING CHANGE: remove browser build, move to @mongoosejs/browser instead #15385 #15296
- BREAKING CHANGE: remove schematype caster and casterConstructor properties in favor of embeddedSchemaType and Constructor #15513 #15179
- BREAKING CHANGE: adding missing pluralizations, fixing pluralization: virus -> viruses #14247 ItsBradyDavis
- BREAKING CHANGE: remove connection noListener option #15641 #15640
- feat(types): add Schema.create() for TypeScript type inference #15482 #14954
- chore: remove examples directory #15597