{ "@context":[ "https://www.w3.org/ns/activitystreams", {"Hashtag":"as:Hashtag","sensitive":"as:sensitive"} ], "published":"2025-10-21T13:33:03.253Z", "attributedTo":"https://epiktistes.com/actors/toddsundsted", "replies":"https://epiktistes.com/objects/D6nqmY05BM4/replies", "to":["https://www.w3.org/ns/activitystreams#Public"], "cc":["https://epiktistes.com/actors/toddsundsted/followers"], "name":"Release v3.1.0 of Ktistec", "content":"

This release of Ktistec merges the main_3.x branch into the main branch.

Managing two branches, and two releases, was a lot of work. And sometimes changes were lost in the shuffle, like:

Added

I have about a dozen more features and fixes that are ready for the next release, but to keep things simple, I'm doing the merge first, in its own commit.

#ktistec #fediverse #activitypub #crystallang

", "contentMap":{ "en-US":"

This release of Ktistec merges the main_3.x branch into the main branch.

Managing two branches, and two releases, was a lot of work. And sometimes changes were lost in the shuffle, like:

Added

I have about a dozen more features and fixes that are ready for the next release, but to keep things simple, I'm doing the merge first, in its own commit.

#ktistec #fediverse #activitypub #crystallang

" }, "mediaType":"text/html", "attachment":[], "tag":[ {"type":"Hashtag","name":"#ktistec","href":"https://epiktistes.com/tags/ktistec"}, {"type":"Hashtag","name":"#fediverse","href":"https://epiktistes.com/tags/fediverse"}, {"type":"Hashtag","name":"#activitypub","href":"https://epiktistes.com/tags/activitypub"}, {"type":"Hashtag","name":"#crystallang","href":"https://epiktistes.com/tags/crystallang"} ], "type":"Note", "id":"https://epiktistes.com/objects/aXIJNBD3ETs" }