nathank
(Nathan Kershaw)
8월 14, 2025, 11:39오후
1
It is wonderful that we can now easily silently change the category of topics (without having to fiddle with the site settings) due to this new feature :
https://github.com/discourse/discourse/commit/7a099ebb6a4c4f177cd416414914d8f902558e90
However, the same problem also exists for tag edits. Any chance this functionality could be extended to cover tags too?
7개의 좋아요
이 PR들을 작업하면서 태그를 일괄 편집해도 알림이 절대 생성되지 않는다는 것을 알게 되었습니다. 따라서 이 이슈는 닫을 수 있습니다.
main ← fix/silent-bulk-category-move-notifications
merged 03:05PM - 23 Feb 26 UTC
When performing a bulk category move with the "Notify users of this change" opti… on unchecked, topic authors were still receiving "edited" notifications. This happened because the silent flag was not propagated to the PostRevision `after_create` callback.
The original implementation (7a099ebb) correctly suppressed the `notify_category_change` job (PostAlerter path) but missed the second notification path: `PostActionNotifier.after_create_post_revision`, which fires via the PostRevision `after_create` callback when `create_revision_on_bulk_topic_moves` is enabled.
This fix adds a transient `silent` attr_accessor to PostRevision, set by PostRevisor before saving, and checked as an early return guard in `PostActionNotifier.after_create_post_revision`.
The specs are also updated to properly enable PostActionNotifier (which is disabled by default in tests) so the revision notification path is actually exercised.
Ref - t/174237
main ← fix/bulk-tag-actions-no-notifications
merged 01:39PM - 24 Feb 26 UTC
Bulk tag operations (change, append, remove) were directly manipulating tag reco… rds via DiscourseTagging and TopicTag, bypassing PostRevisor entirely. This meant callbacks, plugin hooks, and other side effects tied to the revision pipeline were not triggered.
This refactors the three bulk tag actions to go through `first_post.revise` instead, using `silent: true` to avoid sending notifications and `skip_revision: true` to avoid creating revision records, preserving the existing quiet behavior.
Also adds eager loading of first_post and tags to avoid N+1 queries, simplifies tag input handling by normalizing both tag_ids and tag_names into a single code path, and refactors `notification_is_disabled?` in PostActionNotifier for readability.
2개의 좋아요