<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sliderule.git, branch v1.6.4</title>
<subtitle>The small web toolkit for Go
</subtitle>
<id>https://code.tjp.lol/sliderule.git/atom?h=v1.6.4</id>
<link rel='self' href='https://code.tjp.lol/sliderule.git/atom?h=v1.6.4'/>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/'/>
<updated>2026-07-01T16:47:36Z</updated>
<entry>
<title>Harden Gopher parsing and recover server goroutines</title>
<updated>2026-07-01T16:47:36Z</updated>
<author>
<name>T</name>
<email>t@tjp.lol</email>
</author>
<published>2025-04-03T16:00:40Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=748a806adc5a325e63ca6883b2aa9bf15da90513'/>
<id>urn:sha1:748a806adc5a325e63ca6883b2aa9bf15da90513</id>
<content type='text'>
Reject oversized or malformed Gopher selectors as parse errors instead of panicking. Keep search requests bounded, and wrap shared server goroutines with panic logging so one bad connection cannot take down the process.
</content>
</entry>
<entry>
<title>linter nits</title>
<updated>2025-04-03T15:59:24Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2025-04-03T15:32:22Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=74bbf67ebbd1325ff699a052933ad94bc0401c58'/>
<id>urn:sha1:74bbf67ebbd1325ff699a052933ad94bc0401c58</id>
<content type='text'>
</content>
</entry>
<entry>
<title>empty path handling for spartan/gemini clients and servers</title>
<updated>2025-04-03T15:53:01Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2025-04-03T15:51:32Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=2e5ac8b9e1f2f705455d74750e465c2066ffdc7c'/>
<id>urn:sha1:2e5ac8b9e1f2f705455d74750e465c2066ffdc7c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add response.Request in the http client</title>
<updated>2024-01-15T20:41:09Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-15T20:41:09Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=e111dae3f83831874d83ffe0349839a1cffcbaf7'/>
<id>urn:sha1:e111dae3f83831874d83ffe0349839a1cffcbaf7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tolerate bare newlines in gophermap parsing (non CRLF)</title>
<updated>2024-01-15T02:53:10Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-15T02:53:10Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=751f423f11bf6fd848a074b2575cc00fdb6c3bad'/>
<id>urn:sha1:751f423f11bf6fd848a074b2575cc00fdb6c3bad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>dial timeouts for clients, and catch up on test fixes</title>
<updated>2024-01-13T18:29:17Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-13T18:29:17Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=4d861a2c395c0926b066014b92999d4dda454b2b'/>
<id>urn:sha1:4d861a2c395c0926b066014b92999d4dda454b2b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>handle relative redirects</title>
<updated>2024-01-10T18:10:09Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-10T18:07:48Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=de1490808fa6e4d6749ff29d20cc1a589ec476d1'/>
<id>urn:sha1:de1490808fa6e4d6749ff29d20cc1a589ec476d1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>function to get names of gemini response codes</title>
<updated>2024-01-10T18:10:09Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-10T18:07:17Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=b2ff86d213128bb6f9ec9fa017ee4d566c77a397'/>
<id>urn:sha1:b2ff86d213128bb6f9ec9fa017ee4d566c77a397</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add a *Request to Response</title>
<updated>2024-01-10T18:10:09Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-10T18:06:53Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=b6c0ba24cf5902e6bafff4243979bb12010aa142'/>
<id>urn:sha1:b6c0ba24cf5902e6bafff4243979bb12010aa142</id>
<content type='text'>
</content>
</entry>
<entry>
<title>titan support in the client.Upload() method</title>
<updated>2024-01-04T19:49:54Z</updated>
<author>
<name>tjp</name>
<email>tjp@ctrl-c.club</email>
</author>
<published>2024-01-04T19:49:54Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/sliderule.git/commit/?id=b09d2de941b65956eb7c748e3ce44ff568d4c2af'/>
<id>urn:sha1:b09d2de941b65956eb7c748e3ce44ff568d4c2af</id>
<content type='text'>
</content>
</entry>
</feed>
