← Alle News
Release

Racqt 1.5.1 ist live — und hat unter der Haube am meisten gewonnen

Dauerbuchungen stehen fest im Platzkalender, Erinnerungen melden sich vor jeder Buchung, und der Community-Feed ist ab 13 Jahren. Das Sichtbare ist aber nur die halbe Geschichte: Der größte Teil dieses Releases steckt im Fundament — Berechtigungen an einer Stelle, ein Datum, das überall dasselbe bedeutet, und ein Chat, der auch ohne Netz weiterschreibt.

Racqt 1.5.1 ist live — im Web, auf dem iPhone und auf Android. Was ihr sofort seht, haben wir im Changelog aufgeschrieben: Dauerbuchungen stehen fest im Platzkalender, vor jeder Platzbuchung meldet sich eine Erinnerung, und Zu- oder Absagen für Medenspiele gebt ihr direkt in der Spielkarte.

Dieser Artikel handelt vom Rest. Denn der größere Teil dieses Releases ist Arbeit, die man nicht sieht — und die trotzdem jeden Tag spürbar ist.

Neu: sicher unterwegs für junge Mitglieder

Der Community-Feed steht ab sofort Mitgliedern ab 13 Jahren offen. Jüngere Mitglieder nutzen alles rund um ihren Verein wie gewohnt weiter: Training, Mannschaften, Platzbuchung, Vereinsneuigkeiten und Chat. Es geht ausschließlich um das öffentliche soziale Netz, nicht um das Vereinsleben.

Auf dem iPhone fragt Racqt das Alter direkt beim Betriebssystem ab. Ihr müsst dafür kein Geburtsdatum angeben — Apple gibt nur eine Altersspanne weiter, kein Datum. Die eigentliche Entscheidung fällt danach auf unserem Server, damit für alle Geräte dieselbe Regel gilt.

Unter der Haube

Eine Regel, eine Stelle

Wer darf ein Mitglied einladen? Wer darf einen Platz sperren? Wer darf ein fremdes Profil sehen? Solche Prüfungen standen im Backend an vielen Stellen — jedes Mal einzeln geschrieben, jedes Mal minimal anders. Genau daraus entstehen die Fehler, die schwer zu greifen sind: Eine Ansicht erlaubt etwas, die nächste verbietet es, und niemand weiß, welche recht hat.

In diesem Release sind diese Prüfungen zusammengezogen. Es gibt jetzt je eine Stelle dafür, ob jemand Vereinsadministrator ist, ob jemand seine eigenen Daten bearbeitet oder ob jemand Eigentümer eines Eintrags ist. Dasselbe gilt für die Buchungslimits: Wie viele Buchungen jemandem zustehen, wird an einer einzigen Stelle entschieden statt an dreien. Für euch heißt das: Die Regeln gelten überall gleich — in der App, im Portal und im Dashboard.

Ein Datum, das überall dasselbe bedeutet

Ein unscheinbares Problem mit spürbaren Folgen: Der Server rechnete Tagesgrenzen in UTC, ihr lebt aber in eurer Zeitzone. Wer abends nach zehn noch eine Mahlzeit eintrug, sah sie am nächsten Tag stehen — und der Tages-Streak riss, obwohl niemand etwas falsch gemacht hatte.

Alle betroffenen Stellen rechnen jetzt mit eurem lokalen Datum. Der Eintrag kurz vor Mitternacht landet beim richtigen Tag, und der Streak läuft weiter.

Ein Chat, der nicht am Netz hängt

Der Mannschafts- und Vereinschat arbeitet offline-first: Nachrichten liegen auf dem Gerät und werden im Hintergrund abgeglichen. Bisher konnte ein Verbindungsfehler diesen Ablauf trotzdem blockieren — der Chat blieb dann leer, obwohl die Nachrichten längst da waren. Das ist behoben: Ein Netzwerkfehler wird angezeigt, aber er hält den Chat nicht mehr an. Und wo wirklich ein Fehler vorliegt, seht ihr ihn, statt auf einen leeren Raum zu schauen.

E-Mails, die nicht mehr warten lassen

Der E-Mail-Versand lief bisher mitten in der Anfrage: Wer ein Mitglied einlud, wartete, bis die Mail draußen war. Der Versand ist jetzt asynchron und nutzt saubere Vorlagen. Aktionen, die eine Mail auslösen, fühlen sich damit sofort erledigt an — und wenn beim Passwort-Zurücksetzen etwas schiefgeht, bekommt ihr das zu sehen, statt ins Leere zu laufen.

Sicherheit, die niemand bemerken soll

Drei Dinge, die im besten Fall unsichtbar bleiben:

  • Die Android-App prüft beim Anmelden, dass sie wirklich mit einem Racqt-Server spricht. Bisher gab es diese Prüfung nur auf dem iPhone — jetzt entscheiden beide Apps nach derselben Liste erlaubter Adressen.
  • Neun bekannte Schwachstellen in Fremdbibliotheken der Web-Oberfläche sind geschlossen, im Backend haben wir mehrere Pakete auf sichere Mindestversionen angehoben.
  • Wir prüfen jeden Stand automatisch auf Geheimnisse im Code, verwundbare Abhängigkeiten und typische Schwachstellenmuster, bevor er ausgeliefert wird.

Aufräumen zahlt sich später aus

Weniger sichtbar, aber auf Dauer das Wichtigste: In der Web-Oberfläche haben wir 349 Beanstandungen unserer Code-Prüfung abgearbeitet — darunter 19, die Sicherheit oder Korrektheit betrafen. In den Apps sind tote Endpunkte und doppelte Hilfsfunktionen verschwunden, die iPhone-App nutzt durchgängig das moderne Zustandsmodell von SwiftUI, und Bildschirmfotos aller Android-Ansichten werden bei jeder Änderung automatisch verglichen.

Das ändert heute keine einzige Schaltfläche. Es sorgt dafür, dass die nächste Änderung schneller kommt und seltener etwas kaputt macht.

Updates ohne Auszeit

Die Web-Oberfläche läuft in zwei Instanzen nebeneinander. Bei einer neuen Version wird nur eine davon neu gestartet, und erst wenn sie wieder antwortet, folgt die zweite. Ein Update ist damit kein Moment mehr, in dem racqt.app kurz nicht erreichbar ist.

Und jetzt?

1.5.1 ist im Web bereits live. Die Apps für iPhone und Android gehen jetzt in die Prüfung bei Apple und Google — sobald sie freigegeben sind, meldet sich euer Gerät von selbst.

Wie immer gilt: Fast alles hier stand vorher als Wunsch in einer Mail oder in einem Gespräch am Platz. Schreibt uns gerne weiter.