appbot/kms_rails

View on GitHub

Showing 182 of 182 total issues

KmsRails::Core#self.to64 has the variable name 'v'
Open

      data_obj.map { |k,v| [k, Base64.strict_encode64(v)] }.to_h
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Variable Name is a variable name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#self.to64 has the variable name 'k'
Open

      data_obj.map { |k,v| [k, Base64.strict_encode64(v)] }.to_h
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Variable Name is a variable name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#encrypt64 has the name 'encrypt64'
Open

    def encrypt64(data)
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Method Name is a method name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#decrypt64 has the name 'decrypt64'
Open

    def decrypt64(data_obj)
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Method Name is a method name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#self.to64 has the name 'to64'
Open

    def self.to64(data_obj)
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Method Name is a method name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#self.from64 has the variable name 'v'
Open

      data_obj.map { |k,v| [k, Base64.strict_decode64(v)] }.to_h
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Variable Name is a variable name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

KmsRails::Core#self.from64 has the name 'from64'
Open

    def self.from64(data_obj)
Severity: Minor
Found in lib/kms_rails/core.rb by reek

An Uncommunicative Method Name is a method name that doesn't communicate its intent well enough.

Poor names make it hard for the reader to build a mental picture of what's going on in the code. They can also be mis-interpreted; and they hurt the flow of reading, because the reader must slow down to interpret the names.

Space inside { missing.
Open

      args = {key_id: key_id, key_spec: 'AES_256'}
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

Checks that braces used for hash literals have or don't have surrounding space depending on configuration.

Example: EnforcedStyle: space

# The `space` style enforces that hash literals have
# surrounding space.

# bad
h = {a: 1, b: 2}

# good
h = { a: 1, b: 2 }

Example: EnforcedStyle: no_space

# The `no_space` style enforces that hash literals have
# no surrounding space.

# bad
h = { a: 1, b: 2 }

# good
h = {a: 1, b: 2}

Example: EnforcedStyle: compact

# The `compact` style normally requires a space inside
# hash braces, with the exception that successive left
# braces or right braces are collapsed together in nested hashes.

# bad
h = { a: { b: 2 } }

# good
h = { a: { b: 2 }}

Line is too long. [84/80]
Open

      aws_kms.decrypt(**apply_context(args, @context_key, @context_value)).plaintext
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

Line is too long. [122/80]
Open

        kms_args([field_number], key_id: key_id, msgpack: msgpack, context_key: context_key, context_value: context_value)
Severity: Minor
Found in lib/kms_rails/active_job.rb by rubocop

Line is too long. [103/80]
Open

      def kms_attr(field, key_id:, retain: false, msgpack: false, context_key: nil, context_value: nil)
Severity: Minor
Found in lib/kms_rails/active_record.rb by rubocop

Line is too long. [143/80]
Open

          raise RuntimeError, "Field '#{real_field}' must exist to retrieve encrypted data" unless self.class.column_names.include?(real_field)
Severity: Minor
Found in lib/kms_rails/active_record.rb by rubocop

Use %q only for strings that contain both single quotes and double quotes.
Open

  spec.description   = %q{Quickly add KMS encryption and decryption to your ActiveRecord model attributes and ActiveJob parameters. Improves upon kms_attrs with ActiveJob support, more efficient binary serialization and a test suite.}
Severity: Minor
Found in kms_rails.gemspec by rubocop

Prefer single-quoted strings when you don't need string interpolation or special symbols.
Open

require "irb"
Severity: Minor
Found in bin/console by rubocop

Checks if uses of quotes match the configured preference.

Example: EnforcedStyle: single_quotes (default)

# bad
"No special symbols"
"No string interpolation"
"Just text"

# good
'No special symbols'
'No string interpolation'
'Just text'
"Wait! What's #{this}!"

Example: EnforcedStyle: double_quotes

# bad
'Just some text'
'No special chars or interpolation'

# good
"Just some text"
"No special chars or interpolation"
"Every string in #{project} uses double_quotes"

Space missing after comma.
Open

      data_obj.map { |k,v| [k, Base64.strict_decode64(v)] }.to_h
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

Checks for comma (,) not followed by some kind of space.

Example:

# bad
[1,2]
{ foo:bar,}

# good
[1, 2]
{ foo:bar, }

Space inside } missing.
Open

      {iv: iv, data: cipher.update(data.to_s) + cipher.final}
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

Checks that braces used for hash literals have or don't have surrounding space depending on configuration.

Example: EnforcedStyle: space

# The `space` style enforces that hash literals have
# surrounding space.

# bad
h = {a: 1, b: 2}

# good
h = { a: 1, b: 2 }

Example: EnforcedStyle: no_space

# The `no_space` style enforces that hash literals have
# no surrounding space.

# bad
h = { a: 1, b: 2 }

# good
h = {a: 1, b: 2}

Example: EnforcedStyle: compact

# The `compact` style normally requires a space inside
# hash braces, with the exception that successive left
# braces or right braces are collapsed together in nested hashes.

# bad
h = { a: { b: 2 } }

# good
h = { a: { b: 2 }}

Space inside } missing.
Open

      args = {key_id: key_id, key_spec: 'AES_256'}
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

Checks that braces used for hash literals have or don't have surrounding space depending on configuration.

Example: EnforcedStyle: space

# The `space` style enforces that hash literals have
# surrounding space.

# bad
h = {a: 1, b: 2}

# good
h = { a: 1, b: 2 }

Example: EnforcedStyle: no_space

# The `no_space` style enforces that hash literals have
# no surrounding space.

# bad
h = { a: 1, b: 2 }

# good
h = {a: 1, b: 2}

Example: EnforcedStyle: compact

# The `compact` style normally requires a space inside
# hash braces, with the exception that successive left
# braces or right braces are collapsed together in nested hashes.

# bad
h = { a: { b: 2 } }

# good
h = { a: { b: 2 }}

Missing top-level class documentation comment.
Open

  class Core
Severity: Minor
Found in lib/kms_rails/core.rb by rubocop

This cop checks for missing top-level documentation of classes and modules. Classes with no body are exempt from the check and so are namespace modules - modules that have nothing in their bodies except classes, other modules, or constant definitions.

The documentation requirement is annulled if the class or module has a "#:nodoc:" comment next to it. Likewise, "#:nodoc: all" does the same for all its children.

Example:

# bad
class Person
  # ...
end

# good
# Description/Explanation of Person class
class Person
  # ...
end

Line is too long. [96/80]
Open

      def kms_args(field_numbers, key_id:, msgpack: false, context_key: nil, context_value: nil)
Severity: Minor
Found in lib/kms_rails/active_job.rb by rubocop

Line is too long. [158/80]
Open

          raise RuntimeError, "Field '#{field}' must not be a real column, '#{real_field}' is the real column" if self.class.column_names.include?(field.to_s)
Severity: Minor
Found in lib/kms_rails/active_record.rb by rubocop
Severity
Category
Status
Source
Language