mongodb 6.18.0-dev.20250801.sha.aac76296 → 6.18.0-dev.20250802.sha.be7f808c

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/beta.d.ts CHANGED
@@ -2849,10 +2849,10 @@ export declare class Collection<TSchema extends Document = Document> {
2849
2849
  */
2850
2850
  findOne(): Promise<WithId<TSchema> | null>;
2851
2851
  findOne(filter: Filter<TSchema>): Promise<WithId<TSchema> | null>;
2852
- findOne(filter: Filter<TSchema>, options: Omit<FindOptions, 'timeoutMode'> & Abortable): Promise<WithId<TSchema> | null>;
2852
+ findOne(filter: Filter<TSchema>, options: Omit<FindOneOptions, 'timeoutMode'> & Abortable): Promise<WithId<TSchema> | null>;
2853
2853
  findOne<T = TSchema>(): Promise<T | null>;
2854
2854
  findOne<T = TSchema>(filter: Filter<TSchema>): Promise<T | null>;
2855
- findOne<T = TSchema>(filter: Filter<TSchema>, options?: Omit<FindOptions, 'timeoutMode'> & Abortable): Promise<T | null>;
2855
+ findOne<T = TSchema>(filter: Filter<TSchema>, options?: Omit<FindOneOptions, 'timeoutMode'> & Abortable): Promise<T | null>;
2856
2856
  /**
2857
2857
  * Creates a cursor for a filter that can be used to iterate over results from MongoDB
2858
2858
  *
@@ -4750,6 +4750,16 @@ export declare interface FindOneAndUpdateOptions extends CommandOperationOptions
4750
4750
  includeResultMetadata?: boolean;
4751
4751
  }
4752
4752
 
4753
+ /** @public */
4754
+ export declare interface FindOneOptions extends FindOptions {
4755
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4756
+ batchSize?: number;
4757
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4758
+ limit?: number;
4759
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4760
+ noCursorTimeout?: boolean;
4761
+ }
4762
+
4753
4763
  /**
4754
4764
  * A builder object that is returned from {@link BulkOperationBase#find}.
4755
4765
  * Is used to build a write operation that involves a query filter.
package/lib/collection.js CHANGED
@@ -303,10 +303,15 @@ class Collection {
303
303
  return await this.s.db.dropCollection(this.collectionName, options);
304
304
  }
305
305
  async findOne(filter = {}, options = {}) {
306
- const cursor = this.find(filter, options).limit(-1).batchSize(1);
307
- const res = await cursor.next();
306
+ // Explicitly set the limit to 1 and singleBatch to true for all commands, per the spec.
307
+ // noCursorTimeout must be unset as well as batchSize.
308
+ // See: https://github.com/mongodb/specifications/blob/master/source/crud/crud.md#findone-api-details
309
+ const { batchSize: _batchSize, noCursorTimeout: _noCursorTimeout, ...opts } = options;
310
+ opts.singleBatch = true;
311
+ const cursor = this.find(filter, opts).limit(1);
312
+ const result = await cursor.next();
308
313
  await cursor.close();
309
- return res;
314
+ return result;
310
315
  }
311
316
  find(filter = {}, options = {}) {
312
317
  return new find_cursor_1.FindCursor(this.client, this.s.namespace, filter, (0, utils_1.resolveOptions)(this, options));
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":";;;AAAA,iCAAsF;AAOtF,4CAAsD;AACtD,gDAA0D;AAC1D,mDAAoG;AACpG,oEAAgE;AAChE,sDAAkD;AAClD,sEAAiE;AACjE,oFAG6C;AAE7C,mCAA+F;AAa/F,8CAAuE;AACvE,gDAK6B;AAC7B,oDAAgF;AAEhF,oFAG+C;AAC/C,sEAA+E;AAE/E,kEAOsC;AACtC,kDAW8B;AAC9B,gDAK6B;AAE7B,gDAA0E;AAC1E,+DAG4C;AAC5C,2DAA4E;AAC5E,+DAAgF;AAChF,gDAO6B;AAC7B,iDAAmE;AACnE,uDAA4E;AAE5E,mCAKiB;AACjB,mDAAyE;AA2CzE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,UAAU;IAOrB;;;OAGG;IACH,YAAY,EAAM,EAAE,IAAY,EAAE,OAA2B;QAC3D,iBAAiB;QACjB,IAAI,CAAC,CAAC,GAAG;YACP,EAAE;YACF,OAAO;YACP,SAAS,EAAE,IAAI,kCAA0B,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC;YAChE,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,IAAI,0BAAkB;YACtD,cAAc,EAAE,gCAAc,CAAC,WAAW,CAAC,OAAO,CAAC;YACnD,WAAW,EAAE,IAAA,yBAAkB,EAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,WAAW,EAAE,0BAAW,CAAC,WAAW,CAAC,OAAO,CAAC;YAC7C,YAAY,EAAE,4BAAY,CAAC,WAAW,CAAC,OAAO,CAAC;SAChD,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,IAAI,WAAW;QACb,IAAI,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,IAAI,cAAc;QAChB,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY;QACd,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,gDAAgD;IAChD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI,CAAC,CAAmB;QAC1B,IAAI,CAAC,CAAC,CAAC,cAAc,GAAG,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,CACb,GAAsC,EACtC,OAA0B;QAE1B,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,2BAAkB,CACpB,IAAsB,EACtB,GAAG,EACH,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CACd,IAAsD,EACtD,OAA0B;QAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,iCAAyB,CAAC,+CAA+C,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,GAAG,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAE9C,MAAM,YAAY,GAAG,4BAAY,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EACnD,OAAO,CACR,CAAC;YACF,OAAO;gBACL,YAAY;gBACZ,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,WAAW,EAAE,GAAG,CAAC,WAAW;aAC7B,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,mDAAmD,EAAE,CAAC;gBAC/E,MAAM,IAAI,iCAAyB,CACjC,uFAAuF,CACxF,CAAC;YACJ,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,SAAS,CACb,UAAyD,EACzD,OAA0B;QAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,iCAAyB,CAAC,qDAAqD,CAAC,CAAC;QAC7F,CAAC;QAED,OAAO,GAAG,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAE9C,oFAAoF;QACpF,kBAAkB;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAA,+BAAW,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,4BAA4B;QAC5B,MAAM,IAAI,GACR,OAAO,CAAC,OAAO,KAAK,KAAK;YACvB,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;YACzC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAE5C,6CAA6C;QAC7C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QAED,mBAAmB;QACnB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,SAAS,CACb,MAAuB,EACvB,MAA0C,EAC1C,OAAyC;QAEzC,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,2BAAkB,CACpB,IAAsB,EACtB,MAAM,EACN,MAAM,EACN,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,MAAuB,EACvB,WAA+B,EAC/B,OAAwB;QAExB,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4BAAmB,CACrB,IAAsB,EACtB,MAAM,EACN,WAAW,EACX,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAC9B,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,UAAU,CACd,MAAuB,EACvB,MAA0C,EAC1C,OAAuB;QAEvB,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4BAAmB,CACrB,IAAsB,EACtB,MAAM,EACN,MAAM,EACN,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CACb,SAA0B,EAAE,EAC5B,UAAyB,EAAE;QAE3B,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,2BAAkB,CAAC,IAAsB,EAAE,MAAM,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CACtF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CACd,SAA0B,EAAE,EAC5B,UAAyB,EAAE;QAE3B,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4BAAmB,CAAC,IAAsB,EAAE,MAAM,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CACvF,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,OAAuB;QACnD,2EAA2E;QAC3E,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,wBAAe,CACjB,IAAsB,EACtB,OAAO,EACP,IAAA,sBAAc,EAAC,SAAS,EAAE;YACxB,GAAG,OAAO;YACV,cAAc,EAAE,gCAAc,CAAC,OAAO;SACvC,CAAC,CACe,CACpB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,OAA+B;QACxC,OAAO,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAuBD,KAAK,CAAC,OAAO,CACX,SAA0B,EAAE,EAC5B,UAAmC,EAAE;QAErC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC;IACb,CAAC;IAaD,IAAI,CACF,SAA0B,EAAE,EAC5B,UAAmC,EAAE;QAErC,OAAO,IAAI,wBAAU,CACnB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,CAAC,CAAC,SAAS,EAChB,MAAM,EACN,IAAA,sBAAc,EAAC,IAAsB,EAAE,OAAO,CAAC,CAChD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,OAA0B;QACtC,OAAO,GAAG,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE;aACjC,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;aAC/E,OAAO,EAAE,CAAC;QAEb,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YACrD,MAAM,IAAI,qBAAa,CAAC,cAAc,IAAI,CAAC,SAAS,YAAY,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,UAAU,CAAC,OAAO,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CAAC,OAA0B;QACvC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,WAAW,CACf,SAA6B,EAC7B,OAA8B;QAE9B,MAAM,OAAO,GAAG,MAAM,IAAA,oCAAgB,EACpC,IAAI,CAAC,MAAM,EACX,gCAAsB,CAAC,sBAAsB,CAC3C,IAAI,EACJ,IAAI,CAAC,cAAc,EACnB,SAAS,EACT,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAC9B,CACF,CAAC;QAEF,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,KAAK,CAAC,aAAa,CACjB,UAA8B,EAC9B,OAA8B;QAE9B,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,gCAAsB,CAAC,yBAAyB,CAC9C,IAAI,EACJ,IAAI,CAAC,cAAc,EACnB,UAAU,EACV,IAAA,sBAAc,EAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAC3D,CACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,OAA4B;QAC7D,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4BAAkB,CAAC,IAAsB,EAAE,SAAS,EAAE;YACxD,GAAG,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC;YAChC,cAAc,EAAE,gCAAc,CAAC,OAAO;SACvC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,OAA4B;QAC5C,IAAI,CAAC;YACH,MAAM,IAAA,oCAAgB,EACpB,IAAI,CAAC,MAAM,EACX,IAAI,4BAAkB,CAAC,IAAsB,EAAE,GAAG,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CACnF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2GAA2G;YAC3G,IAAI,KAAK,YAAY,kCAA0B;gBAAE,MAAM,KAAK,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,OAA4B;QACtC,OAAO,IAAI,uCAAiB,CAAC,IAAsB,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACtF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,OAA0B,EAAE,OAA4B;QACxE,MAAM,UAAU,GAAa,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAgB,IAAI,GAAG,CACrC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;aAC5B,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;aACvB,OAAO,EAAE,CACb,CAAC;QACF,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;IAiBD,KAAK,CAAC,gBAAgB,CACpB,OAAiC;QAEjC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC;YACxB,GAAG,OAAO;YACV,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,KAAK;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,sBAAsB,CAAC,OAAuC;QAClE,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,0DAA+B,CAAC,IAAsB,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAC3F,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,cAAc,CAClB,SAA0B,EAAE,EAC5B,UAA6C,EAAE;QAE/C,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAElC,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAgB,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IA2BD,KAAK,CAAC,QAAQ,CACZ,GAAQ,EACR,SAA0B,EAAE,EAC5B,UAA2B,EAAE;QAE7B,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4BAAiB,CACnB,IAAsB,EACtB,GAAqB,EACrB,MAAM,EACN,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAC9B,CACF,CAAC;IACJ,CAAC;IAaD,KAAK,CAAC,OAAO,CACX,OAAiC;QAEjC,MAAM,OAAO,GAA2B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;QAClF,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC;QACnC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAA4B,MAAM,CAAC,WAAW,CACxD,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAC5D,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAqBD,KAAK,CAAC,gBAAgB,CACpB,MAAuB,EACvB,OAAiC;QAEjC,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,2CAAyB,CAC3B,IAAsB,EACtB,MAAM,EACN,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IA4BD,KAAK,CAAC,iBAAiB,CACrB,MAAuB,EACvB,WAA+B,EAC/B,OAAkC;QAElC,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,4CAA0B,CAC5B,IAAsB,EACtB,MAAM,EACN,WAAW,EACX,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IAoCD,KAAK,CAAC,gBAAgB,CACpB,MAAuB,EACvB,MAA0C,EAC1C,OAAiC;QAEjC,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,2CAAyB,CAC3B,IAAsB,EACtB,MAAM,EACN,MAAM,EACN,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CACZ,CACpB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,SAAS,CACP,WAAuB,EAAE,EACzB,OAAsC;QAEtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,iCAAyB,CACjC,4DAA4D,CAC7D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,sCAAiB,CAC1B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,CAAC,CAAC,SAAS,EAChB,QAAQ,EACR,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAC9B,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0FG;IACH,KAAK,CACH,WAAuB,EAAE,EACzB,UAA+B,EAAE;QAEjC,6CAA6C;QAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,QAAQ,CAAC;YACnB,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,4BAAY,CAAkB,IAAI,EAAE,QAAQ,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;;;OAOG;IACH,yBAAyB,CAAC,OAA0B;QAClD,OAAO,IAAI,kCAAsB,CAAC,IAAsB,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;;;OAOG;IACH,uBAAuB,CAAC,OAA0B;QAChD,OAAO,IAAI,8BAAoB,CAAC,IAAsB,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACzF,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK,CAAC,SAA0B,EAAE,EAAE,UAAwB,EAAE;QAClE,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,sBAAc,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,IAAA,sBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAC9E,CAAC;IACJ,CAAC;IAmBD,iBAAiB,CACf,kBAAsD,EACtD,OAAkC;QAElC,OAAO;YACL,OAAO,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAE/F,MAAM,SAAS,GACb,kBAAkB,IAAI,IAAI;YACxB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,OAAO,kBAAkB,KAAK,QAAQ;gBACtC,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,kBAAkB,CAAC;QAE3B,OAAO,IAAI,oDAAuB,CAAC,IAAsB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CAAC,WAAmC;QACzD,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CAAC,YAAsC;QAC9D,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,qCAA4B,CAAC,IAAsB,EAAE,YAAY,CAAC,CACvE,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CAAC,IAAY;QAChC,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,+BAAwB,CAAC,IAAsB,EAAE,IAAI,CAAC,CAC3D,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CAAC,IAAY,EAAE,UAAoB;QACxD,OAAO,MAAM,IAAA,oCAAgB,EAC3B,IAAI,CAAC,MAAM,EACX,IAAI,mCAA0B,CAAC,IAAsB,EAAE,IAAI,EAAE,UAAU,CAAC,CACzE,CAAC;IACJ,CAAC;CACF;AAznCD,gCAynCC"}
1
+ {"version":3,"file":"collection.js","sourceRoot":"","sources":["../src/collection.ts"],"names":[],"mappings":"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"}
@@ -181,8 +181,9 @@ async function tryOperation(operation, { topology, timeoutContext, session, read
181
181
  }
182
182
  if (hasWriteAspect && !(0, error_1.isRetryableWriteError)(previousOperationError))
183
183
  throw previousOperationError;
184
- if (hasReadAspect && !(0, error_1.isRetryableReadError)(previousOperationError))
184
+ if (hasReadAspect && !(0, error_1.isRetryableReadError)(previousOperationError)) {
185
185
  throw previousOperationError;
186
+ }
186
187
  if (previousOperationError instanceof error_1.MongoNetworkError &&
187
188
  operation.hasAspect(operation_1.Aspect.CURSOR_CREATING) &&
188
189
  session != null &&
@@ -1 +1 @@
1
- {"version":3,"file":"execute_operation.js","sourceRoot":"","sources":["../../src/operations/execute_operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute_operation.js","sourceRoot":"","sources":["../../src/operations/execute_operation.ts"],"names":[],"mappings":"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"}
@@ -80,15 +80,17 @@ function makeFindCommand(ns, filter, options) {
80
80
  }
81
81
  if (typeof options.batchSize === 'number') {
82
82
  if (options.batchSize < 0) {
83
- if (options.limit &&
84
- options.limit !== 0 &&
85
- Math.abs(options.batchSize) < Math.abs(options.limit)) {
86
- findCommand.limit = -options.batchSize;
87
- }
88
- findCommand.singleBatch = true;
83
+ findCommand.limit = -options.batchSize;
89
84
  }
90
85
  else {
91
- findCommand.batchSize = options.batchSize;
86
+ if (options.batchSize === options.limit) {
87
+ // Spec dictates that if these are equal the batchSize should be one more than the
88
+ // limit to avoid leaving the cursor open.
89
+ findCommand.batchSize = options.batchSize + 1;
90
+ }
91
+ else {
92
+ findCommand.batchSize = options.batchSize;
93
+ }
92
94
  }
93
95
  }
94
96
  if (typeof options.singleBatch === 'boolean') {
@@ -1 +1 @@
1
- {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/operations/find.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/operations/find.ts"],"names":[],"mappings":"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"}
package/mongodb.d.ts CHANGED
@@ -2830,10 +2830,10 @@ export declare class Collection<TSchema extends Document = Document> {
2830
2830
  */
2831
2831
  findOne(): Promise<WithId<TSchema> | null>;
2832
2832
  findOne(filter: Filter<TSchema>): Promise<WithId<TSchema> | null>;
2833
- findOne(filter: Filter<TSchema>, options: Omit<FindOptions, 'timeoutMode'> & Abortable): Promise<WithId<TSchema> | null>;
2833
+ findOne(filter: Filter<TSchema>, options: Omit<FindOneOptions, 'timeoutMode'> & Abortable): Promise<WithId<TSchema> | null>;
2834
2834
  findOne<T = TSchema>(): Promise<T | null>;
2835
2835
  findOne<T = TSchema>(filter: Filter<TSchema>): Promise<T | null>;
2836
- findOne<T = TSchema>(filter: Filter<TSchema>, options?: Omit<FindOptions, 'timeoutMode'> & Abortable): Promise<T | null>;
2836
+ findOne<T = TSchema>(filter: Filter<TSchema>, options?: Omit<FindOneOptions, 'timeoutMode'> & Abortable): Promise<T | null>;
2837
2837
  /**
2838
2838
  * Creates a cursor for a filter that can be used to iterate over results from MongoDB
2839
2839
  *
@@ -4708,6 +4708,16 @@ export declare interface FindOneAndUpdateOptions extends CommandOperationOptions
4708
4708
  includeResultMetadata?: boolean;
4709
4709
  }
4710
4710
 
4711
+ /** @public */
4712
+ export declare interface FindOneOptions extends FindOptions {
4713
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4714
+ batchSize?: number;
4715
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4716
+ limit?: number;
4717
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
4718
+ noCursorTimeout?: boolean;
4719
+ }
4720
+
4711
4721
  /**
4712
4722
  * A builder object that is returned from {@link BulkOperationBase#find}.
4713
4723
  * Is used to build a write operation that involves a query filter.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mongodb",
3
- "version": "6.18.0-dev.20250801.sha.aac76296",
3
+ "version": "6.18.0-dev.20250802.sha.be7f808c",
4
4
  "description": "The official MongoDB driver for Node.js",
5
5
  "main": "lib/index.js",
6
6
  "files": [
package/src/collection.ts CHANGED
@@ -43,7 +43,7 @@ import {
43
43
  type EstimatedDocumentCountOptions
44
44
  } from './operations/estimated_document_count';
45
45
  import { autoConnect, executeOperation } from './operations/execute_operation';
46
- import type { FindOptions } from './operations/find';
46
+ import { type FindOneOptions, type FindOptions } from './operations/find';
47
47
  import {
48
48
  FindOneAndDeleteOperation,
49
49
  type FindOneAndDeleteOptions,
@@ -536,7 +536,7 @@ export class Collection<TSchema extends Document = Document> {
536
536
  async findOne(filter: Filter<TSchema>): Promise<WithId<TSchema> | null>;
537
537
  async findOne(
538
538
  filter: Filter<TSchema>,
539
- options: Omit<FindOptions, 'timeoutMode'> & Abortable
539
+ options: Omit<FindOneOptions, 'timeoutMode'> & Abortable
540
540
  ): Promise<WithId<TSchema> | null>;
541
541
 
542
542
  // allow an override of the schema.
@@ -544,17 +544,22 @@ export class Collection<TSchema extends Document = Document> {
544
544
  async findOne<T = TSchema>(filter: Filter<TSchema>): Promise<T | null>;
545
545
  async findOne<T = TSchema>(
546
546
  filter: Filter<TSchema>,
547
- options?: Omit<FindOptions, 'timeoutMode'> & Abortable
547
+ options?: Omit<FindOneOptions, 'timeoutMode'> & Abortable
548
548
  ): Promise<T | null>;
549
549
 
550
550
  async findOne(
551
551
  filter: Filter<TSchema> = {},
552
- options: FindOptions & Abortable = {}
552
+ options: Omit<FindOneOptions, 'timeoutMode'> & Abortable = {}
553
553
  ): Promise<WithId<TSchema> | null> {
554
- const cursor = this.find(filter, options).limit(-1).batchSize(1);
555
- const res = await cursor.next();
554
+ // Explicitly set the limit to 1 and singleBatch to true for all commands, per the spec.
555
+ // noCursorTimeout must be unset as well as batchSize.
556
+ // See: https://github.com/mongodb/specifications/blob/master/source/crud/crud.md#findone-api-details
557
+ const { batchSize: _batchSize, noCursorTimeout: _noCursorTimeout, ...opts } = options;
558
+ opts.singleBatch = true;
559
+ const cursor = this.find(filter, opts).limit(1);
560
+ const result = await cursor.next();
556
561
  await cursor.close();
557
- return res;
562
+ return result;
558
563
  }
559
564
 
560
565
  /**
package/src/index.ts CHANGED
@@ -523,7 +523,7 @@ export type { DeleteOptions, DeleteResult, DeleteStatement } from './operations/
523
523
  export type { DistinctOptions } from './operations/distinct';
524
524
  export type { DropCollectionOptions, DropDatabaseOptions } from './operations/drop';
525
525
  export type { EstimatedDocumentCountOptions } from './operations/estimated_document_count';
526
- export type { FindOptions } from './operations/find';
526
+ export type { FindOneOptions, FindOptions } from './operations/find';
527
527
  export type {
528
528
  FindOneAndDeleteOptions,
529
529
  FindOneAndReplaceOptions,
@@ -248,8 +248,9 @@ async function tryOperation<
248
248
  if (hasWriteAspect && !isRetryableWriteError(previousOperationError))
249
249
  throw previousOperationError;
250
250
 
251
- if (hasReadAspect && !isRetryableReadError(previousOperationError))
251
+ if (hasReadAspect && !isRetryableReadError(previousOperationError)) {
252
252
  throw previousOperationError;
253
+ }
253
254
 
254
255
  if (
255
256
  previousOperationError instanceof MongoNetworkError &&
@@ -81,6 +81,16 @@ export interface FindOptions<TSchema extends Document = Document>
81
81
  timeoutMode?: CursorTimeoutMode;
82
82
  }
83
83
 
84
+ /** @public */
85
+ export interface FindOneOptions extends FindOptions {
86
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
87
+ batchSize?: number;
88
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
89
+ limit?: number;
90
+ /** @deprecated Will be removed in the next major version. User provided value will be ignored. */
91
+ noCursorTimeout?: boolean;
92
+ }
93
+
84
94
  /** @internal */
85
95
  export class FindOperation extends CommandOperation<CursorResponse> {
86
96
  /**
@@ -185,17 +195,15 @@ function makeFindCommand(ns: MongoDBNamespace, filter: Document, options: FindOp
185
195
 
186
196
  if (typeof options.batchSize === 'number') {
187
197
  if (options.batchSize < 0) {
188
- if (
189
- options.limit &&
190
- options.limit !== 0 &&
191
- Math.abs(options.batchSize) < Math.abs(options.limit)
192
- ) {
193
- findCommand.limit = -options.batchSize;
194
- }
195
-
196
- findCommand.singleBatch = true;
198
+ findCommand.limit = -options.batchSize;
197
199
  } else {
198
- findCommand.batchSize = options.batchSize;
200
+ if (options.batchSize === options.limit) {
201
+ // Spec dictates that if these are equal the batchSize should be one more than the
202
+ // limit to avoid leaving the cursor open.
203
+ findCommand.batchSize = options.batchSize + 1;
204
+ } else {
205
+ findCommand.batchSize = options.batchSize;
206
+ }
199
207
  }
200
208
  }
201
209