# # ChangeLog for trunk/user.go in code # # Generated by Trac 1.6 # Jun 8, 2025, 5:07:18 PM Sun, 25 Oct 2020 16:47:38 GMT contact [423] * trunk/downstream.go (modified) * trunk/logger.go (deleted) * trunk/msgstore.go (added) * trunk/upstream.go (modified) * trunk/user.go (modified) Add message store abstraction Introduce a messageStore type, which ... Sat, 24 Oct 2020 13:14:23 GMT contact [421] * trunk/contrib/znc-import.go (modified) * trunk/db.go (modified) * trunk/downstream.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Switch DB API to user IDs This commit changes the Network schema to ... Mon, 07 Sep 2020 09:40:18 GMT hubert [416] * trunk/db.go (modified) * trunk/user.go (modified) Make DB.DeleteChannel take the channel ID ... to allow the caller ... Thu, 20 Aug 2020 18:05:01 GMT contact [409] * trunk/downstream.go (modified) * trunk/ring.go (deleted) * trunk/server.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Nuke in-memory ring buffer Instead, always read chat history from ... Thu, 20 Aug 2020 15:38:57 GMT contact [406] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Replace networkHistory.offlineClients with clients Keep the ring ... Wed, 19 Aug 2020 21:35:12 GMT contact [399] * trunk/upstream.go (modified) * trunk/user.go (modified) Improve registration error messages - Don't print the raw IRC ... Wed, 19 Aug 2020 17:42:33 GMT contact [398] * trunk/conn.go (modified) * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Implement rate limiting for upstream messages Allow up to 10 ... Wed, 19 Aug 2020 09:24:25 GMT contact [395] * trunk/user.go (modified) Encode idents to hex instead of base64 base64 strings may contain ... Tue, 11 Aug 2020 08:59:06 GMT contact [385] * trunk/cmd/soju/main.go (modified) * trunk/server.go (modified) * trunk/user.go (modified) Add an ident server Closes: https://todo.sr.ht/~emersion/soju/69 Mon, 10 Aug 2020 13:03:38 GMT contact [377] * trunk/user.go (modified) Make user.stop block This allows callers to wait until the user has ... Mon, 10 Aug 2020 13:03:38 GMT contact [376] * trunk/user.go (modified) Add user.stop Thu, 09 Jul 2020 12:20:23 GMT contact [359] * trunk/user.go (modified) Prevent error handler from falling through in user.run Mon, 08 Jun 2020 09:59:03 GMT contact [324] * trunk/cmd/sojuctl/main.go (modified) * trunk/db.go (modified) * trunk/user.go (modified) Introduce User.Created For Network and Channel, the database only ... Thu, 04 Jun 2020 11:04:39 GMT contact [313] * trunk/service.go (modified) * trunk/user.go (modified) Add network update command The user.updateNetwork function is a bit ... Wed, 03 Jun 2020 15:28:31 GMT contact [311] * trunk/user.go (modified) Introduce network.isClosed Wed, 03 Jun 2020 14:18:56 GMT contact [309] * trunk/user.go (modified) Unexport network.Stop An exported function makes it look like it ... Wed, 27 May 2020 21:42:38 GMT delthas [296] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Update downstream nicks in single-server mode and after NICK ... Fri, 01 May 2020 13:18:14 GMT contact [284] * trunk/db.go (modified) * trunk/doc/soju.1.scd (modified) * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add support for detached channels Channels can now be detached by ... Fri, 01 May 2020 08:49:58 GMT delthas [283] * trunk/user.go (modified) Fix joining only one saved channel per network This fixes a serious ... Thu, 30 Apr 2020 08:25:16 GMT contact [279] * trunk/downstream.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Remove network.upstream This is an artifact from when we used ... Wed, 29 Apr 2020 17:34:44 GMT contact [276] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add support for away-notify This makes use of cap-notify to ... Thu, 23 Apr 2020 14:36:20 GMT contact [267] * trunk/db.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add network.channels, remove DB.GetChannel Store the list of ... Fri, 10 Apr 2020 17:22:47 GMT contact [253] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Per-entity ring buffers Instead of having one ring buffer per ... Fri, 10 Apr 2020 08:16:25 GMT admin [252] * trunk/service.go (modified) * trunk/user.go (modified) Allow users to change password in client Added a BouncerServ ... Tue, 07 Apr 2020 12:42:13 GMT contact [241] * trunk/ring.go (modified) * trunk/user.go (modified) Remove Ring.Close This is unused. Mon, 06 Apr 2020 17:11:26 GMT contact [237] * trunk/user.go (modified) Remove network.lock network.conn is now only accessed from the user ... Mon, 06 Apr 2020 16:31:48 GMT contact [231] * trunk/downstream.go (modified) * trunk/ring.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Remove downstreamConn.ringConsumers We no longer need long-lived ... Mon, 06 Apr 2020 16:13:46 GMT contact [228] * trunk/downstream.go (modified) * trunk/ring.go (modified) * trunk/user.go (modified) Remove channel from ring buffer consumers This is unused. Mon, 06 Apr 2020 16:05:36 GMT contact [227] * trunk/doc/architecture.md (modified) * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Remove per-network ring buffer goroutines Just dispatch from the ... Sun, 05 Apr 2020 13:15:42 GMT contact [223] * trunk/user.go (modified) Use Network.GetName in network status NOTICE messages Sun, 05 Apr 2020 13:04:52 GMT contact [222] * trunk/downstream.go (modified) * trunk/user.go (modified) Add network.{createUpdate,delete}Channel These are about to get ... Sat, 04 Apr 2020 15:33:09 GMT delthas [218] * trunk/service.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Send one NOTICE on new upstream disconnect/connect errors In order ... Fri, 03 Apr 2020 16:59:17 GMT contact [215] * trunk/downstream.go (modified) * trunk/logger.go (added) * trunk/upstream.go (modified) * trunk/user.go (modified) Introduce messageLogger This centralizes formatting related to ... Wed, 01 Apr 2020 14:02:31 GMT contact [204] * trunk/downstream.go (modified) * trunk/user.go (modified) Simplify ring consumer goroutine Since network.history is now only ... Wed, 01 Apr 2020 13:48:56 GMT contact [203] * trunk/downstream.go (modified) * trunk/ring.go (modified) * trunk/user.go (modified) Stop ring consumers when deleting network Wed, 01 Apr 2020 13:40:20 GMT contact [202] * trunk/db.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Add "network delete" service command And add all the infrastructure ... Wed, 01 Apr 2020 13:04:32 GMT contact [201] * trunk/user.go (modified) Make user.getNetwork handle Network.Name Wed, 01 Apr 2020 10:21:31 GMT contact [199] * trunk/user.go (modified) Set network.conn in user goroutine One step closed to removing that ... Wed, 01 Apr 2020 10:16:32 GMT contact [198] * trunk/upstream.go (modified) * trunk/user.go (modified) Auto away Closes: https://todo.sr.ht/~emersion/soju/13 Wed, 01 Apr 2020 10:14:36 GMT contact [197] * trunk/upstream.go (modified) * trunk/user.go (modified) Only set network.conn when registered Wed, 01 Apr 2020 10:05:25 GMT contact [196] * trunk/user.go (modified) Add eventUpstreamConnected This is used in the next commit. Sat, 28 Mar 2020 00:03:00 GMT contact [181] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) s/List/LIST/ when referring to the command Fri, 27 Mar 2020 23:51:58 GMT contact [179] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Introduce eventUpstreamDisconnected This allows us to perform ... Fri, 27 Mar 2020 23:07:20 GMT delthas [177] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Add LIST support This commit adds support for downstream LIST ... Fri, 27 Mar 2020 22:08:35 GMT contact [175] * trunk/upstream.go (modified) * trunk/user.go (modified) Fix race condition in upstreamConn.Close upstreamConn.closed was a ... Fri, 27 Mar 2020 18:17:58 GMT contact [168] * trunk/downstream.go (modified) * trunk/user.go (modified) Nuke user.lock Split user.register into two functions, one to make ... Fri, 27 Mar 2020 16:55:03 GMT contact [167] * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/user.go (modified) Add eventDownstreamDisconnected This should remove the need for ... Fri, 27 Mar 2020 16:21:05 GMT contact [166] * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/user.go (modified) Add eventDownstreamConnected In a later commit, we'll be able to ... Fri, 27 Mar 2020 15:33:19 GMT contact [165] * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Introduce a user.events channel This allows to easily add new ... Wed, 25 Mar 2020 10:28:25 GMT contact [144] * trunk/downstream.go (modified) * trunk/user.go (modified) Consume ring buffer for networks added on-the-fly Wed, 25 Mar 2020 09:53:08 GMT contact [143] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Move upstreamConn.ring to network This handles upstream ... Mon, 23 Mar 2020 15:05:00 GMT contact [137] * trunk/downstream.go (modified) * trunk/user.go (modified) Add user.{add,remove}Downstream Sat, 21 Mar 2020 09:24:38 GMT contact [136] * trunk/downstream.go (modified) * trunk/user.go (modified) Add network.upstream helper Sat, 21 Mar 2020 07:29:44 GMT contact [133] * trunk/user.go (modified) Drop messages on closed connections This prevents this panic: ... Fri, 20 Mar 2020 21:48:17 GMT contact [131] * trunk/downstream.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Move upstreamConn.history to network Thu, 19 Mar 2020 00:14:44 GMT delthas [120] * trunk/downstream.go (modified) * trunk/service.go (modified) * trunk/user.go (modified) Add create-network bouncer service command Wed, 18 Mar 2020 23:06:48 GMT delthas [119] * trunk/downstream.go (modified) * trunk/user.go (modified) Add suffixing for multi-upstream connections Wed, 18 Mar 2020 23:06:48 GMT delthas [118] * trunk/db.go (modified) * trunk/schema.sql (modified) * trunk/user.go (modified) schema: add Network.name Mon, 16 Mar 2020 11:44:59 GMT contact [103] * trunk/downstream.go (modified) * trunk/server.go (modified) * trunk/upstream.go (modified) * trunk/user.go (modified) Per-user dispatcher goroutine This allows message handlers to read ... Mon, 16 Mar 2020 10:18:41 GMT contact [101] * trunk/server.go (modified) * trunk/user.go (added) Split user logic into its own file