v1.3.0 was the "please stop nuking your users" epic, weeks of guardrails and one genuinely terrifying erase bug. v1.4.0 is the quieter follow-up: a fix for the day Ketesa decided it knew your server's address better than you did, a user list that stops shoving every filter in your face, and (if you're hosted with us) the invoice controls people kept asking for. Smaller release. Still a couple of things worth upgrading for.
Ketesa will stop rewriting your server URL
Here's a fun one for anyone running a split setup. The wellKnownDiscovery: false flag has been a thing for a while: you drop it in your /.well-known/matrix/client to tell clients "don't canonicalize my URL, use exactly what the user typed." Ketesa respected it in some paths. The login screen was not one of them.
So you'd set the flag, type https://example.com, and watch Ketesa "correct" you onto https://matrix.example.com anyway (#1274), a domain your admin endpoint doesn't live on and your public well-known deliberately doesn't advertise. Then you're locked out wondering what you did wrong. You didn't. We just weren't listening to a flag we told you to set.
The login and discovery paths honor it now. Set wellKnownDiscovery to false and Ketesa keeps the URL you gave it, no arguments. If you don't run a split-domain admin setup, this changes nothing for you.
A user list that isn't shouting
The user list used to weld every filter (deactivated, locked, guests, system users) permanently into the toolbar whether you wanted them or not. On a narrow screen it was a scrollbar wrestling match. They live behind a Filter button now, so you add the ones you're actually using and the toolbar breathes (#1259). The guests-stay-hidden safety on external-auth deployments is untouched, that boundary didn't move.
MAS fixes
Two more rough edges in Matrix Authentication Service mode, sanded down:
- The admin flag could display wrong in a specific MAS edge case. It reads correctly now (b45d9a6).
user_typewasn't resolving properly for MAS users, so you couldn't always tell what kind of account you were looking at. Fixed (0351542).
Invoices, on your terms (etke.cc)
If you're hosted with us, the Billing page grew two things people have been quietly wanting for a while.
- Send invoices where they actually need to go. Point them at up to five addresses (billing@, accounting@, your accountant's inbox, whoever) instead of just wherever the account email happens to be. One catch, stated plainly because it bites otherwise: new settings apply to future invoices only. We don't resend the old ones, and if you remove a recipient we don't secretly remember them for later.
- Put your company on the invoice. VAT/Tax ID, company name, country, address. Fill it in once and it rides on every future invoice. Same rule: it changes what's coming, not what's already been issued.
Both live in a dialog now instead of a form that hijacked the whole page before you could do anything else. You open it when you want it and it gets out of your way when you don't.
We have a website now
ketesa.app is live (cd88d1b), it's got a badge (#1258), and the source is archived in Software Heritage (#1297) so it outlives all of us. Very official. We felt fancy for about a day.
The unglamorous half
Dependency bumps, CI housekeeping, tighter test isolation. Every release has this half. Ours still doesn't get a parade.
That's v1.4.0: one less way for Ketesa to lock you out of your own server, a tidier list, and your invoices where you want them. As always, if something's off, come yell at us in the room. We read everything.
What's Changed
- Bump softprops/action-gh-release from 3.0.0 to 3.0.1 by @dependabot[bot] in #1249
- Bump actions/checkout from 6 to 7 by @dependabot[bot] in #1248
- Add a badge for ketesa.app website by @luixxiul in #1258
- Bump actions/setup-node from 6 to 7 by @dependabot[bot] in #1288
- Bump softprops/action-gh-release from 3.0.1 to 3.0.2 by @dependabot[bot] in #1289
- Update README with Software Heritage information by @Warmax356 in #1297
New Contributors
- @Warmax356 made their first contribution in #1297
Full Changelog: v1.3.0...v1.4.0