Open brunnre8 opened 6 months ago
@ItsOnlyBinary something along those lines? Or what did you have in mind?
I tried to do it with only one cache key, but it gets rather hairy as we don't know which numeric replies we get in between responses... so in the end I opted for the second key, that we can use as a scratch space.
Why not add ident3
to historical
too? So:
whowas {
nick: 'someone',
ident: 'ident3',
hostname: '127.0.0.1',
real_name: 'Realname',
server: 'My.Little.Server',
server_info: 'Sun Mar 20 2022 10:59:26',
historical: [
{
nick: 'someone',
ident: 'ident3',
hostname: '127.0.0.1',
real_name: 'Realname',
server: 'My.Little.Server',
server_info: 'Sun Mar 20 2022 10:59:26'
},
{
nick: 'someone',
ident: 'ident2',
hostname: '127.0.0.1',
real_name: 'Realname',
server: 'My.Little.Server',
server_info: 'Sun Mar 20 2022 10:59:16'
},
{
nick: 'someone',
ident: 'ident1',
hostname: '127.0.0.1',
real_name: 'Realname',
server: 'My.Little.Server',
server_info: 'Sun Mar 19 2022 9:23:06'
}
]
That way it's still backwards compatible, as required here, but anybody parsing historical data can just loop over the historical
array without needing separate logic to handle the most recent identity.
(I don't have anything to do with this project. I just consume it, and was looking through issues)
not sure if duplicating the info really benefits you much?
But yeah you have a point. I could do that, at the cost of making the response longer. Unsure if by then a new event wouldn't make more sense though
Whowas results are a list of all known RPL_WHOWASUSER replies. Return the most recent event as the top level and add the rest to a
historical
field as an array.Example:
Fixes: https://github.com/kiwiirc/irc-framework/issues/371