Redefine rake routes to add your own custom tag in Rails

by Deepak,

WTFs per minute

The only valid measurement of code quality is: WTFs/minute

Now Rails has this nifty rake task called rake notes. You can always see notes for a custom tag by:

~> rake notes:custom ANNOTATION=WTF

But rake notes by default only shows notes for OPTIMIZE, FIXME and TODO The Rakefile for changing those defaults is

# for re-defining the Rake task
# otherwise the previous Rake task is still called
task(:notes).clear

desc "Enumerate all annotations
      (use notes:optimize, :fixme, :todo, :wtf for focus)"
task :notes do
  SourceAnnotationExtractor.enumerate "OPTIMIZE|FIXME|TODO|WTF",
                                      :tag => true
end

namespace :notes do
  task(:wtf).clear
  task :wtf do
    SourceAnnotationExtractor.enumerate "WTF", :tag => true
  end
end

Here we have redefined rake notes. The only gotcha is to remember to clear the old rake task by calling task(:notes).clear

For other customizations eg. search the spec folder also you will have to monkey-patch the SourceAnnotationExtractor class

PS: also check this Stackoverflow thread for some fun picks

More articles

Ruby's JIT Journey: From MJIT to YJIT to ZJIT

A walkthrough of Ruby’s JIT history and the design ideas behind MJIT, YJIT, and ZJIT

Read more

Evaluating LLM Agents: Confidence Through Pre-Production Testing

How to design practical pre-production testing for LLM systems—using datasets, evaluators, and experiments to catch regressions before shipping.

Read more

Ready to Build Something Amazing?

Codemancers can bring your vision to life and help you achieve your goals