aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorAnnie-Claude Côté <hello@annie.codes>2018-06-26 17:12:07 -0400
committerAnnie-Claude Côté <hello@annie.codes>2018-07-04 14:30:14 -0400
commitedf5da4b6c14eddc1fb540d8e7eec97c23baf12f (patch)
treeaf00c95570544a08764983477253132f9768b4bb /railties
parent21f7dadbffdf4532e4401f1cbfa1771a8e5750da (diff)
downloadrails-edf5da4b6c14eddc1fb540d8e7eec97c23baf12f.tar.gz
rails-edf5da4b6c14eddc1fb540d8e7eec97c23baf12f.tar.bz2
rails-edf5da4b6c14eddc1fb540d8e7eec97c23baf12f.zip
Port Annotations rake task to use Rails::NotesCommand
* Invokes the notes Rails::Command and passes the rake task ENV variables as annotations options to it * Adds a deprecation warning for unsupported commands * Gets rid of reference to ENV["SOURCE_ANNOTATION_DIRECTORIES"] in SourceAnnotationExtractor since its now dealt with in the NotesCommand * Gets rid of rake desc for each rake notes task so they are not documented while using `rails -T` or `rails --help`
Diffstat (limited to 'railties')
-rw-r--r--railties/lib/rails/source_annotation_extractor.rb9
-rw-r--r--railties/lib/rails/tasks/annotations.rake12
2 files changed, 14 insertions, 7 deletions
diff --git a/railties/lib/rails/source_annotation_extractor.rb b/railties/lib/rails/source_annotation_extractor.rb
index 884469e20e..2d66a4dc7d 100644
--- a/railties/lib/rails/source_annotation_extractor.rb
+++ b/railties/lib/rails/source_annotation_extractor.rb
@@ -20,7 +20,7 @@ module Rails
class SourceAnnotationExtractor
class Annotation < Struct.new(:line, :tag, :text)
def self.directories
- @@directories ||= %w(app config db lib test) + (ENV["SOURCE_ANNOTATION_DIRECTORIES"] || "").split(",")
+ @@directories ||= %w(app config db lib test)
end
# Registers additional directories to be included
@@ -54,6 +54,13 @@ module Rails
s << "[#{tag}] " if options[:tag]
s << text
end
+
+ # Used in annotations.rake
+ #:nodoc:
+ def self.notes_task_deprecation_warning
+ ActiveSupport::Deprecation.warn("This rake task is deprecated and will be removed in Rails 6.1. \nRefer to `rails notes --help` for more information.\n")
+ puts "\n"
+ end
end
# Prints all annotations with tag +tag+ under the root directories +app+,
diff --git a/railties/lib/rails/tasks/annotations.rake b/railties/lib/rails/tasks/annotations.rake
index 60bcdc5e1b..65af778a15 100644
--- a/railties/lib/rails/tasks/annotations.rake
+++ b/railties/lib/rails/tasks/annotations.rake
@@ -2,21 +2,21 @@
require "rails/source_annotation_extractor"
-desc "Enumerate all annotations (use notes:optimize, :fixme, :todo for focus)"
task :notes do
- Rails::SourceAnnotationExtractor.enumerate "OPTIMIZE|FIXME|TODO", tag: true
+ Rails::SourceAnnotationExtractor::Annotation.notes_task_deprecation_warning
+ Rails::Command.invoke :notes
end
namespace :notes do
["OPTIMIZE", "FIXME", "TODO"].each do |annotation|
- # desc "Enumerate all #{annotation} annotations"
task annotation.downcase.intern do
- Rails::SourceAnnotationExtractor.enumerate annotation
+ Rails::SourceAnnotationExtractor::Annotation.notes_task_deprecation_warning
+ Rails::Command.invoke :notes, ["--annotations", annotation]
end
end
- desc "Enumerate a custom annotation, specify with ANNOTATION=CUSTOM"
task :custom do
- Rails::SourceAnnotationExtractor.enumerate ENV["ANNOTATION"]
+ Rails::SourceAnnotationExtractor::Annotation.notes_task_deprecation_warning
+ Rails::Command.invoke :notes, ["--annotations", ENV["ANNOTATION"]]
end
end