syl20bnr / spacemacs

A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
http://spacemacs.org
GNU General Public License v3.0
23.57k stars 4.9k forks source link

Highlight ruby debugger lines appropriately #16358

Closed bostonaholic closed 1 month ago

bostonaholic commented 3 months ago

Fixes #16357

The intended behavior is to highlight lines that are calling a ruby debugger. The purpose is to warn developers that might push code to production with a debugger enabled. The change expands the matching regex to only highlight lines where the debugger is the first word on a line.

There are cases in which the current regex is highlighting lines as a false-positive. I first noticed this in my Gemfile when it was highlighting the line below:

gem 'pry-byebug'

Other cases include: commented lines and defined function names that match a known debugger.

See below for cases in which the line should and should not be highlighted.

# frozen_string_literal: true

# This is a test class for ruby debugger highlighting
class Test
  # This line below should not be highlighted
  def byebug
    byebug # this line should be highlighted
    # byebug This comment should not be highlighted

    binding.irb # this line should be highlighted
    # binding.irb this line should not be highlighted

    binding.pry # this line should be highlighted
    # binding.pry this line should not be highlighted
  end
end

Before:

Screenshot 2024-04-04 at 9 08 15 AM

After:

Screenshot 2024-04-04 at 9 12 23 AM
bostonaholic commented 1 month ago

@syl20bnr Any chance someone could take a look at this improvement?

smile13241324 commented 1 month ago

Looks good