home · contact · privacy
Christian Heller [Mon, 6 Oct 2025 18:49:24 +0000 (20:49 +0200)]
 
Preserve tracebacks in ExceptionEvent for more informative crashes.
Christian Heller [Sun, 5 Oct 2025 12:32:37 +0000 (14:32 +0200)]
 
Attempt reconnecting on all handled IrcConnAbortExceptions.
Christian Heller [Sun, 5 Oct 2025 12:05:48 +0000 (14:05 +0200)]
 
Turn server messages into own special window, rather than query chat.
Christian Heller [Sun, 5 Oct 2025 05:43:17 +0000 (07:43 +0200)]
 
Simplify ClientWindow.title/.chatname usage.
Christian Heller [Sun, 5 Oct 2025 04:58:04 +0000 (06:58 +0200)]
 
Report ImplementationFail across all Client windows (since we can't know which should be interested).
Christian Heller [Sun, 5 Oct 2025 00:45:25 +0000 (02:45 +0200)]
 
Improve paste code.
Christian Heller [Sat, 4 Oct 2025 20:12:05 +0000 (22:12 +0200)]
 
Fix log line coloring reverting to default after line break.
Christian Heller [Sat, 4 Oct 2025 19:50:23 +0000 (21:50 +0200)]
 
Use whole prefix for log color formatting, add ClientTui-specific colorings.
Christian Heller [Sat, 4 Oct 2025 14:00:59 +0000 (16:00 +0200)]
 
Add alert highlighting, allow chained drawing attributes.
Christian Heller [Sat, 4 Oct 2025 13:31:06 +0000 (15:31 +0200)]
 
Trigger TUI's .redraw_affected also on tui_alert_trigger (previously bypassing it).
Christian Heller [Sat, 4 Oct 2025 12:24:53 +0000 (14:24 +0200)]
 
Add basic line-level highlighting.
Christian Heller [Sat, 4 Oct 2025 12:09:21 +0000 (14:09 +0200)]
 
Minor code re-organization.
Christian Heller [Thu, 2 Oct 2025 21:09:38 +0000 (23:09 +0200)]
 
Minor test optimization.
Christian Heller [Thu, 2 Oct 2025 21:02:55 +0000 (23:02 +0200)]
 
Add exponential-wait-timed auto-retries test; remove any wait times from ping timeouts test.
Christian Heller [Thu, 2 Oct 2025 21:01:13 +0000 (23:01 +0200)]
 
To tests, add wait/sleep directive.
Christian Heller [Thu, 2 Oct 2025 20:59:58 +0000 (22:59 +0200)]
 
To tests' FakeIrcConnection, add connecting timeout if port > 10000 (and auto-decrement on that in TestingClient).
Christian Heller [Thu, 2 Oct 2025 20:58:32 +0000 (22:58 +0200)]
 
Fix tests crashing on empty lines in anchored regions.
Christian Heller [Thu, 2 Oct 2025 20:49:52 +0000 (22:49 +0200)]
 
Rename test file forgotten to change extension on in previous commit.
Christian Heller [Thu, 2 Oct 2025 19:29:45 +0000 (21:29 +0200)]
 
Allow selection of which tests to run on command line invocation.
Christian Heller [Thu, 2 Oct 2025 19:26:06 +0000 (21:26 +0200)]
 
Fix erroneous argv counting (once more …).
Christian Heller [Thu, 2 Oct 2025 19:05:02 +0000 (21:05 +0200)]
 
Fix erroneous argv counting.
Christian Heller [Thu, 2 Oct 2025 18:41:43 +0000 (20:41 +0200)]
 
Change test files' extensions from besides-the-point .txt to meaningful .test.
Christian Heller [Thu, 2 Oct 2025 18:35:29 +0000 (20:35 +0200)]
 
For command line invocation, disallow (anyways ignored) additional arguments beyond "test".
Christian Heller [Thu, 2 Oct 2025 18:33:07 +0000 (20:33 +0200)]
 
For command line invocation, fail on any undefined arguments.
Christian Heller [Thu, 2 Oct 2025 18:28:14 +0000 (20:28 +0200)]
 
From Client.connect thread, move anything not measurably blocking UI back into main thread.
Christian Heller [Thu, 2 Oct 2025 18:21:21 +0000 (20:21 +0200)]
 
Also start exponentially delayed connection retry on connecting timeout.
Christian Heller [Thu, 2 Oct 2025 18:03:51 +0000 (20:03 +0200)]
 
Implement on-timeout reconnect-wait only hinted at in previous commit.
Christian Heller [Wed, 1 Oct 2025 08:46:22 +0000 (10:46 +0200)]
 
Auto-reconnect on during-connection timeout.
Christian Heller [Wed, 1 Oct 2025 08:00:57 +0000 (10:00 +0200)]
 
Fix delayed shutdown on /quit due to socket recv timeout only returning on full TIMEOUT_PING.
Christian Heller [Wed, 1 Oct 2025 03:52:09 +0000 (05:52 +0200)]
 
Reset ping-timeout timer on each connection start.
Christian Heller [Tue, 30 Sep 2025 23:32:45 +0000 (01:32 +0200)]
 
In tests, refactor context splitting, add separator to anchor syntax.
Christian Heller [Tue, 30 Sep 2025 23:12:36 +0000 (01:12 +0200)]
 
On testing, actually interpret TUI test of empty "> " prompt entering.
Christian Heller [Tue, 30 Sep 2025 23:04:06 +0000 (01:04 +0200)]
 
For testing, properly start parsing at first line, rather than jumping it.
Christian Heller [Tue, 30 Sep 2025 22:49:22 +0000 (00:49 +0200)]
 
On testing, split server message log treatment into two separate directives.
Christian Heller [Tue, 30 Sep 2025 18:14:39 +0000 (20:14 +0200)]
 
Move part of 433 handling into MSG_EXPECTATIONS, improve messaging.
Christian Heller [Tue, 30 Sep 2025 17:50:09 +0000 (19:50 +0200)]
 
For MsgParseExpection task path parsing, allow starting directly with uppercase-referenced nodes.
Christian Heller [Tue, 30 Sep 2025 17:38:11 +0000 (19:38 +0200)]
 
For MsgParseExpectation do/doafter tasks, use title as argument rather than callable path node.
Christian Heller [Tue, 30 Sep 2025 16:53:14 +0000 (18:53 +0200)]
 
Send out PINGs ourselves to check if connection still up.
Christian Heller [Mon, 29 Sep 2025 08:24:33 +0000 (10:24 +0200)]
 
Fix broken has_unread_highlight calculation.
Christian Heller [Mon, 29 Sep 2025 08:22:39 +0000 (10:22 +0200)]
 
Fix broken n_lines_unread calculation.
Christian Heller [Mon, 29 Sep 2025 08:19:32 +0000 (10:19 +0200)]
 
Mark unread highlights in status line windows summary.
Christian Heller [Mon, 29 Sep 2025 08:12:36 +0000 (10:12 +0200)]
 
In log lines, move highlight marker right before timestamp.
Christian Heller [Mon, 29 Sep 2025 06:30:33 +0000 (08:30 +0200)]
 
Add very basic keyword highlighting.
Christian Heller [Mon, 29 Sep 2025 05:36:14 +0000 (07:36 +0200)]
 
Fix slightly-off bookmark and scroll infos.
Christian Heller [Mon, 29 Sep 2025 04:36:01 +0000 (06:36 +0200)]
 
Explicate which indices are used negatively and which positively.
Christian Heller [Mon, 29 Sep 2025 02:10:40 +0000 (04:10 +0200)]
 
Add log bookmarking.
Christian Heller [Mon, 29 Sep 2025 00:04:41 +0000 (02:04 +0200)]
 
Differentiate log files by server/"client ID" directories.
Christian Heller [Sun, 28 Sep 2025 18:32:37 +0000 (20:32 +0200)]
 
More explicitly name testing code syntax tokens.
Christian Heller [Sun, 28 Sep 2025 18:20:01 +0000 (20:20 +0200)]
 
Move testing toml identification into detection of filename with same stem.
Christian Heller [Sun, 28 Sep 2025 17:10:09 +0000 (19:10 +0200)]
 
Remove dead code.
Christian Heller [Sun, 28 Sep 2025 17:08:31 +0000 (19:08 +0200)]
 
On config toml testing, move file identification from file path into testing code directive.
Christian Heller [Sun, 28 Sep 2025 16:46:40 +0000 (18:46 +0200)]
 
Refactor playbook processing code out of TestingClientTui.
Christian Heller [Sun, 28 Sep 2025 14:16:18 +0000 (16:16 +0200)]
 
Hint at TestingClientTui._split_active_line being semi-private.
Christian Heller [Sun, 28 Sep 2025 14:15:45 +0000 (16:15 +0200)]
 
Add TOML config test.
Christian Heller [Sun, 28 Sep 2025 11:27:30 +0000 (13:27 +0200)]
 
Minor test fixes/enhancements.
Christian Heller [Sun, 28 Sep 2025 11:24:31 +0000 (13:24 +0200)]
 
Ensure 332 doesn't affect users DB, since those identities are ancient.
Christian Heller [Fri, 26 Sep 2025 15:43:37 +0000 (17:43 +0200)]
 
To testing "repeat" command, add optional replacement context.
Christian Heller [Fri, 26 Sep 2025 14:55:34 +0000 (16:55 +0200)]
 
Minor refactoring.
Christian Heller [Fri, 26 Sep 2025 12:44:41 +0000 (14:44 +0200)]
 
"C0208: Use a sequence type when iterating over values (use-sequence-for-iteration)"
Christian Heller [Fri, 26 Sep 2025 12:43:40 +0000 (14:43 +0200)]
 
Determine ClientDb.clear order so that more basic re-sets happen first.
Christian Heller [Fri, 26 Sep 2025 12:31:12 +0000 (14:31 +0200)]
 
For testing, allow nesting of repeat ranges.
Christian Heller [Fri, 26 Sep 2025 08:00:19 +0000 (10:00 +0200)]
 
In testing, for "repeat" instruction, use named anchors rather than (constantly changing) line numbers.
Christian Heller [Fri, 26 Sep 2025 06:36:13 +0000 (08:36 +0200)]
 
Split testing into multiple test files.
Christian Heller [Fri, 26 Sep 2025 03:48:52 +0000 (05:48 +0200)]
 
Minor refactoring.
Christian Heller [Fri, 26 Sep 2025 03:47:26 +0000 (05:47 +0200)]
 
Don't write log files while testing.
Christian Heller [Fri, 26 Sep 2025 03:32:00 +0000 (05:32 +0200)]
 
Minor refactoring.
Christian Heller [Fri, 26 Sep 2025 03:04:43 +0000 (05:04 +0200)]
 
Also move IrcConnSetup defaulting off toml parsing.
Christian Heller [Fri, 26 Sep 2025 03:03:55 +0000 (05:03 +0200)]
 
Move IrcConnSetup attributes defaulting into Client.__init__, refactor cmd_connect.
Christian Heller [Fri, 26 Sep 2025 02:24:13 +0000 (04:24 +0200)]
 
Add reading of config files to auto-connect, auto-join.
Christian Heller [Thu, 25 Sep 2025 23:44:07 +0000 (01:44 +0200)]
 
Avoid mutables in class attribute defaults.
Christian Heller [Thu, 25 Sep 2025 23:39:24 +0000 (01:39 +0200)]
 
On /reconnect auto-join channels we were in on last connection close.
Christian Heller [Thu, 25 Sep 2025 19:11:01 +0000 (21:11 +0200)]
 
For log file names, escape anything but the most boring characters.
Christian Heller [Thu, 25 Sep 2025 18:41:14 +0000 (20:41 +0200)]
 
Fix OSC52 sequence saved to window log rather than just being printed.
Christian Heller [Thu, 25 Sep 2025 18:22:38 +0000 (20:22 +0200)]
 
Handle dtach forgetting our hiding of the cursor.
Christian Heller [Thu, 25 Sep 2025 18:12:06 +0000 (20:12 +0200)]
 
Pin blessed to a version we know works.
Christian Heller [Wed, 24 Sep 2025 12:33:42 +0000 (14:33 +0200)]
 
Standardize dependency-check into plomlib's dependency_hint.
Christian Heller [Wed, 24 Sep 2025 12:18:52 +0000 (14:18 +0200)]
 
Add dependency check/install hint.
Christian Heller [Wed, 24 Sep 2025 10:51:27 +0000 (12:51 +0200)]
 
Re-enable testing via test.txt.
Christian Heller [Wed, 24 Sep 2025 10:48:00 +0000 (12:48 +0200)]
 
Turn into installable by way of plomlib's install procedures.
Christian Heller [Wed, 24 Sep 2025 08:34:05 +0000 (10:34 +0200)]
 
Use Path.joinpath smarter.
Christian Heller [Wed, 24 Sep 2025 08:30:03 +0000 (10:30 +0200)]
 
Fix broken date filename generation.
Christian Heller [Wed, 24 Sep 2025 08:29:44 +0000 (10:29 +0200)]
 
Put logs under ~/.local/share/ircplpom.
Christian Heller [Wed, 24 Sep 2025 08:24:40 +0000 (10:24 +0200)]
 
Use pathlib rather than os.path.
Christian Heller [Wed, 24 Sep 2025 06:56:15 +0000 (08:56 +0200)]
 
Log date changes, sort log files into dates.
Christian Heller [Wed, 24 Sep 2025 06:38:17 +0000 (08:38 +0200)]
 
Generalize logging to all ClientWindows, use dedicated directory.
Christian Heller [Wed, 24 Sep 2025 04:25:17 +0000 (06:25 +0200)]
 
Minor refactoring.
Christian Heller [Wed, 24 Sep 2025 04:16:27 +0000 (06:16 +0200)]
 
Remove inconsequential attribute mapping of ClientWindows to LogScopes.
Christian Heller [Wed, 24 Sep 2025 04:08:06 +0000 (06:08 +0200)]
 
Reduce reliance on wobbly kwargs.
Christian Heller [Wed, 24 Sep 2025 03:49:12 +0000 (05:49 +0200)]
 
Use more easily constructed NOTICE marker.
Christian Heller [Wed, 24 Sep 2025 03:32:56 +0000 (05:32 +0200)]
 
Remove LogScope.RAW.
Christian Heller [Wed, 24 Sep 2025 03:22:01 +0000 (05:22 +0200)]
 
Fuse debugging windows / remove the one without the raw protocol logging.
Christian Heller [Wed, 24 Sep 2025 00:55:39 +0000 (02:55 +0200)]
 
Minor refactoring.
Christian Heller [Wed, 24 Sep 2025 00:49:33 +0000 (02:49 +0200)]
 
Minor code re-arrangement.
Christian Heller [Wed, 24 Sep 2025 00:44:40 +0000 (02:44 +0200)]
 
Move major part of message formatting from ClientWindowsManager.log into TuiClientDb.recursive_set_and_report_change.
Christian Heller [Wed, 24 Sep 2025 00:31:55 +0000 (02:31 +0200)]
 
Move debug log formatting from .update_db into .recursive_set_and_report_change.
Christian Heller [Tue, 23 Sep 2025 19:33:08 +0000 (21:33 +0200)]
 
Remove "requesting disconnect" message unnecessarily complicating log message passing infrastructure.
Christian Heller [Tue, 23 Sep 2025 19:24:59 +0000 (21:24 +0200)]
 
Minor refactor.
Christian Heller [Tue, 23 Sep 2025 19:17:13 +0000 (21:17 +0200)]
 
Simplify window scoping.
Christian Heller [Tue, 23 Sep 2025 15:28:30 +0000 (17:28 +0200)]
 
Move LogScope.RAW file logging into ClientTui.log.
Christian Heller [Tue, 23 Sep 2025 15:12:12 +0000 (17:12 +0200)]
 
Refactor Client._log into ._alert since client.py anyways only uses it for that.