Timeline
Apr 10, 2020:
- 8:45 PM Changeset in code [255] by
- Set up DB migration infrastructure The database is now initialized …
- 8:37 PM Changeset in code [254] by
- doc: fix SQL driver name in manpage
- 5:22 PM Changeset in code [253] by
- Per-entity ring buffers Instead of having one ring buffer per …
- 8:16 AM Changeset in code [252] by
- Allow users to change password in client Added a BouncerServ command …
- 8:09 AM Changeset in code [251] by
- Add ability to change password
Apr 8, 2020:
- 8:19 AM Changeset in code [250] by
- Parse timestamp from message tags in messageLogger.Append
Apr 7, 2020:
- 8:30 PM Changeset in code [249] by
- Document downstreamConn.{,un}marshalEntity
- 7:54 PM Changeset in code [248] by
- Make newMessageLogger take a *network instead of an *upstreamConn …
- 7:50 PM Changeset in code [247] by
- Extract logic to build log filepath into a function This will get …
- 5:57 PM Changeset in code [246] by
- Remove outdated comment Locks are gone for good.
- 5:45 PM Changeset in code [245] by
- Centralize logged messages marshaling This allows messages added to …
- 1:02 PM Changeset in code [244] by
- Fix upstream NICK handling - uc.nicl was compared to msg.Prefix.Name …
- 12:46 PM Changeset in code [243] by
- Remove Ring.consumers We don't need to keep track of consumers anymore.
- 12:45 PM Changeset in code [242] by
- Make Ring.NewConsumer seq argument mandatory There's no point in …
- 12:42 PM Changeset in code [241] by
- Remove Ring.Close This is unused.
Apr 6, 2020:
- 8:05 PM Changeset in code [240] by
- Fix server-time tags timezone We need to use UTC time.
- 7:42 PM Changeset in code [239] by
- Make upstreamConn.produce log messages
- 7:34 PM Changeset in code [238] by
- Add origin argument to upstreamConn.produce
- 5:11 PM Changeset in code [237] by
- Remove network.lock network.conn is now only accessed from the user …
- 5:08 PM Changeset in code [236] by
- Remove downstreamConn.ourMessages We can just do the filtering when …
- 4:49 PM Changeset in code [235] by
- Log TOPIC messages See [1]. [1]: …
- 4:45 PM Changeset in code [234] by
- Fix NOTICE log formatting ZNC uses hyphens instead of angle brackets …
- 4:34 PM Changeset in code [233] by
- Simplify ring consumer loop No need to use Peek here.
- 4:33 PM Changeset in code [232] by
- Remove RingConsumer.Close This is now unused.
- 4:31 PM Changeset in code [231] by
- Remove downstreamConn.ringConsumers We no longer need long-lived ring …
- 4:23 PM Changeset in code [230] by
- Remove downstreamConn.lock Everything is now accessed from the user …
- 4:18 PM Changeset in code [229] by
- Remove locks from ring buffer Everything is now accessed from the …
- 4:13 PM Changeset in code [228] by
- Remove channel from ring buffer consumers This is unused.
- 4:05 PM Changeset in code [227] by
- Remove per-network ring buffer goroutines Just dispatch from the user …
- 3:28 PM Changeset in code [226] by
- Introduce upstreamConn.produce The logic in this function is about to …
Apr 5, 2020:
- 1:24 PM Changeset in code [225] by
- Use Network.GetName for logs path
- 1:20 PM Changeset in code [224] by
- Only print addr if necessary in network status service command
- 1:15 PM Changeset in code [223] by
- Use Network.GetName in network status NOTICE messages
- 1:04 PM Changeset in code [222] by
- Add network.{createUpdate,delete}Channel These are about to get more …
Apr 4, 2020:
- 3:34 PM Changeset in code [221] by
- Remove unused entityLog struct Since the logging refactoring in …
- 3:34 PM Changeset in code [220] by
- Fill all fields of the service user prefix On some IRC clients, …
- 3:34 PM Changeset in code [219] by
- Send the last error for disconnected networks in network status This …
- 3:33 PM Changeset in code [218] by
- Send one NOTICE on new upstream disconnect/connect errors In order to …
Apr 3, 2020:
- 7:00 PM Changeset in code [217] by
- Add NOTICE messages to ring buffer References: …
- 6:48 PM Changeset in code [216] by
- Add time tag to all messages
- 4:59 PM Changeset in code [215] by
- Introduce messageLogger This centralizes formatting related to …
- 3:25 PM Changeset in code [214] by
- doc: document auto-away feature
- 3:15 PM Changeset in code [213] by
- Log self-messages too Closes: https://todo.sr.ht/~emersion/soju/44
- 3:01 PM Changeset in code [212] by
- Use conn.ReadMessage instead of irc.Conn.ReadMessage
- 2:55 PM Changeset in code [211] by
- Add support for downstream echo-message extension
- 2:35 PM Changeset in code [210] by
- Introduce conn for common connection logic This centralizes the …
- 2:15 PM Changeset in code [209] by
- Fix writer goroutine races Any SendMessage call after Close could …
Apr 1, 2020:
- 3:38 PM Changeset in code [208] by
- doc: document "network delete"
- 3:34 PM Changeset in code [207] by
- Fix SQL error logged on JOIN Closes: https://todo.sr.ht/~emersion/soju/40
- 2:41 PM Changeset in code [206] by
- Set connect timeout References: https://todo.sr.ht/~emersion/soju/26
- 2:27 PM Changeset in code [205] by
- Set write deadlines References: https://todo.sr.ht/~emersion/soju/26
- 2:02 PM Changeset in code [204] by
- Simplify ring consumer goroutine Since network.history is now only …
- 1:48 PM Changeset in code [203] by
- Stop ring consumers when deleting network
- 1:40 PM Changeset in code [202] by
- Add "network delete" service command And add all the infrastructure …
- 1:04 PM Changeset in code [201] by
- Make user.getNetwork handle Network.Name
- 12:58 PM Changeset in code [200] by
- config: use shlex This simplifies parsing and allows quoting words. …
- 10:21 AM Changeset in code [199] by
- Set network.conn in user goroutine One step closed to removing that lock.
- 10:16 AM Changeset in code [198] by
- Auto away Closes: https://todo.sr.ht/~emersion/soju/13
- 10:14 AM Changeset in code [197] by
- Only set network.conn when registered
- 10:05 AM Changeset in code [196] by
- Add eventUpstreamConnected This is used in the next commit.
Mar 31, 2020:
- 8:21 PM Changeset in code [195] by
- Fix log dir permission We need the permission to list files in the dir.
- 5:50 PM Changeset in code [194] by
- Add downstream support for server-time
- 5:45 PM Changeset in code [193] by
- Request server-time cap If the server didn't populate the time tag, …
- 5:41 PM Changeset in code [192] by
- Avoid directly forwarding NOTICE messages This would forward tags …
- 5:39 PM Changeset in code [191] by
- Expose message-tags capability downstream Strip tags if the client …
- 5:02 PM Changeset in code [190] by
- Make "@" and "/" indicate client name and network, respectively This …
- 4:41 PM Changeset in code [189] by
- readme: advise connecting with "<username>/<network>" This matches …
- 4:16 PM Changeset in code [188] by
- Consume ring messages outside of writer goroutine This fixes …
- 3:30 PM Changeset in code [187] by
- Rename AppendLog to appendLog This function is only safe to call from …
Mar 28, 2020:
- 7:00 PM Changeset in code [186] by
- Fix missing upstreamConn.closed initialization Fixes: b33e5f29abbe …
- 4:36 PM Changeset in code [185] by
- Use clientName to decide whether or not history should be sent …
- 4:28 PM Changeset in code [184] by
- Remove downstreamConn.username Replace it with …
- 4:25 PM Changeset in code [183] by
- Add downstreamConn.clientName
- 9:40 AM Changeset in code [182] by
- Update password on NickServ SET PASSWORD message
- 12:03 AM Changeset in code [181] by
- s/List/LIST/ when referring to the command
Mar 27, 2020:
- 11:54 PM Changeset in code [180] by
- Document functions safe to call from any goroutine
- 11:51 PM Changeset in code [179] by
- Introduce eventUpstreamDisconnected This allows us to perform cleanup …
- 11:07 PM Changeset in code [178] by
- Add support for bouncer logs Add bouncer logs, in a …
- 11:07 PM Changeset in code [177] by
- Add LIST support This commit adds support for downstream LIST …
- 11:07 PM Changeset in code [176] by
- Make upstream.SendMessageLabeled use an uint64 id This commit is …
- 10:08 PM Changeset in code [175] by
- Fix race condition in upstreamConn.Close upstreamConn.closed was a …
- 9:53 PM Changeset in code [174] by
- Fix parsing wrong empty element in RPL_WHOISCHANNELS channel list …
- 9:38 PM Changeset in code [173] by
- Stop accessing user data in downstreamConn.authenticate This becomes …
- 9:24 PM Changeset in code [172] by
- Get rid of Server.downstreamConns This is unused right now. Let's …
- 8:12 PM Changeset in code [171] by
- Marshal NOTICE user prefixes and channels NOTICE messages can be both …
- 6:49 PM Changeset in code [170] by
- doc: add basic architecture document
- 6:23 PM Changeset in code [169] by
- Move man page to doc/
- 6:17 PM Changeset in code [168] by
- Nuke user.lock Split user.register into two functions, one to make …
- 4:55 PM Changeset in code [167] by
- Add eventDownstreamDisconnected This should remove the need for …
- 4:21 PM Changeset in code [166] by
- Add eventDownstreamConnected In a later commit, we'll be able to move …
- 3:33 PM Changeset in code [165] by
- Introduce a user.events channel This allows to easily add new events, …
- 8:40 AM Changeset in code [164] by
- Add downstream NOTICE support
Mar 26, 2020:
- 9:43 PM Changeset in code [163] by
- Add downstream INVITE support
- 9:33 PM Changeset in code [162] by
- Add upstream RPL_CREATIONTIME support
- 9:28 PM Changeset in code [161] by
- Fix capitalization of 'id' Following the Go project source code …
- 9:27 PM Changeset in code [160] by
- Add downstream TOPIC support
Mar 25, 2020:
- 11:15 PM Changeset in code [159] by
- Add KICK support Downstream and upstream message handling are …
- 11:12 PM Changeset in code [158] by
- Simplify error handling for downstream JOIN/PART …
- 10:21 PM Changeset in code [157] by
- Fix wrong handling of members parameter of RPL_NAMREPLY Some servers …
- 10:21 PM Changeset in code [156] by
- Route NAMES, WHO, WHOIS replies to the requesting downstream Using …
- 10:20 PM Changeset in code [155] by
- Add upstream labeled-response capability support
- 10:17 PM Changeset in code [154] by
- Add a server-unique id to each downstream Adding a simple uint64 id …
- 10:16 PM Changeset in code [153] by
- Add upstream batch capability support
- 10:15 PM Changeset in code [152] by
- Add upstream message-tags capability support
- 9:57 PM Changeset in code [151] by
- Add a "network status" command
- 8:03 PM Changeset in code [150] by
- Make BouncerServ commands a tree For instance, replace …
- 1:23 PM Changeset in code [149] by
- Correctly set Channel.ID in DB.StoreChannel
- 1:15 PM Changeset in code [148] by
- Error out when storing unsupported SASL mechanism in DB
- 12:44 PM Changeset in code [147] by
- gitignore: add soju.db and soju.1
- 10:54 AM Changeset in code [146] by
- Add support for channel keys
- 10:32 AM Changeset in code [145] by
- Handle downstream JOIN/PART with multiple channel names Closes: …
- 10:28 AM Changeset in code [144] by
- Consume ring buffer for networks added on-the-fly
- 9:53 AM Changeset in code [143] by
- Move upstreamConn.ring to network This handles upstream disconnection …
- 8:51 AM Changeset in code [142] by
- Add downstream self WHO and WHOIS support
- 8:48 AM Changeset in code [141] by
- Add user hostname to downstream user prefix
- 8:47 AM Changeset in code [140] by
- Add downstream NAMES support NAMES reply for channels currently …
- 8:40 AM Changeset in code [139] by
- Add MODE arguments support - Add RPL_ISUPPORT support with CHANMODES, …
Mar 24, 2020:
- 8:22 AM Changeset in code [138] by
- Add more details to ring buffer panics
Mar 23, 2020:
- 3:05 PM Changeset in code [137] by
- Add user.{add,remove}Downstream
Mar 21, 2020:
- 9:24 AM Changeset in code [136] by
- Add network.upstream helper
- 7:44 AM Changeset in code [135] by
- Fix typo
- 7:41 AM Changeset in code [134] by
- Fix empty SASL challenge message We were sending an empty string. We …
- 7:29 AM Changeset in code [133] by
- Drop messages on closed connections This prevents this panic: …
Mar 20, 2020:
- 9:53 PM Changeset in code [132] by
- Avoid sending JOIN twice for the same channel
- 9:48 PM Changeset in code [131] by
- Move upstreamConn.history to network
- 9:42 AM Changeset in code [130] by
- Fix deadlocks in single-upstream mode
- 9:11 AM Changeset in code [129] by
- Fix MODE downstream support - Fix replies without client as first …
- 9:11 AM Changeset in code [128] by
- Add WHOIS support
Mar 19, 2020:
- 11:29 PM Changeset in code [127] by
- Add WHO support
- 2:11 PM Changeset in code [126] by
- Add basic Makefile
- 1:51 PM Changeset in code [125] by
- Remove some IRCv3 constants go-irc v3.1.2 adds some missing IRCv3 …
- 1:44 PM Changeset in code [124] by
- Fix history name dc.username contains the raw account username, not …
- 1:33 PM Changeset in code [123] by
- readme: add ref to man page, add link to GitHub repo
- 1:18 PM Changeset in code [122] by
- man: fix typo
- 1:16 PM Changeset in code [121] by
- man: add basic man page
- 12:14 AM Changeset in code [120] by
- Add create-network bouncer service command
Mar 18, 2020:
- 11:06 PM Changeset in code [119] by
- Add suffixing for multi-upstream connections
- 11:06 PM Changeset in code [118] by
- schema: add Network.name
- 11:23 AM Changeset in code [117] by
- Add basic infrastructure for bouncer service
- 9:28 AM Changeset in code [116] by
- ci: add builds.sr.ht manifest
- 9:26 AM Changeset in code [115] by
- Add upstream INVITE support
Mar 17, 2020:
- 3:17 PM Changeset in code [114] by
- Fix typo
- 3:15 PM Changeset in code [113] by
- Fix echo PRIVMSG messages
Mar 16, 2020:
- 3:16 PM Changeset in code [112] by
- Add downstream SASL support
- 2:12 PM Changeset in code [111] by
- Allow CAP command when registered
- 2:10 PM Changeset in code [110] by
- Log downstream messages before registration
- 2:08 PM Changeset in code [109] by
- Protect upstreamConn.history with a lock
- 2:05 PM Changeset in code [108] by
- Add CAP support for downstream connections
- 1:32 PM Changeset in code [107] by
- Don't reply to PING when client is unregistered
- 1:30 PM Changeset in code [106] by
- Make downstreamConn.runUntilegistered exit with an error on EOF
- 1:28 PM Changeset in code [105] by
- Echo downstream PRIVMSGs to other downstream connections
- 1:05 PM Changeset in code [104] by
- Rename consumption to ringMessage
- 11:44 AM Changeset in code [103] by
- Per-user dispatcher goroutine This allows message handlers to read …
- 10:26 AM Changeset in code [102] by
- Rename messages channels to outgoing
- 10:18 AM Changeset in code [101] by
- Split user logic into its own file
- 8:32 AM Changeset in code [100] by
- Strip client & network name from username
Mar 13, 2020:
- 5:14 PM Changeset in code [99] by
- Add sojuctl to .gitignore
- 5:13 PM Changeset in code [98] by
- Rename project to soju
- 3:39 PM Changeset in code [97] by
- Forward NOTICE messages coming from upstream connections
- 3:18 PM Changeset in code [96] by
- Update dependencies go-irc v3.1.1 contains a breaking change. …
- 2:12 PM Changeset in code [95] by
- Add support for SASL authentication We now store SASL credentials in …
- 11:30 AM Changeset in code [94] by
- schema: add Channel.key
- 11:06 AM Changeset in code [93] by
- Add support for upstream PASS command
- 10:26 AM Changeset in code [92] by
- Add upstream CAP LS support
Note:
See TracTimeline
for information about the timeline view.