View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005953 | unreal | ircd | public | 2021-07-04 13:44 | 2023-05-28 10:16 |
Reporter | progval | Assigned To | syzop | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 5.2.1-rc1 | ||||
Fixed in Version | 6.1.1-rc1 | ||||
Summary | 0005953: CHATHISTORY AROUND excludes "central" messages | ||||
Description | When using CHATHISTORY AROUND with a timestamp <https://ircv3.net/specs/extensions/chathistory#around>, Unreal excludes messages whose timestamp is exactly equal to the one provided by the client. IMO this is incorrect, because there any many reasons this client could have picked this timestamp, so the server can't assume the client already has this particular message(s). Additionally, when using CHATHISTORY AROUND with a msgid, Unreal also excludes the message with that msgid. IMO, Unreal should not exclude it either, because the client may not know that message either, because it may have discovered it without the message itself somehow (eg. +draft/react or something like https://github.com/ircv3/ircv3-ideas/issues/8#issuecomment-842986798 ) | ||||
Steps To Reproduce | send messages: C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 0 S -> C: @msgid=Y7ZtpKFyrFTraCzRBbTFKh;time=2021-07-04T11:33:45.792Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 0 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 1 S -> C: @msgid=6e5xElPYeBBL1AxslqwTOw;time=2021-07-04T11:33:45.795Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 1 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 2 S -> C: @msgid=7zWKrwZAnJIt3ZM52uUiO1;time=2021-07-04T11:33:45.798Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 2 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 3 S -> C: @msgid=obttgp5wjmlZGIf0awRbwW;time=2021-07-04T11:33:45.802Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 3 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 4 S -> C: @msgid=id3o8UePoaQej5Us17TebB;time=2021-07-04T11:33:45.805Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 4 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 5 S -> C: @msgid=R3v5ds26q5LRADDSzoUocJ;time=2021-07-04T11:33:45.808Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 5 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 6 S -> C: @msgid=WZdlbNaVcAkbRfc0gZQKIQ;time=2021-07-04T11:33:45.811Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 6 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 7 S -> C: @msgid=hP3ROO62YEO2OZwdmGv8oK;time=2021-07-04T11:33:45.814Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 7 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 8 S -> C: @msgid=FiaieJBht2rMgLCidIUCXm;time=2021-07-04T11:33:45.817Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 8 C -> S: PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 9 S -> C: @msgid=PsucWztZc9c6gVwLgiphVN;time=2021-07-04T11:33:45.820Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 9 get messages around message 7's timestamp: C -> S: CHATHISTORY AROUND #chan3e1385d8c5d41d5ecde521b2 timestamp=2021-07-04T11:33:45.814Z 3 S -> C: :My.Little.Server BATCH +JLqWBfwMpxbOylOlsUSpz2 chathistory #chan3e1385d8c5d41d5ecde521b2 S -> C: @batch=JLqWBfwMpxbOylOlsUSpz2;msgid=WZdlbNaVcAkbRfc0gZQKIQ;time=2021-07-04T11:33:45.811Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 6 S -> C: @batch=JLqWBfwMpxbOylOlsUSpz2;msgid=FiaieJBht2rMgLCidIUCXm;time=2021-07-04T11:33:45.817Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 8 S -> C: @batch=JLqWBfwMpxbOylOlsUSpz2;msgid=PsucWztZc9c6gVwLgiphVN;time=2021-07-04T11:33:45.820Z :bar!~username@Clk-4D552FD5 PRIVMSG #chan3e1385d8c5d41d5ecde521b2 :this is message 9 S -> C: :My.Little.Server BATCH -JLqWBfwMpxbOylOlsUSpz2 this works similarly when using message 7's msgid | ||||
Additional Information | Ergo does send these "central" messages. | ||||
Tags | ircv3 | ||||
3rd party modules | |||||
|
Thanks for the report and your patience. This is fixed now in: https://github.com/unrealircd/unrealircd/commit/a4d7ca022ea5bd3154403578c68cf1aaa29d1b70 And our build tests now test various CHATHISTORY features each time. commit a4d7ca022ea5bd3154403578c68cf1aaa29d1b70 (HEAD -> unreal60_dev, origin/unreal60_dev, origin/HEAD) Author: Bram Matthys <[email protected]> Date: Sun May 28 10:15:51 2023 +0200 Update CHATHISTORY AROUND to include middle message Reported by progval in https://bugs.unrealircd.org/view.php?id=5953 |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-07-04 13:44 | progval | New Issue | |
2021-07-04 13:44 | progval | Tag Attached: ircv3 | |
2021-07-04 14:05 | syzop | Assigned To | => syzop |
2021-07-04 14:05 | syzop | Status | new => confirmed |
2023-05-28 10:16 | syzop | Status | confirmed => resolved |
2023-05-28 10:16 | syzop | Resolution | open => fixed |
2023-05-28 10:16 | syzop | Fixed in Version | => 6.1.1-rc1 |
2023-05-28 10:16 | syzop | Note Added: 0022887 | |
2023-05-28 10:16 | syzop | Note Edited: 0022887 |