Skip timestamps middleware for certain updates in Mongoose

From mongoose 5 onwards , there is timestamps option which can be passed in Model.updateOne() and model.update() to skip timestamps for this update.

Directly from docs:

[options.timestamps=null] «Boolean» If set to false and schema-level timestamps are enabled, skip timestamps for this update. Note that this allows you to overwrite timestamps. Does nothing if schema-level timestamps are not set.

For example given in the question , timestamp updates can be skipped like this ,

Foo.updateOne({ __id: someFooId },{ $set: { name: updatedName } }, { timestamps: false });

I just found a solution and it works perfectly to me.

mongoose.connection.db.collection('player').updateOne(
    {_id: mongoose.Types.ObjectId('56cb91sf34746f14678934ba')},
    {$set: {name: 'Test'}}
);

This query will not update the updatedAt field. Hope you still need this!