Showing 16 of 16 total issues
Class Control
has 26 methods (exceeds 20 allowed). Consider refactoring. Open
class Control
delegate :config, :logger, :daemon, :process, :to => :Protein
def stop
daemon_stop
Class Process
has 25 methods (exceeds 20 allowed). Consider refactoring. Open
class Process
delegate :config, :logger, :redis, :callbacks, :to => :Protein
attr_accessor :running
attr_accessor :can_fork
Class CollectionItem
has 24 methods (exceeds 20 allowed). Consider refactoring. Open
class CollectionItem
delegate :config, :logger, :redis, :to => :Protein
attr_reader :collection
def self.dummy
File process.rb
has 274 lines of code (exceeds 250 allowed). Consider refactoring. Open
module Protein
class Process
delegate :config, :logger, :redis, :callbacks, :to => :Protein
attr_accessor :running
attr_accessor :can_fork
File collection.rb
has 271 lines of code (exceeds 250 allowed). Consider refactoring. Open
require 'protein/worker/lock'
require 'protein/uuid'
module Protein
class Worker
Class Job
has 23 methods (exceeds 20 allowed). Consider refactoring. Open
class Job
class << self
delegate :config, :logger, :redis, :to => :Protein
def default_middleware
Class Queue
has 21 methods (exceeds 20 allowed). Consider refactoring. Open
class Queue
class << self
delegate :config, :redis, :to => :Protein
def blpop(timeout = 0)
Method reopen
has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring. Open
def reopen
exception_handling do
unless stdout?
close unless closed?
if @log_file.respond_to?(:write)
- Read upRead up
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
Method start_thread
has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring. Open
def start_thread(worker, job)
# обрабатываем задачи, пока текущий процесс может их обрабатывать (см. stale?)
catch(:stop_thread) do
while job
job_care(job) do
- Read upRead up
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
Method add
has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring. Open
def add(severity, message = nil, progname = nil, &block)
exception_handling do
return if @level > severity
reopen if closed?
message = message || (block && block.call) || progname
- Read upRead up
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
Method all
has 27 lines of code (exceeds 25 allowed). Consider refactoring. Open
def self.all
@all ||= {
:log_level => :debug,
:log_file => STDOUT,
Method fork
has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. Open
def fork
before_spawn
if fork = kernel_fork
# in parent
after_spawn(fork)
- Read upRead up
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
Method constantize
has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. Open
def constantize(camel_cased_word)
names = camel_cased_word.split('::')
names.shift if names.empty? || names.first.empty?
constant = Object
- Read upRead up
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
Method after_fork_callback
has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. Open
def after_fork_callback(env)
return unless self.defined?
Protein.callbacks.after_fork do
if defined?(ActiveRecord::Base) && ActiveRecord::Base.connected?
ActiveRecord::Base.connection.reconnect!
- Read upRead up
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
Method release_lock
has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. Open
def release_lock
yield_result = block_given? ? yield : nil
lock_result = lock.release
block_given? ? yield_result : lock_result
rescue => e
- Read upRead up
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
Method get_lock
has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring. Open
def get_lock
lock.acquire do |id|
# TODO избавиться
# если дождались свободного места в пуле,
# но во время ожидания пришла команда на остановку процесса
- Read upRead up
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"