diaspora/diaspora

View on GitHub

Showing 214 of 4,306 total issues

File posix-bracket-expressions.js has 883 lines of code (exceeds 250 allowed). Consider refactoring.
Open

// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later

var PosixBracketExpressions = {
  // source: https://github.com/ruby/ruby/blob/ruby_2_4/enc/unicode/9.0.0/name2ctype.h#L3544
  word: "\\u0030-\\u0039" +
Severity: Major
Found in lib/assets/javascripts/posix-bracket-expressions.js - About 2 days to fix

    Class User has 63 methods (exceeds 20 allowed). Consider refactoring.
    Open

    class User < ApplicationRecord
      include AuthenticationToken
      include Connecting
      include Querying
      include SocialActions
    Severity: Major
    Found in app/models/user.rb - About 1 day to fix

      File user.rb has 449 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      class User < ApplicationRecord
        include AuthenticationToken
        include Connecting
        include Querying
        include SocialActions
      Severity: Minor
      Found in app/models/user.rb - About 6 hrs to fix

        Assignment Branch Condition size for index is too high. [53.49/20]
        Open

          def index
            conditions = {:recipient_id => current_user.id}
            if params[:type] && types.has_key?(params[:type])
              conditions[:type] = types[params[:type]]
            end

        This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

        File publisher_view.js has 378 lines of code (exceeds 250 allowed). Consider refactoring.
        Open

        // @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
        
        /*   Copyright (c) 2010-2012, Diaspora Inc.  This file is
         *   licensed under the Affero General Public License version 3 or later.  See
         *   the COPYRIGHT file.
        Severity: Minor
        Found in app/assets/javascripts/app/views/publisher_view.js - About 5 hrs to fix

          Assignment Branch Condition size for legacy_create is too high. [45.93/20]
          Open

            def legacy_create
              photo_params = params.require(:photo).permit(:pending, :set_profile_photo, aspect_ids: [])
              if photo_params[:aspect_ids] == "all"
                photo_params[:aspect_ids] = current_user.aspects.map(&:id)
              elsif photo_params[:aspect_ids].is_a?(Hash)

          This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

          Class Person has 32 methods (exceeds 20 allowed). Consider refactoring.
          Open

          class Person < ApplicationRecord
            include Diaspora::Fields::Guid
          
            # NOTE API V1 to be extracted
            acts_as_api
          Severity: Minor
          Found in app/models/person.rb - About 4 hrs to fix

            Assignment Branch Condition size for index is too high. [40.22/20]
            Open

              def index
                @post_type = :photos
                @person = Person.find_by_guid(params[:person_id])
                authenticate_user! if @person.try(:remote?) && !user_signed_in?
                @presenter = PersonPresenter.new(@person, current_user)

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for perform is too high. [40.22/20]
            Open

                def perform
                  # Queue users for removal due to inactivity
                  if AppConfig.settings.maintenance.remove_old_users.enable?
                    users = User.where("last_seen < ? and locked_at is null and remove_after is null", 
                      Time.now - (AppConfig.settings.maintenance.remove_old_users.after_days.to_i).days)

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for new is too high. [39.67/20]
            Open

              def new
                if !params[:modal] && !session[:mobile_view] && request.format.html?
                  redirect_to conversations_path
                  return
                end

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for destroy is too high. [37.7/20]
            Open

              def destroy
                aspect = current_user.aspects.joins(:aspect_memberships).where(aspect_memberships: {id: params[:id]}).first
                contact = current_user.contacts.joins(:aspect_memberships).where(aspect_memberships: {id: params[:id]}).first
            
                raise ActiveRecord::RecordNotFound unless aspect.present? && contact.present?

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for mobile_reshare_icon is too high. [36.03/20]
            Open

              def mobile_reshare_icon(post)
                if (post.public? || reshare?(post)) && (user_signed_in? && post.author != current_user.person)
                  absolute_root = reshare?(post) ? post.absolute_root : post
            
                  if absolute_root && absolute_root.author != current_user.person
            Severity: Minor
            Found in app/helpers/mobile_helper.rb by rubocop

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for contacts is too high. [36.19/20]
            Open

              def contacts
                respond_to do |format|
                  format.json { head :not_acceptable }
            
                  format.any do

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Assignment Branch Condition size for create is too high. [36.62/20]
            Open

              def create
                emails = inviter_params[:emails].split(",").map(&:strip).uniq
            
                valid_emails, invalid_emails = emails.partition {|email| valid_email?(email) }
            
            

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Block has too many lines. [63/25]
            Open

            namespace :migrations do
              task :upload_photos_to_s3 do
                require File.join(File.dirname(__FILE__), '..', '..', 'config', 'environment')
                puts AppConfig.environment.s3.key
            
            
            Severity: Minor
            Found in lib/tasks/migrations.rake by rubocop

            This cop checks if the length of a block exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable.

            Assignment Branch Condition size for index is too high. [35.19/20]
            Open

              def index
                if params[:q] && params[:q].length > 1
                  params[:q].gsub!("#", "")
                  params[:limit] = !params[:limit].blank? ? params[:limit].to_i : 10
                  @tags = ActsAsTaggableOn::Tag.autocomplete(params[:q]).limit(params[:limit] - 1)
            Severity: Minor
            Found in app/controllers/tags_controller.rb by rubocop

            This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

            Class AuthorizationsController has 28 methods (exceeds 20 allowed). Consider refactoring.
            Open

                class AuthorizationsController < ApplicationController
                  rescue_from Rack::OAuth2::Server::Authorize::BadRequest do |e|
                    logger.info e.backtrace[0, 10].join("\n")
                    error, _description = e.message.split(" :: ")
                    handle_params_error(error, "The request was malformed: please double check the client id and redirect uri.")
            Severity: Minor
            Found in app/controllers/api/openid_connect/authorizations_controller.rb - About 3 hrs to fix

              Class PostPresenter has 28 methods (exceeds 20 allowed). Consider refactoring.
              Open

              class PostPresenter < BasePresenter
                include PostsHelper
                include MetaDataHelper
              
                attr_accessor :post
              Severity: Minor
              Found in app/presenters/post_presenter.rb - About 3 hrs to fix

                Assignment Branch Condition size for read_all is too high. [34.19/20]
                Open

                  def read_all
                    current_type = types[params[:type]]
                    notifications = Notification.where(recipient_id: current_user.id, unread: true)
                    notifications = notifications.where(type: current_type) if params[:type]
                    notifications.update_all(unread: false)

                This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

                Assignment Branch Condition size for index is too high. [34.29/20]
                Open

                  def index
                    @visibilities = ConversationVisibility.includes(:conversation)
                                                          .order("conversations.updated_at DESC")
                                                          .where(person_id: current_user.person_id)
                                                          .paginate(page: params[:page], per_page: 15)

                This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

                Severity
                Category
                Status
                Source