Timeline



Apr 17, 2020:

4:29 PM Changeset in code [266] by contact
doc/architecture: ring buffers are now per-channel

Apr 16, 2020:

4:55 PM Changeset in code [265] by contact
readme: fix ref to manpage
4:54 PM Changeset in code [264] by contact
doc: describe more default settings
3:38 PM Changeset in code [263] by delthas
Add support for custom network on-connect commands Some servers use …
3:25 PM Changeset in code [262] by contact
Fix typo
3:23 PM Changeset in code [261] by contact
Support sending history when upstream is disconnected Previously, we …
3:19 PM Changeset in code [260] by contact
Make downstreamConn.marshal{Entity,UserPrefix} take a network This …
2:57 PM Changeset in code [259] by contact
Kill downstreamConn.marshal{Nick,Channel} We can just use …
2:54 PM Changeset in code [258] by contact
Disallow marshalling for anotehr network
2:33 PM Changeset in code [257] by contact
Unify downstreamConn.marshal{Entity,Nick,Channel} We don't actually …

Apr 15, 2020:

9:29 AM Changeset in code [256] by contact
Add support for downstream batch & chathistory

Apr 10, 2020:

8:45 PM Changeset in code [255] by contact
Set up DB migration infrastructure The database is now initialized …
8:37 PM Changeset in code [254] by contact
doc: fix SQL driver name in manpage
5:22 PM Changeset in code [253] by contact
Per-entity ring buffers Instead of having one ring buffer per …
8:16 AM Changeset in code [252] by admin
Allow users to change password in client Added a BouncerServ command …
8:09 AM Changeset in code [251] by admin
Add ability to change password

Apr 8, 2020:

8:19 AM Changeset in code [250] by contact
Parse timestamp from message tags in messageLogger.Append

Apr 7, 2020:

8:30 PM Changeset in code [249] by contact
Document downstreamConn.{,un}marshalEntity
7:54 PM Changeset in code [248] by contact
Make newMessageLogger take a *network instead of an *upstreamConn …
7:50 PM Changeset in code [247] by contact
Extract logic to build log filepath into a function This will get …
5:57 PM Changeset in code [246] by contact
Remove outdated comment Locks are gone for good.
5:45 PM Changeset in code [245] by contact
Centralize logged messages marshaling This allows messages added to …
1:02 PM Changeset in code [244] by contact
Fix upstream NICK handling - uc.nicl was compared to msg.Prefix.Name …
12:46 PM Changeset in code [243] by contact
Remove Ring.consumers We don't need to keep track of consumers anymore.
12:45 PM Changeset in code [242] by contact
Make Ring.NewConsumer seq argument mandatory There's no point in …
12:42 PM Changeset in code [241] by contact
Remove Ring.Close This is unused.

Apr 6, 2020:

8:05 PM Changeset in code [240] by contact
Fix server-time tags timezone We need to use UTC time.
7:42 PM Changeset in code [239] by contact
Make upstreamConn.produce log messages
7:34 PM Changeset in code [238] by contact
Add origin argument to upstreamConn.produce
5:11 PM Changeset in code [237] by contact
Remove network.lock network.conn is now only accessed from the user …
5:08 PM Changeset in code [236] by contact
Remove downstreamConn.ourMessages We can just do the filtering when …
4:49 PM Changeset in code [235] by contact
Log TOPIC messages See [1]. [1]: …
4:45 PM Changeset in code [234] by contact
Fix NOTICE log formatting ZNC uses hyphens instead of angle brackets …
4:34 PM Changeset in code [233] by contact
Simplify ring consumer loop No need to use Peek here.
4:33 PM Changeset in code [232] by contact
Remove RingConsumer.Close This is now unused.
4:31 PM Changeset in code [231] by contact
Remove downstreamConn.ringConsumers We no longer need long-lived ring …
4:23 PM Changeset in code [230] by contact
Remove downstreamConn.lock Everything is now accessed from the user …
4:18 PM Changeset in code [229] by contact
Remove locks from ring buffer Everything is now accessed from the …
4:13 PM Changeset in code [228] by contact
Remove channel from ring buffer consumers This is unused.
4:05 PM Changeset in code [227] by contact
Remove per-network ring buffer goroutines Just dispatch from the user …
3:28 PM Changeset in code [226] by contact
Introduce upstreamConn.produce The logic in this function is about to …

Apr 5, 2020:

1:24 PM Changeset in code [225] by contact
Use Network.GetName for logs path
1:20 PM Changeset in code [224] by contact
Only print addr if necessary in network status service command
1:15 PM Changeset in code [223] by contact
Use Network.GetName in network status NOTICE messages
1:04 PM Changeset in code [222] by contact
Add network.{createUpdate,delete}Channel These are about to get more …

Apr 4, 2020:

3:34 PM Changeset in code [221] by delthas
Remove unused entityLog struct Since the logging refactoring in …
3:34 PM Changeset in code [220] by delthas
Fill all fields of the service user prefix On some IRC clients, …
3:34 PM Changeset in code [219] by delthas
Send the last error for disconnected networks in network status This …
3:33 PM Changeset in code [218] by delthas
Send one NOTICE on new upstream disconnect/connect errors In order to …

Apr 3, 2020:

7:00 PM Changeset in code [217] by contact
Add NOTICE messages to ring buffer References: …
6:48 PM Changeset in code [216] by contact
Add time tag to all messages
4:59 PM Changeset in code [215] by contact
Introduce messageLogger This centralizes formatting related to …
3:25 PM Changeset in code [214] by contact
doc: document auto-away feature
3:15 PM Changeset in code [213] by contact
Log self-messages too Closes: https://todo.sr.ht/~emersion/soju/44
3:01 PM Changeset in code [212] by contact
Use conn.ReadMessage instead of irc.Conn.ReadMessage
2:55 PM Changeset in code [211] by contact
Add support for downstream echo-message extension
2:35 PM Changeset in code [210] by contact
Introduce conn for common connection logic This centralizes the …
2:15 PM Changeset in code [209] by contact
Fix writer goroutine races Any SendMessage call after Close could …

Apr 1, 2020:

3:38 PM Changeset in code [208] by contact
doc: document "network delete"
3:34 PM Changeset in code [207] by contact
Fix SQL error logged on JOIN Closes: https://todo.sr.ht/~emersion/soju/40
2:41 PM Changeset in code [206] by contact
Set connect timeout References: https://todo.sr.ht/~emersion/soju/26
2:27 PM Changeset in code [205] by contact
Set write deadlines References: https://todo.sr.ht/~emersion/soju/26
2:02 PM Changeset in code [204] by contact
Simplify ring consumer goroutine Since network.history is now only …
1:48 PM Changeset in code [203] by contact
Stop ring consumers when deleting network
1:40 PM Changeset in code [202] by contact
Add "network delete" service command And add all the infrastructure …
1:04 PM Changeset in code [201] by contact
Make user.getNetwork handle Network.Name
12:58 PM Changeset in code [200] by contact
config: use shlex This simplifies parsing and allows quoting words. …
10:21 AM Changeset in code [199] by contact
Set network.conn in user goroutine One step closed to removing that lock.
10:16 AM Changeset in code [198] by contact
Auto away Closes: https://todo.sr.ht/~emersion/soju/13
10:14 AM Changeset in code [197] by contact
Only set network.conn when registered
10:05 AM Changeset in code [196] by contact
Add eventUpstreamConnected This is used in the next commit.

Mar 31, 2020:

8:21 PM Changeset in code [195] by contact
Fix log dir permission We need the permission to list files in the dir.
5:50 PM Changeset in code [194] by contact
Add downstream support for server-time
5:45 PM Changeset in code [193] by contact
Request server-time cap If the server didn't populate the time tag, …
5:41 PM Changeset in code [192] by contact
Avoid directly forwarding NOTICE messages This would forward tags …
5:39 PM Changeset in code [191] by contact
Expose message-tags capability downstream Strip tags if the client …
5:02 PM Changeset in code [190] by contact
Make "@" and "/" indicate client name and network, respectively This …
4:41 PM Changeset in code [189] by contact
readme: advise connecting with "<username>/<network>" This matches …
4:16 PM Changeset in code [188] by contact
Consume ring messages outside of writer goroutine This fixes …
3:30 PM Changeset in code [187] by contact
Rename AppendLog to appendLog This function is only safe to call from …

Mar 28, 2020:

7:00 PM Changeset in code [186] by contact
Fix missing upstreamConn.closed initialization Fixes: b33e5f29abbe …
4:36 PM Changeset in code [185] by contact
Use clientName to decide whether or not history should be sent …
4:28 PM Changeset in code [184] by contact
Remove downstreamConn.username Replace it with …
4:25 PM Changeset in code [183] by contact
Add downstreamConn.clientName
9:40 AM Changeset in code [182] by contact
Update password on NickServ SET PASSWORD message
12:03 AM Changeset in code [181] by contact
s/List/LIST/ when referring to the command

Mar 27, 2020:

11:54 PM Changeset in code [180] by contact
Document functions safe to call from any goroutine
11:51 PM Changeset in code [179] by contact
Introduce eventUpstreamDisconnected This allows us to perform cleanup …
11:07 PM Changeset in code [178] by delthas
Add support for bouncer logs Add bouncer logs, in a …
11:07 PM Changeset in code [177] by delthas
Add LIST support This commit adds support for downstream LIST …
11:07 PM Changeset in code [176] by delthas
Make upstream.SendMessageLabeled use an uint64 id This commit is …
10:08 PM Changeset in code [175] by contact
Fix race condition in upstreamConn.Close upstreamConn.closed was a …
9:53 PM Changeset in code [174] by delthas
Fix parsing wrong empty element in RPL_WHOISCHANNELS channel list …
9:38 PM Changeset in code [173] by contact
Stop accessing user data in downstreamConn.authenticate This becomes …
9:24 PM Changeset in code [172] by contact
Get rid of Server.downstreamConns This is unused right now. Let's …
8:12 PM Changeset in code [171] by delthas
Marshal NOTICE user prefixes and channels NOTICE messages can be both …
6:49 PM Changeset in code [170] by contact
doc: add basic architecture document
6:23 PM Changeset in code [169] by contact
Move man page to doc/
6:17 PM Changeset in code [168] by contact
Nuke user.lock Split user.register into two functions, one to make …
4:55 PM Changeset in code [167] by contact
Add eventDownstreamDisconnected This should remove the need for …
4:21 PM Changeset in code [166] by contact
Add eventDownstreamConnected In a later commit, we'll be able to move …
3:33 PM Changeset in code [165] by contact
Introduce a user.events channel This allows to easily add new events, …
8:40 AM Changeset in code [164] by delthas
Add downstream NOTICE support

Mar 26, 2020:

9:43 PM Changeset in code [163] by delthas
Add downstream INVITE support
9:33 PM Changeset in code [162] by delthas
Add upstream RPL_CREATIONTIME support
9:28 PM Changeset in code [161] by delthas
Fix capitalization of 'id' Following the Go project source code …
9:27 PM Changeset in code [160] by delthas
Add downstream TOPIC support

Mar 25, 2020:

11:15 PM Changeset in code [159] by delthas
Add KICK support Downstream and upstream message handling are …
11:12 PM Changeset in code [158] by delthas
Simplify error handling for downstream JOIN/PART …
10:21 PM Changeset in code [157] by delthas
Fix wrong handling of members parameter of RPL_NAMREPLY Some servers …
10:21 PM Changeset in code [156] by delthas
Route NAMES, WHO, WHOIS replies to the requesting downstream Using …
10:20 PM Changeset in code [155] by delthas
Add upstream labeled-response capability support
10:17 PM Changeset in code [154] by delthas
Add a server-unique id to each downstream Adding a simple uint64 id …
10:16 PM Changeset in code [153] by delthas
Add upstream batch capability support
10:15 PM Changeset in code [152] by delthas
Add upstream message-tags capability support
9:57 PM Changeset in code [151] by contact
Add a "network status" command
8:03 PM Changeset in code [150] by contact
Make BouncerServ commands a tree For instance, replace …
1:23 PM Changeset in code [149] by contact
Correctly set Channel.ID in DB.StoreChannel
1:15 PM Changeset in code [148] by contact
Error out when storing unsupported SASL mechanism in DB
12:44 PM Changeset in code [147] by contact
gitignore: add soju.db and soju.1
10:54 AM Changeset in code [146] by contact
Add support for channel keys
10:32 AM Changeset in code [145] by contact
Handle downstream JOIN/PART with multiple channel names Closes: …
10:28 AM Changeset in code [144] by contact
Consume ring buffer for networks added on-the-fly
9:53 AM Changeset in code [143] by contact
Move upstreamConn.ring to network This handles upstream disconnection …
8:51 AM Changeset in code [142] by delthas
Add downstream self WHO and WHOIS support
8:48 AM Changeset in code [141] by delthas
Add user hostname to downstream user prefix
8:47 AM Changeset in code [140] by delthas
Add downstream NAMES support NAMES reply for channels currently …
8:40 AM Changeset in code [139] by delthas
Add MODE arguments support - Add RPL_ISUPPORT support with CHANMODES, …

Mar 24, 2020:

8:22 AM Changeset in code [138] by contact
Add more details to ring buffer panics

Mar 23, 2020:

3:05 PM Changeset in code [137] by contact
Add user.{add,remove}Downstream

Mar 21, 2020:

9:24 AM Changeset in code [136] by contact
Add network.upstream helper
7:44 AM Changeset in code [135] by contact
Fix typo
7:41 AM Changeset in code [134] by contact
Fix empty SASL challenge message We were sending an empty string. We …
7:29 AM Changeset in code [133] by contact
Drop messages on closed connections This prevents this panic: …

Mar 20, 2020:

9:53 PM Changeset in code [132] by contact
Avoid sending JOIN twice for the same channel
9:48 PM Changeset in code [131] by contact
Move upstreamConn.history to network
9:42 AM Changeset in code [130] by contact
Fix deadlocks in single-upstream mode
9:11 AM Changeset in code [129] by delthas
Fix MODE downstream support - Fix replies without client as first …
9:11 AM Changeset in code [128] by delthas
Add WHOIS support

Mar 19, 2020:

11:29 PM Changeset in code [127] by delthas
Add WHO support
2:11 PM Changeset in code [126] by contact
Add basic Makefile
1:51 PM Changeset in code [125] by contact
Remove some IRCv3 constants go-irc v3.1.2 adds some missing IRCv3 …
1:44 PM Changeset in code [124] by contact
Fix history name dc.username contains the raw account username, not …
1:33 PM Changeset in code [123] by contact
readme: add ref to man page, add link to GitHub repo
1:18 PM Changeset in code [122] by contact
man: fix typo
1:16 PM Changeset in code [121] by contact
man: add basic man page
12:14 AM Changeset in code [120] by delthas
Add create-network bouncer service command

Mar 18, 2020:

11:06 PM Changeset in code [119] by delthas
Add suffixing for multi-upstream connections
11:06 PM Changeset in code [118] by delthas
schema: add Network.name
11:23 AM Changeset in code [117] by contact
Add basic infrastructure for bouncer service
9:28 AM Changeset in code [116] by contact
ci: add builds.sr.ht manifest
9:26 AM Changeset in code [115] by delthas
Add upstream INVITE support
Note: See TracTimeline for information about the timeline view.