home · contact · privacy
ircplom
21 hours agoDifferentiate attribute-updaters off Dict and Completable updaters.
Christian Heller [Thu, 11 Sep 2025 20:17:08 +0000 (22:17 +0200)]
Differentiate attribute-updaters off Dict and Completable updaters.

21 hours agoAllow Client updates to diversify into zero to many TUI updates.
Christian Heller [Thu, 11 Sep 2025 20:02:50 +0000 (22:02 +0200)]
Allow Client updates to diversify into zero to many TUI updates.

24 hours agoAlso treat Channel.user_ids as (completable) set rather than sorted.
Christian Heller [Thu, 11 Sep 2025 17:27:35 +0000 (19:27 +0200)]
Also treat Channel.user_ids as (completable) set rather than sorted.

24 hours agoUse set completable for CapsManager._ls, ._list, no need for order there.
Christian Heller [Thu, 11 Sep 2025 17:03:33 +0000 (19:03 +0200)]
Use set completable for CapsManager._ls, ._list, no need for order there.

25 hours agoStraighten out interfaces/class hierarchy for Completables, better hide internals.
Christian Heller [Thu, 11 Sep 2025 16:35:50 +0000 (18:35 +0200)]
Straighten out interfaces/class hierarchy for Completables, better hide internals.

26 hours agoFrom _User separate out _NickUserHost extras not needed on it properly.
Christian Heller [Thu, 11 Sep 2025 15:19:59 +0000 (17:19 +0200)]
From _User separate out _NickUserHost extras not needed on it properly.

26 hours agoSplit off UpdateMixin.static_copy into exportable IntoUpdateValue with better naming.
Christian Heller [Thu, 11 Sep 2025 15:08:37 +0000 (17:08 +0200)]
Split off UpdateMixin.static_copy into exportable IntoUpdateValue with better naming.

26 hours agoMove _Update.value adaption into class proper.
Christian Heller [Thu, 11 Sep 2025 14:58:46 +0000 (16:58 +0200)]
Move _Update.value adaption into class proper.

26 hours agoSimplify ._focused_set_and_report_change branchings.
Christian Heller [Thu, 11 Sep 2025 14:52:40 +0000 (16:52 +0200)]
Simplify ._focused_set_and_report_change branchings.

26 hours agoFix formatting of part and rename logs.
Christian Heller [Thu, 11 Sep 2025 14:43:31 +0000 (16:43 +0200)]
Fix formatting of part and rename logs.

26 hours agoMove more processing into _Update.
Christian Heller [Thu, 11 Sep 2025 14:43:11 +0000 (16:43 +0200)]
Move more processing into _Update.

27 hours agoRename variable for greater clarity.
Christian Heller [Thu, 11 Sep 2025 14:32:09 +0000 (16:32 +0200)]
Rename variable for greater clarity.

27 hours agoSplit set_and_check_for_change into recursive node-walk end end-node processing.
Christian Heller [Thu, 11 Sep 2025 14:23:40 +0000 (16:23 +0200)]
Split set_and_check_for_change into recursive node-walk end end-node processing.

27 hours agoHandle GenericAlias special case breaking previous switch to "Clearable" subclassing.
Christian Heller [Thu, 11 Sep 2025 14:19:50 +0000 (16:19 +0200)]
Handle GenericAlias special case breaking previous switch to "Clearable" subclassing.

27 hours agoOnly declare respective level's direct children for log scopes.
Christian Heller [Thu, 11 Sep 2025 13:42:06 +0000 (15:42 +0200)]
Only declare respective level's direct children for log scopes.

28 hours agoMinor code-reorganization for better readability.
Christian Heller [Thu, 11 Sep 2025 13:36:42 +0000 (15:36 +0200)]
Minor code-reorganization for better readability.

28 hours agoStructure .clear ability into proper interface.
Christian Heller [Thu, 11 Sep 2025 13:34:09 +0000 (15:34 +0200)]
Structure .clear ability into proper interface.

28 hours agoFix renaming logging "forgetting" old name.
Christian Heller [Thu, 11 Sep 2025 13:26:41 +0000 (15:26 +0200)]
Fix renaming logging "forgetting" old name.

28 hours agoFix CAP negotation keyword typo.
Christian Heller [Thu, 11 Sep 2025 13:24:16 +0000 (15:24 +0200)]
Fix CAP negotation keyword typo.

5 days agoFix broken CAP command sendings.
Christian Heller [Sun, 7 Sep 2025 14:47:31 +0000 (16:47 +0200)]
Fix broken CAP command sendings.

5 days agoRefactor around PRIVMSG/NOTICE to reduce LogScope references in client.py.
Christian Heller [Sun, 7 Sep 2025 14:45:19 +0000 (16:45 +0200)]
Refactor around PRIVMSG/NOTICE to reduce LogScope references in client.py.

6 days agoSimplify Client.send usage.
Christian Heller [Sat, 6 Sep 2025 10:28:54 +0000 (12:28 +0200)]
Simplify Client.send usage.

6 days agoSlightly loosen .id_for_nickuserhost expectations.
Christian Heller [Sat, 6 Sep 2025 10:27:29 +0000 (12:27 +0200)]
Slightly loosen .id_for_nickuserhost expectations.

6 days agoSome channel users/topic logging refactoring.
Christian Heller [Sat, 6 Sep 2025 07:57:13 +0000 (09:57 +0200)]
Some channel users/topic logging refactoring.

6 days agoBetter encapsulate channel and user dictionaries code.
Christian Heller [Sat, 6 Sep 2025 04:46:19 +0000 (06:46 +0200)]
Better encapsulate channel and user dictionaries code.

6 days agoCommunicate user exits via User.exit_msg rather than client-side logging.
Christian Heller [Sat, 6 Sep 2025 04:42:56 +0000 (06:42 +0200)]
Communicate user exits via User.exit_msg rather than client-side logging.

6 days agoFix broken DB clearing after disconnect.
Christian Heller [Sat, 6 Sep 2025 03:22:15 +0000 (05:22 +0200)]
Fix broken DB clearing after disconnect.

6 days agoGet rid of complications like .from_silent or .set_updating.
Christian Heller [Sat, 6 Sep 2025 00:25:08 +0000 (02:25 +0200)]
Get rid of complications like .from_silent or .set_updating.

6 days agoProvide User instances with their .id_ in overarching dict to reduce roundtrips.
Christian Heller [Sat, 6 Sep 2025 00:05:02 +0000 (02:05 +0200)]
Provide User instances with their .id_ in overarching dict to reduce roundtrips.

7 days agoMinor refactoring.
Christian Heller [Fri, 5 Sep 2025 15:18:44 +0000 (17:18 +0200)]
Minor refactoring.

7 days agoDerive proper User class from NickUserSet, with additional .modes field.
Christian Heller [Fri, 5 Sep 2025 14:45:12 +0000 (16:45 +0200)]
Derive proper User class from NickUserSet, with additional .modes field.

7 days agoRe-organize NickUserHost field updating code.
Christian Heller [Fri, 5 Sep 2025 14:43:25 +0000 (16:43 +0200)]
Re-organize NickUserHost field updating code.

7 days agoStraighten consistence between class expectations.
Christian Heller [Fri, 5 Sep 2025 13:14:31 +0000 (15:14 +0200)]
Straighten consistence between class expectations.

7 days agoMake identity relation more explicit/forceful.
Christian Heller [Fri, 5 Sep 2025 12:53:33 +0000 (14:53 +0200)]
Make identity relation more explicit/forceful.

7 days agoOnly explicitly use userid_for_nickuserhost for updating users entries.
Christian Heller [Fri, 5 Sep 2025 12:51:47 +0000 (14:51 +0200)]
Only explicitly use userid_for_nickuserhost for updating users entries.

7 days agoSimplify _NickUserHost comparisons.
Christian Heller [Fri, 5 Sep 2025 12:45:22 +0000 (14:45 +0200)]
Simplify _NickUserHost comparisons.

7 days agoDifferentiate query windows into their own chat windows subclass.
Christian Heller [Fri, 5 Sep 2025 11:52:54 +0000 (13:52 +0200)]
Differentiate query windows into their own chat windows subclass.

7 days agoShow received nickname changes in all windows affected.
Christian Heller [Fri, 5 Sep 2025 11:50:30 +0000 (13:50 +0200)]
Show received nickname changes in all windows affected.

8 days agoFor any NICK_USER_HOST message tokens potentially update entry; get rid of irregular...
Christian Heller [Thu, 4 Sep 2025 05:41:31 +0000 (07:41 +0200)]
For any NICK_USER_HOST message tokens potentially update entry; get rid of irregular "set_user" tasks.

8 days agoTighten user identity knowledge controls.
Christian Heller [Thu, 4 Sep 2025 05:14:01 +0000 (07:14 +0200)]
Tighten user identity knowledge controls.

8 days agoMinor code reorganization.
Christian Heller [Thu, 4 Sep 2025 01:55:26 +0000 (03:55 +0200)]
Minor code reorganization.

8 days agoSome Completables refactoring.
Christian Heller [Thu, 4 Sep 2025 01:53:24 +0000 (03:53 +0200)]
Some Completables refactoring.

8 days agoSimplify topic setting code.
Christian Heller [Thu, 4 Sep 2025 01:36:37 +0000 (03:36 +0200)]
Simplify topic setting code.

8 days agoAvoid zero-length task path steps.
Christian Heller [Thu, 4 Sep 2025 01:34:58 +0000 (03:34 +0200)]
Avoid zero-length task path steps.

8 days agoAdd 'doafter' task verb, with defined execution order between task verbs.
Christian Heller [Thu, 4 Sep 2025 01:11:11 +0000 (03:11 +0200)]
Add 'doafter' task verb, with defined execution order between task verbs.

8 days agoVery minor refactoring.
Christian Heller [Thu, 4 Sep 2025 00:17:36 +0000 (02:17 +0200)]
Very minor refactoring.

8 days agoMinor refactoring.
Christian Heller [Wed, 3 Sep 2025 21:59:58 +0000 (23:59 +0200)]
Minor refactoring.

8 days agoMinor refactoring.
Christian Heller [Wed, 3 Sep 2025 21:54:07 +0000 (23:54 +0200)]
Minor refactoring.

8 days agoMove fundamental message parsing code into msg_parse_expectations module.
Christian Heller [Wed, 3 Sep 2025 21:20:28 +0000 (23:20 +0200)]
Move fundamental message parsing code into msg_parse_expectations module.

9 days agoReformat message expectations code for better readability.
Christian Heller [Wed, 3 Sep 2025 15:00:36 +0000 (17:00 +0200)]
Reformat message expectations code for better readability.

9 days agoFix crashes on /part due to now _always_ expecting a parting message.
Christian Heller [Wed, 3 Sep 2025 14:19:45 +0000 (16:19 +0200)]
Fix crashes on /part due to now _always_ expecting a parting message.

9 days agoMove handling of 366, 376, 903, 904, ERROR into EXPECTATIONS (with some task parsing...
Christian Heller [Wed, 3 Sep 2025 14:14:42 +0000 (16:14 +0200)]
Move handling of 366, 376, 903, 904, ERROR into EXPECTATIONS (with some task parsing redesign on the way).

9 days agoRefactor message task target parsing towards greater flexibility.
Christian Heller [Wed, 3 Sep 2025 13:18:13 +0000 (15:18 +0200)]
Refactor message task target parsing towards greater flexibility.

9 days agoSatisfy mypy.
Christian Heller [Wed, 3 Sep 2025 12:54:53 +0000 (14:54 +0200)]
Satisfy mypy.

9 days agoMove TOPIC message parsing into EXPECTATIONS (with small task parsing hack to make...
Christian Heller [Wed, 3 Sep 2025 12:53:51 +0000 (14:53 +0200)]
Move TOPIC message parsing into EXPECTATIONS (with small task parsing hack to make it work).

9 days agoReorganize task name parsing towards greater flexibility.
Christian Heller [Wed, 3 Sep 2025 12:40:50 +0000 (14:40 +0200)]
Reorganize task name parsing towards greater flexibility.

9 days agoOn message parsing, don't collect empty-string task names.
Christian Heller [Wed, 3 Sep 2025 12:39:51 +0000 (14:39 +0200)]
On message parsing, don't collect empty-string task names.

9 days agoMove topic handling into MSG_EXPECTATIONS, re-name variables for clarity of usage.
Christian Heller [Wed, 3 Sep 2025 12:00:47 +0000 (14:00 +0200)]
Move topic handling into MSG_EXPECTATIONS, re-name variables for clarity of usage.

9 days agoHandle parts with messages.
Christian Heller [Wed, 3 Sep 2025 11:37:52 +0000 (13:37 +0200)]
Handle parts with messages.

9 days agoRestructure topic setting.
Christian Heller [Tue, 2 Sep 2025 17:40:12 +0000 (19:40 +0200)]
Restructure topic setting.

10 days agoAdd channel topic messages.
Christian Heller [Tue, 2 Sep 2025 13:30:35 +0000 (15:30 +0200)]
Add channel topic messages.

10 days agoHandle joining "secret" channels.
Christian Heller [Tue, 2 Sep 2025 10:19:58 +0000 (12:19 +0200)]
Handle joining "secret" channels.

10 days agoSurvive joining channel before user component properly registered.
Christian Heller [Tue, 2 Sep 2025 10:19:40 +0000 (12:19 +0200)]
Survive joining channel before user component properly registered.

10 days agoFrom inside channel window allow re-join with mere /join sans args.
Christian Heller [Tue, 2 Sep 2025 09:47:26 +0000 (11:47 +0200)]
From inside channel window allow re-join with mere /join sans args.

10 days agoFor channel residents show nicknames or entire masks rather than IDs.
Christian Heller [Tue, 2 Sep 2025 08:47:42 +0000 (10:47 +0200)]
For channel residents show nicknames or entire masks rather than IDs.

10 days agoFix broken scopes tuple.
Christian Heller [Tue, 2 Sep 2025 08:17:15 +0000 (10:17 +0200)]
Fix broken scopes tuple.

10 days agoLog myself parting channel.
Christian Heller [Tue, 2 Sep 2025 08:12:37 +0000 (10:12 +0200)]
Log myself parting channel.

10 days agoSimplify channels parsing.
Christian Heller [Tue, 2 Sep 2025 05:53:53 +0000 (07:53 +0200)]
Simplify channels parsing.

10 days agoAdd missing 433 handler.
Christian Heller [Tue, 2 Sep 2025 05:37:23 +0000 (07:37 +0200)]
Add missing 433 handler.

10 days agoSome code re-organization.
Christian Heller [Tue, 2 Sep 2025 05:37:14 +0000 (07:37 +0200)]
Some code re-organization.

10 days agoMove server message expectations into their own file.
Christian Heller [Tue, 2 Sep 2025 05:14:08 +0000 (07:14 +0200)]
Move server message expectations into their own file.

10 days agoOverhaul database hierarchies.
Christian Heller [Tue, 2 Sep 2025 03:19:16 +0000 (05:19 +0200)]
Overhaul database hierarchies.

2 weeks agoParse isupports to derive proper legal/illegal first chars for nicknames, channel...
Christian Heller [Tue, 26 Aug 2025 01:25:52 +0000 (03:25 +0200)]
Parse isupports to derive proper legal/illegal first chars for nicknames, channel names.

2 weeks agoSome code-regrouping for better readability.
Christian Heller [Mon, 25 Aug 2025 23:22:19 +0000 (01:22 +0200)]
Some code-regrouping for better readability.

2 weeks agoMore refactoring of both server caps and isupports parsing.
Christian Heller [Mon, 25 Aug 2025 23:11:20 +0000 (01:11 +0200)]
More refactoring of both server caps and isupports parsing.

2 weeks agoMinor refactoring of CAPS code.
Christian Heller [Mon, 25 Aug 2025 22:31:15 +0000 (00:31 +0200)]
Minor refactoring of CAPS code.

2 weeks agoMinor refactoring.
Christian Heller [Mon, 25 Aug 2025 20:06:50 +0000 (22:06 +0200)]
Minor refactoring.

2 weeks agoRefactor _CompletableStringsList usage.
Christian Heller [Mon, 25 Aug 2025 20:01:31 +0000 (22:01 +0200)]
Refactor _CompletableStringsList usage.

2 weeks agoSimplify MOTD processing.
Christian Heller [Mon, 25 Aug 2025 17:35:10 +0000 (19:35 +0200)]
Simplify MOTD processing.

2 weeks agoSimplify ChannelDb.user_ids structure, minor bugfixes.
Christian Heller [Mon, 25 Aug 2025 17:06:05 +0000 (19:06 +0200)]
Simplify ChannelDb.user_ids structure, minor bugfixes.

2 weeks agoStore user identities independently from nicknames.
Christian Heller [Mon, 25 Aug 2025 10:45:20 +0000 (12:45 +0200)]
Store user identities independently from nicknames.

3 weeks agoAdd some numerics comments.
Christian Heller [Thu, 21 Aug 2025 09:22:20 +0000 (11:22 +0200)]
Add some numerics comments.

3 weeks agoDrop /part <reason> for lack of perceived usage, move part/join messaging into TUI...
Christian Heller [Thu, 21 Aug 2025 08:29:26 +0000 (10:29 +0200)]
Drop /part <reason> for lack of perceived usage, move part/join messaging into TUI code.

3 weeks agoDifferentiate NICK_USER_HOST into actual _NickUserHost structure.
Christian Heller [Thu, 21 Aug 2025 06:10:02 +0000 (08:10 +0200)]
Differentiate NICK_USER_HOST into actual _NickUserHost structure.

3 weeks agoOptimize handling of 396, discard not-yet-encountered special case.
Christian Heller [Thu, 21 Aug 2025 03:23:22 +0000 (05:23 +0200)]
Optimize handling of 396, discard not-yet-encountered special case.

3 weeks agoFix 433 name incrementation working on our rather than their name.
Christian Heller [Thu, 21 Aug 2025 02:52:37 +0000 (04:52 +0200)]
Fix 433 name incrementation working on our rather than their name.

3 weeks agoFix mismatches on string param comparisons.
Christian Heller [Thu, 21 Aug 2025 02:46:35 +0000 (04:46 +0200)]
Fix mismatches on string param comparisons.

3 weeks agoBy automatically setting .nick_wanted on .nickname, reduce special cases.
Christian Heller [Thu, 21 Aug 2025 02:46:15 +0000 (04:46 +0200)]
By automatically setting .nick_wanted on .nickname, reduce special cases.

3 weeks agoAdd basic task instructions to _MsgTokGuides.
Christian Heller [Thu, 21 Aug 2025 01:25:03 +0000 (03:25 +0200)]
Add basic task instructions to _MsgTokGuides.

3 weeks agoRe-organize message matching away from previous Numerics collections.
Christian Heller [Wed, 20 Aug 2025 23:17:20 +0000 (01:17 +0200)]
Re-organize message matching away from previous Numerics collections.

3 weeks agoMove CAPS handling into new system.
Christian Heller [Wed, 20 Aug 2025 22:06:46 +0000 (00:06 +0200)]
Move CAPS handling into new system.

3 weeks agoEnable collection of multi-param items, to integrate 005 into new system.
Christian Heller [Wed, 20 Aug 2025 21:38:54 +0000 (23:38 +0200)]
Enable collection of multi-param items, to integrate 005 into new system.

3 weeks agoAlso implement full MsgTokGuides for 396, 401, 432, 433, 900.
Christian Heller [Wed, 20 Aug 2025 20:05:21 +0000 (22:05 +0200)]
Also implement full MsgTokGuides for 396, 401, 432, 433, 900.

3 weeks agoIn _MsgParseExpectation explicitly label under what key a value to return by.
Christian Heller [Wed, 20 Aug 2025 19:42:15 +0000 (21:42 +0200)]
In _MsgParseExpectation explicitly label under what key a value to return by.

3 weeks agoAlso define PRIVMSG and NOTICE handlings into new scheme.
Christian Heller [Tue, 19 Aug 2025 19:18:28 +0000 (21:18 +0200)]
Also define PRIVMSG and NOTICE handlings into new scheme.

3 weeks agoHandle 353, 366, 372, 376 in new pattern.
Christian Heller [Tue, 19 Aug 2025 16:29:16 +0000 (18:29 +0200)]
Handle 353, 366, 372, 376 in new pattern.

3 weeks agoRefactor 353 handler.
Christian Heller [Tue, 19 Aug 2025 14:09:27 +0000 (16:09 +0200)]
Refactor 353 handler.

3 weeks agoMinor refactoring.
Christian Heller [Tue, 19 Aug 2025 13:25:09 +0000 (15:25 +0200)]
Minor refactoring.

3 weeks agoMinor refactoring.
Christian Heller [Tue, 19 Aug 2025 12:53:49 +0000 (14:53 +0200)]
Minor refactoring.

3 weeks agoHandle NICK changes of other users in channels.
Christian Heller [Tue, 19 Aug 2025 12:47:30 +0000 (14:47 +0200)]
Handle NICK changes of other users in channels.