<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Release v3.1.3 of Ktistec]]></title><description><![CDATA[<p>There are two big features in <a href="https://github.com/toddsundsted/ktistec/compare/c460d486...c06caebe">release v3.1.3</a> of Ktistec: auto-approve followers and a new image viewer.</p><p><em>Auto-approve followers</em> is conceptually simple ("the server automatically sends an <code>Accept</code> activity when it receives a <code>Follow</code> activity") but it required extensive changes to some of the oldest code in the codebase: the inboxes and outboxes controllers. I refactored inbox and outbox side-effect processing into independent services, which made it possible to support side-effects like auto-approve follow (and also auto-follow back), without having to go through the controllers.</p><p>A more significant change for me personally was replacing the lightGallery image gallery (an external dependency) with <em>my own implementation</em>. It's not as slick, and not as full of features—I wrote it in two days—but it is <em>fully free software</em>, and that's important to me.</p><p><strong>Added</strong></p><ul><li>Add admin page for managing OAuth access tokens.</li><li>Add support for auto-approve followers. (fixes <a href="https://github.com/toddsundsted/ktistec/issues/26">#26</a>)</li><li>Add support for auto-follow back.</li></ul><p><strong>Fixed</strong></p><ul><li>Prevent triggering actor refresh when user is anonymous.</li></ul><p><strong>Changed</strong></p><ul><li>Replace "lightgallery" dependency with custom image viewer.</li><li>Set OAuth access token expiry to 30 days (previously expired after 24 hours).</li><li>Refactor inbox and outbox processing into dedicated processor services.</li></ul><p>The OAuth changes set the groundwork for better support of the Mastodon API and the Fediverse clients that depend on it. Stay tuned!</p><p><a href="https://epiktistes.com/tags/ktistec" rel="tag">#ktistec</a> <a href="https://epiktistes.com/tags/fediverse" rel="tag">#fediverse</a> <a href="https://epiktistes.com/tags/activitypub" rel="tag">#activitypub</a> <a href="https://epiktistes.com/tags/crystallang" rel="tag">#crystallang</a></p>]]></description><link>https://bb.devnull.land/topic/3be948c0-9683-427f-8363-7c909b09f741/release-v3.1.3-of-ktistec</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Jul 2026 01:58:26 GMT</lastBuildDate><atom:link href="https://bb.devnull.land/topic/3be948c0-9683-427f-8363-7c909b09f741.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 05 Nov 2025 13:13:01 GMT</pubDate><ttl>60</ttl></channel></rss>