discourse/plugins/chat
Joffrey JAFFEUX 0764dc3452
FIX: cancel fetching messages after channel change (#21689)
This issue was especially visible in tests. the `@debounce(100)` was not cancelled when changing channel which was causing 404s as we were trying to load messages on a channel which was deleted as the channel has been destroyed at the end of the test.

This is still not a perfect solution, as we can only cancel the start of `fetchMessages`, but we can't cancel the actual `chatApi.channel` request which result can potentially happens after channel changed, which we try to mitigate with various checks on to ensure visible channel == loaded messages channel.

This commit also tries to make handler naming and cancelling more consistent.

<!-- NOTE: All pull requests should have tests (rspec in Ruby, qunit in JavaScript). If your code does not include test coverage, please include an explanation of why it was omitted. -->
2023-05-23 16:01:47 +02:00
..
app FIX: Page size check for thread messages (#21692) 2023-05-23 11:59:19 +02:00
assets FIX: cancel fetching messages after channel change (#21689) 2023-05-23 16:01:47 +02:00
config DEV: various improvements to devex on chat (#21612) 2023-05-17 17:49:52 +02:00
db DEV: Create UserChatThreadMembership table and model (#21481) 2023-05-10 17:19:48 +02:00
lib FIX: Do not cook icon with hashtags (#21676) 2023-05-23 09:33:55 +02:00
public DEV: Move `discourse-chat` to the core repo. (#18776) 2022-11-02 10:41:30 -03:00
spec FIX: cancel fetching messages after channel change (#21689) 2023-05-23 16:01:47 +02:00
test/javascripts FIX: Do not cook icon with hashtags (#21676) 2023-05-23 09:33:55 +02:00
README.md DEV: Chat service object initial implementation (#19814) 2023-02-13 13:09:57 +01:00
plugin.rb FIX: Chat NotificationLevels extension breaking in prod (#21484) 2023-05-10 18:46:06 +02:00

README.md

This plugin is still in active development and may change frequently

Documentation

The Discourse Chat plugin adds chat functionality to your Discourse so it can natively support both long-form and short-form communication needs of your online community.

For user documentation, see Discourse Chat.

For developer documentation, see Discourse Documentation.