jphastings/rubyzip

View on GitHub

Showing 44 of 44 total issues

Method get_decompressor has 27 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    def get_decompressor(compression_method = nil)
      case
      when @current_entry.nil?
        ::Zip::NullDecompressor
      when @current_entry.compression_method == ::Zip::Entry::STORED
Severity: Minor
Found in lib/zip/input_stream.rb - About 1 hr to fix

    Method initialize has 27 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

      def initialize
        super()
        set_usize(400, 256)
        set_title("rubyzip")
        signal_connect(Gtk::Window::SIGNAL_DESTROY) { Gtk.main_quit }
    Severity: Minor
    Found in samples/gtkRubyzip.rb - About 1 hr to fix

      Method read has 26 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

            def read(number_of_bytes = nil, buf = '')
              @decompressor.password = @password if !@password.nil? and @decompressor.respond_to? :password=
              tbuf = if @output_buffer.bytesize > 0
                       if number_of_bytes <= @output_buffer.bytesize
                         @output_buffer.slice!(0, number_of_bytes)
      Severity: Minor
      Found in lib/zip/ioextras/abstract_input_stream.rb - About 1 hr to fix

        Method gets has 26 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

              def gets(a_sep_string = $/, number_of_bytes = nil)
                @lineno = @lineno.next
        
                if number_of_bytes.respond_to?(:to_int)
                  number_of_bytes = number_of_bytes.to_int
        Severity: Minor
        Found in lib/zip/ioextras/abstract_input_stream.rb - About 1 hr to fix

          Method create_symlink has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
          Open

              def create_symlink(dest_path)
                stat = nil
                begin
                  stat = ::File.lstat(dest_path)
                rescue Errno::ENOENT
          Severity: Minor
          Found in lib/zip/entry.rb - About 55 mins 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

          Method get_decompressor has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
          Open

              def get_decompressor(compression_method = nil)
                case
                when @current_entry.nil?
                  ::Zip::NullDecompressor
                when @current_entry.compression_method == ::Zip::Entry::STORED
          Severity: Minor
          Found in lib/zip/input_stream.rb - About 55 mins 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

          Method sysread has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
          Open

              def sysread(number_of_bytes = nil, buf = '')
                readEverything = number_of_bytes.nil?
                while readEverything || @output_buffer.bytesize < number_of_bytes
                  break if internal_input_finished?
                  @output_buffer << internal_produce_input(buf)
          Severity: Minor
          Found in lib/zip/inflater.rb - About 55 mins 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

          Method save_splited_part has 6 arguments (exceeds 4 allowed). Consider refactoring.
          Open

                def save_splited_part(zip_file, partial_zip_file_name, zip_file_size, szip_file_index, segment_size, segment_count)
          Severity: Minor
          Found in lib/zip/file.rb - About 45 mins to fix

            Method initialize has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
            Open

                def initialize(*args)
                  name = args[1] || ''
                  check_name(name)
            
                  set_default_vars_values
            Severity: Minor
            Found in lib/zip/entry.rb - About 45 mins 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

            Method split has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
            Open

                  def split(zip_file_name, segment_size = MAX_SEGMENT_SIZE, delete_zip_file = true, partial_zip_file_name = nil)
                    raise Error, "File #{zip_file_name} not found" unless ::File.exist?(zip_file_name)
                    raise Errno::ENOENT, zip_file_name unless ::File.readable?(zip_file_name)
                    zip_file_size = ::File.size(zip_file_name)
                    segment_size  = get_segment_size_for_split(segment_size)
            Severity: Minor
            Found in lib/zip/file.rb - About 45 mins 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

            Method extract_files has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
            Open

              def extract_files
                selected_items = []
                unselected_items = []
                lv_item = entry_list_view.first_child
                while (lv_item)
            Severity: Minor
            Found in samples/qtzip.rb - About 45 mins 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

            Method gather_fileinfo_from_srcpath has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
            Open

                def gather_fileinfo_from_srcpath(src_path) # :nodoc:
                  stat   = file_stat(src_path)
                  @ftype = case stat.ftype
                           when 'file'
                             if name_is_directory?
            Severity: Minor
            Found in lib/zip/entry.rb - About 45 mins 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

            Method put_next_entry has 5 arguments (exceeds 4 allowed). Consider refactoring.
            Open

                def put_next_entry(entry_name, comment = nil, extra = nil, compression_method = Entry::DEFLATED, level = Zip.default_compression)
            Severity: Minor
            Found in lib/zip/output_stream.rb - About 35 mins to fix

              Method pack_local_entry has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
              Open

                  def pack_local_entry
                    zip64 = @extra['Zip64']
                    [::Zip::LOCAL_ENTRY_SIGNATURE,
                     @version_needed_to_extract, # version needed to extract
                     @gp_flags, # @gp_flags                  ,
              Severity: Minor
              Found in lib/zip/entry.rb - About 35 mins 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

              Method merge has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
              Open

                  def merge(binstr)
                    return if binstr.empty?
                    size, content = initial_parse(binstr)
                    # size: 0 for central directory. 4 for local header
                    return if (!size || size == 0)
              Severity: Minor
              Found in lib/zip/extra_field/old_unix.rb - About 35 mins 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

              Method writeEntries has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
              Open

                def writeEntries(entries, path, io)
              
                  entries.each { |e|
                    zipFilePath = path == "" ? e : File.join(path, e)
                    diskFilePath = File.join(@inputDir, zipFilePath)
              Severity: Minor
              Found in samples/example_recursive.rb - About 35 mins 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

              Method foreach has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
              Open

                    def foreach(aDirectoryName)
                      unless @file.stat(aDirectoryName).directory?
                        raise Errno::ENOTDIR, aDirectoryName
                      end
                      path = @file.expand_path(aDirectoryName)
              Severity: Minor
              Found in lib/zip/filesystem.rb - About 35 mins 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

              Method find has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
              Open

                  def self.find(path, zipFilePattern = /\.zip$/i)
                    Find.find(path) {
                  |fileName|
                  yield(fileName)
                  if zipFilePattern.match(fileName)  && File.file?(fileName)
              Severity: Minor
              Found in samples/zipfind.rb - About 25 mins 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

              Method sysread has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
              Open

                  def sysread(number_of_bytes = nil, buf = '')
                    if input_finished?
                      has_returned_empty_string_val = @has_returned_empty_string
                      @has_returned_empty_string = true
                      return '' unless has_returned_empty_string_val
              Severity: Minor
              Found in lib/zip/pass_thru_decompressor.rb - About 25 mins 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

              Method glob has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
              Open

                  def glob(pattern, flags = ::File::FNM_PATHNAME|::File::FNM_DOTMATCH)
                    entries.map do |entry|
                      next nil unless ::File.fnmatch(pattern, entry.name.chomp('/'), flags)
                      yield(entry) if block_given?
                      entry
              Severity: Minor
              Found in lib/zip/entry_set.rb - About 25 mins 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