"Error: Cyclic Dependency Detected" appears with 3 vulnerabilities

Viewed 361

Im getting this following error when trying to add a member to an array on MongoDB:

(node:13208) UnhandledPromiseRejectionWarning: Error: cyclic dependency detected
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:334:34)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:836:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at serializeObject (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:348:18)
at serializeInto (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\parser\serializer.js:938:17)
at BSON.serialize (C:\Users\alfie\Desktop\Discord Bot\node_modules\bson\lib\bson\bson.js:63:28)
at Query.toBin (C:\Users\alfie\Desktop\Discord Bot\node_modules\mongodb-core\lib\connection\commands.js:146:25)

Here is the code:

const Discord = require("discord.js");
const CircularJSON = require('circular-json');
const mongoose = require("mongoose");
const Teams = require("../models/teams.js")
const fs = require("fs");
mongoose.set('useFindAndModify', false);

module.exports.run = async(bot, message, args) => {
  let addMember = message.mentions.members.first(); // message.mentions.members.first() should be used instead; also we're just gonna grab the member ID here as it'll be used elsewhere

  try {
    let team = await Teams.findOne({
      CaptainID: message.author.id
    });
    if (!team) return message.reply("You are not captain of a team currently, create on using %createteam <team name>");

    if (team.Members.length < 0 && team.Members.includes(addMember)) return message.reply("That Member is already in the team!");
    else return Teams.findOneAndUpdate({
      $push: {
        Members: addMember
      }
    });

  } catch (err) {
    console.log(err);
    return message.channel.send(`Error adding a member: **${err.message}**`);
  }

} // closes module.exports
module.exports.help = {
  name: "addmember"
}

Has anyone here experienced this issue before? I've updated to the latest version of Mongoose. But one thing I did notice is that when doing npm audit it finds 3 vulnerabilities which I cannot fix:

Screenshot with console

0 Answers
Related