FIX: Missing post revision when editing the first post.

approved
#1

FIX: Missing post revision when editing the first post.

diff --git a/app/controllers/topics_controller.rb b/app/controllers/topics_controller.rb
index d2aec7a..98e9147 100644
--- a/app/controllers/topics_controller.rb
+++ b/app/controllers/topics_controller.rb
@@ -330,6 +330,7 @@ class TopicsController < ApplicationController
 
     changes.delete(:title) if topic.title == changes[:title]
     changes.delete(:category_id) if topic.category_id.to_i == changes[:category_id].to_i
+    changes.delete(:tags_empty_array) if !topic.tags.exists?
 
     success = true
 
diff --git a/spec/requests/topics_controller_spec.rb b/spec/requests/topics_controller_spec.rb
index 910144c..e30cca3 100644
--- a/spec/requests/topics_controller_spec.rb
+++ b/spec/requests/topics_controller_spec.rb
@@ -1002,7 +1002,8 @@ RSpec.describe TopicsController do
         it "doesn't call the PostRevisor when there is no changes" do
           expect do
             put "/t/#{topic.slug}/#{topic.id}.json", params: {
-              category_id: topic.category_id
+              category_id: topic.category_id,
+              tags_empty_array: true
             }
           end.not_to change(PostRevision.all, :count)

GitHub sha: 834c8667

DEV: Simplify client and server side code to support removing tags.
#2

do we need to check if tags are enabled (with the site setting)

Followed Up #3

DEV: Simplify client and server side code to support removing tags.

Approved #4