{"id":80820,"name":"mongoose","ecosystem":"docker","repository_url":null,"issues_count":4,"created_at":"2026-01-05T08:03:11.573Z","updated_at":"2026-01-05T08:03:11.573Z","purl":"pkg:docker/mongoose","unique_repositories_count":2,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"4043736524","node_id":"PR_kwDOQBO3TM7I-jCf","number":54,"state":"closed","title":"chore(backend): bump mongoose from 8.23.0 to 9.2.4 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-03-16T06:56:33.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-09T06:57:25.000Z","updated_at":"2026-03-16T06:56:35.000Z","time_to_close":604748,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.23.0","new_version":"9.2.4","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.23.0 to 9.2.4.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.4 / 2026-03-03\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(models): allow unknown keys in subdocs while retaining autocomplete suggestions \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16048\"\u003e#16048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): fix issues related to defining timestamps and virtuals with methods and/or statics in schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16052\"\u003e#16052\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16046\"\u003e#16046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use lowercase primitive types in JSDoc and fix incorrect \u003ccode\u003e@returns\u003c/code\u003e declarations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16036\"\u003e#16036\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16018\"\u003e#16018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): improve CSFLE docs with model registration guidance and schema definition example \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.3 / 2026-02-26\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(model): make bulkSave() correctly take array of THydratedDocumentType \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16032\"\u003e#16032\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.2 / 2026-02-23\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): make \u003ccode\u003epathsToSave\u003c/code\u003e filter all update operators and preserve unsaved state \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16027\"\u003e#16027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(setDefaultsOnInsert): check child filter paths before applying defaults, fix dot-notation handling, and prevent prototype pollution \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16031\"\u003e#16031\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16030\"\u003e#16030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): make \u003ccode\u003erefPath\u003c/code\u003e work as a function, including map paths with \u003ccode\u003e$*\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16035\"\u003e#16035\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16028\"\u003e#16028\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003epathsToSave\u003c/code\u003e and indexed-path checks for subdocuments\u003c/li\u003e\n\u003cli\u003etypes: remove duplicate definition of \u003ccode\u003eUUIDToJSON\u003c/code\u003e type \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16029\"\u003e#16029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): clarify crypt_shared library usage and move \u003ccode\u003eextraOptions\u003c/code\u003e under \u003ccode\u003eautoEncryption\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16026\"\u003e#16026\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): introduce TSTyche for type testing \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16024\"\u003e#16024\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning \u003ccode\u003eQueryFilter\u0026lt;DocType\u0026gt;\u003c/code\u003e to \u003ccode\u003eQueryFilter\u0026lt;any\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.6 / 2026-02-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: handle other top-level query operators in sanitizeFilter\u003c/li\u003e\n\u003cli\u003efix(types): fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): defer subpopulate until after match functions to avoid comparing populated subdocs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15981\"\u003e#15981\u003c/a\u003e \u003ca href=\"https://redirect.github.com/mongodb-js/mongoose-autopopulate/issues/112\"\u003emongodb-js/mongoose-autopopulate#112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(DocumentArray): correctly clone subdocument when updating document array \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15978\"\u003e#15978\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15973\"\u003e#15973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(documentArray): fix change tracking for documentArrays in nested maps \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15983\"\u003e#15983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: clarify that you need to explicitly create timeseries collection before inserting document \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15990\"\u003e#15990\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15986\"\u003e#15986\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e9.1.5 / 2026-01-20\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.4 / 2026-03-03\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(models): allow unknown keys in subdocs while retaining autocomplete suggestions \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16048\"\u003e#16048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): fix issues related to defining timestamps and virtuals with methods and/or statics in schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16052\"\u003e#16052\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16046\"\u003e#16046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use lowercase primitive types in JSDoc and fix incorrect \u003ccode\u003e@returns\u003c/code\u003e declarations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16036\"\u003e#16036\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16018\"\u003e#16018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): improve CSFLE docs with model registration guidance and schema definition example \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.3 / 2026-02-26\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(model): make bulkSave() correctly take array of THydratedDocumentType \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16032\"\u003e#16032\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.2 / 2026-02-23\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): make \u003ccode\u003epathsToSave\u003c/code\u003e filter all update operators and preserve unsaved state \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16027\"\u003e#16027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(setDefaultsOnInsert): check child filter paths before applying defaults, fix dot-notation handling, and prevent prototype pollution \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16031\"\u003e#16031\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16030\"\u003e#16030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): make \u003ccode\u003erefPath\u003c/code\u003e work as a function, including map paths with \u003ccode\u003e$*\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16035\"\u003e#16035\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16028\"\u003e#16028\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003epathsToSave\u003c/code\u003e and indexed-path checks for subdocuments\u003c/li\u003e\n\u003cli\u003etypes: remove duplicate definition of \u003ccode\u003eUUIDToJSON\u003c/code\u003e type \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16029\"\u003e#16029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): clarify crypt_shared library usage and move \u003ccode\u003eextraOptions\u003c/code\u003e under \u003ccode\u003eautoEncryption\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16026\"\u003e#16026\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): introduce TSTyche for type testing \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16024\"\u003e#16024\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning QueryFilter\u003c!-- raw HTML omitted --\u003e to QueryFilter\u003c!-- raw HTML omitted --\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/c8a93b60a27b94883c8186b0c42e6b5e6f7d3185\"\u003e\u003ccode\u003ec8a93b6\u003c/code\u003e\u003c/a\u003e chore: release 9.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/c55dcb2f93653f01339ea3b70876b25daff8d629\"\u003e\u003ccode\u003ec55dcb2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e from Automattic/vkarpov15/gh-16015-2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2de9bbecaaefe2a6fa91f84d21da381af9129cbb\"\u003e\u003ccode\u003e2de9bbe\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2217d98c7a97d08e903d5e747126b8d8090b1a61\"\u003e\u003ccode\u003e2217d98\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/f818d4446e873af67337a1b5bf455af07b77245b\"\u003e\u003ccode\u003ef818d44\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/78f55cc721dc5dbce151cb236d248ea186304d75\"\u003e\u003ccode\u003e78f55cc\u003c/code\u003e\u003c/a\u003e docs(field-level-encryption): add example of defining schema with csfle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/eb6f2a205b65267b8c2c6254d6e2506a65c2a5de\"\u003e\u003ccode\u003eeb6f2a2\u003c/code\u003e\u003c/a\u003e docs(field-level-encryption): improve notes about registering models before c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7971d3049758e3bb18e01e4734eb7fd004ae9e77\"\u003e\u003ccode\u003e7971d30\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16061\"\u003e#16061\u003c/a\u003e from Automattic/dependabot/npm_and_yarn/master/ajv-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/02b03fee2294ed1af6bd68248e4d1c5d66723580\"\u003e\u003ccode\u003e02b03fe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16063\"\u003e#16063\u003c/a\u003e from Automattic/vkarpov15/eslint-10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/92a5b7bdce3866376589b170af2959199087d620\"\u003e\u003ccode\u003e92a5b7b\u003c/code\u003e\u003c/a\u003e upgrade to eslint 10.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.23.0...9.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.23.0\u0026new-version=9.2.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/Mailto/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2FMailto/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"},{"uuid":"3946225906","node_id":"PR_kwDOQBO3TM7EBO7h","number":41,"state":"open","title":"chore(backend): bump mongoose from 8.23.0 to 9.2.1 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-16T06:57:08.000Z","updated_at":"2026-02-16T06:57:37.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.23.0","new_version":"9.2.1","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.23.0 to 9.2.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning \u003ccode\u003eQueryFilter\u0026lt;DocType\u0026gt;\u003c/code\u003e to \u003ccode\u003eQueryFilter\u0026lt;any\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.6 / 2026-02-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: handle other top-level query operators in sanitizeFilter\u003c/li\u003e\n\u003cli\u003efix(types): fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): defer subpopulate until after match functions to avoid comparing populated subdocs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15981\"\u003e#15981\u003c/a\u003e \u003ca href=\"https://redirect.github.com/mongodb-js/mongoose-autopopulate/issues/112\"\u003emongodb-js/mongoose-autopopulate#112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(DocumentArray): correctly clone subdocument when updating document array \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15978\"\u003e#15978\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15973\"\u003e#15973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(documentArray): fix change tracking for documentArrays in nested maps \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15983\"\u003e#15983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: clarify that you need to explicitly create timeseries collection before inserting document \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15990\"\u003e#15990\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15986\"\u003e#15986\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.5 / 2026-01-20\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(map): validate map subdocument when loaded with init \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15960\"\u003e#15960\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15957\"\u003e#15957\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(discriminator): prevent indexes and callQueue duplication with shared nested schemas \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15974\"\u003e#15974\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15966\"\u003e#15966\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(subdocuments): do not pass parent path on init \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15969\"\u003e#15969\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15682\"\u003e#15682\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): correct handling for subdocs and doc arrays \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15967\"\u003e#15967\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/13772\"\u003e#13772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve grammar and clarity in TypeScript schema comments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15971\"\u003e#15971\u003c/a\u003e \u003ca href=\"https://github.com/harshsinghpujari\"\u003eharshsinghpujari\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.4 / 2026-01-15\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: attach sessions to docs retrieved by cursor \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15953\"\u003e#15953\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15949\"\u003e#15949\u003c/a\u003e \u003ca href=\"https://github.com/mjfwalsh\"\u003emjfwalsh\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): make hydrate() handle nested schema arrays \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15964\"\u003e#15964\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15956\"\u003e#15956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(clone): fix parent doc for map subdocuments and array subdocuments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15958\"\u003e#15958\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15954\"\u003e#15954\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: prevent crash when accessing nested paths on prototype \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15962\"\u003e#15962\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15961\"\u003e#15961\u003c/a\u003e \u003ca href=\"https://github.com/som14062005\"\u003esom14062005\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.3 / 2026-01-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): support timestamps option to insertMany() as both boolean and QueryTimestampsConfig \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15941\"\u003e#15941\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15938\"\u003e#15938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(query): include preview of current and incoming update in error when merging normal update with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15939\"\u003e#15939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(model): apply basic type casting to paths underneath subdocuments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15948\"\u003e#15948\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15947\"\u003e#15947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(utility): make WithLevel1NestedPaths correctly handle PopulatedDoc and other TypeScript unions with Document members \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15942\"\u003e#15942\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15923\"\u003e#15923\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): expose \u0026quot;DocumentArrayElement\u0026quot; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15590\"\u003e#15590\u003c/a\u003e \u003ca href=\"https://github.com/hasezoey\"\u003ehasezoey\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning QueryFilter\u003c!-- raw HTML omitted --\u003e to QueryFilter\u003c!-- raw HTML omitted --\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/764bd8237f05276d2f37a99566b3269978bfdd69\"\u003e\u003ccode\u003e764bd82\u003c/code\u003e\u003c/a\u003e chore: release 9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2e5b78071769009a8025aa1e624a6337a754aa48\"\u003e\u003ccode\u003e2e5b780\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e from Automattic/fix/gh-15965-subdoc-toObject\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/324ff4c682c17f31de9d7cef69aa836afb63ebe7\"\u003e\u003ccode\u003e324ff4c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16006\"\u003egh-16006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/684b31fc2217c9fa70c57c8a7ecb0e8a63bf9a35\"\u003e\u003ccode\u003e684b31f\u003c/code\u003e\u003c/a\u003e test(types): check types using ts-expect-error directive instead of ExpectType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/06b4e93cfb424687dc1a78937f782263bfb9d4a6\"\u003e\u003ccode\u003e06b4e93\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16005\"\u003egh-16005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/55749fcc46c9c679038a00fff0c81a14500c0ca5\"\u003e\u003ccode\u003e55749fc\u003c/code\u003e\u003c/a\u003e fix(types): make subdocuments and array subdocuments have the same behavior f...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/b81b3b6584e395c2efa37d950990e4bab6b31d28\"\u003e\u003ccode\u003eb81b3b6\u003c/code\u003e\u003c/a\u003e types(query): allow assigning QueryFilter\u0026lt;DocType\u0026gt; to QueryFilter\u0026lt;any\u0026gt;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8d054617f5d65909349cc560e8cfeba2b9d7b843\"\u003e\u003ccode\u003e8d05461\u003c/code\u003e\u003c/a\u003e test(types): assert subdocuments in \u003ccode\u003etoObject()\u003c/code\u003e  and \u003ccode\u003etoJSON\u003c/code\u003e get the correc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/40ffefe7f39e75a3883f0292ccfb0b22d4c3bf44\"\u003e\u003ccode\u003e40ffefe\u003c/code\u003e\u003c/a\u003e docs(mongoose): add missing options to \u003ccode\u003emongoose.set()\u003c/code\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/904a2eb81e4354c5842383cef304a634191c1c56\"\u003e\u003ccode\u003e904a2eb\u003c/code\u003e\u003c/a\u003e chore: release 9.2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.23.0...9.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.23.0\u0026new-version=9.2.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/Mailto/pull/41","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2FMailto/issues/41","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/41/packages"},{"uuid":"3780339006","node_id":"PR_kwDOQBO3TM67eWg4","number":24,"state":"closed","title":"chore(backend): bump mongoose from 8.21.0 to 9.1.1 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-12T07:40:05.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-05T06:30:40.000Z","updated_at":"2026-01-12T07:40:06.000Z","time_to_close":608965,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.21.0","new_version":"9.1.1","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.21.0 to 9.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.1.1 / 2025-12-30\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): avoid 'Cannot mix array and object updates' on doc.updateOne() with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update default search version to 9.x \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003e#15925\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.0 / 2025-12-29\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat(model): make pathsToSave handle saving just a subpath of a modified path \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15896\"\u003e#15896\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document+model): pass options to pre('deleteOne') and update+options to pre('updateOne') hooks \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15908\"\u003e#15908\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15870\"\u003e#15870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(versioning): optimistic concurrency exclude option, update docs for optimisticConcurrency options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15917\"\u003e#15917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15915\"\u003e#15915\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15912\"\u003e#15912\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add support for getAtomics() to allow custom container types to utilize atomics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15817\"\u003e#15817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize Object.keys() checks and optional chaining \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15865\"\u003e#15865\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add support for typescript style enums \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15914\"\u003e#15914\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15913\"\u003e#15913\u003c/a\u003e \u003ca href=\"https://github.com/mjfwebb\"\u003emjfwebb\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): when cloning a doc with subdocs, make sure the subdocs parent is the cloned doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15904\"\u003e#15904\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15901\"\u003e#15901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): support Mongoose query casting in AnyBulkWriteOperation filter property \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15918\"\u003e#15918\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15910\"\u003e#15910\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: allow calling create() with TRawDocType for better generics support \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15903\"\u003e#15903\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15902\"\u003e#15902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(document): add id virtual getter by default to HydrateDocument\u0026lt;\u0026gt; if TOverrides is Record\u0026lt;string, never\u0026gt; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15906\"\u003e#15906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15900\"\u003e#15900\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): add lean to list of schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15907\"\u003e#15907\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15894\"\u003e#15894\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12081\"\u003e#12081\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.0 / 2025-11-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBREAKING CHANGE: drop support for callback-based pre middleware, e.g. \u003ccode\u003enext()\u003c/code\u003e in \u003ccode\u003epre()\u003c/code\u003e hooks\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: update to MongoDB Node driver v7\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.1.1 / 2025-12-30\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): avoid 'Cannot mix array and object updates' on doc.updateOne() with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update default search version to 9.x \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003e#15925\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.0 / 2025-12-29\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat(model): make pathsToSave handle saving just a subpath of a modified path \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15896\"\u003e#15896\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document+model): pass options to pre('deleteOne') and update+options to pre('updateOne') hooks \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15908\"\u003e#15908\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15870\"\u003e#15870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(versioning): optimistic concurrency exclude option, update docs for optimisticConcurrency options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15917\"\u003e#15917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15915\"\u003e#15915\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15912\"\u003e#15912\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add support for getAtomics() to allow custom container types to utilize atomics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15817\"\u003e#15817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize Object.keys() checks and optional chaining \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15865\"\u003e#15865\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add support for typescript style enums \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15914\"\u003e#15914\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15913\"\u003e#15913\u003c/a\u003e \u003ca href=\"https://github.com/mjfwebb\"\u003emjfwebb\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): when cloning a doc with subdocs, make sure the subdocs parent is the cloned doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15904\"\u003e#15904\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15901\"\u003e#15901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): support Mongoose query casting in AnyBulkWriteOperation filter property \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15918\"\u003e#15918\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15910\"\u003e#15910\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: allow calling create() with TRawDocType for better generics support \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15903\"\u003e#15903\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15902\"\u003e#15902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(document): add id virtual getter by default to HydrateDocument\u0026lt;\u0026gt; if TOverrides is Record\u0026lt;string, never\u0026gt; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15906\"\u003e#15906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15900\"\u003e#15900\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): add lean to list of schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15907\"\u003e#15907\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15894\"\u003e#15894\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12081\"\u003e#12081\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/f5bfdb54182a1d1bbb5cea6aab87f523713d237c\"\u003e\u003ccode\u003ef5bfdb5\u003c/code\u003e\u003c/a\u003e chore: release 9.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/18ca142958ddcca78ca3c61e1f981b8fa5ec3c16\"\u003e\u003ccode\u003e18ca142\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e from Automattic/vkarpov15/fix-doc-updateone\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/1971e9b450aa26080cba4aee2dd38a73ef14193a\"\u003e\u003ccode\u003e1971e9b\u003c/code\u003e\u003c/a\u003e fix(document): avoid 'Cannot mix array and object updates' on doc.updateOne()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/a88b4d9481bc77bf6274e963b9d8eed07644829a\"\u003e\u003ccode\u003ea88b4d9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003egh-15925\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/45c3730d5ccf7be3788ba304326ed6e3eb472be0\"\u003e\u003ccode\u003e45c3730\u003c/code\u003e\u003c/a\u003e fix markdown lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/387e7560ef7b5c9115a0ffc89c277eb2c4d262a7\"\u003e\u003ccode\u003e387e756\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15921\"\u003e#15921\u003c/a\u003e from Automattic/fix/subdoc-save-hooks-options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/4827df0c2da9cf41d1fdfea60c34a2ff99be3c5a\"\u003e\u003ccode\u003e4827df0\u003c/code\u003e\u003c/a\u003e docs(release-items): add a couple of other major release checklist items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8c5c24b91375873e1274297aa22bb953bf7235ab\"\u003e\u003ccode\u003e8c5c24b\u003c/code\u003e\u003c/a\u003e docs(release-items): update for current versions and start adding a checklist...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/ab8cc73b29eff83c010229db96935b37b73b0c1b\"\u003e\u003ccode\u003eab8cc73\u003c/code\u003e\u003c/a\u003e docs: update default search version to 9.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/5edcb1946a2bd98296984df5bb1ade4176a128af\"\u003e\u003ccode\u003e5edcb19\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15919\"\u003e#15919\u003c/a\u003e from Automattic/perf/select-id-only-for-checking-do...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.21.0...9.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.21.0\u0026new-version=9.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/mailo/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2Fmailo/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"},{"uuid":"3752497034","node_id":"PR_kwDOQBO3TM66Eu4i","number":21,"state":"closed","title":"chore(backend): bump mongoose from 8.20.4 to 9.0.2 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-05T06:30:42.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-22T06:26:49.000Z","updated_at":"2026-01-05T06:30:44.000Z","time_to_close":1209833,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.20.4","new_version":"9.0.2","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.20.4 to 9.0.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.0 / 2025-11-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBREAKING CHANGE: drop support for callback-based pre middleware, e.g. \u003ccode\u003enext()\u003c/code\u003e in \u003ccode\u003epre()\u003c/code\u003e hooks\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: update to MongoDB Node driver v7\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: make UUID schema type return bson UUIDs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15378\"\u003e#15378\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: make findOne(null), find(null), etc. throw an error instead of returning first doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15019\"\u003e#15019\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14948\"\u003e#14948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: disallow update pipelines by default, require updatePipeline option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15586\"\u003e#15586\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14424\"\u003e#14424\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: call virtual ref function with subdoc, not top-level doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14652\"\u003e#14652\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12440\"\u003e#12440\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12363\"\u003e#12363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make create() and insertOne() params more strict, remove generics to prevent type inference \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15587\"\u003e#15587\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15355\"\u003e#15355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make FilterQuery properties no longer resolve to any in TypeScript \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15422\"\u003e#15422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): change \u003ccode\u003ethis\u003c/code\u003e to HydratedDocument for default() and required(), HydratedDocument | Query for validate() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15020\"\u003e#15020\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14696\"\u003e#14696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make id a virtual in TypeScript rather than a property on Document base class \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15572\"\u003e#15572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/13079\"\u003e#13079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): consolidate RootQuerySelector, Condition, etc. types with MongoDB driver's \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15593\"\u003e#15593\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: asyncify update validators, SchemaType.prototype.doValidate(), save hooks for improved stack traces \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15312\"\u003e#15312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove bson as direct dependency, use mongodb/lib/bson instead \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15576\"\u003e#15576\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15154\"\u003e#15154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove _executionStack, make validate() async function and call Kareem hooks directly vs through wrappers \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15298\"\u003e#15298\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14906\"\u003e#14906\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove browser build, move to \u003ccode\u003e@​mongoosejs/browser\u003c/code\u003e instead \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15385\"\u003e#15385\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15296\"\u003e#15296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove schematype caster and casterConstructor properties in favor of embeddedSchemaType and Constructor \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15513\"\u003e#15513\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15179\"\u003e#15179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: adding missing pluralizations, fixing pluralization: virus -\u0026gt; viruses \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14247\"\u003e#14247\u003c/a\u003e \u003ca href=\"https://github.com/ItsBradyDavis\"\u003eItsBradyDavis\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove connection noListener option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15641\"\u003e#15641\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15640\"\u003e#15640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(types): add Schema.create() for TypeScript type inference \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15482\"\u003e#15482\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14954\"\u003e#14954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove examples directory \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15597\"\u003e#15597\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e8.20.4 / 2025-12-18\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): ensure $isDeleted is set after calling doc.deleteOne() successfully \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15898\"\u003e#15898\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15888\"\u003e#15888\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e8.20.3 / 2025-12-15\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use Object.hasOwn instead of Object#hasOwnProperty \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15875\"\u003e#15875\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: improve error when calling Document.prototype.init() with null/undefined \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15812\"\u003e#15812\u003c/a\u003e \u003ca href=\"https://github.com/Vegapunk-debug\"\u003eVegapunk-debug\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): avoid treating paths with default: null as required \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15889\"\u003e#15889\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): allow partial statics to schema.statics() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15780\"\u003e#15780\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e8.20.2 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): bump version if necessary after successful bulkSave() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15809\"\u003e#15809\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15800\"\u003e#15800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15789\"\u003e#15789\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): allow calling schema.static() with as TStatics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15794\"\u003e#15794\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15780\"\u003e#15780\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.8.8 / 2025-12-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15789\"\u003e#15789\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): bump version if necessary after successful bulkSave() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15800\"\u003e#15800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/47ab06854225fe743ce607429ebfb75d7ed161ef\"\u003e\u003ccode\u003e47ab068\u003c/code\u003e\u003c/a\u003e chore: release 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7a2203e1135ffdb0417f8bef246cf3180b5a086e\"\u003e\u003ccode\u003e7a2203e\u003c/code\u003e\u003c/a\u003e fix(document): use bitwise OR to accumulate version mode flags (\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8b018aa63f4127b22e0ea1a1a22c85793b74bd64\"\u003e\u003ccode\u003e8b018aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15869\"\u003egh-15869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7d354a6532b2c5011e48f1a17515d5c3acca5c08\"\u003e\u003ccode\u003e7d354a6\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15869\"\u003egh-15869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/85349576896787814ea60e15c19ed2554cbe088a\"\u003e\u003ccode\u003e8534957\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e from I-Enderlord-I/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/bc5873bc041def7fca6b486c12f96cd7a3e50bff\"\u003e\u003ccode\u003ebc5873b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e from Automattic/vkarpov15/gh-15779-2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/06b83cbd65f5f92f7defceb3db98d04847c9217d\"\u003e\u003ccode\u003e06b83cb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e from JavaScriptBach/inferpojotype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/4607fe02e41781993e31007890d734247ff18446\"\u003e\u003ccode\u003e4607fe0\u003c/code\u003e\u003c/a\u003e Replace InferPojoType with InferRawDocTypeWithout_id\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/df6faab4cc353dfb4250907a09be998bbd440bc6\"\u003e\u003ccode\u003edf6faab\u003c/code\u003e\u003c/a\u003e Add InferRawDocTypeWithout_id type definition\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/20bb91ca404cf64266d0ec58e83fb40a9087b774\"\u003e\u003ccode\u003e20bb91c\u003c/code\u003e\u003c/a\u003e Merge branch '8.x'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.20.4...9.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.20.4\u0026new-version=9.0.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/mailo/pull/21","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2Fmailo/issues/21","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/21/packages"}],"issue_packages":[{"old_version":"8.23.0","new_version":"9.2.4","update_type":"major","path":"/backend","pr_created_at":"2026-03-09T06:57:25.000Z","version_change":"8.23.0 → 9.2.4","issue":{"uuid":"4043736524","node_id":"PR_kwDOQBO3TM7I-jCf","number":54,"state":"closed","title":"chore(backend): bump mongoose from 8.23.0 to 9.2.4 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-03-16T06:56:33.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-09T06:57:25.000Z","updated_at":"2026-03-16T06:56:35.000Z","time_to_close":604748,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.23.0","new_version":"9.2.4","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.23.0 to 9.2.4.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.4 / 2026-03-03\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(models): allow unknown keys in subdocs while retaining autocomplete suggestions \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16048\"\u003e#16048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): fix issues related to defining timestamps and virtuals with methods and/or statics in schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16052\"\u003e#16052\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16046\"\u003e#16046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use lowercase primitive types in JSDoc and fix incorrect \u003ccode\u003e@returns\u003c/code\u003e declarations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16036\"\u003e#16036\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16018\"\u003e#16018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): improve CSFLE docs with model registration guidance and schema definition example \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.3 / 2026-02-26\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(model): make bulkSave() correctly take array of THydratedDocumentType \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16032\"\u003e#16032\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.2 / 2026-02-23\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): make \u003ccode\u003epathsToSave\u003c/code\u003e filter all update operators and preserve unsaved state \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16027\"\u003e#16027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(setDefaultsOnInsert): check child filter paths before applying defaults, fix dot-notation handling, and prevent prototype pollution \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16031\"\u003e#16031\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16030\"\u003e#16030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): make \u003ccode\u003erefPath\u003c/code\u003e work as a function, including map paths with \u003ccode\u003e$*\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16035\"\u003e#16035\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16028\"\u003e#16028\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003epathsToSave\u003c/code\u003e and indexed-path checks for subdocuments\u003c/li\u003e\n\u003cli\u003etypes: remove duplicate definition of \u003ccode\u003eUUIDToJSON\u003c/code\u003e type \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16029\"\u003e#16029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): clarify crypt_shared library usage and move \u003ccode\u003eextraOptions\u003c/code\u003e under \u003ccode\u003eautoEncryption\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16026\"\u003e#16026\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): introduce TSTyche for type testing \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16024\"\u003e#16024\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning \u003ccode\u003eQueryFilter\u0026lt;DocType\u0026gt;\u003c/code\u003e to \u003ccode\u003eQueryFilter\u0026lt;any\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.6 / 2026-02-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: handle other top-level query operators in sanitizeFilter\u003c/li\u003e\n\u003cli\u003efix(types): fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): defer subpopulate until after match functions to avoid comparing populated subdocs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15981\"\u003e#15981\u003c/a\u003e \u003ca href=\"https://redirect.github.com/mongodb-js/mongoose-autopopulate/issues/112\"\u003emongodb-js/mongoose-autopopulate#112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(DocumentArray): correctly clone subdocument when updating document array \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15978\"\u003e#15978\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15973\"\u003e#15973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(documentArray): fix change tracking for documentArrays in nested maps \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15983\"\u003e#15983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: clarify that you need to explicitly create timeseries collection before inserting document \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15990\"\u003e#15990\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15986\"\u003e#15986\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e9.1.5 / 2026-01-20\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.4 / 2026-03-03\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(models): allow unknown keys in subdocs while retaining autocomplete suggestions \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16048\"\u003e#16048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): fix issues related to defining timestamps and virtuals with methods and/or statics in schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16052\"\u003e#16052\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16046\"\u003e#16046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: use lowercase primitive types in JSDoc and fix incorrect \u003ccode\u003e@returns\u003c/code\u003e declarations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16036\"\u003e#16036\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16018\"\u003e#16018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): improve CSFLE docs with model registration guidance and schema definition example \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.3 / 2026-02-26\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(model): make bulkSave() correctly take array of THydratedDocumentType \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16032\"\u003e#16032\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.2 / 2026-02-23\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): make \u003ccode\u003epathsToSave\u003c/code\u003e filter all update operators and preserve unsaved state \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16027\"\u003e#16027\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(setDefaultsOnInsert): check child filter paths before applying defaults, fix dot-notation handling, and prevent prototype pollution \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16031\"\u003e#16031\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16030\"\u003e#16030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): make \u003ccode\u003erefPath\u003c/code\u003e work as a function, including map paths with \u003ccode\u003e$*\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16035\"\u003e#16035\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16028\"\u003e#16028\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize \u003ccode\u003epathsToSave\u003c/code\u003e and indexed-path checks for subdocuments\u003c/li\u003e\n\u003cli\u003etypes: remove duplicate definition of \u003ccode\u003eUUIDToJSON\u003c/code\u003e type \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16029\"\u003e#16029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(field-level-encryption): clarify crypt_shared library usage and move \u003ccode\u003eextraOptions\u003c/code\u003e under \u003ccode\u003eautoEncryption\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16026\"\u003e#16026\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16015\"\u003e#16015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): introduce TSTyche for type testing \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16024\"\u003e#16024\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning QueryFilter\u003c!-- raw HTML omitted --\u003e to QueryFilter\u003c!-- raw HTML omitted --\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/c8a93b60a27b94883c8186b0c42e6b5e6f7d3185\"\u003e\u003ccode\u003ec8a93b6\u003c/code\u003e\u003c/a\u003e chore: release 9.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/c55dcb2f93653f01339ea3b70876b25daff8d629\"\u003e\u003ccode\u003ec55dcb2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16065\"\u003e#16065\u003c/a\u003e from Automattic/vkarpov15/gh-16015-2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2de9bbecaaefe2a6fa91f84d21da381af9129cbb\"\u003e\u003ccode\u003e2de9bbe\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2217d98c7a97d08e903d5e747126b8d8090b1a61\"\u003e\u003ccode\u003e2217d98\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/f818d4446e873af67337a1b5bf455af07b77245b\"\u003e\u003ccode\u003ef818d44\u003c/code\u003e\u003c/a\u003e Update docs/field-level-encryption.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/78f55cc721dc5dbce151cb236d248ea186304d75\"\u003e\u003ccode\u003e78f55cc\u003c/code\u003e\u003c/a\u003e docs(field-level-encryption): add example of defining schema with csfle\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/eb6f2a205b65267b8c2c6254d6e2506a65c2a5de\"\u003e\u003ccode\u003eeb6f2a2\u003c/code\u003e\u003c/a\u003e docs(field-level-encryption): improve notes about registering models before c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7971d3049758e3bb18e01e4734eb7fd004ae9e77\"\u003e\u003ccode\u003e7971d30\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16061\"\u003e#16061\u003c/a\u003e from Automattic/dependabot/npm_and_yarn/master/ajv-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/02b03fee2294ed1af6bd68248e4d1c5d66723580\"\u003e\u003ccode\u003e02b03fe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16063\"\u003e#16063\u003c/a\u003e from Automattic/vkarpov15/eslint-10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/92a5b7bdce3866376589b170af2959199087d620\"\u003e\u003ccode\u003e92a5b7b\u003c/code\u003e\u003c/a\u003e upgrade to eslint 10.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.23.0...9.2.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.23.0\u0026new-version=9.2.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/Mailto/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2FMailto/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"}},{"old_version":"8.23.0","new_version":"9.2.1","update_type":"major","path":"/backend","pr_created_at":"2026-02-16T06:57:08.000Z","version_change":"8.23.0 → 9.2.1","issue":{"uuid":"3946225906","node_id":"PR_kwDOQBO3TM7EBO7h","number":41,"state":"open","title":"chore(backend): bump mongoose from 8.23.0 to 9.2.1 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-16T06:57:08.000Z","updated_at":"2026-02-16T06:57:37.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.23.0","new_version":"9.2.1","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.23.0 to 9.2.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning \u003ccode\u003eQueryFilter\u0026lt;DocType\u0026gt;\u003c/code\u003e to \u003ccode\u003eQueryFilter\u0026lt;any\u0026gt;\u003c/code\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.6 / 2026-02-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: handle other top-level query operators in sanitizeFilter\u003c/li\u003e\n\u003cli\u003efix(types): fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(populate): defer subpopulate until after match functions to avoid comparing populated subdocs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15981\"\u003e#15981\u003c/a\u003e \u003ca href=\"https://redirect.github.com/mongodb-js/mongoose-autopopulate/issues/112\"\u003emongodb-js/mongoose-autopopulate#112\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(DocumentArray): correctly clone subdocument when updating document array \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15978\"\u003e#15978\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15973\"\u003e#15973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(documentArray): fix change tracking for documentArrays in nested maps \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15983\"\u003e#15983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: clarify that you need to explicitly create timeseries collection before inserting document \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15990\"\u003e#15990\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15986\"\u003e#15986\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.5 / 2026-01-20\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(map): validate map subdocument when loaded with init \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15960\"\u003e#15960\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15957\"\u003e#15957\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(discriminator): prevent indexes and callQueue duplication with shared nested schemas \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15974\"\u003e#15974\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15966\"\u003e#15966\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(subdocuments): do not pass parent path on init \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15970\"\u003e#15970\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15969\"\u003e#15969\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15682\"\u003e#15682\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): correct handling for subdocs and doc arrays \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15967\"\u003e#15967\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/13772\"\u003e#13772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve grammar and clarity in TypeScript schema comments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15971\"\u003e#15971\u003c/a\u003e \u003ca href=\"https://github.com/harshsinghpujari\"\u003eharshsinghpujari\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.4 / 2026-01-15\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix: attach sessions to docs retrieved by cursor \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15953\"\u003e#15953\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15949\"\u003e#15949\u003c/a\u003e \u003ca href=\"https://github.com/mjfwalsh\"\u003emjfwalsh\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): make hydrate() handle nested schema arrays \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15964\"\u003e#15964\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15956\"\u003e#15956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(clone): fix parent doc for map subdocuments and array subdocuments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15958\"\u003e#15958\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15954\"\u003e#15954\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: prevent crash when accessing nested paths on prototype \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15962\"\u003e#15962\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15961\"\u003e#15961\u003c/a\u003e \u003ca href=\"https://github.com/som14062005\"\u003esom14062005\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.3 / 2026-01-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): support timestamps option to insertMany() as both boolean and QueryTimestampsConfig \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15941\"\u003e#15941\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15938\"\u003e#15938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(query): include preview of current and incoming update in error when merging normal update with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15939\"\u003e#15939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(model): apply basic type casting to paths underneath subdocuments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15948\"\u003e#15948\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15947\"\u003e#15947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(utility): make WithLevel1NestedPaths correctly handle PopulatedDoc and other TypeScript unions with Document members \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15942\"\u003e#15942\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15923\"\u003e#15923\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): expose \u0026quot;DocumentArrayElement\u0026quot; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15590\"\u003e#15590\u003c/a\u003e \u003ca href=\"https://github.com/hasezoey\"\u003ehasezoey\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.2.1 / 2026-02-11\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003etypes(query): allow assigning QueryFilter\u003c!-- raw HTML omitted --\u003e to QueryFilter\u003c!-- raw HTML omitted --\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: duplicate identifier 'UUIDToJSON' in mongoosejs 9.2.0 \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16023\"\u003e#16023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: preserve subdocument toObject() field types when using virtuals + versionKey options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15965\"\u003e#15965\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(mongoose): add missing options to mongoose.set() docs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.2.0 / 2026-02-09\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add option to skip middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15883\"\u003e#15883\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/8768\"\u003e#8768\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): delay \u0026quot;Duplicate schema index\u0026quot; warning until createIndexes runs to include model name in the warning \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15979\"\u003e#15979\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(model): add strict option to Model.hydrate(...) \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15940\"\u003e#15940\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15977\"\u003e#15977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add flattenUUIDs option to toObject() and toJSON() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15864\"\u003e#15864\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15021\"\u003e#15021\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): treat undefined as not provided for strict, strictQuery and id options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16004\"\u003e#16004\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(inferrawdoctype): avoid adding _id to nested paths and handle _id: false in options + schema definition \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15989\"\u003e#15989\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fix toObject() type inference with timestamps + virtuals \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15975\"\u003e#15975\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): remove dead MapReduce and GeoSearch types \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15984\"\u003e#15984\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(types): remove tsd in favor of tsc + test utilities \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15951\"\u003e#15951\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15696\"\u003e#15696\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/764bd8237f05276d2f37a99566b3269978bfdd69\"\u003e\u003ccode\u003e764bd82\u003c/code\u003e\u003c/a\u003e chore: release 9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/2e5b78071769009a8025aa1e624a6337a754aa48\"\u003e\u003ccode\u003e2e5b780\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16021\"\u003e#16021\u003c/a\u003e from Automattic/fix/gh-15965-subdoc-toObject\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/324ff4c682c17f31de9d7cef69aa836afb63ebe7\"\u003e\u003ccode\u003e324ff4c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16020\"\u003e#16020\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16006\"\u003egh-16006\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/684b31fc2217c9fa70c57c8a7ecb0e8a63bf9a35\"\u003e\u003ccode\u003e684b31f\u003c/code\u003e\u003c/a\u003e test(types): check types using ts-expect-error directive instead of ExpectType\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/06b4e93cfb424687dc1a78937f782263bfb9d4a6\"\u003e\u003ccode\u003e06b4e93\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16019\"\u003e#16019\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/16005\"\u003egh-16005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/55749fcc46c9c679038a00fff0c81a14500c0ca5\"\u003e\u003ccode\u003e55749fc\u003c/code\u003e\u003c/a\u003e fix(types): make subdocuments and array subdocuments have the same behavior f...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/b81b3b6584e395c2efa37d950990e4bab6b31d28\"\u003e\u003ccode\u003eb81b3b6\u003c/code\u003e\u003c/a\u003e types(query): allow assigning QueryFilter\u0026lt;DocType\u0026gt; to QueryFilter\u0026lt;any\u0026gt;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8d054617f5d65909349cc560e8cfeba2b9d7b843\"\u003e\u003ccode\u003e8d05461\u003c/code\u003e\u003c/a\u003e test(types): assert subdocuments in \u003ccode\u003etoObject()\u003c/code\u003e  and \u003ccode\u003etoJSON\u003c/code\u003e get the correc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/40ffefe7f39e75a3883f0292ccfb0b22d4c3bf44\"\u003e\u003ccode\u003e40ffefe\u003c/code\u003e\u003c/a\u003e docs(mongoose): add missing options to \u003ccode\u003emongoose.set()\u003c/code\u003e docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/904a2eb81e4354c5842383cef304a634191c1c56\"\u003e\u003ccode\u003e904a2eb\u003c/code\u003e\u003c/a\u003e chore: release 9.2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.23.0...9.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.23.0\u0026new-version=9.2.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/Mailto/pull/41","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2FMailto/issues/41","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/41/packages"}},{"old_version":"8.21.0","new_version":"9.1.1","update_type":"major","path":"/backend","pr_created_at":"2026-01-05T06:30:40.000Z","version_change":"8.21.0 → 9.1.1","issue":{"uuid":"3780339006","node_id":"PR_kwDOQBO3TM67eWg4","number":24,"state":"closed","title":"chore(backend): bump mongoose from 8.21.0 to 9.1.1 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-12T07:40:05.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-05T06:30:40.000Z","updated_at":"2026-01-12T07:40:06.000Z","time_to_close":608965,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.21.0","new_version":"9.1.1","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.21.0 to 9.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.1.1 / 2025-12-30\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): avoid 'Cannot mix array and object updates' on doc.updateOne() with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update default search version to 9.x \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003e#15925\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.0 / 2025-12-29\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat(model): make pathsToSave handle saving just a subpath of a modified path \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15896\"\u003e#15896\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document+model): pass options to pre('deleteOne') and update+options to pre('updateOne') hooks \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15908\"\u003e#15908\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15870\"\u003e#15870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(versioning): optimistic concurrency exclude option, update docs for optimisticConcurrency options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15917\"\u003e#15917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15915\"\u003e#15915\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15912\"\u003e#15912\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add support for getAtomics() to allow custom container types to utilize atomics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15817\"\u003e#15817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize Object.keys() checks and optional chaining \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15865\"\u003e#15865\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add support for typescript style enums \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15914\"\u003e#15914\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15913\"\u003e#15913\u003c/a\u003e \u003ca href=\"https://github.com/mjfwebb\"\u003emjfwebb\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): when cloning a doc with subdocs, make sure the subdocs parent is the cloned doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15904\"\u003e#15904\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15901\"\u003e#15901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): support Mongoose query casting in AnyBulkWriteOperation filter property \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15918\"\u003e#15918\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15910\"\u003e#15910\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: allow calling create() with TRawDocType for better generics support \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15903\"\u003e#15903\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15902\"\u003e#15902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(document): add id virtual getter by default to HydrateDocument\u0026lt;\u0026gt; if TOverrides is Record\u0026lt;string, never\u0026gt; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15906\"\u003e#15906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15900\"\u003e#15900\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): add lean to list of schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15907\"\u003e#15907\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15894\"\u003e#15894\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12081\"\u003e#12081\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.0 / 2025-11-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBREAKING CHANGE: drop support for callback-based pre middleware, e.g. \u003ccode\u003enext()\u003c/code\u003e in \u003ccode\u003epre()\u003c/code\u003e hooks\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: update to MongoDB Node driver v7\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.1.1 / 2025-12-30\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(document): avoid 'Cannot mix array and object updates' on doc.updateOne() with pipeline \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update default search version to 9.x \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003e#15925\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.1.0 / 2025-12-29\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efeat(model): make pathsToSave handle saving just a subpath of a modified path \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15896\"\u003e#15896\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document+model): pass options to pre('deleteOne') and update+options to pre('updateOne') hooks \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15908\"\u003e#15908\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15870\"\u003e#15870\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(versioning): optimistic concurrency exclude option, update docs for optimisticConcurrency options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15917\"\u003e#15917\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15915\"\u003e#15915\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15912\"\u003e#15912\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(document): add support for getAtomics() to allow custom container types to utilize atomics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15817\"\u003e#15817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: optimize Object.keys() checks and optional chaining \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15865\"\u003e#15865\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add support for typescript style enums \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15914\"\u003e#15914\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15913\"\u003e#15913\u003c/a\u003e \u003ca href=\"https://github.com/mjfwebb\"\u003emjfwebb\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): when cloning a doc with subdocs, make sure the subdocs parent is the cloned doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15904\"\u003e#15904\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15901\"\u003e#15901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(models): support Mongoose query casting in AnyBulkWriteOperation filter property \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15918\"\u003e#15918\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15910\"\u003e#15910\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: allow calling create() with TRawDocType for better generics support \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15903\"\u003e#15903\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15902\"\u003e#15902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(document): add id virtual getter by default to HydrateDocument\u0026lt;\u0026gt; if TOverrides is Record\u0026lt;string, never\u0026gt; \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15906\"\u003e#15906\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15900\"\u003e#15900\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(schema): add lean to list of schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15907\"\u003e#15907\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15894\"\u003e#15894\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12081\"\u003e#12081\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/f5bfdb54182a1d1bbb5cea6aab87f523713d237c\"\u003e\u003ccode\u003ef5bfdb5\u003c/code\u003e\u003c/a\u003e chore: release 9.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/18ca142958ddcca78ca3c61e1f981b8fa5ec3c16\"\u003e\u003ccode\u003e18ca142\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15928\"\u003e#15928\u003c/a\u003e from Automattic/vkarpov15/fix-doc-updateone\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/1971e9b450aa26080cba4aee2dd38a73ef14193a\"\u003e\u003ccode\u003e1971e9b\u003c/code\u003e\u003c/a\u003e fix(document): avoid 'Cannot mix array and object updates' on doc.updateOne()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/a88b4d9481bc77bf6274e963b9d8eed07644829a\"\u003e\u003ccode\u003ea88b4d9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15926\"\u003e#15926\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15925\"\u003egh-15925\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/45c3730d5ccf7be3788ba304326ed6e3eb472be0\"\u003e\u003ccode\u003e45c3730\u003c/code\u003e\u003c/a\u003e fix markdown lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/387e7560ef7b5c9115a0ffc89c277eb2c4d262a7\"\u003e\u003ccode\u003e387e756\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15921\"\u003e#15921\u003c/a\u003e from Automattic/fix/subdoc-save-hooks-options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/4827df0c2da9cf41d1fdfea60c34a2ff99be3c5a\"\u003e\u003ccode\u003e4827df0\u003c/code\u003e\u003c/a\u003e docs(release-items): add a couple of other major release checklist items\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8c5c24b91375873e1274297aa22bb953bf7235ab\"\u003e\u003ccode\u003e8c5c24b\u003c/code\u003e\u003c/a\u003e docs(release-items): update for current versions and start adding a checklist...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/ab8cc73b29eff83c010229db96935b37b73b0c1b\"\u003e\u003ccode\u003eab8cc73\u003c/code\u003e\u003c/a\u003e docs: update default search version to 9.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/5edcb1946a2bd98296984df5bb1ade4176a128af\"\u003e\u003ccode\u003e5edcb19\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15919\"\u003e#15919\u003c/a\u003e from Automattic/perf/select-id-only-for-checking-do...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.21.0...9.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.21.0\u0026new-version=9.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/mailo/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2Fmailo/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"}},{"old_version":"8.20.4","new_version":"9.0.2","update_type":"major","path":"/backend","pr_created_at":"2025-12-22T06:26:49.000Z","version_change":"8.20.4 → 9.0.2","issue":{"uuid":"3752497034","node_id":"PR_kwDOQBO3TM66Eu4i","number":21,"state":"closed","title":"chore(backend): bump mongoose from 8.20.4 to 9.0.2 in /backend","user":"dependabot[bot]","labels":["documentation","webmail","backend","docker","ci/cd","dependencies","configuration"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-05T06:30:42.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-22T06:26:49.000Z","updated_at":"2026-01-05T06:30:44.000Z","time_to_close":1209833,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(backend)","packages":[{"name":"mongoose","old_version":"8.20.4","new_version":"9.0.2","repository_url":"https://github.com/Automattic/mongoose"}],"path":"/backend","ecosystem":"docker"},"body":"Bumps [mongoose](https://github.com/Automattic/mongoose) from 8.20.4 to 9.0.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/releases\"\u003emongoose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.0 / 2025-11-21\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eBREAKING CHANGE: drop support for callback-based pre middleware, e.g. \u003ccode\u003enext()\u003c/code\u003e in \u003ccode\u003epre()\u003c/code\u003e hooks\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: update to MongoDB Node driver v7\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: make UUID schema type return bson UUIDs \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15378\"\u003e#15378\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: make findOne(null), find(null), etc. throw an error instead of returning first doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15019\"\u003e#15019\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14948\"\u003e#14948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: disallow update pipelines by default, require updatePipeline option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15586\"\u003e#15586\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14424\"\u003e#14424\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: call virtual ref function with subdoc, not top-level doc \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14652\"\u003e#14652\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12440\"\u003e#12440\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/12363\"\u003e#12363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make create() and insertOne() params more strict, remove generics to prevent type inference \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15587\"\u003e#15587\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15355\"\u003e#15355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make FilterQuery properties no longer resolve to any in TypeScript \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15422\"\u003e#15422\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): change \u003ccode\u003ethis\u003c/code\u003e to HydratedDocument for default() and required(), HydratedDocument | Query for validate() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15020\"\u003e#15020\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14696\"\u003e#14696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): make id a virtual in TypeScript rather than a property on Document base class \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15572\"\u003e#15572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/13079\"\u003e#13079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE(types): consolidate RootQuerySelector, Condition, etc. types with MongoDB driver's \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15593\"\u003e#15593\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: asyncify update validators, SchemaType.prototype.doValidate(), save hooks for improved stack traces \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15312\"\u003e#15312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove bson as direct dependency, use mongodb/lib/bson instead \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15576\"\u003e#15576\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15154\"\u003e#15154\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove _executionStack, make validate() async function and call Kareem hooks directly vs through wrappers \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15298\"\u003e#15298\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14906\"\u003e#14906\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove browser build, move to \u003ccode\u003e@​mongoosejs/browser\u003c/code\u003e instead \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15385\"\u003e#15385\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15296\"\u003e#15296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove schematype caster and casterConstructor properties in favor of embeddedSchemaType and Constructor \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15513\"\u003e#15513\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15179\"\u003e#15179\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: adding missing pluralizations, fixing pluralization: virus -\u0026gt; viruses \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14247\"\u003e#14247\u003c/a\u003e \u003ca href=\"https://github.com/ItsBradyDavis\"\u003eItsBradyDavis\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBREAKING CHANGE: remove connection noListener option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15641\"\u003e#15641\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15640\"\u003e#15640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(types): add Schema.create() for TypeScript type inference \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15482\"\u003e#15482\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/14954\"\u003e#14954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove examples directory \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15597\"\u003e#15597\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Automattic/mongoose/blob/master/CHANGELOG.md\"\u003emongoose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e8.20.4 / 2025-12-18\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): ensure $isDeleted is set after calling doc.deleteOne() successfully \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15898\"\u003e#15898\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15888\"\u003e#15888\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.2 / 2025-12-17\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): trigger error post hook on bulkwrite when pre-hook throws an error \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15882\"\u003e#15882\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(document): use bitwise OR to accumulate version mode flags \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(queries): apply Mongoose casting to default MongoDB driver _id in RootFilterOperators \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15887\"\u003e#15887\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): correctly infer virtuals, methods on hydrated doc type from schema options \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: fixed this parameter type detection for methods with arguments \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e \u003ca href=\"https://github.com/I-Enderlord-I\"\u003eI-Enderlord-I\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes: export InferRawDocTypeWithout_id to replicate Mongoose 8 InferRawDocType behavior \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15814\"\u003e#15814\u003c/a\u003e \u003ca href=\"https://github.com/JavaScriptBach\"\u003eJavaScriptBach\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve colors on dark mode \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15879\"\u003e#15879\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(model): add overwriteImmutable option \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15884\"\u003e#15884\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove internal callbacks for buffering \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15890\"\u003e#15890\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e8.20.3 / 2025-12-15\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use Object.hasOwn instead of Object#hasOwnProperty \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15875\"\u003e#15875\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: improve error when calling Document.prototype.init() with null/undefined \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15812\"\u003e#15812\u003c/a\u003e \u003ca href=\"https://github.com/Vegapunk-debug\"\u003eVegapunk-debug\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): avoid treating paths with default: null as required \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15889\"\u003e#15889\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): allow partial statics to schema.statics() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15780\"\u003e#15780\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e9.0.1 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eperf: use native Buffer.equals() for buffer comparison \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15821\"\u003e#15821\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): fix overwriteImmutable not working with timestamps: true, add overwriteImmutable types re \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15819\"\u003e#15819\u003c/a\u003e \u003ca href=\"https://github.com/AbdelrahmanHafez\"\u003eAbdelrahmanHafez\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e \u003ca href=\"https://github.com/jhaayushkumar\"\u003ejhaayushkumar\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(schema): Add enumValues property to Number enum for consistency with String enum \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15824\"\u003e#15824\u003c/a\u003e \u003ca href=\"https://github.com/AkaHarshit\"\u003eAkaHarshit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: incorrect variable bug in double casting \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15849\"\u003e#15849\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15848\"\u003e#15848\u003c/a\u003e \u003ca href=\"https://github.com/lomesh2312\"\u003elomesh2312\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: clear timeout in collection operations \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15852\"\u003e#15852\u003c/a\u003e \u003ca href=\"https://github.com/techcodie\"\u003etechcodie\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(query+model): use function overrides instead of | Query\u0026lt;any, any\u0026gt; to support using Query as filter \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15791\"\u003e#15791\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15779\"\u003e#15779\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(migrating_to_9): clarify removing next() from pre middleware \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15813\"\u003e#15813\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add dark mode support and CSS improvements \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15753\"\u003e#15753\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Mongoose compatibility page updates \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15797\"\u003e#15797\u003c/a\u003e \u003ca href=\"https://github.com/alexbevi\"\u003ealexbevi\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Add closing backticks to code block in migration guide \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15783\"\u003e#15783\u003c/a\u003e \u003ca href=\"https://github.com/isnifer\"\u003eisnifer\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix documentation link in connection.js \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15804\"\u003e#15804\u003c/a\u003e \u003ca href=\"https://github.com/salittle0\"\u003esalittle0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e8.20.2 / 2025-12-05\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(model): bump version if necessary after successful bulkSave() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15809\"\u003e#15809\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15800\"\u003e#15800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15789\"\u003e#15789\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etypes(schema): allow calling schema.static() with as TStatics \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15794\"\u003e#15794\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15780\"\u003e#15780\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.8.8 / 2025-12-04\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix(bulkWrite): pass overwriteImmutable option to castUpdate fixes \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15789\"\u003e#15789\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15782\"\u003e#15782\u003c/a\u003e \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15781\"\u003e#15781\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(model): bump version if necessary after successful bulkSave() \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15800\"\u003e#15800\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/47ab06854225fe743ce607429ebfb75d7ed161ef\"\u003e\u003ccode\u003e47ab068\u003c/code\u003e\u003c/a\u003e chore: release 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7a2203e1135ffdb0417f8bef246cf3180b5a086e\"\u003e\u003ccode\u003e7a2203e\u003c/code\u003e\u003c/a\u003e fix(document): use bitwise OR to accumulate version mode flags (\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15893\"\u003e#15893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/8b018aa63f4127b22e0ea1a1a22c85793b74bd64\"\u003e\u003ccode\u003e8b018aa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15892\"\u003e#15892\u003c/a\u003e from Automattic/vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15869\"\u003egh-15869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/7d354a6532b2c5011e48f1a17515d5c3acca5c08\"\u003e\u003ccode\u003e7d354a6\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into vkarpov15/\u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15869\"\u003egh-15869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/85349576896787814ea60e15c19ed2554cbe088a\"\u003e\u003ccode\u003e8534957\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15885\"\u003e#15885\u003c/a\u003e from I-Enderlord-I/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/bc5873bc041def7fca6b486c12f96cd7a3e50bff\"\u003e\u003ccode\u003ebc5873b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15891\"\u003e#15891\u003c/a\u003e from Automattic/vkarpov15/gh-15779-2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/06b83cbd65f5f92f7defceb3db98d04847c9217d\"\u003e\u003ccode\u003e06b83cb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Automattic/mongoose/issues/15815\"\u003e#15815\u003c/a\u003e from JavaScriptBach/inferpojotype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/4607fe02e41781993e31007890d734247ff18446\"\u003e\u003ccode\u003e4607fe0\u003c/code\u003e\u003c/a\u003e Replace InferPojoType with InferRawDocTypeWithout_id\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/df6faab4cc353dfb4250907a09be998bbd440bc6\"\u003e\u003ccode\u003edf6faab\u003c/code\u003e\u003c/a\u003e Add InferRawDocTypeWithout_id type definition\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Automattic/mongoose/commit/20bb91ca404cf64266d0ec58e83fb40a9087b774\"\u003e\u003ccode\u003e20bb91c\u003c/code\u003e\u003c/a\u003e Merge branch '8.x'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Automattic/mongoose/compare/8.20.4...9.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mongoose\u0026package-manager=npm_and_yarn\u0026previous-version=8.20.4\u0026new-version=9.0.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/limitlessinfotechsolution/mailo/pull/21","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/limitlessinfotechsolution%2Fmailo/issues/21","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/21/packages"}}]}