Recent activity

[PATCH hare-redis] Surface null values a month ago

From Umar Getagazov to ~sircmpwn/hare-dev

Parse null bulk strings into nullval and surface nullval as void in
commands that return null to signal non-existence of a key.
---
 redis/commands.ha     | 20 ++++++++++----------
 redis/resp2/reader.ha | 16 +++++++++++++++-
 redis/resp2/resp2.ha  |  2 +-
 redis/util.ha         | 17 +++++++++++++----
 4 files changed, 39 insertions(+), 16 deletions(-)

diff --git a/redis/commands.ha b/redis/commands.ha
index 7c1ae55..0b5c4b9 100644
--- a/redis/commands.ha
+++ b/redis/commands.ha
@@ -7,44 +7,44 @@ use strings;
[message trimmed]

[PATCH hare-irc] state: handle QUIT messages a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha |  2 +-
 net/irc/state.ha  | 22 ++++++++++++++++++++++
 2 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index c7a89dd..a30f204 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -81,9 +81,9 @@ export fn dial(addr: str, conf: *config) (*client | error) = {
	on(client, "JOIN", &handle_join, client);
	on(client, "PART", &handle_part, client);
	on(client, "KICK", &handle_kick, client);
	on(client, "QUIT", &handle_quit, client);
[message trimmed]

[PATCH hare-irc] state: handle KICK messages a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha |  3 ++-
 net/irc/state.ha  | 25 +++++++++++++++++++++++++
 2 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index 0ad879d..c7a89dd 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -80,9 +80,10 @@ export fn dial(addr: str, conf: *config) (*client | error) = {
	on(client, "NICK", &handle_nick, client);
	on(client, "JOIN", &handle_join, client);
	on(client, "PART", &handle_part, client);
	on(client, "KICK", &handle_kick, client);
[message trimmed]

[PATCH hare-irc] state: handle PART messages a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha | 22 +++++++++++++---------
 net/irc/state.ha  | 31 +++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 9 deletions(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index 31eb0cd..0ad879d 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -49,6 +49,16 @@ export type channel = struct {
	members: [](rune, str),
};

fn channel_finish(chan: *channel) void = {
[message trimmed]

[PATCH hare-irc] state: handle JOIN messages a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha |  3 ++-
 net/irc/state.ha  | 28 ++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index 1b095ca..31eb0cd 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -68,9 +68,10 @@ export fn dial(addr: str, conf: *config) (*client | error) = {
	on(client, RPL_TOPICWHOTIME, &handle_topicwhotime, client);
	on(client, RPL_NAMREPLY, &handle_namereply, client);
	on(client, "NICK", &handle_nick, client);
	on(client, "JOIN", &handle_join, client);
[message trimmed]

[PATCH hare-irc] state: handle NICK messages a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha |  4 +++-
 net/irc/state.ha  | 23 +++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index 74ffeaf..1b095ca 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -25,6 +25,7 @@ export type client = struct {
	buf: [MAXLEN + 2]u8,
	bufcur: size,
	dirty: size,
	nick: str,
[message trimmed]

[PATCH hare-irc] client: fix free using the wrong index for members a month ago

From Umar Getagazov to ~sircmpwn/public-inbox

---
 net/irc/client.ha | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/irc/client.ha b/net/irc/client.ha
index 2e8b903..74ffeaf 100644
--- a/net/irc/client.ha
+++ b/net/irc/client.ha
@@ -183,7 +183,7 @@ export fn close(client: *client) (void | net::error) = {
		free(chan.topic);
		free(chan.whotime.who);
		for (let j = 0z; j < len(chan.members); j += 1) {
			free(chan.members[i].1);
			free(chan.members[j].1);
[message trimmed]

[PATCH] Fix -create-admin not working on non-POSIX systems a month ago

From Umar Getagazov to ~bouncepaw/mycorrhiza-devel

---
 flag.go     | 65 ++++++++++++++++++++++++++++++++---------------------
 user/net.go |  5 ++++-
 2 files changed, 43 insertions(+), 27 deletions(-)

diff --git a/flag.go b/flag.go
index d6b7bb3..a6901c9 100644
--- a/flag.go
+++ b/flag.go
@@ -1,6 +1,7 @@
package main

import (
	"bufio"
[message trimmed]

[RFC PATCH] Migrate to go-git a month ago

From Umar Getagazov to ~bouncepaw/mycorrhiza-devel

This opens doors for many features like following renames, no run-time
dependencies, clean isolation, extra history features (like rich diffs),
and even an embedded git server! It should also handle errors better,
because now we're in control of every git operation executed, unlike
with shelling out to the git CLI.

---
Review with care! There are probably a lot of edge cases that have bugs

 categories/categories.go                 |  26 +-
 go.mod                                   |  17 +-
 go.sum                                   |  81 +++++-
 help/help.go                             |   3 +-
 history/diff.go                          |  59 ++++
[message trimmed]

[PATCH v2] Migrate /edit to html/template a month ago

From Umar Getagazov to ~bouncepaw/mycorrhiza-devel

---
Changes since v1:
- "You are creating a new hypha" Russian localization fix

I've explored different ways of refactoring the toolbar button code, but
they all looked far worse than the markup in the first version (weird
template functions and map generators, or a run-time template
generator), so I decided to leave it in. It's not actually solvable
using the text/template syntax, which seems to be by design because
templates should be simple and not contain code.

 hypview/hypview.go       |  64 +++++-
 hypview/mutators.qtpl    | 123 -----------
 hypview/mutators.qtpl.go | 452 ---------------------------------------
[message trimmed]