travelynx/templates/changelog.html.ep
Birte Kristina Friesel 7466d252fb
Release v2.7
2024-06-15 17:51:02 +02:00

754 lines
22 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<h1>Changelog</h1>
<div class="row">
<div class="col s12 m1 l1">
2.7
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Checkins via Nahverkehr (HAFAS) speichern nun Polylines (Routen für
die Fahrtenkarte) und Wagenreihungen, sofern verfügbar. Sie sind
damit fast identisch zu Checkins via Schienenverkehr (IRIS); es
fehlen im Wesentlichen lediglich die mit Zeitstempel versehenen
Verspätungs- und Störungsmeldungen.
<p/>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Verbesserte (aber weiterhin nicht perfekte) Unterstützung für
Ringlinien.
</p>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Korrekte Verlinkung von HAFAS-basierten Abfahrtstafeln bei den
Unterwegshalten des aktuellen Checkins im Nahverkehrsmodus. Die
Konfigurationsmöglichkeit zur Auswahl zwischen bahn.expert und DBF
unter Account → Externe Dienste besteht wegen der Abhängigkeit des
Diensts vom genutzten Backend und zwecks besserer Wartbarkeit von
travelynx nun nicht mehr.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.6
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Übersichtlichere Darstellung vergangener Fahrten.
Patch von Cass Dingenskirchen, vielen Dank!
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Nahverkehr (HAFAS-Backend): Checkins in Fahrten, die mehr als 30
Minuten vor/nach dem Anfragezeitpunkt liegen.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.5
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Übersichtlichere Abfahrstafel mit Kennzeichnung der verschiedenen
Arten von Verkehrsmitteln. Patch von Cass Dingenskirchen, vielen
Dank!
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.4
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Berücksichtigung verwandter Stationen (d.h. Stationen, die zwar
gleich heißen, aber intern unterschiedliche IDs haben) bei
Checkin-Vorschlägen für Nahverkehrsfahrten. Vorschläge für
Zugverbindungen gibt es aus dem Nahverkehrsmenü in vielen Fällen
ebenfalls, andersherum meist noch nicht. Die restlichen Feinheiten
dieses Themenkomplexes werden im Laufe der Zeit ausgebügelt.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.3
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Checkin-Vorschläge für Nahverkehrsfahrten. Die manuelle Angabe von
Nahverkehrszielen für Anschlusshinweise entfällt damit. Bei
größeren oder aus anderen Gründen im Backend komplexen Stationen
werden derzeit teilweise nicht alle möglichen Verbindungen
angegeben dieser Aspekt wird in einem späteren Release
verbessert. Eine von der Auswahl von Nah- vs. Fernverkehr
unabhängige Liste mit Verbindungsvorschlägen folgt ebenfalls
später.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.2
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Hinweis für fehlende Echtzeitdaten (→ nur Fahrplandaten verfügbar)
bei der aktuellen Reise.
</p>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Korrekte Angabe der Unterwegshalte auch bei fehlenden Echtzeitdaten.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.1
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Vorschlag geeigneter Stationen bei Eingabe eines uneindeutigen
Namens auf der Startseite.
</p>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Fahrten, die vor Mitternacht begannen, zeigen nun auch nach
Mitternacht korrekte Echtzeitdaten an und gehen nicht fälschlich
von 24 Stunden Verspätung aus.
</p>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Vergangene Fahrten und letzte Fahrtziele werden nun anhand der
Abfahrtszeit und nicht anhand der Nummer des Eintrags ausgewählt.
Somit können manuelle Einträge für weit in der Vergangenheit
liegende Fahrten keine vor kurzem geloggten Fahrten mehr verdecken.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
2.0
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Checkins in Nahverkehrsmittel (Bus und Bahn) und Züge außerhalb
des DB-Netzes per HAFAS-Backend. Die verfügbaren Backends werden
per Icon Identifiziert: <i class="material-icons">train</i> IRIS
und <i class="material-icons">directions</i> HAFAS.
</p>
<p>
<i class="material-icons left" aria-label="Ankündigung">announcement</i>
Aktuell beschränkt die HAFAS-Anbindung auf Stationssuche, Checkins
und Träwelling-Synchronisierung.
Eine Einbindung in die Verbindungssuche und das manuelle Nachtragen
von HAFAS-Fahrten folgen zu einem späteren Zeitpunkt.
</p>
<p>
<i class="material-icons left" aria-label="Nicht Rückwärtskompatibel">warning</i>
Stationsangaben (z.B. auf der Hauptseite, beim Import oder in der
API) müssen nun genau mit der gewünschten Station übereinstimmen.
Unbekannte Stationen werden an das HAFAS weitergereicht, welches
meist weniger Details bereitstellt als das IRIS.
Fuzzy Matching wird nicht mehr in der bisherigen Form unterstützt.
Sofern eine Station sowohl via IRIS als auch via HAFAS bekannt ist,
wird die IRIS-Version bevorzugt.
</p>
<p>
<i class="material-icons left" aria-label="Ankündigung">warning</i>
Das ds100-Feld in API und Web Hook ist nun optional und bei
HAFAS-Checkins null.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.34
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Änderung">build</i>
Die Verknüpfung von travelynx zu Träwelling nutzt nun OAuth2
anstelle eines passwortbasierten Logins. Einerseits ist OAuth2 eine
bedeutend elegantere Lösung; andererseits wird die Träwelling-API
für Passwortlogin bald abgeschaltet. Für bestehende
Träwelling-Verknüpfungen ergeben sich keine Veränderungen.
Neue Verknüpfungen sind weiterhin möglich und benötigen nun keine
Angabe von E-Mail und Passwort mehr. Selbst
gehostete travelynx-Instanzen, die die Träwelling-Verknüpfung
anbieten möchten, müssen ab soforn bei Träwelling eine eigene <a
href="https://traewelling.de/settings/applications">Anwendung
anlegen</a> und in travelynx konfigurieren. Bitte auch die neue
Dependency Mojolicious::Plugin::OAuth2 im cpanfile beachten.
</p>
<p>
<i class="material-icons left" aria-label="Ankündigung">announcement</i>
Derzeit unterstützt travelynx neben Bahnhofsnamen auch EVA-IDs und
DS100/Ril100-Codes. In Zukunft werden in einzelnen Fällen nur noch
Bahnhofsnamen und EVA-IDs unterstützt.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.33
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Synchronisierung der Checkin-Sichtbarkeit von travelynx zu
Träwelling (Patch von networkException).
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
<a href="/timeline/in-transit">Timeline-Ansicht</a> mit aktuellen
Checkins gefolgter Accounts. Die Timeline wird von der Homepage
verlinkt, wenn passende Checkins vorliegen.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Angabe von passenden Checkins gefolgter Accounts in der
Abfahrtstafel (im Sinne von: „der folgende Account ist mit auch mit
diesem Zug unterwegs“).
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.32
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Angabe von Kommentaren und Sichtbarkeit in der JSON-API
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Editierbare Beschreibung und optionale Links auf der Profilseite.
Hier können beispielsweise Träwelling oder andere Social
Media-Accounts eingetragen werden.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Optional: folgen von Accounts. Die Sichtbarkeit von Checkins und vergangenen
Fahrten kann somit auf Follower eingeschränkt werden. Eine
Übersichtsseite mit aktuellen Checkins gefolgter Accounts (ähnlich
zur Timeline im Fediverse) folgt in einem späteren Release.<br/>
Für jeden Account kann individuell eingestellt werden, ob Accounts
ihm folgen können, ob Folge-Anfragen zunächst angenommen werden
müssen oder ob Folgen grundszätzlich nicht möglich ist.
Standardmäßig ist dieses Feature inaktiv: Folge(anfrage)n müssen
zunächst in den Einstellung aktiviert werden. Falls notwendig,
können einzelne Accounts blockiert und dadurch am Folgen
und am Stellen von Folge-Anfragen gehindert werden.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.31
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Vorhalten der Echtzeitdaten von Unterwegshalten.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.30
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Individuelle Sichtbarkeit für jede Fahrt. Optional können Fahrten
und Check-Ins nur mit einem explizit geteilten Link für andere
Personen sichtbar sein.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.29
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Jahresrückblick mit erweiterten Statistiken.
Der Rückblick ist jeweils ab dem 31.12. verfügbar.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.28
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Behandlung von nicht mehr im IRIS eingepflegten Stationen bei vergangenen Reisen.
Bislang hatten diese zu unvollständigen Reisestatistiken geführt.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.27
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Angabe von „Kein Zustieg“ (Abfahrtstafel) bzw. „Kein Ausstieg“ (Route) durch eingeklammerte Uhrzeiten „(HH:MM)“.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.26
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Angabe der erwarteten Zugauslastung bei Unterwegshalten und Anschlussvorschlägen, sofern verfügbar.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.25
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Interne Änderungen">star</i>
Umstellung der Träwelling-Anbindung auf Träwelling-API v1, da v0
sukzessive abgeschaltet wird. API v1 ist noch nicht stabil.
</p>
<p>
<i class="material-icons left" aria-label="Interne Änderungen">star</i>
Nutzung eines internen HAFAS-mgate.exe-Clients anstelle von transport.rest.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.24
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Angabe der geschätzten Ankunft am Ziel bei Checkinvorschlägen.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Anzeige von Anschlussmöglichkeiten an den Nahverkehr (Bus und
Stadtbahn) unterhalb der Anschlusszüge. Da travelynx derzeit keine
Checkins in Nahverkehrsmittel unterstützt, muss die Liste relevanter
Ziele händisch unter Account → Verbindungen gepflegt werden. Sofern
eine zukünftige travelynx-Version Nahverkehrs-Checkins unterstützt,
entfällt diese Liste.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Optionale Verlinkung externer Dienste (z.B. DBF oder bahn.expert)
in der eigenen Checkin-Ansicht. Somit können von dort aus alle
Abfahrten an einer Ziel- oder Unterwegsstation eingesehen werden.
Dieses Feature ist standardmäßig deaktiviert und kann über
Account → Externe Dienste konfiguriert werden.
</p>
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Checkinvorschläge für Anschlussverbindungen schauen weiter in die
Zukunft und enthalten weniger nutzlose Vorschläge (z.B. Rückfahrt zur
Ursprungsstation oder Weiterfahrt zu einem späteren Ziel mit dem
Folgetakt).
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.23
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Optionale Links zu externen Abfahrtsmonitoren in der Halteliste des
aktuell ausgewählten Zugs. Die Abfahrtstafelseite kann bei den
Account-Einstellungen konfiguriert werden.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.22
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Verbesserte Verknüpfung und Synchronisierung mit
<a href="https://traewelling.de">Träwelling</a>.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Inaktive Accounts erhalten nach einem Jahr eine E-Mail, die auf die
in vier Wochen folgende Löschung hinweist. Betreiber:innen einer
selbstgehosteten travelynx-Instanz müssen hierzu <i>base_url</i>
in travelynx.conf setzen (siehe examples/travelynx.conf).
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.21
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Annotation von Fahrten mit fehlenden Echtzeitdaten in der
Abfahrtstafel. Derzeit wird das Vorhandensein von Echtzeitdaten
noch nicht im Fahrtenbuch gespeichert.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Unterstützung von Maßnahmen zum Schutz vor E-Mail-Spam über das
Registrierungsformular.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.20
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Accountnamen können jetzt in den Einstellungen geändert werden.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.19
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Hinweis bei knapper Umstiegszeit zu Anschlussverbindungen.
</p>
<p>
<i class="material-icons left" aria-label="Verbesserung">star</i>
Übersichtlichere Navigation in der Fahrtenliste / Statistikansicht.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.18
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Autmatische Checkin-Synchronisierung mit
<a href="https://traewelling.de">Träwelling</a>. Checkins können
entweder von Träwelling zu travelynx oder von travelynx zu Träwelling
übernommen werden. Das Feature läuft vorerst als Public Beta.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.17
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Öffentliches Profil. Hier können auf Wunsch der aktuelle Status
sowie die letzten zehn Zugfahrten angezeigt werden. Diese sind
wahlweise gar nicht, nur mit Anmeldung oder öffentlich sichtbar.
Zugfahrten, die älter als vier Wochen sind, können komplett verborgen
werden.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.16
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
Auswertung von Zugfahrten von/nach bestimmten Stationen
aufgeschlüsselt nach Jahr und Monat. Diese Daten können für die
Angaben zur Pendlerpauschale bei der Steuererklärung nützlich sein.
</p>
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i>
CSV-Export aller Fahrten.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.15
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left" aria-label="Neues Feature">add</i> Die
über „Teilen“ verfügbare Reisestatus-Seite kann nun auch Details
beendeter Zugfahrten anzeigen, wenn die entsprechende Option in den <a
href="/account/privacy">Privatsphäre-Einstellungen</a> aktiv ist.
</p>
<p>
<i class="material-icons left" aria-label="Bugfix">build</i>
Behandlung von Haltausfällen während der Reise bzw. nach dem Checkin.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.14
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> API-Endpunkt zum Import
nicht in travelynx getrackter Zugfahrten.
</p>
<p>
<i class="material-icons left">add</i> Status-API: Angabe der
Unterwegshalte zwischen Start und Ziel.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.13
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> API-Endpunkt zum Einchecken in
Züge, aktualisieren der Zielwahl und Zurücknehmen des letzten
Checkins.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.12
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Unterstützung der im
Fahrplanjahr 2020 hinzugekommenen und geänderten Stationen. Start
und Ziel von mit travelynx geloggten Fahrten sind nun vom
Stationsnamen unabhängig (d.h. Namensänderungen werden automatisch
übernommen).
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.11
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Optionale Kommentare für
Zugfahrten. Der Eintrag zur aktuellen Zugfahrt kann im öffentlichen
Nutzerstatus angezeigt werden, wenn die entsprechende Option in
den <a href="/account/privacy">Privatsphäre-Einstellungen</a>
aktiv ist.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.10
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Kartographische Darstellung
vergangener Zugfahrten auf der History-Seite.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.9
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Generierung vorausgefüllter
Fahrgastrechteformulare bei Zugausfällen und Verspätungen ab 60
Minuten.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.8
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Angabe der Ausstiegsseite für
einzelne Züge und Zielbahnhöfe.
</p>
<p>
<i class="material-icons left">add</i> Angabe der Wagenreihung vor der
Abfahrt. Derzeit sind Wagenreihungen nur für Fernverkehrszüge
verfügbar.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.7
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Ankunft am nächtsten
Unterwegshalt im Reisestatus.
</p>
<p>
<i class="material-icons left">star</i> Die Ankunftszeit am Ziel ist
jetzt auch bei langen Fahrten sofort bekannt.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.6
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Anzeige von häufig genutzten
Verbindungen in der Abfahrtstafel. Wie bei den Anschlusszügen kann
darüber direkt (inkl. Vorauswahl des Ziels) eingecheckt werden.
</p>
<p>
<i class="material-icons left">add</i> Konfigurationsseite, um die
Heuristik für Anschlusszüge und häufige Verbindungen zu deaktivieren.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.5
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Anzeige von Anschlusszügen kurz
vor Erreichen der aktuellen Zielstation. Nach Ankunft kann darüber
direkt (inkl. Vorauswahl des neuen Ziels) eingecheckt werden. Die
Heuristik berücksichtigt derzeit alle Stationen, die in den letzten
sechs Wochen mehr als zweimal vom jeweiligen Bahnhof aus angefahren
wurden.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.4
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Dark Mode (Patch von
<a href="https://twitter.com/marudor">@marudor</a>).
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.3
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Teilen der aktuellen Zugfahrt.
Wird derzeit nur auf Chrome (Android), Opera (Android) und
Safari (iOS / macOS) unterstützt.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.2
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> <a href="/account/hooks">Web Hooks</a>
an eine konfigurierbare URL bei Checkin und Checkout.
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.1
</div>
<div class="col s12 m11 l11">
<p>
<i class="material-icons left">add</i> Öffentlicher Status unter „/status/<i>name</i>“ (opt-in, muss unter <a href="/account/privacy">account/privacy</a> aktiviert werden)
</p>
</div>
</div>
<div class="row">
<div class="col s12 m1 l1">
1.0
</div>
<div class="col s12 m11 l11">
<ul>
<li>Stationswahl per Geokoordinaten</li>
<li>Manueller Checkin und automatischer Checkout</li>
<li>History und Statistiken</li>
<li>API zur Statusabfrage</li>
</ul>
</div>
</div>