NodeBB/NodeBB

View on GitHub

Showing 443 of 552 total issues

Function exports has 529 lines of code (exceeds 75 allowed). Consider refactoring.
Open

module.exports = function (Topics) {
    Topics.createTags = async function (tags, tid, timestamp) {
        if (!Array.isArray(tags) || !tags.length) {
            return;
        }
Severity: Major
Found in src/topics/tags.js - About 2 days to fix

    Function init has 471 lines of code (exceeds 75 allowed). Consider refactoring.
    Open

        Users.init = function () {
            $('#results-per-page').val(ajaxify.data.resultsPerPage).on('change', function () {
                const query = utils.params();
                query.resultsPerPage = $('#results-per-page').val();
                const qs = buildSearchQuery(query);
    Severity: Major
    Found in public/src/admin/manage/users.js - About 2 days to fix

      Function exports has a Cognitive Complexity of 107 (exceeds 10 allowed). Consider refactoring.
      Open

      module.exports = function (User) {
          User.updateProfile = async function (uid, data, extraFields) {
              let fields = [
                  'username', 'email', 'fullname', 'website', 'location',
                  'groupTitle', 'birthday', 'signature', 'aboutme',
      Severity: Minor
      Found in src/user/profile.js - About 2 days to fix

      Cognitive Complexity

      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

      A method's cognitive complexity is based on a few simple rules:

      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
      • Code is considered more complex for each "break in the linear flow of the code"
      • Code is considered more complex when "flow breaking structures are nested"

      Further reading

      Function exports has 459 lines of code (exceeds 75 allowed). Consider refactoring.
      Open

      module.exports = function (Messaging) {
          Messaging.getRoomData = async (roomId, fields = []) => {
              const roomData = await Messaging.getRoomsData([roomId], fields);
              return roomData[0];
          };
      Severity: Major
      Found in src/messaging/rooms.js - About 2 days to fix

        Function exports has a Cognitive Complexity of 105 (exceeds 10 allowed). Consider refactoring.
        Open

        module.exports = function (middleware) {
            middleware.processRender = function processRender(req, res, next) {
                // res.render post-processing, modified from here: https://gist.github.com/mrlannigan/5051687
                const { render } = res;
        
        
        Severity: Minor
        Found in src/middleware/render.js - About 2 days to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Function exports has a Cognitive Complexity of 97 (exceeds 10 allowed). Consider refactoring.
        Open

        module.exports = function (Topics) {
            Topics.createTags = async function (tags, tid, timestamp) {
                if (!Array.isArray(tags) || !tags.length) {
                    return;
                }
        Severity: Minor
        Found in src/topics/tags.js - About 1 day to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Function exports has 418 lines of code (exceeds 75 allowed). Consider refactoring.
        Open

        module.exports = function (middleware) {
            middleware.processRender = function processRender(req, res, next) {
                // res.render post-processing, modified from here: https://gist.github.com/mrlannigan/5051687
                const { render } = res;
        
        
        Severity: Major
        Found in src/middleware/render.js - About 1 day to fix

          Function exports has a Cognitive Complexity of 95 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (module) {
              const utils = require('../../utils');
              const helpers = require('./helpers');
              const dbHelpers = require('../helpers');
          
          
          Severity: Minor
          Found in src/database/redis/sorted.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 87 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (utils, Benchpress, relative_path) {
              Benchpress.setGlobal('true', true);
              Benchpress.setGlobal('false', false);
              const oneDayInMs = 24 * 60 * 60 * 1000;
          
          
          Severity: Minor
          Found in public/src/modules/helpers.common.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 87 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (middleware) {
              async function authenticate(req, res) {
                  async function finishLogin(req, user) {
                      const loginAsync = util.promisify(req.login).bind(req);
                      await loginAsync(user, { keepSessionInfo: true });
          Severity: Minor
          Found in src/middleware/user.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 85 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (Posts) {
              const votesInProgress = {};
          
              Posts.upvote = async function (pid, uid) {
                  if (meta.config['reputation:disabled']) {
          Severity: Minor
          Found in src/posts/votes.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 84 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (Messaging) {
              Messaging.getRoomData = async (roomId, fields = []) => {
                  const roomData = await Messaging.getRoomsData([roomId], fields);
                  return roomData[0];
              };
          Severity: Minor
          Found in src/messaging/rooms.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 82 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (Topics) {
              Topics.create = async function (data) {
                  // This is an internal method, consider using Topics.post instead
                  const timestamp = data.timestamp || Date.now();
          
          
          Severity: Minor
          Found in src/topics/create.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has a Cognitive Complexity of 82 (exceeds 10 allowed). Consider refactoring.
          Open

          module.exports = function (Posts) {
              Posts.getQueuedPosts = async (filter = {}, options = {}) => {
                  options = { metadata: true, ...options }; // defaults
                  let postData = _.cloneDeep(cache.get('post-queue'));
                  if (!postData) {
          Severity: Minor
          Found in src/posts/queue.js - About 1 day to fix

          Cognitive Complexity

          Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

          A method's cognitive complexity is based on a few simple rules:

          • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
          • Code is considered more complex for each "break in the linear flow of the code"
          • Code is considered more complex when "flow breaking structures are nested"

          Further reading

          Function exports has 353 lines of code (exceeds 75 allowed). Consider refactoring.
          Open

          module.exports = function (Posts) {
              Posts.getQueuedPosts = async (filter = {}, options = {}) => {
                  options = { metadata: true, ...options }; // defaults
                  let postData = _.cloneDeep(cache.get('post-queue'));
                  if (!postData) {
          Severity: Major
          Found in src/posts/queue.js - About 1 day to fix

            Function exports has 341 lines of code (exceeds 75 allowed). Consider refactoring.
            Open

            module.exports = function (module) {
                const helpers = require('./helpers');
            
                module.setObject = async function (key, data) {
                    if (!key || !data) {
            Severity: Major
            Found in src/database/postgres/hash.js - About 1 day to fix

              Function exports has a Cognitive Complexity of 78 (exceeds 10 allowed). Consider refactoring.
              Open

              module.exports = function (Groups) {
                  Groups.update = async function (groupName, values) {
                      const exists = await db.exists(`group:${groupName}`);
                      if (!exists) {
                          throw new Error('[[error:no-group]]');
              Severity: Minor
              Found in src/groups/update.js - About 1 day to fix

              Cognitive Complexity

              Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

              A method's cognitive complexity is based on a few simple rules:

              • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
              • Code is considered more complex for each "break in the linear flow of the code"
              • Code is considered more complex when "flow breaking structures are nested"

              Further reading

              Function exports has a Cognitive Complexity of 74 (exceeds 10 allowed). Consider refactoring.
              Open

              module.exports = function (module) {
                  const helpers = require('./helpers');
              
                  module.setObject = async function (key, data) {
                      if (!key || !data) {
              Severity: Minor
              Found in src/database/postgres/hash.js - About 1 day to fix

              Cognitive Complexity

              Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

              A method's cognitive complexity is based on a few simple rules:

              • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
              • Code is considered more complex for each "break in the linear flow of the code"
              • Code is considered more complex when "flow breaking structures are nested"

              Further reading

              File flags.js has 871 lines of code (exceeds 500 allowed). Consider refactoring.
              Open

              'use strict';
              
              const _ = require('lodash');
              const winston = require('winston');
              const validator = require('validator');
              Severity: Major
              Found in src/flags.js - About 1 day to fix

                Function exports has a Cognitive Complexity of 72 (exceeds 10 allowed). Consider refactoring.
                Open

                module.exports = function (Topics) {
                    const topicTools = {};
                    Topics.tools = topicTools;
                
                    topicTools.delete = async function (tid, uid) {
                Severity: Minor
                Found in src/topics/tools.js - About 1 day to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Severity
                Category
                Status
                Source
                Language