All Posts

Release: DeepSource Ruby analyzer is now in GA

Release: DeepSource Ruby analyzer is now in GA

Today, we are excited to announce that the DeepSource Ruby analyzer is out of beta. Apart from increased stability, the analyzer now detects over 260 issues, from around 170 when it was released in beta.

And the best part, you can use DeepSource to fix over 70 different issues automatically using Autofix, or to transform your whole codebase using Transformers.

Using the Ruby analyzer

To start analyzing your Ruby code, just enable the ruby analyzer in your .deepsource.toml file, and you are good to go.

Sample configuration


version = 1

test_patterns = [
  "test/**",
  "*_test.rb"
]

exclude_patterns = [
  "vendor/**",
  "**/examples/**"
]

[[analyzers]]
name = "ruby"
enabled = true

Fixing your code using Autofix

Over 70 issues can be autofixed using the DeepSource Ruby Autofix. Look for the Autofix badge in the Issues tab.

Transforming your code using Transformers

You can also use the available Ruby Transformers to automatically transform your codebase. We currently support both StandardRB and RuboCop.

Sample configuration to use both Ruby analyzers & Transformers

version = 1

test_patterns = [
  "test/**",
  "*_test.rb"
]

exclude_patterns = [
  "vendor/**",
  "**/examples/**"
]

[[analyzers]]
name = "ruby"
enabled = true

[[transformers]]
name = "standardrb"
enabled = true

Issues detected by the Ruby analyzer

We currently support over 260 issues in your Ruby code, across categories like bug risks, anti-patterns, security vulnerabilities, and style issues. Here's some of them to give you an idea:

Bug risks:

  • Bad ordering of magic comments
  • while/until detected in begin block
  • Invalid construction of percent string literal

Security issues:

  • Use of eval detected
  • Insecure JSON method detected
  • Use of insecure YAML method detected

Antipatterns:

  • Use each_with_object instead of inject/reduce
  • Check for Bignum or Fixnum detected
  • if/elsif/unless branches without a body detected

We're very excited about this release, and hope that this will help you avoid many issues in your code, and make writing Ruby even more fun! Head over to the docs or tell us what you think!

Get started with DeepSource

DeepSource is free forever for small teams and open-source projects. Start analyzing your code in less than 2 minutes.

Newsletter

Read product updates, company announcements, how we build DeepSource, what we think about good code, and more.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.