# # ChangeLog for trunk in code # # Generated by Trac 1.6 # Jun 8, 2025, 8:38:23 PM Wed, 17 Nov 2021 11:12:40 GMT contact [699] * trunk/downstream.go (modified) Lower sanityCheckServer timeout to 15s Should still be more than ... Wed, 17 Nov 2021 11:10:56 GMT contact [698] * trunk/downstream.go (modified) Add context arg to sanityCheckServer As a bonus, the timeout now ... Wed, 17 Nov 2021 11:04:24 GMT contact [697] * trunk/server_test.go (modified) Use background context in tests Wed, 17 Nov 2021 10:56:16 GMT contact [696] * trunk/contrib/znc-import.go (modified) contrib/znc-import: use background context Wed, 17 Nov 2021 10:54:28 GMT contact [695] * trunk/cmd/sojuctl/main.go (modified) sojuctl: use background context Wed, 17 Nov 2021 10:41:11 GMT contact [694] * trunk/cmd/soju/main.go (modified) * trunk/config/config.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/downstream.go (modified) * trunk/server.go (modified) Add config option to globally disable multi-upstream mode Closes: ... Wed, 17 Nov 2021 10:22:26 GMT contact [693] * trunk/downstream.go (modified) * trunk/user.go (modified) Set isMultiUpstream flag in downstreamConn.welcome() This will make ... Wed, 17 Nov 2021 10:17:09 GMT contact [692] * trunk/downstream.go (modified) * trunk/user.go (modified) Add downstreamConn.isMultiUpstream Mon, 15 Nov 2021 23:38:04 GMT contact [691] * trunk/cmd/soju/main.go (modified) * trunk/conn.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Allow most config options to be reloaded Closes: ... Mon, 15 Nov 2021 22:53:25 GMT contact [690] * trunk/downstream.go (modified) Don't send user in prefix for echo messages This is not very useful ... Mon, 15 Nov 2021 20:40:17 GMT contact [689] * trunk/server.go (modified) Add panic handlers for user and downstream goroutines This only ... Mon, 15 Nov 2021 20:30:04 GMT delthas [688] * trunk/downstream.go (modified) Return an empty CHATHISTORY TARGETS batch when in multi-upstream ... Mon, 15 Nov 2021 20:22:43 GMT contact [687] * trunk/cmd/soju/main.go (modified) cmd/soju: bump max number of opened files The bouncer process may ... Mon, 15 Nov 2021 16:45:23 GMT delthas [686] * trunk/downstream.go (modified) Send the downstream host for PRIVMSG echo messages If a downstream ... Mon, 15 Nov 2021 13:38:19 GMT delthas [685] * trunk/downstream.go (modified) * trunk/upstream.go (modified) Add support for draft/extended-monitor References: ... Mon, 15 Nov 2021 13:34:04 GMT contact [684] * trunk/downstream.go (modified) * trunk/irc.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add support for MONITOR Add support for MONITOR in single-upstream ... Tue, 09 Nov 2021 21:12:46 GMT contact [683] * trunk/downstream.go (modified) Add ELIST support in single-upstream mode We just forward the ... Tue, 09 Nov 2021 21:09:17 GMT contact [682] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add a queue for WHO commands This has the following upsides: - We ... Tue, 09 Nov 2021 20:32:26 GMT contact [681] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Remove support for mixed multi-upstream LIST Multi-upstream ... Mon, 08 Nov 2021 19:29:14 GMT contact [680] * trunk/server.go (modified) * trunk/service.go (modified) Add context support to Server.createUser Mon, 08 Nov 2021 18:48:32 GMT contact [679] * trunk/service.go (modified) Add partial context support to handleUserUpdate More plumbing ... Mon, 08 Nov 2021 18:42:36 GMT contact [678] * trunk/service.go (modified) Check context cancellation in handleServiceServerNotice This ... Mon, 08 Nov 2021 18:40:48 GMT contact [677] * trunk/downstream.go (modified) * trunk/service.go (modified) Add context support to service References: ... Mon, 08 Nov 2021 18:36:10 GMT contact [676] * trunk/downstream.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Add context support to user and network mutations References: ... Mon, 08 Nov 2021 17:11:24 GMT contact [675] * trunk/downstream.go (modified) * trunk/server.go (modified) Plumb context in downstreamConn.handleMessageRegistered References: ... Sun, 07 Nov 2021 17:33:59 GMT contact [674] * trunk/db.go (modified) * trunk/upstream.go (modified) Fix upstream USER command when both username and nick are empty Thu, 04 Nov 2021 11:24:15 GMT hubert [673] * trunk/irc.go (modified) Skip list/type A mode arguments Type-A modes always have an ... Wed, 03 Nov 2021 21:02:19 GMT contact [672] * trunk/downstream.go (modified) Add plus sign in RPL_UMODEIS reply Wed, 03 Nov 2021 20:42:42 GMT contact [671] * trunk/downstream.go (modified) Set mode +o on admins for bouncer-only connections Wed, 03 Nov 2021 17:29:21 GMT contact [670] * trunk/downstream.go (modified) * trunk/server.go (modified) Turn CHATHISTORY and backlog limits into constants Wed, 03 Nov 2021 17:25:39 GMT contact [669] * trunk/msgstore_memory.go (modified) msgstore_memory: add comment about Append dropping messages Wed, 03 Nov 2021 17:21:12 GMT contact [668] * trunk/msgstore_fs.go (modified) msgstore_fs: abort on timeout Wed, 03 Nov 2021 17:21:05 GMT contact [667] * trunk/downstream.go (modified) * trunk/msgstore.go (modified) * trunk/msgstore_fs.go (modified) * trunk/msgstore_memory.go (modified) * trunk/server.go (modified) msgstore: add context to messageStore methods This allows setting a ... Wed, 03 Nov 2021 15:37:01 GMT contact [666] * trunk/downstream.go (modified) * trunk/msgstore.go (modified) * trunk/msgstore_fs.go (modified) * trunk/msgstore_memory.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) msgstore: take Network as arg instead of network The message stores ... Wed, 03 Nov 2021 14:17:16 GMT delthas [665] * trunk/downstream.go (modified) * trunk/msgstore.go (modified) * trunk/msgstore_fs.go (modified) * trunk/msgstore_memory.go (modified) Add support for draft/event-playback Tue, 02 Nov 2021 22:33:17 GMT contact [664] * trunk/db.go (modified) * trunk/db_postgres.go (modified) * trunk/db_sqlite.go (modified) * trunk/downstream.go (modified) * trunk/service.go (modified) * trunk/upstream.go (modified) Make Network.Nick optional Make Network.Nick optional, default to ... Tue, 02 Nov 2021 21:58:50 GMT contact [663] * trunk/db_sqlite.go (modified) db_sqlite: use TEXT instead of VARCHAR VARCHAR(n) is pointless in ... Tue, 02 Nov 2021 21:38:07 GMT contact [662] * trunk/cmd/soju/main.go (modified) * trunk/config/config.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/downstream.go (modified) * trunk/irc.go (modified) * trunk/server.go (modified) Add title config option Closes: https://todo.sr.ht/~emersion/soju/146 Tue, 02 Nov 2021 17:32:39 GMT contact [661] * trunk/downstream.go (modified) * trunk/irc.go (modified) Mark bouncer users and BouncerServ as authenticated in WHOX/WHOIS Tue, 02 Nov 2021 17:25:43 GMT contact [660] * trunk/downstream.go (modified) * trunk/irc.go (modified) * trunk/upstream.go (modified) Add support for WHOX This adds support for WHOX, without bothering ... Mon, 01 Nov 2021 17:36:21 GMT contact [659] * trunk/downstream.go (modified) Fix operator flag in RPL_WHOREPLY @ and + indicate channel ... Mon, 01 Nov 2021 17:32:01 GMT contact [658] * trunk/downstream.go (modified) Mark admins as server operators in self WHO/WHOIS replies Mon, 01 Nov 2021 17:28:19 GMT contact [657] * trunk/downstream.go (modified) Mark BouncerServ as server operator That's what some widely used ... Fri, 29 Oct 2021 14:18:34 GMT contact [656] * trunk/server.go (modified) Fix missing imports in server.go Oops. Fri, 29 Oct 2021 14:03:04 GMT contact [655] * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/upstream.go (modified) Get rid of io.EOF errors in logs Closes: ... Fri, 29 Oct 2021 13:51:13 GMT contact [654] * trunk/downstream.go (modified) Unify BOUNCER ADDNETWORK and CHANGENETWORK Thu, 28 Oct 2021 09:29:34 GMT contact [653] * trunk/downstream.go (modified) Always reply ERR_SASLABORTED on SASL abort Some clients (Hexchat) ... Mon, 18 Oct 2021 17:15:15 GMT contact [652] * trunk/cmd/sojuctl/main.go (modified) * trunk/contrib/znc-import.go (modified) * trunk/db.go (modified) * trunk/db_postgres.go (modified) * trunk/db_sqlite.go (modified) * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/server_test.go (modified) * trunk/service.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add context args to Database interface This is a mecanical change, ... Mon, 18 Oct 2021 07:20:11 GMT contact [651] * trunk/downstream.go (modified) Remove unnecessary downstream cap checks downstreamConn.SendMessage ... Mon, 18 Oct 2021 07:08:52 GMT contact [650] * trunk/downstream.go (modified) Remove incorrect AWAY TODO in downstreamConn.SendMessage ... Sun, 17 Oct 2021 19:54:18 GMT contact [649] * trunk/downstream.go (modified) * trunk/upstream.go (modified) Unify away-notify and account-notify handling Sun, 17 Oct 2021 19:54:18 GMT contact [648] * trunk/downstream.go (modified) * trunk/upstream.go (modified) Add support for account-notify Sat, 16 Oct 2021 09:42:32 GMT contact [647] * trunk/downstream.go (modified) Remove unused REGISTRATION_IS_COMPLETED in handleMessageUnregistered ... Sat, 16 Oct 2021 09:41:37 GMT contact [646] * trunk/downstream.go (modified) Send BOUNCER REGISTRATION_IS_COMPLETED error Fri, 15 Oct 2021 20:39:14 GMT hubert [645] * trunk/db_postgres.go (modified) * trunk/db_sqlite.go (modified) Set hard timeouts on DB transactions Fri, 15 Oct 2021 16:11:04 GMT contact [644] * trunk/msgstore_fs.go (modified) * trunk/user.go (modified) msgstore_fs: rename log dir when network is renamed Fri, 15 Oct 2021 07:59:53 GMT contact [643] * trunk/.build.yml (modified) ci: switch to alpine/latest We don't need the bleeding edge. Thu, 14 Oct 2021 18:51:03 GMT contact [642] * trunk/msgstore_fs.go (modified) msgstore_fs: add reference to ZNC Thu, 14 Oct 2021 14:03:14 GMT yyp [641] * trunk/downstream.go (modified) downstream: handle name=... in BOUNCER Thu, 14 Oct 2021 08:09:01 GMT contact [640] * trunk/db_postgres.go (modified) db_postgres: remove unnecessary DEFAULT NULL in schema Wed, 13 Oct 2021 17:15:50 GMT contact [639] * trunk/db_postgres.go (modified) db_postgres: use tx for all queries in StoreClientDeliveryReceipts Wed, 13 Oct 2021 15:38:20 GMT contact [638] * trunk/db_postgres.go (modified) db_postgres: quote table name in StoreClientDeliveryReceipts Wed, 13 Oct 2021 10:53:43 GMT contact [637] * trunk/cmd/soju/main.go (modified) Don't strip spaces at start of MOTD This breaks ASCII art. Instead, ... Wed, 13 Oct 2021 08:58:34 GMT contact [636] * trunk/cmd/soju/main.go (modified) * trunk/config/config.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/downstream.go (modified) * trunk/irc.go (modified) * trunk/server.go (modified) Add bouncer MOTD Closes: https://todo.sr.ht/~emersion/soju/137 Wed, 13 Oct 2021 08:12:14 GMT contact [635] * trunk/db_postgres.go (modified) db_postgres: fix constraints errors Stop using ON CONFLICT DO ... Wed, 13 Oct 2021 06:53:49 GMT hubert [634] * trunk/db_postgres.go (modified) db_postgres: handle both constraints on network updates Closes: ... Tue, 12 Oct 2021 19:49:06 GMT contact [633] * trunk/contrib/clients.md (modified) contrib/clients: update IRCv3 caps for Weechat 3.3 Tue, 12 Oct 2021 19:34:25 GMT contact [632] * trunk/doc/soju.1.scd (modified) doc.soju.1: fix typo and improve formatting for "certfp generate" Tue, 12 Oct 2021 19:31:12 GMT contact [631] * trunk/doc/soju.1.scd (modified) doc/soju.1: add descriptions for all flags for "user create" Tue, 12 Oct 2021 19:27:48 GMT contact [630] * trunk/doc/soju.1.scd (modified) doc/soju.1: use angle-brackets for URL Helps a bit terminal ... Tue, 12 Oct 2021 17:28:44 GMT contact [629] * trunk/downstream.go (modified) Stop sending RPL_CREATED There's no point in sending this numeric ... Tue, 12 Oct 2021 15:36:00 GMT contact [628] * trunk/msgstore_fs.go (modified) msgstore_fs: fix ListTargets error on missing log dir Initially, ... Tue, 12 Oct 2021 15:36:00 GMT contact [627] * trunk/downstream.go (modified) Fix printf formatting in error message Tue, 12 Oct 2021 14:54:51 GMT contact [626] * trunk/go.mod (modified) * trunk/go.sum (modified) Upgrade dependencies Tue, 12 Oct 2021 07:11:14 GMT contact [625] * trunk/doc/soju.1.scd (modified) * trunk/service.go (modified) * trunk/user.go (modified) service: allow updating other users Mon, 11 Oct 2021 14:06:37 GMT contact [624] * trunk/.build.yml (modified) ci: run PostgreSQL tests Mon, 11 Oct 2021 14:01:50 GMT contact [623] * trunk/server_test.go (modified) Fix unused imports in tests Mon, 11 Oct 2021 13:57:37 GMT contact [622] * trunk/server_test.go (modified) Run server test with PostgreSQL too Mon, 11 Oct 2021 13:55:07 GMT contact [621] * trunk/db_postgres_test.go (added) db_postgres: add migration test Mon, 11 Oct 2021 13:21:04 GMT hubert [620] * trunk/cmd/soju/main.go (modified) * trunk/cmd/sojuctl/main.go (modified) * trunk/contrib/znc-import.go (modified) * trunk/db.go (modified) * trunk/db_postgres.go (added) * trunk/db_sqlite.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/go.mod (modified) * trunk/go.sum (modified) * trunk/server_test.go (modified) PostgreSQL support Mon, 11 Oct 2021 10:26:51 GMT contact [619] * trunk/db_sqlite_test.go (added) db_sqlite: add migration test Sun, 10 Oct 2021 10:05:41 GMT hubert [618] * trunk/downstream.go (modified) Correctly send back PRIVMSGs and NOTICEs to self Sun, 10 Oct 2021 10:05:41 GMT hubert [617] * trunk/downstream.go (modified) Send back TAGMSGs to self Sun, 10 Oct 2021 10:05:40 GMT hubert [616] * trunk/downstream.go (modified) Dismiss TAGMSGs directed to BouncerServ Fri, 08 Oct 2021 08:52:03 GMT contact [615] * trunk/doc/soju.1.scd (modified) * trunk/service.go (modified) Add "server notice" command Fri, 08 Oct 2021 07:47:25 GMT contact [614] * trunk/certfp.go (added) * trunk/service.go (modified) Split CertFP logic into separate file Fri, 08 Oct 2021 07:11:31 GMT contact [613] * trunk/Makefile (modified) build: don't clobber config file Use `test -f` instead of `cp -n`, ... Thu, 07 Oct 2021 18:43:10 GMT contact [612] * trunk/cmd/soju/main.go (modified) * trunk/config/config.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/server.go (modified) * trunk/user.go (modified) Add max-user-networks config option Thu, 07 Oct 2021 18:04:20 GMT contact [611] * trunk/doc/soju.1.scd (modified) doc/soju.1: mention that accept-proxy-ip affects PROXY proto Thu, 07 Oct 2021 09:57:42 GMT alex [610] * trunk/msgstore_fs.go (modified) chathistory: Fix truncated backlog due to timezones Because ... Wed, 06 Oct 2021 09:50:12 GMT contact [609] * trunk/downstream.go (modified) Add WHOIS reply for BouncerServ Wed, 06 Oct 2021 09:41:39 GMT contact [608] * trunk/msgstore_fs.go (modified) msgstore_fs: add limit on number of opened files Tue, 05 Oct 2021 17:31:06 GMT contact [607] * trunk/db.go (modified) * trunk/db_sqlite.go (modified) * trunk/service.go (modified) Add DB stats Tue, 05 Oct 2021 17:21:43 GMT contact [606] * trunk/service.go (modified) Add limit for RSA bits Tue, 05 Oct 2021 17:13:53 GMT contact [605] * trunk/doc/soju.1.scd (modified) * trunk/server.go (modified) * trunk/service.go (modified) Add "server status" command Right now, it prints the number of ... Tue, 05 Oct 2021 12:26:10 GMT contact [604] * trunk/server_test.go (modified) test: get rid of testUpstream No need for this complexity. Tue, 05 Oct 2021 12:14:31 GMT contact [603] * trunk/server_test.go (modified) test: add NOTICE broadcast Tue, 05 Oct 2021 12:03:17 GMT contact [602] * trunk/server_test.go (modified) test: add upstream Tue, 05 Oct 2021 12:02:59 GMT contact [601] * trunk/server.go (modified) Use isErrClosed in Server.Serve Tue, 05 Oct 2021 10:11:40 GMT contact [600] * trunk/server_test.go (added) Add basic server test