What's new
Every release of the apps and the relay, newest first. Written for people using Flamenet Messenger; the parts that only matter if you run your own relay are at the bottom of each release.
2026-09-18
android 0.28 ios 0.28.0
The conversation stops looking like a stack of boxes, and every screen on the iPhone finally says which screen it is.
- Changed, Messages sat in square boxes. They are rounded now on both phones, except for one corner, which stays square and points at whoever wrote the message: yours at the bottom right, theirs at the top left. A bubble rounded all the way round is the shape every other messenger draws, and that corner is what keeps this one telling you which side a message came from without reading it.
- Fixed, On the iPhone, Calls and Stories had no heading. Each was a tall band of blue with a single button floating in it and no words at all, so there was nothing on screen saying which tab you were on. Both have a title now, and so does every other tab, drawn the same way as on Android: the name of the screen and the buttons that act on it side by side rather than on separate lines. The headings also take up considerably less room than they did.
- Fixed, Search on the iPhone was dark blue text on a dark blue bar, which is to say invisible. It is legible, and it is still where it was.
- Fixed, The devices screen printed a limit it had not been told, so an account at the limit could read "6 of 3 registered". It shows the number the server actually gives it.
- Fixed, A history the app can no longer read used to be a dead end. It can be discarded from the banner that explains it, which loses the old messages on this device and lets the account be used again.
2026-09-18
android 0.27
Android kept missing messages and calls because swiping the app away switched off the part that receives them.
- Fixed, There is no push on Android, by choice: no Firebase, no Play Services, nothing that needs a Google account. The service inside the app is the delivery path, so whether it is running is whether the phone can be reached at all. Swiping the app out of Recents destroyed it, and nothing brought it back, so the phone went quiet until somebody opened the app again. One handset was seen forty-two messages behind thirteen hours later. It now survives the swipe.
- Fixed, No call path ever asked for the microphone. Only the voice-note button did, so anybody who had never recorded one had never granted it, and every call they placed or answered started without a microphone and carried on anyway. The far end heard nothing and the call looked like it had simply gone away. The app asks now, and if you say no the call is not placed, because a call nobody can hear is worse than no call.
- Fixed, A reaction or a poll vote that never reached the server looked exactly like one that had: the screen redrew and the reaction was just not there afterwards. Failures are shown.
- Fixed, The devices screen printed a device limit it had not been told, so an account at the limit could read "6 of 3 registered". It shows the number the server actually gives it.
- Changed, Groups and recents sit in the same boxes as the rest of the screen rather than floating loose on the background, several screens that had lost their margins have them back, and the send button finally has a name for anybody using a screen reader.
2026-09-15
ios 0.25.0 android 0.26
Your app now proves who may see you, instead of the server keeping a list of who knows whom.
- New, Whether somebody sees you as online used to depend on the server holding your contact list, because that is what it checked against. Your app now gives each contact a token of their own, sent inside the encrypted channel, and the server is given nothing but a hash of it. Presenting the token is what shows a presence, so the server does not need to know who your contacts are to answer.
- Changed, The server still keeps the contact list itself, and still answers from it for any pair whose apps have not both updated. Taking that list off the server is the next step and it needs everybody on this version first. Until then this is groundwork, and the honest description of what it buys is that a copy of the database stops being a copy of everybody's contacts once the list goes.
- Fixed, A story posted to a group was filed as the sender's own story with no group on it. Two branches of the same code both handled stories and the first one took every group story before the second could see it.
If you run your own relay
- Presence by token needs a relay carrying the roster_tags table, added in the same release. An older relay refuses the two new routes and the apps fall back to the contact list, which is the behaviour anyone mid-upgrade gets and is not an error.
- Nothing is removed from the buddies table by this release. An operator who wants the contact graph gone still has to wait for the release that drops it.
2026-09-15
android 0.25 ios 0.24.0
Sign out is reachable again, the keyboard stops covering what you are answering, and the app can show you its own crashes.
- Fixed, On iPhone, Sign out sat under the floating tab bar and could not be tapped. The bar was told to leave room and it did, on every screen built one way and on none built the other, and Account is the one built the other way. Every screen leaves room for it now.
- Fixed, On Android, opening the keyboard pushed the newest messages up behind the box you type in, so the keyboard hid the ones you had just opened it to answer. The conversation follows the keyboard now.
- New, Both apps can show you what your phone recorded when the app crashed or froze: what stopped, when, and which build it was. None of it is sent anywhere. There is no upload behind a setting and no upload on a timer. If you want us to see one you save it and send it, and the screen names the address.
- New, A Donate row in Account, which opens the page on our site. It pays for the server, an outside audit, and Apple's developer fee. Nothing in the app is unlocked by giving and nothing is held back without it.
- Changed, Picking a username somebody already has says so in the same words whichever kind of server you are joining. One of the two used to call it a handle, which is not the word on the field you just typed into.
If you run your own relay
- The Android crash screen reads the record Android keeps itself and writes nothing of its own, so there is no new file on the device and nothing new for an operator to hold. The iPhone side keeps its own file, because iOS delivers a crash report once and then forgets it.
2026-09-15
android 0.24
A call keeps talking when the screen locks, and a picture to another server no longer closes the app.
- Fixed, Locking the phone during a call, or switching to another app, let the person you were talking to hear silence while both screens still said the call was up. Android stops an app using the microphone in the background unless the app says it is on a call, and this one did not say so. It does now, for as long as the call lasts.
- Fixed, Sending a picture to somebody on another server closed the app. A conversation with somebody on another server is addressed differently, and the picture path asked for an address it does not have. Sending a file or a sticker there did nothing at all, which is the same fault with less honesty. All three now say that only text reaches another server for now.
- Fixed, If the people who run your server suspend your account, the app tells you so in their words. It used to show the same message it shows for a network problem, which reads like a broken install and sends you reinstalling for nothing.
- Changed, The version number jumps from 0.22 to 0.24. Android carries two numbers, the one you see and one underneath that decides whether an install counts as an upgrade, and they had been one apart since an unpublished build in the 0.11 days. They are the same number now and will stay that way, so the number on the download page is the number in your app.