Commit graph

3 commits

Author SHA1 Message Date
e7e805cb87
Add multi-network support
Connect to several IRC networks at once. The config file gains optional
`[network]` section headers: keys before the first header are shared
defaults, and each section defines one network that inherits and overrides
them. A file with no sections is a single network exactly as before, so
existing configs are unaffected.

main spawns one supervisor thread per network, each with its own
connect/reconnect/backoff loop, so a failure on one network never disturbs
the others. The blocking Bot/Connection are reused unchanged — no async
runtime, no new dependencies. With more than one network, wire logs are
tagged with the section name; a lone network stays unprefixed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-28 16:12:57 +00:00
ef80b77760
Add TLS transport support
Connect over TLS (default port 6697) using native-tls with the system
OpenSSL trust store for certificate verification. Unify the plaintext and
TLS transports behind a single Box<dyn Read + Write>, dropping the
read/write socket clone that a TLS session cannot support. Add a `tls`
config key and IRC_TLS override; the port auto-defaults to 6697 when TLS
is enabled.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-28 14:57:44 +00:00
05c004d32d
rust bot 2026-07-28 14:29:34 +00:00