DEV: Verbose mode for `posts:inline_uploads` rake task.

DEV: Verbose mode for posts:inline_uploads rake task.

diff --git a/Gemfile b/Gemfile
index d0878a8..19deecf 100644
--- a/Gemfile
+++ b/Gemfile
@@ -144,6 +144,7 @@ group :test, :development do
   gem 'byebug', require: ENV['RM_INFO'].nil?
   gem 'rubocop', require: false
   gem 'parallel_tests'
+  gem 'diffy', require: false
 end
 
 group :development do
diff --git a/Gemfile.lock b/Gemfile.lock
index db8907d..0fa3580 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -90,6 +90,7 @@ GEM
     crass (1.0.4)
     debug_inspector (0.0.3)
     diff-lcs (1.3)
+    diffy (3.3.0)
     discourse-ember-source (3.8.0.1)
     discourse_image_optim (0.26.2)
       exifr (~> 1.2, >= 1.2.2)
@@ -435,6 +436,7 @@ DEPENDENCIES
   certified
   colored2
   cppjieba_rb
+  diffy
   discourse-ember-source (~> 3.8.0)
   discourse_image_optim
   email_reply_trimmer (~> 0.1)
diff --git a/lib/tasks/posts.rake b/lib/tasks/posts.rake
index 5f82799..aa4b87a 100644
--- a/lib/tasks/posts.rake
+++ b/lib/tasks/posts.rake
@@ -661,6 +661,7 @@ end
 desc "Coverts full upload URLs in `Post#raw` to short upload url"
 task 'posts:inline_uploads' => :environment do |_, args|
   dry_run = (ENV["DRY_RUN"].nil? ? true : ENV["DRY_RUN"] != "false")
+  verbose = ENV["VERBOSE"]
 
   scope = Post.joins(:post_uploads)
     .distinct("posts.id")
@@ -681,9 +682,7 @@ task 'posts:inline_uploads' => :environment do |_, args|
       new_raw = InlineUploads.process(post.raw)
 
       if post.raw != new_raw
-        if dry_run
-          putc "🏃‍"
-        else
+        if !dry_run
           post.revise!(Discourse.system_user,
             {
               raw: new_raw
@@ -691,10 +690,21 @@ task 'posts:inline_uploads' => :environment do |_, args|
             skip_validations: true,
             force_new_version: true
           )
+        end
 
+        if verbose
+          require 'diffy'
+          Diffy::Diff.default_format = :color
+          puts "Cooked diff for Post #{post.id}"
+          puts Diffy::Diff.new(PrettyText.cook(post.raw), PrettyText.cook(new_raw), context: 1)
+          puts
+        elsif dry_run
+          putc "🏃"
+        else
           putc "."
         end
 
+
         fixed_count += 1
       else
         not_corrected_post_ids << post.id

GitHub sha: 29259b46